package/asterisk: fix parallel build/install
authorYann E. MORIN <yann.morin.1998@free.fr>
Mon, 27 Nov 2017 13:30:50 +0000 (14:30 +0100)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Mon, 27 Nov 2017 20:29:36 +0000 (21:29 +0100)
Fixes:

    http://autobuild.buildroot.org/results/7c9892b9425aff6e54b8c8942dbdcb0b26e58572

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
package/asterisk/0005-build-ensure-target-directory-for-modules-exists.patch [new file with mode: 0644]

diff --git a/package/asterisk/0005-build-ensure-target-directory-for-modules-exists.patch b/package/asterisk/0005-build-ensure-target-directory-for-modules-exists.patch
new file mode 100644 (file)
index 0000000..20cfc93
--- /dev/null
@@ -0,0 +1,32 @@
+From 933b2554a40f932571bdbdbb5217cda3e35fd61f Mon Sep 17 00:00:00 2001
+From: "Yann E. MORIN" <yann.morin.1998@free.fr>
+Date: Mon, 27 Nov 2017 12:52:52 +0100
+Subject: [PATCH] build: ensure target directory for modules exists
+
+Currently, in highly-parallel builds, it is possible that installing
+modules fails because the target directory does not exist yet.
+
+We fix that by instructing $(INSTALL) to create the destination directory
+first.
+
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+---
+ Makefile.moddir_rules | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile.moddir_rules b/Makefile.moddir_rules
+index 59190bece9..b73153a9a5 100644
+--- a/Makefile.moddir_rules
++++ b/Makefile.moddir_rules
+@@ -110,7 +110,7 @@ clean::
+ install:: all
+       @echo "Installing modules from `basename $(CURDIR)`..."
+-      @for x in $(LOADABLE_MODS:%=%.so); do $(INSTALL) -m 755 $$x "$(DESTDIR)$(ASTMODDIR)" ; done
++      @for x in $(LOADABLE_MODS:%=%.so); do $(INSTALL) -D -m 755 $$x "$(DESTDIR)$(ASTMODDIR)" ; done
+ ifneq ($(findstring :,$(XMLSTARLET)$(BASH)),:)
+       @if [ -f .moduleinfo ] ; then \
+               declare -A DISABLED_MODS ;\
+-- 
+2.11.0
+