Patchwork [3/7] python, python-native: fix PARALLEL_MAKEINST failure

login
register
mail settings
Submitter Christopher Larson
Date Nov. 27, 2013, 6:07 p.m.
Message ID <8f8accc6c39b277ac61d6779997291eb40a63703.1385575572.git.kergoth@gmail.com>
Download mbox | patch
Permalink /patch/62507/
State New
Headers show

Comments

Christopher Larson - Nov. 27, 2013, 6:07 p.m.
From: Christopher Larson <chris_larson@mentor.com>

When using make -j with the 'install' target, it's possible for altbininstall
(which normally creates BINDIR) and libainstall (which doesn't, though it
installs python-config there) to race, resulting in a failure due to
attempting to install python-config into a nonexistent BINDIR. Ensure it also
exists in the libainstall target.

Signed-off-by: Christopher Larson <kergoth@gmail.com>
---
 meta/recipes-devtools/python/python-native_2.7.3.bb   |  1 +
 .../python/parallel-makeinst-create-bindir.patch      | 19 +++++++++++++++++++
 meta/recipes-devtools/python/python_2.7.3.bb          |  1 +
 3 files changed, 21 insertions(+)
 create mode 100644 meta/recipes-devtools/python/python/parallel-makeinst-create-bindir.patch

Patch

diff --git a/meta/recipes-devtools/python/python-native_2.7.3.bb b/meta/recipes-devtools/python/python-native_2.7.3.bb
index ef891b2..6b87a16 100644
--- a/meta/recipes-devtools/python/python-native_2.7.3.bb
+++ b/meta/recipes-devtools/python/python-native_2.7.3.bb
@@ -16,6 +16,7 @@  SRC_URI += "\
            file://multilib.patch \
            file://add-md5module-support.patch \
            file://builddir.patch \
+           file://parallel-makeinst-create-bindir.patch \
            "
 S = "${WORKDIR}/Python-${PV}"
 
diff --git a/meta/recipes-devtools/python/python/parallel-makeinst-create-bindir.patch b/meta/recipes-devtools/python/python/parallel-makeinst-create-bindir.patch
new file mode 100644
index 0000000..951cb46
--- /dev/null
+++ b/meta/recipes-devtools/python/python/parallel-makeinst-create-bindir.patch
@@ -0,0 +1,19 @@ 
+When using make -j with the 'install' target, it's possible for altbininstall
+(which normally creates BINDIR) and libainstall (which doesn't, though it
+installs python-config there) to race, resulting in a failure due to
+attempting to install python-config into a nonexistent BINDIR. Ensure it also
+exists in the libainstall target.
+
+Upstream-Status: Pending
+
+--- Python-2.7.3.orig/Makefile.pre.in
++++ Python-2.7.3/Makefile.pre.in
+@@ -1008,7 +1008,7 @@ LIBPL=		$(LIBP)/config
+ LIBPC=		$(LIBDIR)/pkgconfig
+
+ libainstall:	all python-config
+-	@for i in $(LIBDIR) $(LIBP) $(LIBPL) $(LIBPC); \
++	@for i in $(LIBDIR) $(LIBP) $(LIBPL) $(LIBPC) $(BINDIR); \
+	do \
+		if test ! -d $(DESTDIR)$$i; then \
+			echo "Creating directory $$i"; \
diff --git a/meta/recipes-devtools/python/python_2.7.3.bb b/meta/recipes-devtools/python/python_2.7.3.bb
index 887e02e..ff41122 100644
--- a/meta/recipes-devtools/python/python_2.7.3.bb
+++ b/meta/recipes-devtools/python/python_2.7.3.bb
@@ -32,6 +32,7 @@  SRC_URI += "\
   file://run-ptest \
   file://CVE-2013-4073_py27.patch \
   file://pypirc-secure.patch \
+  file://parallel-makeinst-create-bindir.patch \
 "
 
 S = "${WORKDIR}/Python-${PV}"