summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2013-10-06 08:37:40 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-10-07 09:37:32 +0100
commit0c7b734f9674c544c475e83d914f1122039a2e02 (patch)
tree5748511c87cc04c83521222319a73419bac7d527
parent28eedee1d41c50298c27c7f119a938001f734ce5 (diff)
downloadpoky-0c7b734f9674c544c475e83d914f1122039a2e02.tar.gz
python: Ensure build completes before install
At the start of install, python swizzles the makefiles around, leading to chunks of do_compile running again. These race against the install target, leading to errors if pieces are being recompiled whilst others are being installed. For now, workaround this by running the compile target with the new makefile, then running install ensuring a parallel make race doesn't happen. (From OE-Core rev: 72938a8631cfe5be5ac88ad67f2db595e2487e86) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-devtools/python/python_2.7.3.bb11
1 files changed, 11 insertions, 0 deletions
diff --git a/meta/recipes-devtools/python/python_2.7.3.bb b/meta/recipes-devtools/python/python_2.7.3.bb
index f6a460989b..40d20f1f4f 100644
--- a/meta/recipes-devtools/python/python_2.7.3.bb
+++ b/meta/recipes-devtools/python/python_2.7.3.bb
@@ -100,6 +100,17 @@ do_install() {
100 100
101 export CROSS_COMPILE="${TARGET_PREFIX}" 101 export CROSS_COMPILE="${TARGET_PREFIX}"
102 export PYTHONBUILDDIR="${S}" 102 export PYTHONBUILDDIR="${S}"
103
104 # After swizzling the makefile, we need to run the build again.
105 # install can race with the build so we have to run this first, then install
106 oe_runmake HOSTPGEN=${STAGING_BINDIR_NATIVE}/python-native/pgen \
107 HOSTPYTHON=${STAGING_BINDIR_NATIVE}/python-native/python \
108 CROSSPYTHONPATH=${STAGING_LIBDIR_NATIVE}/python${PYTHON_MAJMIN}/lib-dynload/ \
109 STAGING_LIBDIR=${STAGING_LIBDIR} \
110 STAGING_INCDIR=${STAGING_INCDIR} \
111 STAGING_BASELIBDIR=${STAGING_BASELIBDIR} \
112 BUILD_SYS=${BUILD_SYS} HOST_SYS=${HOST_SYS} \
113 DESTDIR=${D} LIBDIR=${libdir}
103 114
104 oe_runmake HOSTPGEN=${STAGING_BINDIR_NATIVE}/python-native/pgen \ 115 oe_runmake HOSTPGEN=${STAGING_BINDIR_NATIVE}/python-native/pgen \
105 HOSTPYTHON=${STAGING_BINDIR_NATIVE}/python-native/python \ 116 HOSTPYTHON=${STAGING_BINDIR_NATIVE}/python-native/python \