All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH] packages/exim: enable parallel make
@ 2020-04-20 16:36 Luca Ceresoli
  2020-04-20 19:03 ` Bernd Kuhls
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Luca Ceresoli @ 2020-04-20 16:36 UTC (permalink / raw)
  To: buildroot

Parallel make used to be broken in exim, as reported in its docs. Now that
line has disappeared from the docs, and parallel make is actually working.

Tested with 'make exim-dirclean ; time make BR2_JLEVEL=999 exim': builds
still succeed and the build time decreases from 34 to 11 seconds on my
host.

Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Cc: Bernd Kuhls <bernd.kuhls@t-online.de>
---
 package/exim/exim.mk | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)

diff --git a/package/exim/exim.mk b/package/exim/exim.mk
index 8d5b6e415b62..dc445c6d93c0 100644
--- a/package/exim/exim.mk
+++ b/package/exim/exim.mk
@@ -120,16 +120,14 @@ endif
 
 # We need the host version of macro_predef during the build, before
 # building it we need to prepare the makefile.
-# "The -j (parallel) flag must not be used with make"
-# (http://www.exim.org/exim-html-current/doc/html/spec_html/ch04.html)
 define EXIM_BUILD_CMDS
-	$(TARGET_MAKE_ENV) build=br $(MAKE1) -C $(@D) makefile
-	$(HOST_MAKE_ENV) $(MAKE1) -C $(@D)/build-br macro_predef \
+	$(TARGET_MAKE_ENV) build=br $(MAKE) -C $(@D) makefile
+	$(HOST_MAKE_ENV) $(MAKE) -C $(@D)/build-br macro_predef \
 		CC=$(HOSTCC) \
 		LNCC=$(HOSTCC) \
 		CFLAGS="-std=c99 $(HOST_CFLAGS)" \
 		LFLAGS="-fPIC $(HOST_LDFLAGS)"
-	$(TARGET_MAKE_ENV) build=br $(MAKE1) -C $(@D) $(EXIM_STATIC_FLAGS) \
+	$(TARGET_MAKE_ENV) build=br $(MAKE) -C $(@D) $(EXIM_STATIC_FLAGS) \
 		CFLAGS="-std=c99 $(TARGET_CFLAGS)"
 endef
 
@@ -137,7 +135,7 @@ endef
 # something when installing...
 define EXIM_INSTALL_TARGET_CMDS
 	DESTDIR=$(TARGET_DIR) INSTALL_ARG="-no_chown -no_symlink" build=br \
-	  $(MAKE1) -C $(@D) $(EXIM_STATIC_FLAGS) \
+	  $(MAKE) -C $(@D) $(EXIM_STATIC_FLAGS) \
 		CFLAGS="-std=c99 $(TARGET_CFLAGS)" \
 		install
 	chmod u+s $(TARGET_DIR)/usr/sbin/exim
-- 
2.26.1

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCH] packages/exim: enable parallel make
  2020-04-20 16:36 [Buildroot] [PATCH] packages/exim: enable parallel make Luca Ceresoli
@ 2020-04-20 19:03 ` Bernd Kuhls
  2020-04-20 21:08 ` Yann E. MORIN
  2020-05-06  6:00 ` Peter Korsgaard
  2 siblings, 0 replies; 6+ messages in thread
From: Bernd Kuhls @ 2020-04-20 19:03 UTC (permalink / raw)
  To: buildroot

Am Mon, 20 Apr 2020 18:36:45 +0200 schrieb Luca Ceresoli:

> Parallel make used to be broken in exim, as reported in its docs. Now
> that line has disappeared from the docs, and parallel make is actually
> working.

Tested-by: Bernd Kuhls <bernd.kuhls@t-online.de>
(build-tested with -j9 and this defconfig
 BR2_PACKAGE_DOVECOT=y
 BR2_PACKAGE_EXIM=y
 BR2_PACKAGE_CLAMAV=y)

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCH] packages/exim: enable parallel make
  2020-04-20 16:36 [Buildroot] [PATCH] packages/exim: enable parallel make Luca Ceresoli
  2020-04-20 19:03 ` Bernd Kuhls
@ 2020-04-20 21:08 ` Yann E. MORIN
  2020-05-06  6:00 ` Peter Korsgaard
  2 siblings, 0 replies; 6+ messages in thread
From: Yann E. MORIN @ 2020-04-20 21:08 UTC (permalink / raw)
  To: buildroot

Luca, All,

On 2020-04-20 18:36 +0200, Luca Ceresoli spake thusly:
> Parallel make used to be broken in exim, as reported in its docs. Now that
> line has disappeared from the docs, and parallel make is actually working.
> 
> Tested with 'make exim-dirclean ; time make BR2_JLEVEL=999 exim': builds
> still succeed and the build time decreases from 34 to 11 seconds on my
> host.
> 
> Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
> Cc: Bernd Kuhls <bernd.kuhls@t-online.de>

Applied to master, thanks.

Regards,
Yann E. MORIN.

> ---
>  package/exim/exim.mk | 10 ++++------
>  1 file changed, 4 insertions(+), 6 deletions(-)
> 
> diff --git a/package/exim/exim.mk b/package/exim/exim.mk
> index 8d5b6e415b62..dc445c6d93c0 100644
> --- a/package/exim/exim.mk
> +++ b/package/exim/exim.mk
> @@ -120,16 +120,14 @@ endif
>  
>  # We need the host version of macro_predef during the build, before
>  # building it we need to prepare the makefile.
> -# "The -j (parallel) flag must not be used with make"
> -# (http://www.exim.org/exim-html-current/doc/html/spec_html/ch04.html)
>  define EXIM_BUILD_CMDS
> -	$(TARGET_MAKE_ENV) build=br $(MAKE1) -C $(@D) makefile
> -	$(HOST_MAKE_ENV) $(MAKE1) -C $(@D)/build-br macro_predef \
> +	$(TARGET_MAKE_ENV) build=br $(MAKE) -C $(@D) makefile
> +	$(HOST_MAKE_ENV) $(MAKE) -C $(@D)/build-br macro_predef \
>  		CC=$(HOSTCC) \
>  		LNCC=$(HOSTCC) \
>  		CFLAGS="-std=c99 $(HOST_CFLAGS)" \
>  		LFLAGS="-fPIC $(HOST_LDFLAGS)"
> -	$(TARGET_MAKE_ENV) build=br $(MAKE1) -C $(@D) $(EXIM_STATIC_FLAGS) \
> +	$(TARGET_MAKE_ENV) build=br $(MAKE) -C $(@D) $(EXIM_STATIC_FLAGS) \
>  		CFLAGS="-std=c99 $(TARGET_CFLAGS)"
>  endef
>  
> @@ -137,7 +135,7 @@ endef
>  # something when installing...
>  define EXIM_INSTALL_TARGET_CMDS
>  	DESTDIR=$(TARGET_DIR) INSTALL_ARG="-no_chown -no_symlink" build=br \
> -	  $(MAKE1) -C $(@D) $(EXIM_STATIC_FLAGS) \
> +	  $(MAKE) -C $(@D) $(EXIM_STATIC_FLAGS) \
>  		CFLAGS="-std=c99 $(TARGET_CFLAGS)" \
>  		install
>  	chmod u+s $(TARGET_DIR)/usr/sbin/exim
> -- 
> 2.26.1
> 
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 561 099 427 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCH] packages/exim: enable parallel make
  2020-04-20 16:36 [Buildroot] [PATCH] packages/exim: enable parallel make Luca Ceresoli
  2020-04-20 19:03 ` Bernd Kuhls
  2020-04-20 21:08 ` Yann E. MORIN
@ 2020-05-06  6:00 ` Peter Korsgaard
  2020-05-06  7:09   ` Luca Ceresoli
  2 siblings, 1 reply; 6+ messages in thread
From: Peter Korsgaard @ 2020-05-06  6:00 UTC (permalink / raw)
  To: buildroot

>>>>> "Luca" == Luca Ceresoli <luca@lucaceresoli.net> writes:

 > Parallel make used to be broken in exim, as reported in its docs. Now that
 > line has disappeared from the docs, and parallel make is actually working.

 > Tested with 'make exim-dirclean ; time make BR2_JLEVEL=999 exim': builds
 > still succeed and the build time decreases from 34 to 11 seconds on my
 > host.

 > Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
 > Cc: Bernd Kuhls <bernd.kuhls@t-online.de>

Committed to 2020.02.x, thanks.

-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCH] packages/exim: enable parallel make
  2020-05-06  6:00 ` Peter Korsgaard
@ 2020-05-06  7:09   ` Luca Ceresoli
  2020-05-06  7:39     ` Peter Korsgaard
  0 siblings, 1 reply; 6+ messages in thread
From: Luca Ceresoli @ 2020-05-06  7:09 UTC (permalink / raw)
  To: buildroot

Hi Peter,

On 06/05/20 08:00, Peter Korsgaard wrote:
>>>>>> "Luca" == Luca Ceresoli <luca@lucaceresoli.net> writes:
> 
>  > Parallel make used to be broken in exim, as reported in its docs. Now that
>  > line has disappeared from the docs, and parallel make is actually working.
> 
>  > Tested with 'make exim-dirclean ; time make BR2_JLEVEL=999 exim': builds
>  > still succeed and the build time decreases from 34 to 11 seconds on my
>  > host.
> 
>  > Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
>  > Cc: Bernd Kuhls <bernd.kuhls@t-online.de>
> 
> Committed to 2020.02.x, thanks.

Does this patch really belong to a stable branch?

If it does, then you should also apply [0] or we'll start seeing
parallel build failures on 2020.02.x too.

[0]
https://git.busybox.net/buildroot/commit/?id=8c75f95e0a3d2600015be5564ee9fe9393d95ebc

-- 
Luca

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCH] packages/exim: enable parallel make
  2020-05-06  7:09   ` Luca Ceresoli
@ 2020-05-06  7:39     ` Peter Korsgaard
  0 siblings, 0 replies; 6+ messages in thread
From: Peter Korsgaard @ 2020-05-06  7:39 UTC (permalink / raw)
  To: buildroot

>>>>> "Luca" == Luca Ceresoli <luca@lucaceresoli.net> writes:

 > Hi Peter,
 > On 06/05/20 08:00, Peter Korsgaard wrote:
 >>>>>>> "Luca" == Luca Ceresoli <luca@lucaceresoli.net> writes:
 >> 
 >> > Parallel make used to be broken in exim, as reported in its docs. Now that
 >> > line has disappeared from the docs, and parallel make is actually working.
 >> 
 >> > Tested with 'make exim-dirclean ; time make BR2_JLEVEL=999 exim': builds
 >> > still succeed and the build time decreases from 34 to 11 seconds on my
 >> > host.
 >> 
 >> > Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
 >> > Cc: Bernd Kuhls <bernd.kuhls@t-online.de>
 >> 
 >> Committed to 2020.02.x, thanks.

 > Does this patch really belong to a stable branch?

I agree that it is a gray zone. Given that there weren't any followup
fixups on master since then (or so I thought, it turned out my tree was
not uptodate) I found it "safe".

 > If it does, then you should also apply [0] or we'll start seeing
 > parallel build failures on 2020.02.x too.

 > [0]
 > https://git.busybox.net/buildroot/commit/?id=8c75f95e0a3d2600015be5564ee9fe9393d95ebc

I'll do so later today. Yann also pointed that out to me.

-- 
Bye, Peter Korsgaard

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2020-05-06  7:39 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-04-20 16:36 [Buildroot] [PATCH] packages/exim: enable parallel make Luca Ceresoli
2020-04-20 19:03 ` Bernd Kuhls
2020-04-20 21:08 ` Yann E. MORIN
2020-05-06  6:00 ` Peter Korsgaard
2020-05-06  7:09   ` Luca Ceresoli
2020-05-06  7:39     ` 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.