From fe98f2679c2e73245c06a4b6a404abba4a915930 Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Mon, 12 Mar 2018 11:50:08 +0100 Subject: [PATCH] toolchain/gcc: fix a build failure on 7.3.0 with macOS Signed-off-by: Felix Fietkau --- ...-Add-.NOTPARALLEL-to-include-Makefil.patch | 178 ++++++++++++++++++ 1 file changed, 178 insertions(+) create mode 100644 toolchain/gcc/patches/7.3.0/020-PR-libstdc-81797-Add-.NOTPARALLEL-to-include-Makefil.patch diff --git a/toolchain/gcc/patches/7.3.0/020-PR-libstdc-81797-Add-.NOTPARALLEL-to-include-Makefil.patch b/toolchain/gcc/patches/7.3.0/020-PR-libstdc-81797-Add-.NOTPARALLEL-to-include-Makefil.patch new file mode 100644 index 0000000000..c3981b1dc4 --- /dev/null +++ b/toolchain/gcc/patches/7.3.0/020-PR-libstdc-81797-Add-.NOTPARALLEL-to-include-Makefil.patch @@ -0,0 +1,178 @@ +From: redi +Date: Mon, 19 Feb 2018 16:02:38 +0000 +Subject: [PATCH] PR libstdc++/81797 Add .NOTPARALLEL to include/Makefile for + darwin + +Backport from mainline +2018-02-15 Jonathan Wakely + + PR libstdc++/81797 + * configure.ac (INCLUDE_DIR_NOTPARALLEL): Define. + * configure: Regenerate. + * include/Makefile.am (INCLUDE_DIR_NOTPARALLEL): Add .NOTPARALLEL when + defined. + * include/Makefile.in: Regenerate. + +git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-7-branch@257808 138bc75d-0d04-0410-961f-82ee72b054a4 +--- + +--- a/libstdc++-v3/configure ++++ b/libstdc++-v3/configure +@@ -620,6 +620,8 @@ CPU_DEFINES_SRCDIR + ATOMIC_FLAGS + ATOMIC_WORD_SRCDIR + ATOMICITY_SRCDIR ++INCLUDE_DIR_NOTPARALLEL_FALSE ++INCLUDE_DIR_NOTPARALLEL_TRUE + BUILD_PDF_FALSE + BUILD_PDF_TRUE + PDFLATEX +@@ -11601,7 +11603,7 @@ else + lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 + lt_status=$lt_dlunknown + cat > conftest.$ac_ext <<_LT_EOF +-#line 11604 "configure" ++#line 11606 "configure" + #include "confdefs.h" + + #if HAVE_DLFCN_H +@@ -11707,7 +11709,7 @@ else + lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 + lt_status=$lt_dlunknown + cat > conftest.$ac_ext <<_LT_EOF +-#line 11710 "configure" ++#line 11712 "configure" + #include "confdefs.h" + + #if HAVE_DLFCN_H +@@ -15393,7 +15395,7 @@ $as_echo "$glibcxx_cv_atomic_long_long" + # Fake what AC_TRY_COMPILE does. + + cat > conftest.$ac_ext << EOF +-#line 15396 "configure" ++#line 15398 "configure" + int main() + { + typedef bool atomic_type; +@@ -15428,7 +15430,7 @@ $as_echo "$glibcxx_cv_atomic_bool" >&6; + rm -f conftest* + + cat > conftest.$ac_ext << EOF +-#line 15431 "configure" ++#line 15433 "configure" + int main() + { + typedef short atomic_type; +@@ -15463,7 +15465,7 @@ $as_echo "$glibcxx_cv_atomic_short" >&6; + rm -f conftest* + + cat > conftest.$ac_ext << EOF +-#line 15466 "configure" ++#line 15468 "configure" + int main() + { + // NB: _Atomic_word not necessarily int. +@@ -15499,7 +15501,7 @@ $as_echo "$glibcxx_cv_atomic_int" >&6; } + rm -f conftest* + + cat > conftest.$ac_ext << EOF +-#line 15502 "configure" ++#line 15504 "configure" + int main() + { + typedef long long atomic_type; +@@ -15580,7 +15582,7 @@ $as_echo "$as_me: WARNING: Performance o + # unnecessary for this test. + + cat > conftest.$ac_ext << EOF +-#line 15583 "configure" ++#line 15585 "configure" + int main() + { + _Decimal32 d1; +@@ -15622,7 +15624,7 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu + # unnecessary for this test. + + cat > conftest.$ac_ext << EOF +-#line 15625 "configure" ++#line 15627 "configure" + template + struct same + { typedef T2 type; }; +@@ -15656,7 +15658,7 @@ $as_echo "$enable_int128" >&6; } + rm -f conftest* + + cat > conftest.$ac_ext << EOF +-#line 15659 "configure" ++#line 15661 "configure" + template + struct same + { typedef T2 type; }; +@@ -81219,6 +81221,18 @@ else + fi + + ++case "$build" in ++ *-*-darwin* ) glibcxx_include_dir_notparallel=yes ;; ++ * ) glibcxx_include_dir_notparallel=no ;; ++esac ++ if test $glibcxx_include_dir_notparallel = "yes"; then ++ INCLUDE_DIR_NOTPARALLEL_TRUE= ++ INCLUDE_DIR_NOTPARALLEL_FALSE='#' ++else ++ INCLUDE_DIR_NOTPARALLEL_TRUE='#' ++ INCLUDE_DIR_NOTPARALLEL_FALSE= ++fi ++ + + # Propagate the target-specific source directories through the build chain. + ATOMICITY_SRCDIR=config/${atomicity_dir} +@@ -81913,6 +81927,10 @@ if test -z "${BUILD_PDF_TRUE}" && test - + as_fn_error "conditional \"BUILD_PDF\" was never defined. + Usually this means the macro was only invoked conditionally." "$LINENO" 5 + fi ++if test -z "${INCLUDE_DIR_NOTPARALLEL_TRUE}" && test -z "${INCLUDE_DIR_NOTPARALLEL_FALSE}"; then ++ as_fn_error "conditional \"INCLUDE_DIR_NOTPARALLEL\" was never defined. ++Usually this means the macro was only invoked conditionally." "$LINENO" 5 ++fi + + : ${CONFIG_STATUS=./config.status} + ac_write_fail=0 +--- a/libstdc++-v3/configure.ac ++++ b/libstdc++-v3/configure.ac +@@ -467,6 +467,12 @@ AM_CONDITIONAL(BUILD_PDF, + test $ac_cv_prog_DBLATEX = "yes" && + test $ac_cv_prog_PDFLATEX = "yes") + ++case "$build" in ++ *-*-darwin* ) glibcxx_include_dir_notparallel=yes ;; ++ * ) glibcxx_include_dir_notparallel=no ;; ++esac ++AM_CONDITIONAL(INCLUDE_DIR_NOTPARALLEL, ++ test $glibcxx_include_dir_notparallel = "yes") + + # Propagate the target-specific source directories through the build chain. + ATOMICITY_SRCDIR=config/${atomicity_dir} +--- a/libstdc++-v3/include/Makefile.am ++++ b/libstdc++-v3/include/Makefile.am +@@ -1474,3 +1474,8 @@ $(decimal_headers): ; @: + $(ext_headers): ; @: + $(experimental_headers): ; @: + $(experimental_bits_headers): ; @: ++ ++if INCLUDE_DIR_NOTPARALLEL ++# See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81797 ++.NOTPARALLEL: ++endif +--- a/libstdc++-v3/include/Makefile.in ++++ b/libstdc++-v3/include/Makefile.in +@@ -1897,6 +1897,9 @@ $(ext_headers): ; @: + $(experimental_headers): ; @: + $(experimental_bits_headers): ; @: + ++# See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81797 ++@INCLUDE_DIR_NOTPARALLEL_TRUE@.NOTPARALLEL: ++ + # Tell versions [3.59,3.63) of GNU make to not export all variables. + # Otherwise a system limit (for SysV at least) may be exceeded. + .NOEXPORT: -- 2.30.2