diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-04-10 10:09:01 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-04-10 17:35:16 +0100 |
commit | 3c77416b1b65b4836d5f5b76c01bdd91214fb5a5 (patch) | |
tree | 8bdd98823eaecea51529c727b832eda5815dc0a9 | |
parent | 97fd8c07d751620a701d85467f24c24af83f9263 (diff) | |
download | poky-3c77416b1b65b4836d5f5b76c01bdd91214fb5a5.tar.gz |
gcc: Fix a race over unwind.h
There are two places unwind.h is installed, even by the Makefile's admission.
Disable one of them to prevent build failure races.
(From OE-Core rev: d3b02218dcfedda8e4efb43b8fa6d13af8d91f78)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | meta/recipes-devtools/gcc/gcc-4.8.inc | 1 | ||||
-rw-r--r-- | meta/recipes-devtools/gcc/gcc-4.8/0051-fix-unwind-race.patch | 33 |
2 files changed, 34 insertions, 0 deletions
diff --git a/meta/recipes-devtools/gcc/gcc-4.8.inc b/meta/recipes-devtools/gcc/gcc-4.8.inc index 855ec26aef..c32060034e 100644 --- a/meta/recipes-devtools/gcc/gcc-4.8.inc +++ b/meta/recipes-devtools/gcc/gcc-4.8.inc | |||
@@ -71,6 +71,7 @@ SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \ | |||
71 | file://0048-PR58854_fix_arm_apcs_epilogue.patch \ | 71 | file://0048-PR58854_fix_arm_apcs_epilogue.patch \ |
72 | file://0049-Enable-SPE-AltiVec-generation-on-powepc-linux-target.patch \ | 72 | file://0049-Enable-SPE-AltiVec-generation-on-powepc-linux-target.patch \ |
73 | file://0050-PR-target-58595.patch \ | 73 | file://0050-PR-target-58595.patch \ |
74 | file://0051-fix-unwind-race.patch \ | ||
74 | " | 75 | " |
75 | SRC_URI[md5sum] = "a3d7d63b9cb6b6ea049469a0c4a43c9d" | 76 | SRC_URI[md5sum] = "a3d7d63b9cb6b6ea049469a0c4a43c9d" |
76 | SRC_URI[sha256sum] = "09dc2276c73424bbbfda1dbddc62bbbf900c9f185acf7f3e1d773ce2d7e3cdc8" | 77 | SRC_URI[sha256sum] = "09dc2276c73424bbbfda1dbddc62bbbf900c9f185acf7f3e1d773ce2d7e3cdc8" |
diff --git a/meta/recipes-devtools/gcc/gcc-4.8/0051-fix-unwind-race.patch b/meta/recipes-devtools/gcc/gcc-4.8/0051-fix-unwind-race.patch new file mode 100644 index 0000000000..e4fff127b3 --- /dev/null +++ b/meta/recipes-devtools/gcc/gcc-4.8/0051-fix-unwind-race.patch | |||
@@ -0,0 +1,33 @@ | |||
1 | These is a race over the installation of files into the include/ directory between: | ||
2 | |||
3 | | (cd `${PWDCMD-pwd}`/include ; \| tar -cf - .; exit 0) | (cd /home/pokybuild/yocto-autobuilder/yocto-slave/nightly-oecore/build/build/tmp-eglibc/work/armv5te-oe-linux-gnueabi/gcc-cross-initial/4.8.2-r0/image/home/pokybuild/yocto-autobuilder/yocto-slave/nightly-oecore/build/build/tmp-eglibc/sysroots/x86_64-linux/usr/lib/armv5te-oe-linux-gnueabi.gcc-cross-initial/gcc/arm-oe-linux-gnueabi/4.8.2/include; tar xpf - ) | ||
4 | |||
5 | and | ||
6 | |||
7 | | /bin/install -c -m 644 unwind.h /home/pokybuild/yocto-autobuilder/yocto-slave/nightly-oecore/build/build/tmp-eglibc/work/armv5te-oe-linux-gnueabi/gcc-cross-initial/4.8.2-r0/image/home/pokybuild/yocto-autobuilder/yocto-slave/nightly-oecore/build/build/tmp-eglibc/sysroots/x86_64-linux/usr/lib/armv5te-oe-linux-gnueabi.gcc-cross-initial/gcc/arm-oe-linux-gnueabi/4.8.2/include | ||
8 | | /bin/install: cannot create regular file '/home/pokybuild/yocto-autobuilder/yocto-slave/nightly-oecore/build/build/tmp-eglibc/work/armv5te-oe-linux-gnueabi/gcc-cross-initial/4.8.2-r0/image/home/pokybuild/yocto-autobuilder/yocto-slave/nightly-oecore/build/build/tmp-eglibc/sysroots/x86_64-linux/usr/lib/armv5te-oe-linux-gnueabi.gcc-cross-initial/gcc/arm-oe-linux-gnueabi/4.8.2/include/unwind.h': File exists | ||
9 | | make[1]: *** [install-unwind_h] Error 1 | ||
10 | |||
11 | which under the right circumstances leads to the above build failure. Since we don't | ||
12 | need two copies of this file and we don't use install-no-fixincludes, we can disable | ||
13 | the libgcc installation. | ||
14 | |||
15 | RP 2014/04/10 | ||
16 | |||
17 | Upstream-Status: Pending [would need a rewrite into an acceptable patch form] | ||
18 | |||
19 | Index: gcc-4.8.2/libgcc/Makefile.in | ||
20 | =================================================================== | ||
21 | --- gcc-4.8.2.orig/libgcc/Makefile.in 2013-02-04 19:06:20.000000000 +0000 | ||
22 | +++ gcc-4.8.2/libgcc/Makefile.in 2014-04-10 09:58:33.018748787 +0000 | ||
23 | @@ -1020,8 +1020,8 @@ | ||
24 | # This is however useful for "install-no-fixincludes" case, when only the gcc | ||
25 | # internal headers are copied by gcc's install. | ||
26 | install-unwind_h: | ||
27 | - $(mkinstalldirs) $(DESTDIR)$(libsubdir)/include | ||
28 | - $(INSTALL_DATA) unwind.h $(DESTDIR)$(libsubdir)/include | ||
29 | +# $(mkinstalldirs) $(DESTDIR)$(libsubdir)/include | ||
30 | +# $(INSTALL_DATA) unwind.h $(DESTDIR)$(libsubdir)/include | ||
31 | |||
32 | all: install-unwind_h-forbuild | ||
33 | |||