Mon Jul 31 01:48:37 2023 UTC ()
updates for GCC 12 (relatively tiny).

- gcov-iov.h is now called version.h and we build it directly.
- need to explicitly ask for bversion.h gtyp-input.list to be built.


(mrg)
diff -r1.106 -r1.107 src/tools/gcc/Makefile
diff -r1.116 -r1.117 src/tools/gcc/mknative-gcc

cvs diff -r1.106 -r1.107 src/tools/gcc/Makefile (expand / switch to unified diff)

--- src/tools/gcc/Makefile 2023/07/28 08:05:29 1.106
+++ src/tools/gcc/Makefile 2023/07/31 01:48:37 1.107
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1# $NetBSD: Makefile,v 1.106 2023/07/28 08:05:29 mrg Exp $ 1# $NetBSD: Makefile,v 1.107 2023/07/31 01:48:37 mrg Exp $
2 2
3.include <bsd.hostinit.mk> 3.include <bsd.hostinit.mk>
4 4
5GCC_LANGUAGES=c c++ objc 5GCC_LANGUAGES=c c++ objc
6MODULE= ${EXTERNAL_GCC_SUBDIR} 6MODULE= ${EXTERNAL_GCC_SUBDIR}
7 7
8GCCDIST= ${.CURDIR}/../../external/gpl3/${EXTERNAL_GCC_SUBDIR}/dist 8GCCDIST= ${.CURDIR}/../../external/gpl3/${EXTERNAL_GCC_SUBDIR}/dist
9GNUHOSTDIST= ${GCCDIST} 9GNUHOSTDIST= ${GCCDIST}
10 10
11.if ${HAVE_GCC} == 10 11.if ${HAVE_GCC} == 10
12MKNATIVE= ${.CURDIR}/mknative-gcc.old 12MKNATIVE= ${.CURDIR}/mknative-gcc.old
13.endif 13.endif
14 14
@@ -100,26 +100,32 @@ MKNATIVE_CONFIG_TARGET_LIBS+= configure- @@ -100,26 +100,32 @@ MKNATIVE_CONFIG_TARGET_LIBS+= configure-
100MKNATIVE_CONFIG_TARGET_LIBS+= \ 100MKNATIVE_CONFIG_TARGET_LIBS+= \
101 configure-target-libstdc++-v3 \ 101 configure-target-libstdc++-v3 \
102 configure-target-libbacktrace \ 102 configure-target-libbacktrace \
103 configure-target-libobjc 103 configure-target-libobjc
104 104
105.if ${HAVE_GCC} >= 9 105.if ${HAVE_GCC} >= 9
106# XXX needs to build libstdc++ fully, which fails 106# XXX needs to build libstdc++ fully, which fails
107.if 0 107.if 0
108MKNATIVE_CONFIG_TARGET_LIBS+= \ 108MKNATIVE_CONFIG_TARGET_LIBS+= \
109 configure-target-libsanitizer 109 configure-target-libsanitizer
110.endif 110.endif
111.endif 111.endif
112 112
 113.if ${HAVE_GCC} <= 10
 114EXTRA_FILES= gcov-iov.h
 115.else
 116EXTRA_FILES= bversion.h gtyp-input.list
 117.endif
 118
113BINENV= /usr/bin/env -i 119BINENV= /usr/bin/env -i
114 120
115 121
116MKNATIVE_ENV= ${BINENV} ${CONFIGURE_ENV:NC*:NLD*} \ 122MKNATIVE_ENV= ${BINENV} ${CONFIGURE_ENV:NC*:NLD*} \
117 CC_FOR_BUILD=${CC_FOR_BUILD:Q} \ 123 CC_FOR_BUILD=${CC_FOR_BUILD:Q} \
118 CXX_FOR_BUILD=${HOST_CXX:Q} \ 124 CXX_FOR_BUILD=${HOST_CXX:Q} \
119 CFLAGS_FOR_BUILD="-I${TOOLDIR}/include" \ 125 CFLAGS_FOR_BUILD="-I${TOOLDIR}/include" \
120 CC=${CC:Q}' '${CCADDFLAGS:Q} \ 126 CC=${CC:Q}' '${CCADDFLAGS:Q} \
121 CXX=${CXX:Q}' '${CCADDFLAGS:Q}' '${CXXADDFLAGS:Q} \ 127 CXX=${CXX:Q}' '${CCADDFLAGS:Q}' '${CXXADDFLAGS:Q} \
122 CPP=${CPP:Q}' '-I${DESTDIR}/usr/include' '-I${DESTDIR}/usr/include/g++/bits \ 128 CPP=${CPP:Q}' '-I${DESTDIR}/usr/include' '-I${DESTDIR}/usr/include/g++/bits \
123 CFLAGS= CPPFLAGS= CXXFLAGS= LDFLAGS= \ 129 CFLAGS= CPPFLAGS= CXXFLAGS= LDFLAGS= \
124 AS=${AS:Q} AWK=${TOOL_AWK:Q} LD=${LD:Q} \ 130 AS=${AS:Q} AWK=${TOOL_AWK:Q} LD=${LD:Q} \
125 MSGFMT=${TOOLDIR}/bin/${_TOOL_PREFIX}msgfmt \ 131 MSGFMT=${TOOLDIR}/bin/${_TOOL_PREFIX}msgfmt \
@@ -220,27 +226,27 @@ MKENV_BUILD_MAKE=cd .native && ${MKNATIV @@ -220,27 +226,27 @@ MKENV_BUILD_MAKE=cd .native && ${MKNATIV
220 ((${MKENV_BUILD_MAKE} all-libcpp) && \ 226 ((${MKENV_BUILD_MAKE} all-libcpp) && \
221 (${MKENV_BUILD_MAKE} all-libbacktrace) && \ 227 (${MKENV_BUILD_MAKE} all-libbacktrace) && \
222 (${MKENV_BUILD_MAKE} all-libdecnumber) || true) 228 (${MKENV_BUILD_MAKE} all-libdecnumber) || true)
223 PATH=${TOOLDIR}/bin:$$PATH; export PATH; \ 229 PATH=${TOOLDIR}/bin:$$PATH; export PATH; \
224 (${MKENV_BUILD_MAKE} configure-gcc configure-libcpp) && \ 230 (${MKENV_BUILD_MAKE} configure-gcc configure-libcpp) && \
225 (${MKENV_BUILD_MAKE} configure-libiberty) && \ 231 (${MKENV_BUILD_MAKE} configure-libiberty) && \
226 (${MKENV_BUILD_MAKE} configure-libdecnumber) 232 (${MKENV_BUILD_MAKE} configure-libdecnumber)
227 # edit Makefile so that maybe-all-gcc does not depend on all-gcc any more. 233 # edit Makefile so that maybe-all-gcc does not depend on all-gcc any more.
228 (cd .native && mv Makefile Makefile.config && \ 234 (cd .native && mv Makefile Makefile.config && \
229 ${TOOL_SED} -e 's/\(maybe-all-gcc:\) all-gcc/\1/' \ 235 ${TOOL_SED} -e 's/\(maybe-all-gcc:\) all-gcc/\1/' \
230 -e 's/\(maybe-all-target-libgcc:\) all-target-libgcc/\1/' \ 236 -e 's/\(maybe-all-target-libgcc:\) all-target-libgcc/\1/' \
231 < Makefile.config > Makefile) 237 < Makefile.config > Makefile)
232 PATH=${TOOLDIR}/bin:$$PATH; export PATH; \ 238 PATH=${TOOLDIR}/bin:$$PATH; export PATH; \
233 (cd .native/gcc && ${MKNATIVE_ENV} ${BUILD_MAKE} -e tree-check.h config.h multilib.h gcov-iov.h) 239 (cd .native/gcc && ${MKNATIVE_ENV} ${BUILD_MAKE} -e tree-check.h config.h multilib.h ${EXTRA_FILES})
234 PATH=${TOOLDIR}/bin:$$PATH; export PATH; \ 240 PATH=${TOOLDIR}/bin:$$PATH; export PATH; \
235 (cd .native/gcc && ${MKNATIVE_ENV} ${BUILD_MAKE} -e libgcc.mvars tconfig.h); \ 241 (cd .native/gcc && ${MKNATIVE_ENV} ${BUILD_MAKE} -e libgcc.mvars tconfig.h); \
236 (cd .native && touch gcc/cc1obj gcc/cc1plus gcc/f771 gcc/libgcc.a gcc/libgcc_s.so) 242 (cd .native && touch gcc/cc1obj gcc/cc1plus gcc/f771 gcc/libgcc.a gcc/libgcc_s.so)
237 PATH=${TOOLDIR}/bin:$$PATH; export PATH; \ 243 PATH=${TOOLDIR}/bin:$$PATH; export PATH; \
238 (cd .native/gcc && ${MKNATIVE_ENV} ${BUILD_MAKE} -e s-omp-device-properties-h) 244 (cd .native/gcc && ${MKNATIVE_ENV} ${BUILD_MAKE} -e s-omp-device-properties-h)
239.if defined(EXTRA_GCC_TARGETS) 245.if defined(EXTRA_GCC_TARGETS)
240 PATH=${TOOLDIR}/bin:$$PATH; export PATH; \ 246 PATH=${TOOLDIR}/bin:$$PATH; export PATH; \
241 (cd .native/gcc && ${MKNATIVE_ENV} ${BUILD_MAKE} -e ${EXTRA_GCC_TARGETS}) 247 (cd .native/gcc && ${MKNATIVE_ENV} ${BUILD_MAKE} -e ${EXTRA_GCC_TARGETS})
242.endif 248.endif
243.for _lib in ${MKNATIVE_CONFIG_TARGET_LIBS} 249.for _lib in ${MKNATIVE_CONFIG_TARGET_LIBS}
244 PATH=${TOOLDIR}/bin:$$PATH; export PATH; \ 250 PATH=${TOOLDIR}/bin:$$PATH; export PATH; \
245 (cd .native && ${MKNATIVE_ENV} ${BUILD_MAKE} \ 251 (cd .native && ${MKNATIVE_ENV} ${BUILD_MAKE} \
246 ${_lib} \ 252 ${_lib} \

cvs diff -r1.116 -r1.117 src/tools/gcc/mknative-gcc (expand / switch to unified diff)

--- src/tools/gcc/mknative-gcc 2022/07/22 06:50:26 1.116
+++ src/tools/gcc/mknative-gcc 2023/07/31 01:48:37 1.117
@@ -1,15 +1,15 @@ @@ -1,15 +1,15 @@
1#!/bin/sh 1#!/bin/sh
2# $NetBSD: mknative-gcc,v 1.116 2022/07/22 06:50:26 mrg Exp $ 2# $NetBSD: mknative-gcc,v 1.117 2023/07/31 01:48:37 mrg Exp $
3# 3#
4# Shell script for generating all the constants needed for a native 4# Shell script for generating all the constants needed for a native
5# platform build of gcc. 5# platform build of gcc.
6# 6#
7# This version is for GCC 10.3 7# This version is for GCC 10.3
8 8
9# initialise 9# initialise
10 10
11_TMPDIR=$2 11_TMPDIR=$2
12_TOP=$3 12_TOP=$3
13_SRC=$4 13_SRC=$4
14_PLATFORM=$5 14_PLATFORM=$5
15_MACHINE_ARCH=$6 15_MACHINE_ARCH=$6
@@ -122,29 +122,26 @@ get_libgcov () { @@ -122,29 +122,26 @@ get_libgcov () {
122 _subdir="$1" 122 _subdir="$1"
123 _mf="$2" 123 _mf="$2"
124 124
125 mkdir -p $_OUTDIR/lib/lib$_subdir/libgcov/arch/$_MACHINE_ARCH 125 mkdir -p $_OUTDIR/lib/lib$_subdir/libgcov/arch/$_MACHINE_ARCH
126 126
127 { 127 {
128 getvars $_mf \ 128 getvars $_mf \
129 LIBGCOV_MERGE \ 129 LIBGCOV_MERGE \
130 LIBGCOV_PROFILER \ 130 LIBGCOV_PROFILER \
131 LIBGCOV_INTERFACE \ 131 LIBGCOV_INTERFACE \
132 LIBGCOV_DRIVER 132 LIBGCOV_DRIVER
133 } | write_mk $_OUTDIRBASE/lib/lib$_subdir/libgcov/arch/$_MACHINE_ARCH/defs.mk 133 } | write_mk $_OUTDIRBASE/lib/lib$_subdir/libgcov/arch/$_MACHINE_ARCH/defs.mk
134 134
135 write_c $_OUTDIRBASE/lib/lib$_subdir/libgcov/arch/$_MACHINE_ARCH/gcov-iov.h \ 
136 <$_TMPDIR/gcc/gcov-iov.h 
137 
138} 135}
139 136
140##### lib/libiberty ##### 137##### lib/libiberty #####
141 138
142get_gcc_libiberty () { 139get_gcc_libiberty () {
143 _subdir="$1" 140 _subdir="$1"
144 _libibertydir="lib/libiberty" 141 _libibertydir="lib/libiberty"
145 mkdir -p $_OUTDIR/$_libibertydir/arch/$_MACHINE_ARCH 142 mkdir -p $_OUTDIR/$_libibertydir/arch/$_MACHINE_ARCH
146 143
147 getvars libiberty/Makefile \ 144 getvars libiberty/Makefile \
148 ALLOCA EXTRA_OFILES LIBOBJS REQUIRED_OFILES \ 145 ALLOCA EXTRA_OFILES LIBOBJS REQUIRED_OFILES \
149 | write_mk $_OUTDIRBASE/$_libibertydir/defs.mk 146 | write_mk $_OUTDIRBASE/$_libibertydir/defs.mk
150 147