* [Buildroot] [PATCH] package/libopenssl do not build in parallel
@ 2025-03-16 21:02 Yann E. MORIN
2025-03-17 17:32 ` Peter Korsgaard
2025-03-24 12:19 ` Peter Korsgaard
0 siblings, 2 replies; 3+ messages in thread
From: Yann E. MORIN @ 2025-03-16 21:02 UTC (permalink / raw)
To: buildroot; +Cc: Yann E. MORIN
With highly parallel build on a hevily loaded machine, the libopenssl
build often (about half of the time) fails with spurious missing rules
in its Makefile:
>>> host-libopenssl 3.4.1 Installing to host directory
[...] /usr/bin/make -C [...]/build/host-libopenssl-3.4.1 install
"/usr/bin/make" depend && "/usr/bin/make" _build_libs
"/usr/bin/make" depend && "/usr/bin/make" _build_modules
"/usr/bin/make" depend && "/usr/bin/make" _build_programs
[...]
make[3]: *** No rule to make target '_build_modules'. Stop.
make[2]: *** [Makefile:3159: build_modules] Error 2
make[2]: *** Waiting for unfinished jobs....
make[3]: Nothing to be done for '_build_programs'.
make[3]: Nothing to be done for '_build_libs'.
make[1]: *** [package/pkg-generic.mk:283: [...]/build/host-libopenssl-3.4.1/.stamp_host_installed] Error 2
make[1]: *** Waiting for unfinished jobs....
[...]
make: *** [Makefile:23: _all] Error 2
Ideally, we'd like to fix the issue. However, the Nakefile is generated
by the Configure script, written in perl, from the template in
Configurations/unix-Makefile.tmpl, which also uses some kind of special
(perl-related, probably) templating language. That makes it pretty
difficult to see what is going on, though, and nigh impossible to fix
without a deep understanding of the openssl buildsystem.
So, we can only disable parallel builds until the issue is fixed
upstream [0]. Add a comment to both build commands (host and target) to
reference the upstream issue report.
Note that the issue has mostly been observed in the build of the host
variant so far, but there is no reason why it can't happen in the build
of the target variant.
[0] https://github.com/openssl/openssl/issues/27074
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
---
package/libopenssl/libopenssl.mk | 12 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
diff --git a/package/libopenssl/libopenssl.mk b/package/libopenssl/libopenssl.mk
index c1c5b818d7..663e8d9b9f 100644
--- a/package/libopenssl/libopenssl.mk
+++ b/package/libopenssl/libopenssl.mk
@@ -132,24 +132,26 @@ endef
LIBOPENSSL_POST_CONFIGURE_HOOKS += LIBOPENSSL_FIXUP_STATIC_MAKEFILE
endif
+# Parallel build broken: https://github.com/openssl/openssl/issues/27074
define HOST_LIBOPENSSL_BUILD_CMDS
- $(HOST_MAKE_ENV) $(MAKE) -C $(@D)
+ $(HOST_MAKE_ENV) $(MAKE1) -C $(@D)
endef
+# Parallel build broken: https://github.com/openssl/openssl/issues/27074
define LIBOPENSSL_BUILD_CMDS
- $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)
+ $(TARGET_MAKE_ENV) $(MAKE1) -C $(@D)
endef
define LIBOPENSSL_INSTALL_STAGING_CMDS
- $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(STAGING_DIR) install
+ $(TARGET_MAKE_ENV) $(MAKE1) -C $(@D) DESTDIR=$(STAGING_DIR) install
endef
define HOST_LIBOPENSSL_INSTALL_CMDS
- $(HOST_MAKE_ENV) $(MAKE) -C $(@D) install
+ $(HOST_MAKE_ENV) $(MAKE1) -C $(@D) install
endef
define LIBOPENSSL_INSTALL_TARGET_CMDS
- $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) DESTDIR=$(TARGET_DIR) install
+ $(TARGET_MAKE_ENV) $(MAKE1) -C $(@D) DESTDIR=$(TARGET_DIR) install
$(RM) -rf $(TARGET_DIR)/usr/lib/ssl
$(RM) -f $(TARGET_DIR)/usr/bin/c_rehash
endef
--
2.47.0
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 3+ messages in thread* Re: [Buildroot] [PATCH] package/libopenssl do not build in parallel
2025-03-16 21:02 [Buildroot] [PATCH] package/libopenssl do not build in parallel Yann E. MORIN
@ 2025-03-17 17:32 ` Peter Korsgaard
2025-03-24 12:19 ` Peter Korsgaard
1 sibling, 0 replies; 3+ messages in thread
From: Peter Korsgaard @ 2025-03-17 17:32 UTC (permalink / raw)
To: Yann E. MORIN; +Cc: buildroot
>>>>> "Yann" == Yann E MORIN <yann.morin.1998@free.fr> writes:
> With highly parallel build on a hevily loaded machine, the libopenssl
> build often (about half of the time) fails with spurious missing rules
> in its Makefile:
>>>> host-libopenssl 3.4.1 Installing to host directory
> [...] /usr/bin/make -C [...]/build/host-libopenssl-3.4.1 install
> "/usr/bin/make" depend && "/usr/bin/make" _build_libs
> "/usr/bin/make" depend && "/usr/bin/make" _build_modules
> "/usr/bin/make" depend && "/usr/bin/make" _build_programs
> [...]
> make[3]: *** No rule to make target '_build_modules'. Stop.
> make[2]: *** [Makefile:3159: build_modules] Error 2
> make[2]: *** Waiting for unfinished jobs....
> make[3]: Nothing to be done for '_build_programs'.
> make[3]: Nothing to be done for '_build_libs'.
> make[1]: *** [package/pkg-generic.mk:283: [...]/build/host-libopenssl-3.4.1/.stamp_host_installed] Error 2
> make[1]: *** Waiting for unfinished jobs....
> [...]
> make: *** [Makefile:23: _all] Error 2
> Ideally, we'd like to fix the issue. However, the Nakefile is generated
> by the Configure script, written in perl, from the template in
> Configurations/unix-Makefile.tmpl, which also uses some kind of special
> (perl-related, probably) templating language. That makes it pretty
> difficult to see what is going on, though, and nigh impossible to fix
> without a deep understanding of the openssl buildsystem.
> So, we can only disable parallel builds until the issue is fixed
> upstream [0]. Add a comment to both build commands (host and target) to
> reference the upstream issue report.
> Note that the issue has mostly been observed in the build of the host
> variant so far, but there is no reason why it can't happen in the build
> of the target variant.
> [0] https://github.com/openssl/openssl/issues/27074
> Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Committed, thanks.
--
Bye, Peter Korsgaard
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [Buildroot] [PATCH] package/libopenssl do not build in parallel
2025-03-16 21:02 [Buildroot] [PATCH] package/libopenssl do not build in parallel Yann E. MORIN
2025-03-17 17:32 ` Peter Korsgaard
@ 2025-03-24 12:19 ` Peter Korsgaard
1 sibling, 0 replies; 3+ messages in thread
From: Peter Korsgaard @ 2025-03-24 12:19 UTC (permalink / raw)
To: Yann E. MORIN; +Cc: buildroot
>>>>> "Yann" == Yann E MORIN <yann.morin.1998@free.fr> writes:
> With highly parallel build on a hevily loaded machine, the libopenssl
> build often (about half of the time) fails with spurious missing rules
> in its Makefile:
>>>> host-libopenssl 3.4.1 Installing to host directory
> [...] /usr/bin/make -C [...]/build/host-libopenssl-3.4.1 install
> "/usr/bin/make" depend && "/usr/bin/make" _build_libs
> "/usr/bin/make" depend && "/usr/bin/make" _build_modules
> "/usr/bin/make" depend && "/usr/bin/make" _build_programs
> [...]
> make[3]: *** No rule to make target '_build_modules'. Stop.
> make[2]: *** [Makefile:3159: build_modules] Error 2
> make[2]: *** Waiting for unfinished jobs....
> make[3]: Nothing to be done for '_build_programs'.
> make[3]: Nothing to be done for '_build_libs'.
> make[1]: *** [package/pkg-generic.mk:283: [...]/build/host-libopenssl-3.4.1/.stamp_host_installed] Error 2
> make[1]: *** Waiting for unfinished jobs....
> [...]
> make: *** [Makefile:23: _all] Error 2
> Ideally, we'd like to fix the issue. However, the Nakefile is generated
> by the Configure script, written in perl, from the template in
> Configurations/unix-Makefile.tmpl, which also uses some kind of special
> (perl-related, probably) templating language. That makes it pretty
> difficult to see what is going on, though, and nigh impossible to fix
> without a deep understanding of the openssl buildsystem.
> So, we can only disable parallel builds until the issue is fixed
> upstream [0]. Add a comment to both build commands (host and target) to
> reference the upstream issue report.
> Note that the issue has mostly been observed in the build of the host
> variant so far, but there is no reason why it can't happen in the build
> of the target variant.
> [0] https://github.com/openssl/openssl/issues/27074
> Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Committed to 2024.11.x, thanks.
--
Bye, Peter Korsgaard
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2025-03-24 12:19 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-03-16 21:02 [Buildroot] [PATCH] package/libopenssl do not build in parallel Yann E. MORIN
2025-03-17 17:32 ` Peter Korsgaard
2025-03-24 12:19 ` Peter Korsgaard
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.