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 /meta/recipes-devtools | |
| 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>
Diffstat (limited to 'meta/recipes-devtools')
| -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 | |||
