Patchwork heirloom-mailx: run makeconfig in configure step

login
register
mail settings
Submitter Arnout Vandecappelle
Date May 13, 2012, 9:44 a.m.
Message ID <1336902259-31422-1-git-send-email-arnout@mind.be>
Download mbox | patch
Permalink /patch/158811/
State Accepted
Commit 89726baea94bc72fe624cd5ef85b07171db0a7ea
Headers show

Comments

Arnout Vandecappelle - May 13, 2012, 9:44 a.m.
The heirloom-mailx Makefile runs makeconfig if this has not been done
before.  In a parallel build, this means makeconfig may be run several
times in parallel because there are two targets that depend on makeconfig.
See for instance
http://autobuild.buildroot.net/results/d24854be69961f71db189f9d804d4bd2cfa078da

To avoid this, run makeconfig in the configure step, which is not parallel.

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
---
I couldn't actually reproduce the build failure, but the build log gives
a good indication that this is what went wrong.

 package/heirloom-mailx/heirloom-mailx.mk |    4 ++++
 1 file changed, 4 insertions(+)
Peter Korsgaard - May 14, 2012, 7:19 p.m.
>>>>> "Arnout" == Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> writes:

 Arnout> The heirloom-mailx Makefile runs makeconfig if this has not been done
 Arnout> before.  In a parallel build, this means makeconfig may be run several
 Arnout> times in parallel because there are two targets that depend on makeconfig.
 Arnout> See for instance
 Arnout> http://autobuild.buildroot.net/results/d24854be69961f71db189f9d804d4bd2cfa078da

Committed, thanks.

Patch

diff --git a/package/heirloom-mailx/heirloom-mailx.mk b/package/heirloom-mailx/heirloom-mailx.mk
index 2b28a3f..b1779c0 100644
--- a/package/heirloom-mailx/heirloom-mailx.mk
+++ b/package/heirloom-mailx/heirloom-mailx.mk
@@ -12,6 +12,10 @@  ifeq ($(BR2_PACKAGE_OPENSSL),y)
 HEIRLOOM_MAILX_DEPENDENCIES += openssl
 endif
 
+define HEIRLOOM_MAILX_CONFIGURE_CMDS
+	(cd $(@D); $(TARGET_CONFIGURE_OPTS) $(SHELL) ./makeconfig)
+endef
+
 define HEIRLOOM_MAILX_BUILD_CMDS
 	$(TARGET_CONFIGURE_OPTS) $(MAKE) -C $(@D)
 endef