summaryrefslogtreecommitdiff
path: root/eclass
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2022-10-04 02:23:32 +0100
committerSam James <sam@gentoo.org>2022-10-04 02:28:26 +0100
commit4505e063f64a7539222d0ccb224f6fa6b1832fc8 (patch)
tree8c75ccc3c6bcac531edb3333ac3bdcb1f6c9ceb6 /eclass
parentgui-libs/wlroots: 9999 remove patch merged upstream and update libdrm dep (diff)
downloadgentoo-4505e063f64a7539222d0ccb224f6fa6b1832fc8.tar.gz
gentoo-4505e063f64a7539222d0ccb224f6fa6b1832fc8.tar.bz2
gentoo-4505e063f64a7539222d0ccb224f6fa6b1832fc8.zip
toolchain.eclass: allow fixincludes for >= GCC 13
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'eclass')
-rw-r--r--eclass/toolchain.eclass24
1 files changed, 14 insertions, 10 deletions
diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass
index 71342765c78e..3a673e161f4d 100644
--- a/eclass/toolchain.eclass
+++ b/eclass/toolchain.eclass
@@ -1975,16 +1975,20 @@ toolchain_src_install() {
fi
done
- # We remove the generated fixincludes, as they can cause things to break
- # (ncurses, openssl, etc). We do not prevent them from being built, as
- # in the following commit which we revert:
- # https://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.647&r2=1.648
- # This is because bsd userland needs fixedincludes to build gcc, while
- # linux does not. Both can dispose of them afterwards.
- while read x ; do
- grep -q 'It has been auto-edited by fixincludes from' "${x}" \
- && rm -f "${x}"
- done < <(find gcc/include*/ -name '*.h')
+ # Re-enable fixincludes for >= GCC 13
+ # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107128
+ if [[ ${GCCMAJOR} -lt 13 ]] ; then
+ # We remove the generated fixincludes, as they can cause things to break
+ # (ncurses, openssl, etc). We do not prevent them from being built, as
+ # in the following commit which we revert:
+ # https://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/eclass/toolchain.eclass?r1=1.647&r2=1.648
+ # This is because bsd userland needs fixedincludes to build gcc, while
+ # linux does not. Both can dispose of them afterwards.
+ while read x ; do
+ grep -q 'It has been auto-edited by fixincludes from' "${x}" \
+ && rm -f "${x}"
+ done < <(find gcc/include*/ -name '*.h')
+ fi
if is_jit ; then
# See https://gcc.gnu.org/onlinedocs/gcc-11.3.0/jit/internals/index.html#packaging-notes