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 Signed-off-by: Steve Sakoman <st...@sakoman.com> --- meta/recipes-devtools/gcc/gcc-9.3.inc | 1 + ...x-missing-dependencies-for-selftests.patch | 45 +++++++++++++++++++ 2 files changed, 46 insertions(+) create mode 100644 meta/recipes-devtools/gcc/gcc-9.3/0040-fix-missing-dependencies-for-selftests.patch 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 = "\ file://0037-CVE-2019-14250-Check-zero-value-in-simple_object_elf.patch \ file://0038-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch \ file://0039-process_alt_operands-Don-t-match-user-defined-regs-o.patch \ + file://0040-fix-missing-dependencies-for-selftests.patch \ file://0001-aarch64-New-Straight-Line-Speculation-SLS-mitigation.patch \ file://0002-aarch64-Introduce-SLS-mitigation-for-RET-and-BR-inst.patch \ 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 @@ +From b19d8aac15649f31a7588b2634411a1922906ea8 Mon Sep 17 00:00:00 2001 +From: Romain Naour <romain.na...@gmail.com> +Date: Wed, 3 Jun 2020 12:30:57 -0600 +Subject: [PATCH] Fix missing dependencies for selftests which occasionally + causes failed builds. + +gcc/ + + * Makefile.in (SELFTEST_DEPS): Move before including language makefile + fragments. + +Upstream-Status: Backport [https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=b19d8aac15649f31a7588b2634411a1922906ea8] +Signed-off-by:Steve Sakoman <st...@sakoman.com> + +--- + gcc/Makefile.in | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +diff --git a/gcc/Makefile.in b/gcc/Makefile.in +index aab1dbba57b..be11311b60d 100644 +--- a/gcc/Makefile.in ++++ b/gcc/Makefile.in +@@ -1735,6 +1735,10 @@ $(FULL_DRIVER_NAME): ./xgcc$(exeext) + $(LN_S) $< $@ + + # ++# SELFTEST_DEPS need to be set before including language makefile fragments. ++# Otherwise $(SELFTEST_DEPS) is empty when used from <LANG>/Make-lang.in. ++SELFTEST_DEPS = $(GCC_PASSES) stmp-int-hdrs $(srcdir)/testsuite/selftests ++ + # Language makefile fragments. + + # The following targets define the interface between us and the languages. +@@ -2010,8 +2014,6 @@ DEVNULL=$(if $(findstring mingw,$(build)),nul,/dev/null) + SELFTEST_FLAGS = -nostdinc $(DEVNULL) -S -o $(DEVNULL) \ + -fself-test=$(srcdir)/testsuite/selftests + +-SELFTEST_DEPS = $(GCC_PASSES) stmp-int-hdrs $(srcdir)/testsuite/selftests +- + # Run the selftests during the build once we have a driver and the frontend, + # so that self-test failures are caught as early as possible. + # Use "s-selftest-FE" to ensure that we only run the selftests if the +-- +2.27.0 + -- 2.25.1
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#157222): https://lists.openembedded.org/g/openembedded-core/message/157222 Mute This Topic: https://lists.openembedded.org/mt/86449118/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-