diff options
author | Steve Sakoman <steve@sakoman.com> | 2021-10-05 13:39:20 -1000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2021-10-23 23:14:17 +0100 |
commit | e2c46b23d325551221baf587c2f8979dffc06a49 (patch) | |
tree | 73fe01dc5d55276849425a6b206384e734d3f628 /meta/recipes-devtools | |
parent | b6869250d302de2cdad20e6ec100c2aa7762ef6a (diff) | |
download | poky-e2c46b23d325551221baf587c2f8979dffc06a49.tar.gz |
gcc: fix missing dependencies for selftests
Building GCC with multiple make jobs appears to trigger a race condition. The build fails with:
/bin/bash: TOPDIR/tmp/work/x86_64-linux/gcc-cross-i686/9.3.0-r0/gcc-9.3.0/build.x86_64-linux.i686-poky-linux/./gcc/xgcc: No such file or directory
(From OE-Core rev: 5690d18bb6a9a61a81ccd0bc28d1ace4181d1921)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools')
-rw-r--r-- | meta/recipes-devtools/gcc/gcc-9.3.inc | 1 | ||||
-rw-r--r-- | meta/recipes-devtools/gcc/gcc-9.3/0040-fix-missing-dependencies-for-selftests.patch | 45 |
2 files changed, 46 insertions, 0 deletions
diff --git a/meta/recipes-devtools/gcc/gcc-9.3.inc b/meta/recipes-devtools/gcc/gcc-9.3.inc index 1c8e3df51d..235576e627 100644 --- a/meta/recipes-devtools/gcc/gcc-9.3.inc +++ b/meta/recipes-devtools/gcc/gcc-9.3.inc | |||
@@ -69,6 +69,7 @@ SRC_URI = "\ | |||
69 | file://0037-CVE-2019-14250-Check-zero-value-in-simple_object_elf.patch \ | 69 | file://0037-CVE-2019-14250-Check-zero-value-in-simple_object_elf.patch \ |
70 | file://0038-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch \ | 70 | file://0038-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch \ |
71 | file://0039-process_alt_operands-Don-t-match-user-defined-regs-o.patch \ | 71 | file://0039-process_alt_operands-Don-t-match-user-defined-regs-o.patch \ |
72 | file://0040-fix-missing-dependencies-for-selftests.patch \ | ||
72 | file://0001-aarch64-New-Straight-Line-Speculation-SLS-mitigation.patch \ | 73 | file://0001-aarch64-New-Straight-Line-Speculation-SLS-mitigation.patch \ |
73 | file://0002-aarch64-Introduce-SLS-mitigation-for-RET-and-BR-inst.patch \ | 74 | file://0002-aarch64-Introduce-SLS-mitigation-for-RET-and-BR-inst.patch \ |
74 | file://0003-aarch64-Mitigate-SLS-for-BLR-instruction.patch \ | 75 | file://0003-aarch64-Mitigate-SLS-for-BLR-instruction.patch \ |
diff --git a/meta/recipes-devtools/gcc/gcc-9.3/0040-fix-missing-dependencies-for-selftests.patch b/meta/recipes-devtools/gcc/gcc-9.3/0040-fix-missing-dependencies-for-selftests.patch new file mode 100644 index 0000000000..c8960c6098 --- /dev/null +++ b/meta/recipes-devtools/gcc/gcc-9.3/0040-fix-missing-dependencies-for-selftests.patch | |||
@@ -0,0 +1,45 @@ | |||
1 | From b19d8aac15649f31a7588b2634411a1922906ea8 Mon Sep 17 00:00:00 2001 | ||
2 | From: Romain Naour <romain.naour@gmail.com> | ||
3 | Date: Wed, 3 Jun 2020 12:30:57 -0600 | ||
4 | Subject: [PATCH] Fix missing dependencies for selftests which occasionally | ||
5 | causes failed builds. | ||
6 | |||
7 | gcc/ | ||
8 | |||
9 | * Makefile.in (SELFTEST_DEPS): Move before including language makefile | ||
10 | fragments. | ||
11 | |||
12 | Upstream-Status: Backport [https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=b19d8aac15649f31a7588b2634411a1922906ea8] | ||
13 | Signed-off-by:Steve Sakoman <steve@sakoman.com> | ||
14 | |||
15 | --- | ||
16 | gcc/Makefile.in | 6 ++++-- | ||
17 | 1 file changed, 4 insertions(+), 2 deletions(-) | ||
18 | |||
19 | diff --git a/gcc/Makefile.in b/gcc/Makefile.in | ||
20 | index aab1dbba57b..be11311b60d 100644 | ||
21 | --- a/gcc/Makefile.in | ||
22 | +++ b/gcc/Makefile.in | ||
23 | @@ -1735,6 +1735,10 @@ $(FULL_DRIVER_NAME): ./xgcc$(exeext) | ||
24 | $(LN_S) $< $@ | ||
25 | |||
26 | # | ||
27 | +# SELFTEST_DEPS need to be set before including language makefile fragments. | ||
28 | +# Otherwise $(SELFTEST_DEPS) is empty when used from <LANG>/Make-lang.in. | ||
29 | +SELFTEST_DEPS = $(GCC_PASSES) stmp-int-hdrs $(srcdir)/testsuite/selftests | ||
30 | + | ||
31 | # Language makefile fragments. | ||
32 | |||
33 | # The following targets define the interface between us and the languages. | ||
34 | @@ -2010,8 +2014,6 @@ DEVNULL=$(if $(findstring mingw,$(build)),nul,/dev/null) | ||
35 | SELFTEST_FLAGS = -nostdinc $(DEVNULL) -S -o $(DEVNULL) \ | ||
36 | -fself-test=$(srcdir)/testsuite/selftests | ||
37 | |||
38 | -SELFTEST_DEPS = $(GCC_PASSES) stmp-int-hdrs $(srcdir)/testsuite/selftests | ||
39 | - | ||
40 | # Run the selftests during the build once we have a driver and the frontend, | ||
41 | # so that self-test failures are caught as early as possible. | ||
42 | # Use "s-selftest-FE" to ensure that we only run the selftests if the | ||
43 | -- | ||
44 | 2.27.0 | ||
45 | |||