CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Mon Aug 16 06:25:45 UTC 2021 Modified Files: src/tools/gcc: mknative-gcc Log Message: fetch experimental_headers, experimental_bits_headers, and ext_host_headers to install install experimental/* and ext/opt_random.h. To generate a diff of this commit: cvs rdiff -u -r1.114 -r1.115 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.114 src/tools/gcc/mknative-gcc:1.115 --- src/tools/gcc/mknative-gcc:1.114 Sun Apr 11 07:35:45 2021 +++ src/tools/gcc/mknative-gcc Mon Aug 16 06:25:45 2021 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.114 2021/04/11 07:35:45 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.115 2021/08/16 06:25:45 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -234,8 +234,10 @@ get_libstdcxx_v3 () { _headers1="$_headers1 pb_headers1 pb_headers2 pb_headers3 pb_headers4" _headers1="$_headers1 pb_headers5 pb_headers6 pb_headers7" _headers1="$_headers1 bits_headers ext_headers host_headers" - _headers1="$_headers1 thread_host_headers pstl_headers" + _headers1="$_headers1 pstl_headers" _headers1="$_headers1 profile_headers profile_impl_headers" + _headers1="$_headers1 experimental_headers experimental_bits_headers" + _headers1="$_headers1 ext_host_headers" # build files for h in $_build_headers; do
CVS commit: src/tools/gcc
Module Name:src Committed By: christos Date: Sat May 8 19:36:28 UTC 2021 Modified Files: src/tools/gcc: Makefile Log Message: Disable again initfini; breaks some archs and not worth dealing with when we have both gcc's active in the tree. To generate a diff of this commit: cvs rdiff -u -r1.103 -r1.104 src/tools/gcc/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.103 src/tools/gcc/Makefile:1.104 --- src/tools/gcc/Makefile:1.103 Fri May 7 19:00:04 2021 +++ src/tools/gcc/Makefile Sat May 8 15:36:28 2021 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.103 2021/05/07 23:00:04 christos Exp $ +# $NetBSD: Makefile,v 1.104 2021/05/08 19:36:28 christos Exp $ .include @@ -37,7 +37,6 @@ COMMON_CONFIGURE_ARGS= --target=${MACHIN --with-system-zlib \ --without-isl \ --enable-__cxa_atexit \ - --enable-initfini-array=yes \ --enable-libstdcxx-time=rt \ --enable-libstdcxx-threads \ --with-diagnostics-color=auto-if-env
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Sun Apr 11 23:55:47 UTC 2021 Modified Files: src/tools/gcc: Makefile gcc-version.mk Log Message: add a netbsd version for GCC 10. properly generate omp-device-properties.h. To generate a diff of this commit: cvs rdiff -u -r1.101 -r1.102 src/tools/gcc/Makefile cvs rdiff -u -r1.20 -r1.21 src/tools/gcc/gcc-version.mk Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.101 src/tools/gcc/Makefile:1.102 --- src/tools/gcc/Makefile:1.101 Sun Apr 11 07:35:45 2021 +++ src/tools/gcc/Makefile Sun Apr 11 23:55:47 2021 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.101 2021/04/11 07:35:45 mrg Exp $ +# $NetBSD: Makefile,v 1.102 2021/04/11 23:55:47 mrg Exp $ .include @@ -234,7 +234,7 @@ MKENV_BUILD_MAKE=cd .native && ${MKNATIV (cd .native/gcc && ${MKNATIVE_ENV} ${BUILD_MAKE} -e libgcc.mvars tconfig.h); \ (cd .native && touch gcc/cc1obj gcc/cc1plus gcc/f771 gcc/libgcc.a gcc/libgcc_s.so) PATH=${TOOLDIR}/bin:$$PATH; export PATH; \ - (cd .native/gcc && ${MKNATIVE_ENV} ${BUILD_MAKE} -e omp-device-properties.h) + (cd .native/gcc && ${MKNATIVE_ENV} ${BUILD_MAKE} -e s-omp-device-properties-h) .if defined(EXTRA_GCC_TARGETS) PATH=${TOOLDIR}/bin:$$PATH; export PATH; \ (cd .native/gcc && ${MKNATIVE_ENV} ${BUILD_MAKE} -e ${EXTRA_GCC_TARGETS}) Index: src/tools/gcc/gcc-version.mk diff -u src/tools/gcc/gcc-version.mk:1.20 src/tools/gcc/gcc-version.mk:1.21 --- src/tools/gcc/gcc-version.mk:1.20 Sun Sep 6 21:59:33 2020 +++ src/tools/gcc/gcc-version.mk Sun Apr 11 23:55:47 2021 @@ -1,4 +1,4 @@ -# $NetBSD: gcc-version.mk,v 1.20 2020/09/06 21:59:33 mrg Exp $ +# $NetBSD: gcc-version.mk,v 1.21 2021/04/11 23:55:47 mrg Exp $ # common location for tools and native build @@ -6,4 +6,6 @@ NETBSD_GCC_VERSION=nb1 20200311 .elif ${HAVE_GCC} == 9 NETBSD_GCC_VERSION=nb1 20200907 +.elif ${HAVE_GCC} == 10 +NETBSD_GCC_VERSION=nb1 20210411 .endif
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Sun Apr 11 07:35:45 UTC 2021 Modified Files: src/tools/gcc: Makefile mknative-gcc Log Message: fetch omp-device-properties.h and don't try to fetch sanitizer stuff automatically yet. To generate a diff of this commit: cvs rdiff -u -r1.100 -r1.101 src/tools/gcc/Makefile cvs rdiff -u -r1.113 -r1.114 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.100 src/tools/gcc/Makefile:1.101 --- src/tools/gcc/Makefile:1.100 Sun Sep 6 02:24:38 2020 +++ src/tools/gcc/Makefile Sun Apr 11 07:35:45 2021 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.100 2020/09/06 02:24:38 mrg Exp $ +# $NetBSD: Makefile,v 1.101 2021/04/11 07:35:45 mrg Exp $ .include @@ -8,7 +8,7 @@ MODULE= ${EXTERNAL_GCC_SUBDIR} GCCDIST= ${.CURDIR}/../../external/gpl3/${EXTERNAL_GCC_SUBDIR}/dist GNUHOSTDIST= ${GCCDIST} -.if ${HAVE_GCC} == 7 +.if ${HAVE_GCC} == 9 MKNATIVE= ${.CURDIR}/mknative-gcc.old .endif @@ -233,6 +233,8 @@ MKENV_BUILD_MAKE=cd .native && ${MKNATIV PATH=${TOOLDIR}/bin:$$PATH; export PATH; \ (cd .native/gcc && ${MKNATIVE_ENV} ${BUILD_MAKE} -e libgcc.mvars tconfig.h); \ (cd .native && touch gcc/cc1obj gcc/cc1plus gcc/f771 gcc/libgcc.a gcc/libgcc_s.so) + PATH=${TOOLDIR}/bin:$$PATH; export PATH; \ + (cd .native/gcc && ${MKNATIVE_ENV} ${BUILD_MAKE} -e omp-device-properties.h) .if defined(EXTRA_GCC_TARGETS) PATH=${TOOLDIR}/bin:$$PATH; export PATH; \ (cd .native/gcc && ${MKNATIVE_ENV} ${BUILD_MAKE} -e ${EXTRA_GCC_TARGETS}) Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.113 src/tools/gcc/mknative-gcc:1.114 --- src/tools/gcc/mknative-gcc:1.113 Sun Apr 11 01:44:14 2021 +++ src/tools/gcc/mknative-gcc Sun Apr 11 07:35:45 2021 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.113 2021/04/11 01:44:14 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.114 2021/04/11 07:35:45 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -401,7 +401,7 @@ get_gcc () { | write_mk $_OUTDIRBASE/usr.bin/common-target/arch/$_MACHINE_ARCH.mk write_c $_OUTDIRBASE/usr.bin/libcpp/arch/$_MACHINE_ARCH/config.h <$_TMPDIR/libcpp/config.h - hfiles='auto-host configargs config bconfig bversion plugin-version multilib tm' + hfiles='auto-host configargs config bconfig bversion plugin-version multilib tm omp-device-properties' for f in $hfiles; do write_c $_OUTDIRBASE/usr.bin/$_subdir/arch/$_MACHINE_ARCH/$f.h <$_TMPDIR/gcc/$f.h if [ "${_MACHINE_ARCH}" = "powerpc" -a "${f}" = "configargs" ] @@ -493,7 +493,8 @@ gcc*) get_gcc_libiberty gcc get_libobjc libobjc get_libstdcxx_v3 libstdc++-v3 gcc - get_libsanitizer libsanitizer + # wants libstdc++-v3 built + # get_libsanitizer libsanitizer get_libdecnumber libdecnumber get_libgomp libgomp get_libbacktrace libbacktrace
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Sun Apr 11 01:44:14 UTC 2021 Modified Files: src/tools/gcc: mknative-gcc mknative-gcc.old Log Message: make mknative-gcc.old for GCC 9. begin to update mknative-gcc for GCC 10. To generate a diff of this commit: cvs rdiff -u -r1.112 -r1.113 src/tools/gcc/mknative-gcc cvs rdiff -u -r1.9 -r1.10 src/tools/gcc/mknative-gcc.old Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.112 src/tools/gcc/mknative-gcc:1.113 --- src/tools/gcc/mknative-gcc:1.112 Wed Sep 9 07:12:04 2020 +++ src/tools/gcc/mknative-gcc Sun Apr 11 01:44:14 2021 @@ -1,10 +1,10 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.112 2020/09/09 07:12:04 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.113 2021/04/11 01:44:14 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. # -# This version is for GCC 9.3 +# This version is for GCC 10.3 # initialise @@ -312,9 +312,11 @@ get_libsanitizer () { getvars $_PLATFORM/libsanitizer/lsan/Makefile \ lsan_files getvars $_PLATFORM/libsanitizer/tsan/Makefile \ - tsan_plugin_files + tsan_files getvars $_PLATFORM/libsanitizer/ubsan/Makefile \ - ubsan_plugin_files + ubsan_files + getvars $_PLATFORM/libsanitizer/interception/Makefile \ + interception_files } | sanitise_includes \ | write_mk $_OUTDIRBASE/lib/$_subdir/arch/$_MACHINE_ARCH/defs.mk @@ -491,8 +493,7 @@ gcc*) get_gcc_libiberty gcc get_libobjc libobjc get_libstdcxx_v3 libstdc++-v3 gcc - # XXX not yet - # get_libsanitizer libsanitizer + get_libsanitizer libsanitizer get_libdecnumber libdecnumber get_libgomp libgomp get_libbacktrace libbacktrace Index: src/tools/gcc/mknative-gcc.old diff -u src/tools/gcc/mknative-gcc.old:1.9 src/tools/gcc/mknative-gcc.old:1.10 --- src/tools/gcc/mknative-gcc.old:1.9 Sun Sep 6 02:24:38 2020 +++ src/tools/gcc/mknative-gcc.old Sun Apr 11 01:44:14 2021 @@ -1,10 +1,10 @@ #!/bin/sh -# $NetBSD: mknative-gcc.old,v 1.9 2020/09/06 02:24:38 mrg Exp $ +# $NetBSD: mknative-gcc.old,v 1.10 2021/04/11 01:44:14 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. # -# This version is for GCC 7.5 +# This version is for GCC 9.3 # initialise @@ -226,12 +226,16 @@ get_libstdcxx_v3 () { mkdir -p $_OUTDIR/lib/$_subdir/arch/$_MACHINE_ARCH _build_headers="c++config.h cxxabi_tweaks.h" - _headers1="c_base_headers_extra_install" - _headers1="$_headers1 tr1_headers tr2_headers decimal_headers c_compatibility_headers_install" + _headers1="backward_headers c_base_headers_extra" + _headers1="$_headers1 c_base_headers_extra_install" + _headers1="$_headers1 tr1_headers tr2_headers" + _headers1="$_headers1 decimal_headers c_compatibility_headers_install" _headers1="$_headers1 debug_headers parallel_headers" - _headers2="host_headers thread_host_headers" - _pf_headers="profile_headers profile_impl_headers" - _pb_headers="pb_headers1 pb_headers2 pb_headers3 pb_headers4 pb_headers5 pb_headers6 pb_headers7" + _headers1="$_headers1 pb_headers1 pb_headers2 pb_headers3 pb_headers4" + _headers1="$_headers1 pb_headers5 pb_headers6 pb_headers7" + _headers1="$_headers1 bits_headers ext_headers host_headers" + _headers1="$_headers1 thread_host_headers pstl_headers" + _headers1="$_headers1 profile_headers profile_impl_headers" # build files for h in $_build_headers; do @@ -248,6 +252,7 @@ get_libstdcxx_v3 () { getvars $_PLATFORM/libstdc++-v3/Makefile \ port_specific_symbol_files getvars $_PLATFORM/libstdc++-v3/src/Makefile \ + cxx17_sources \ cxx11_sources \ cxx98_sources @@ -264,6 +269,9 @@ get_libstdcxx_v3 () { # src getvars $_PLATFORM/libstdc++-v3/src/Makefile \ libstdc___la_SOURCES | sed 's/^G_libstdc___la_SOURCES=/G_SRC_SOURCES=/' + getvars $_PLATFORM/libstdc++-v3/src/c++17/Makefile \ + libc__17convenience_la_SOURCES | \ + sed -e 's/^G_libc__17convenience_la_SOURCES=/G_CPP17_SOURCES=/' getvars $_PLATFORM/libstdc++-v3/src/c++11/Makefile \ libc__11convenience_la_SOURCES | \ sed -e 's/^G_libc__11convenience_la_SOURCES=/G_CPP11_SOURCES=/' \ @@ -282,19 +290,36 @@ get_libstdcxx_v3 () { # includes getvars $_PLATFORM/libstdc++-v3/include/Makefile \ - backward_headers c_base_headers_extra $_headers1 $_pb_headers | \ -sed -e 's#\${GNUHOSTDIST}/libstdc++-v3/include/##g' - getvars $_PLATFORM/libstdc++-v3/include/Makefile \ - bits_headers ext_headers $_headers2 | \ -sed -e 's#\${GNUHOSTDIST}/libstdc++-v3/include/##g' -e 's#\${GNUHOSTDIST}/libstdc++-v3/config/##g' - getvars $_PLATFORM/libstdc++-v3/include/Makefile \ - $_pf_headers | sed -e 's#\${GNUHOSTDIST}/libstdc++-v3/include/profile/##g' + $_headers1 | \ +sed -e 's#\${GNUHOSTDIST}/libstdc++-v3/include/##g' \ +-e 's#\${GNUHOSTDIST}/libstdc++-v3/config/##g' get
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Wed Sep 9 07:12:04 UTC 2020 Modified Files: src/tools/gcc: mknative-gcc Log Message: more consolidation and properly condition all variables like previously. To generate a diff of this commit: cvs rdiff -u -r1.111 -r1.112 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.111 src/tools/gcc/mknative-gcc:1.112 --- src/tools/gcc/mknative-gcc:1.111 Wed Sep 9 04:52:32 2020 +++ src/tools/gcc/mknative-gcc Wed Sep 9 07:12:04 2020 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.111 2020/09/09 04:52:32 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.112 2020/09/09 07:12:04 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -226,14 +226,16 @@ get_libstdcxx_v3 () { mkdir -p $_OUTDIR/lib/$_subdir/arch/$_MACHINE_ARCH _build_headers="c++config.h cxxabi_tweaks.h" - _headers1="backward_headers c_base_headers_extra c_base_headers_extra_install" - _headers1="$_headers1 tr1_headers tr2_headers decimal_headers c_compatibility_headers_install" + _headers1="backward_headers c_base_headers_extra" + _headers1="$_headers1 c_base_headers_extra_install" + _headers1="$_headers1 tr1_headers tr2_headers" + _headers1="$_headers1 decimal_headers c_compatibility_headers_install" _headers1="$_headers1 debug_headers parallel_headers" _headers1="$_headers1 pb_headers1 pb_headers2 pb_headers3 pb_headers4" _headers1="$_headers1 pb_headers5 pb_headers6 pb_headers7" - # These subdirs get the subdir removed from the values. - _headers2="bits_headers ext_headers host_headers thread_host_headers pstl_headers" - _headers2="$_headers2 profile_headers profile_impl_headers" + _headers1="$_headers1 bits_headers ext_headers host_headers" + _headers1="$_headers1 thread_host_headers pstl_headers" + _headers1="$_headers1 profile_headers profile_impl_headers" # build files for h in $_build_headers; do @@ -289,10 +291,8 @@ get_libstdcxx_v3 () { # includes getvars $_PLATFORM/libstdc++-v3/include/Makefile \ $_headers1 | \ -sed -e 's#\${GNUHOSTDIST}/libstdc++-v3/include/##g' - getvars $_PLATFORM/libstdc++-v3/include/Makefile \ - $_headers2 | \ -sed -e 's#\${GNUHOSTDIST}/libstdc++-v3/[^/][^/]*/##g' +sed -e 's#\${GNUHOSTDIST}/libstdc++-v3/include/##g' \ +-e 's#\${GNUHOSTDIST}/libstdc++-v3/config/##g' getvars $_PLATFORM/libstdc++-v3/include/Makefile \ BASIC_FILE_H ALLOCATOR_H CSTDIO_H CLOCALE_H CMESSAGES_H CTIME_H } | sanitise_includes \
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Wed Sep 9 04:52:32 UTC 2020 Modified Files: src/tools/gcc: mknative-gcc Log Message: consolidate a bunch of libstdc++ variable collection. To generate a diff of this commit: cvs rdiff -u -r1.110 -r1.111 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.110 src/tools/gcc/mknative-gcc:1.111 --- src/tools/gcc/mknative-gcc:1.110 Tue Sep 8 19:17:24 2020 +++ src/tools/gcc/mknative-gcc Wed Sep 9 04:52:32 2020 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.110 2020/09/08 19:17:24 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.111 2020/09/09 04:52:32 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -226,12 +226,14 @@ get_libstdcxx_v3 () { mkdir -p $_OUTDIR/lib/$_subdir/arch/$_MACHINE_ARCH _build_headers="c++config.h cxxabi_tweaks.h" - _headers1="c_base_headers_extra_install" + _headers1="backward_headers c_base_headers_extra c_base_headers_extra_install" _headers1="$_headers1 tr1_headers tr2_headers decimal_headers c_compatibility_headers_install" - _headers1="$_headers1 debug_headers parallel_headers pstl_headers" - _headers2="host_headers thread_host_headers" - _pf_headers="profile_headers profile_impl_headers" - _pb_headers="pb_headers1 pb_headers2 pb_headers3 pb_headers4 pb_headers5 pb_headers6 pb_headers7" + _headers1="$_headers1 debug_headers parallel_headers" + _headers1="$_headers1 pb_headers1 pb_headers2 pb_headers3 pb_headers4" + _headers1="$_headers1 pb_headers5 pb_headers6 pb_headers7" + # These subdirs get the subdir removed from the values. + _headers2="bits_headers ext_headers host_headers thread_host_headers pstl_headers" + _headers2="$_headers2 profile_headers profile_impl_headers" # build files for h in $_build_headers; do @@ -286,13 +288,11 @@ get_libstdcxx_v3 () { # includes getvars $_PLATFORM/libstdc++-v3/include/Makefile \ - backward_headers c_base_headers_extra $_headers1 $_pb_headers | \ + $_headers1 | \ sed -e 's#\${GNUHOSTDIST}/libstdc++-v3/include/##g' getvars $_PLATFORM/libstdc++-v3/include/Makefile \ - bits_headers ext_headers $_headers2 | \ -sed -e 's#\${GNUHOSTDIST}/libstdc++-v3/include/##g' -e 's#\${GNUHOSTDIST}/libstdc++-v3/config/##g' - getvars $_PLATFORM/libstdc++-v3/include/Makefile \ - $_pf_headers | sed -e 's#\${GNUHOSTDIST}/libstdc++-v3/include/profile/##g' + $_headers2 | \ +sed -e 's#\${GNUHOSTDIST}/libstdc++-v3/[^/][^/]*/##g' getvars $_PLATFORM/libstdc++-v3/include/Makefile \ BASIC_FILE_H ALLOCATOR_H CSTDIO_H CLOCALE_H CMESSAGES_H CTIME_H } | sanitise_includes \
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Tue Sep 8 19:17:24 UTC 2020 Modified Files: src/tools/gcc: mknative-gcc Log Message: oops, pull out the value of pstl_headers. To generate a diff of this commit: cvs rdiff -u -r1.109 -r1.110 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.109 src/tools/gcc/mknative-gcc:1.110 --- src/tools/gcc/mknative-gcc:1.109 Sun Sep 6 02:24:38 2020 +++ src/tools/gcc/mknative-gcc Tue Sep 8 19:17:24 2020 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.109 2020/09/06 02:24:38 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.110 2020/09/08 19:17:24 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -228,7 +228,7 @@ get_libstdcxx_v3 () { _build_headers="c++config.h cxxabi_tweaks.h" _headers1="c_base_headers_extra_install" _headers1="$_headers1 tr1_headers tr2_headers decimal_headers c_compatibility_headers_install" - _headers1="$_headers1 debug_headers parallel_headers" + _headers1="$_headers1 debug_headers parallel_headers pstl_headers" _headers2="host_headers thread_host_headers" _pf_headers="profile_headers profile_impl_headers" _pb_headers="pb_headers1 pb_headers2 pb_headers3 pb_headers4 pb_headers5 pb_headers6 pb_headers7"
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Sun Sep 6 21:59:34 UTC 2020 Modified Files: src/tools/gcc: gcc-version.mk Log Message: mark GCC 9 as (so far) netbsd 20200907 version. this should fix the compiler saying it is "gcc version 9.3.0 ()". (needs mknative redo.) To generate a diff of this commit: cvs rdiff -u -r1.19 -r1.20 src/tools/gcc/gcc-version.mk Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/gcc-version.mk diff -u src/tools/gcc/gcc-version.mk:1.19 src/tools/gcc/gcc-version.mk:1.20 --- src/tools/gcc/gcc-version.mk:1.19 Tue Aug 11 09:51:57 2020 +++ src/tools/gcc/gcc-version.mk Sun Sep 6 21:59:33 2020 @@ -1,9 +1,9 @@ -# $NetBSD: gcc-version.mk,v 1.19 2020/08/11 09:51:57 mrg Exp $ +# $NetBSD: gcc-version.mk,v 1.20 2020/09/06 21:59:33 mrg Exp $ # common location for tools and native build -.if ${HAVE_GCC} == 7 -NETBSD_GCC_VERSION=nb4 20200810 -.elif ${HAVE_GCC} == 8 +.if ${HAVE_GCC} == 8 NETBSD_GCC_VERSION=nb1 20200311 +.elif ${HAVE_GCC} == 9 +NETBSD_GCC_VERSION=nb1 20200907 .endif
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Sun Sep 6 02:24:38 UTC 2020 Modified Files: src/tools/gcc: Makefile mknative-gcc mknative-gcc.old Log Message: pass down earm* not earmv5* to mknative-gcc. To generate a diff of this commit: cvs rdiff -u -r1.99 -r1.100 src/tools/gcc/Makefile cvs rdiff -u -r1.108 -r1.109 src/tools/gcc/mknative-gcc cvs rdiff -u -r1.8 -r1.9 src/tools/gcc/mknative-gcc.old Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.99 src/tools/gcc/Makefile:1.100 --- src/tools/gcc/Makefile:1.99 Sat Sep 5 10:58:08 2020 +++ src/tools/gcc/Makefile Sun Sep 6 02:24:38 2020 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.99 2020/09/05 10:58:08 mrg Exp $ +# $NetBSD: Makefile,v 1.100 2020/09/06 02:24:38 mrg Exp $ .include @@ -95,7 +95,6 @@ MKNATIVE_CONFIG_TARGET_LIBS= MKNATIVE_CONFIG_TARGET_LIBS+= configure-target-libgcc MKNATIVE_CONFIG_TARGET_LIBS+= configure-target-libgomp -MKNATIVE_TARGET= gcc MKNATIVE_CONFIG_TARGET_LIBS+= \ configure-target-libstdc++-v3 \ @@ -142,25 +141,27 @@ CCADDFLAGS= --sysroot=${DESTDIR} -L${DES # in case the version being used is not. NEWCONFIGDIR?= ${.CURDIR}/../.. +GCC_MACHINE_ARCH= ${MACHINE_ARCH:S/earmv5/earm/} + bootstrap-libgcc: .configure_done @echo 'Creating files needed for libgcc by a native bootstrap build.' (cd ${.OBJDIR}/build && ${BUILD_COMMAND} configure-target-libgcc) - @MAKE=${BUILD_MAKE:Q} ${HOST_SH} ${MKNATIVE} lib${MKNATIVE_TARGET}-bootstrap \ + @MAKE=${BUILD_MAKE:Q} ${HOST_SH} ${MKNATIVE} libgcc-bootstrap \ ${.OBJDIR}/build ${NEWCONFIGDIR} ${NETBSDSRCDIR} \ - ${MACHINE_GNU_PLATFORM} ${DESTDIR} ${TOOLDIR} + ${MACHINE_GNU_PLATFORM} ${GCC_MACHINE_ARCH} ${DESTDIR} ${TOOLDIR} bootstrap-libstdc++: .configure_done @echo 'Creating files needed for libstdc++ by a native bootstrap build.' (cd ${.OBJDIR}/build && ${BUILD_COMMAND} configure-target-libstdc++-v3) @MAKE=${BUILD_MAKE:Q} ${HOST_SH} ${MKNATIVE} libstdc++-bootstrap \ ${.OBJDIR}/build ${NEWCONFIGDIR} ${NETBSDSRCDIR} \ - ${MACHINE_GNU_PLATFORM} ${DESTDIR} ${TOOLDIR} + ${MACHINE_GNU_PLATFORM} ${GCC_MACHINE_ARCH} ${DESTDIR} ${TOOLDIR} native-gcc: .native/.configure_done @echo 'Extracting GNU GCC configury for a native toolchain.' - @MAKE=${BUILD_MAKE:Q} ${HOST_SH} ${MKNATIVE} ${MKNATIVE_TARGET} \ + @MAKE=${BUILD_MAKE:Q} ${HOST_SH} ${MKNATIVE} gcc \ ${.OBJDIR}/.native ${NEWCONFIGDIR} ${NETBSDSRCDIR} \ - ${MACHINE_GNU_PLATFORM} ${DESTDIR} ${TOOLDIR} + ${MACHINE_GNU_PLATFORM} ${GCC_MACHINE_ARCH} ${DESTDIR} ${TOOLDIR} NATIVE_CONFIGURE_ARGS= ${COMMON_CONFIGURE_ARGS} MPC= ${NETBSDSRCDIR}/external/lgpl3/mpc Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.108 src/tools/gcc/mknative-gcc:1.109 --- src/tools/gcc/mknative-gcc:1.108 Sat Sep 5 10:58:08 2020 +++ src/tools/gcc/mknative-gcc Sun Sep 6 02:24:38 2020 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.108 2020/09/05 10:58:08 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.109 2020/09/06 02:24:38 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -12,8 +12,9 @@ _TMPDIR=$2 _TOP=$3 _SRC=$4 _PLATFORM=$5 -_DESTDIR=$6 -_TOOLDIR=$7 +_MACHINE_ARCH=$6 +_DESTDIR=$7 +_TOOLDIR=$8 _VPATH=`grep VPATH ${_TMPDIR}/Makefile | sed 's,^.*=[ ]*,,'` _GNU_DIST=`cd ${_VPATH}; pwd` @@ -47,10 +48,10 @@ sanitise_includes () { # lib/libg2c # get_libg2c () { - mkdir -p $_OUTDIR/lib/libg2c3/arch/$MACHINE_ARCH + mkdir -p $_OUTDIR/lib/libg2c3/arch/$_MACHINE_ARCH - write_c $_OUTDIRBASE/lib/libg2c3/arch/$MACHINE_ARCH/config.h <$_TMPDIR/$_PLATFORM/libf2c/libU77/config.h - write_c $_OUTDIRBASE/lib/libg2c3/arch/$MACHINE_ARCH/g2c.h <$_TMPDIR/$_PLATFORM/libf2c/g2c.h + write_c $_OUTDIRBASE/lib/libg2c3/arch/$_MACHINE_ARCH/config.h <$_TMPDIR/$_PLATFORM/libf2c/libU77/config.h + write_c $_OUTDIRBASE/lib/libg2c3/arch/$_MACHINE_ARCH/g2c.h <$_TMPDIR/$_PLATFORM/libf2c/g2c.h { getvars $_PLATFORM/libf2c/Makefile \ @@ -61,7 +62,7 @@ get_libg2c () { ALL_CFLAGS OBJS | sed 's,=,+=,' getvars $_PLATFORM/libf2c/libU77/Makefile \ ALL_CFLAGS OBJS | sed 's,=,+=,' - } | write_mk $_OUTDIRBASE/lib/libg2c3/arch/$MACHINE_ARCH/defs.mk + } | write_mk $_OUTDIRBASE/lib/libg2c3/arch/$_MACHINE_ARCH/defs.mk } # lib/libgcc # @@ -74,7 +75,7 @@ get_libgcc () { # XXX we should probably grab everything Just In Case for # the future. - mkdir -p $_OUTDIR/lib/lib$_subdir/arch/$MACHINE_ARCH + mkdir -p $_OUTDIR/lib/lib$_subdir/arch/$_MACHINE_ARCH cd $_TMPDIR/$_PLATFORM/libgcc { getvars $_PLATFORM/libgcc/Makefile \ @@ -90,7 +91,7 @@ get_libgcc () { getvars gcc/Makefile \ NOEXCEPTION_FLAGS EXTRA_HEADERS } | sanitise_includes \ - | write_mk $_OUTDIRBASE/lib/lib$_subdir/arch/$MACHINE_ARCH/defs.mk + | write_mk $_OUTDIRBASE/lib/lib$_subdir/arch/$_MACHINE_ARCH/defs.mk cd $_TMP
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Sat Sep 5 10:58:08 UTC 2020 Modified Files: src/tools/gcc: Makefile mknative-gcc Log Message: disable fetching stuff from libsanitizer for now. it needs libstdc++ to build in mknative using gcc makefiles, and our locale changes break the "normal" build of this. make sure MKNATIVE_TARGET is always set. since mknative-gcc doesn't care about the version any more (we keep two versions for gcc/gcc.old) simply set it to "gcc". To generate a diff of this commit: cvs rdiff -u -r1.98 -r1.99 src/tools/gcc/Makefile cvs rdiff -u -r1.107 -r1.108 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.98 src/tools/gcc/Makefile:1.99 --- src/tools/gcc/Makefile:1.98 Thu Aug 13 10:57:53 2020 +++ src/tools/gcc/Makefile Sat Sep 5 10:58:08 2020 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.98 2020/08/13 10:57:53 mrg Exp $ +# $NetBSD: Makefile,v 1.99 2020/09/05 10:58:08 mrg Exp $ .include @@ -95,17 +95,21 @@ MKNATIVE_CONFIG_TARGET_LIBS= MKNATIVE_CONFIG_TARGET_LIBS+= configure-target-libgcc MKNATIVE_CONFIG_TARGET_LIBS+= configure-target-libgomp -.if ${HAVE_GCC} == 8 -MKNATIVE_TARGET= gcc8 -.elif ${HAVE_GCC} == 7 -MKNATIVE_TARGET= gcc7 -.endif +MKNATIVE_TARGET= gcc MKNATIVE_CONFIG_TARGET_LIBS+= \ configure-target-libstdc++-v3 \ configure-target-libbacktrace \ configure-target-libobjc +.if ${HAVE_GCC} >= 9 +# XXX needs to build libstdc++ fully, which fails +.if 0 +MKNATIVE_CONFIG_TARGET_LIBS+= \ + configure-target-libsanitizer +.endif +.endif + BINENV= /usr/bin/env -i Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.107 src/tools/gcc/mknative-gcc:1.108 --- src/tools/gcc/mknative-gcc:1.107 Sat Sep 5 09:49:32 2020 +++ src/tools/gcc/mknative-gcc Sat Sep 5 10:58:08 2020 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.107 2020/09/05 09:49:32 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.108 2020/09/05 10:58:08 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -490,7 +490,8 @@ gcc*) get_gcc_libiberty gcc get_libobjc libobjc get_libstdcxx_v3 libstdc++-v3 gcc - get_libsanitizer libsanitizer + # XXX not yet + # get_libsanitizer libsanitizer get_libdecnumber libdecnumber get_libgomp libgomp get_libbacktrace libbacktrace
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Sat Sep 5 09:49:33 UTC 2020 Modified Files: src/tools/gcc: mknative-gcc Log Message: pull out a few more things for GCC 9. To generate a diff of this commit: cvs rdiff -u -r1.106 -r1.107 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.106 src/tools/gcc/mknative-gcc:1.107 --- src/tools/gcc/mknative-gcc:1.106 Sat Sep 5 09:16:46 2020 +++ src/tools/gcc/mknative-gcc Sat Sep 5 09:49:32 2020 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.106 2020/09/05 09:16:46 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.107 2020/09/05 09:49:32 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -363,10 +363,10 @@ get_gcc () { GCC_OBJS GCOV_OBJS GCOV_DUMP_OBJS GXX_OBJS GTM_H PROTO_OBJS ${_extravars1} \ INCLUDES md_file OBJC_OBJS OBJS out_file version \ BUILD_PREFIX RTL_H RTL_BASE_H TREE_H ${_hconfig_h} BASIC_BLOCK_H GCC_H \ - GGC_H \ + D_TARGET_DEF \ GTFILES_SRCDIR GTFILES_FILES_FILES GTFILES_FILES_LANGS \ - GTFILES GTFILES_LANG_DIR_NAMES NOEXCEPTION_FLAGS \ - NATIVE_SYSTEM_HEADER_DIR \ + GTFILES GTFILES_LANG_DIR_NAMES HASH_TABLE_H \ + NOEXCEPTION_FLAGS NATIVE_SYSTEM_HEADER_DIR \ tm_defines host_xm_file host_xm_defines tm_p_file \ target_cpu_default ${_extravars} ${_extravars2} \ lang_specs_files ${_extravars3} \
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Sat Sep 5 09:16:46 UTC 2020 Modified Files: src/tools/gcc: mknative-gcc Log Message: port to GCC 9.3. To generate a diff of this commit: cvs rdiff -u -r1.105 -r1.106 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.105 src/tools/gcc/mknative-gcc:1.106 --- src/tools/gcc/mknative-gcc:1.105 Thu Aug 13 01:52:37 2020 +++ src/tools/gcc/mknative-gcc Sat Sep 5 09:16:46 2020 @@ -1,10 +1,10 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.105 2020/08/13 01:52:37 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.106 2020/09/05 09:16:46 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. # -# This version is for GCC 8.4 +# This version is for GCC 9.3 # initialise @@ -247,6 +247,7 @@ get_libstdcxx_v3 () { getvars $_PLATFORM/libstdc++-v3/Makefile \ port_specific_symbol_files getvars $_PLATFORM/libstdc++-v3/src/Makefile \ + cxx17_sources \ cxx11_sources \ cxx98_sources @@ -263,6 +264,9 @@ get_libstdcxx_v3 () { # src getvars $_PLATFORM/libstdc++-v3/src/Makefile \ libstdc___la_SOURCES | sed 's/^G_libstdc___la_SOURCES=/G_SRC_SOURCES=/' + getvars $_PLATFORM/libstdc++-v3/src/c++17/Makefile \ + libc__17convenience_la_SOURCES | \ + sed -e 's/^G_libc__17convenience_la_SOURCES=/G_CPP17_SOURCES=/' getvars $_PLATFORM/libstdc++-v3/src/c++11/Makefile \ libc__11convenience_la_SOURCES | \ sed -e 's/^G_libc__11convenience_la_SOURCES=/G_CPP11_SOURCES=/' \ @@ -294,6 +298,27 @@ get_libstdcxx_v3 () { | write_mk $_OUTDIRBASE/lib/$_subdir/arch/$MACHINE_ARCH/defs.mk } +# lib/libsanitizer # + +get_libsanitizer () { + _subdir="$1" + + mkdir -p $_OUTDIR/lib/$_subdir/arch/$MACHINE_ARCH + + { + getvars $_PLATFORM/libsanitizer/asan/Makefile \ + asan_files + getvars $_PLATFORM/libsanitizer/lsan/Makefile \ + lsan_files + getvars $_PLATFORM/libsanitizer/tsan/Makefile \ + tsan_plugin_files + getvars $_PLATFORM/libsanitizer/ubsan/Makefile \ + ubsan_plugin_files + + } | sanitise_includes \ + | write_mk $_OUTDIRBASE/lib/$_subdir/arch/$MACHINE_ARCH/defs.mk +} + # usr.bin/gcc* # get_gcc_bootstrap () { @@ -465,6 +490,7 @@ gcc*) get_gcc_libiberty gcc get_libobjc libobjc get_libstdcxx_v3 libstdc++-v3 gcc + get_libsanitizer libsanitizer get_libdecnumber libdecnumber get_libgomp libgomp get_libbacktrace libbacktrace
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Thu Aug 13 10:57:54 UTC 2020 Modified Files: src/tools/gcc: Makefile Log Message: set MODULE to ${EXTERNAL_GCC_SUBDIR} so this actually works.. To generate a diff of this commit: cvs rdiff -u -r1.97 -r1.98 src/tools/gcc/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.97 src/tools/gcc/Makefile:1.98 --- src/tools/gcc/Makefile:1.97 Wed Nov 6 07:26:31 2019 +++ src/tools/gcc/Makefile Thu Aug 13 10:57:53 2020 @@ -1,9 +1,9 @@ -# $NetBSD: Makefile,v 1.97 2019/11/06 07:26:31 mrg Exp $ +# $NetBSD: Makefile,v 1.98 2020/08/13 10:57:53 mrg Exp $ .include GCC_LANGUAGES=c c++ objc -MODULE= gcc4 +MODULE= ${EXTERNAL_GCC_SUBDIR} GCCDIST= ${.CURDIR}/../../external/gpl3/${EXTERNAL_GCC_SUBDIR}/dist GNUHOSTDIST= ${GCCDIST}
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Thu Aug 13 01:52:37 UTC 2020 Modified Files: src/tools/gcc: mknative-gcc mknative-gcc.old Log Message: set _OUTDIRBASE depending on $0, and then set _OUTDIR based on this. now you can copy mknative-gcc to mknative-gcc.old without edit. To generate a diff of this commit: cvs rdiff -u -r1.104 -r1.105 src/tools/gcc/mknative-gcc cvs rdiff -u -r1.7 -r1.8 src/tools/gcc/mknative-gcc.old Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.104 src/tools/gcc/mknative-gcc:1.105 --- src/tools/gcc/mknative-gcc:1.104 Wed Aug 12 08:53:20 2020 +++ src/tools/gcc/mknative-gcc Thu Aug 13 01:52:37 2020 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.104 2020/08/12 08:53:20 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.105 2020/08/13 01:52:37 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -24,8 +24,15 @@ fi . $_TOP/tools/gcc/mknative.common -_OUTDIR="$_TOP/external/gpl3/gcc" -_OUTDIRBASE="external/gpl3/gcc" +case $0 in + *mknative-gcc.old) + _OUTDIRBASE="external/gpl3/gcc.old" + ;; + *) + _OUTDIRBASE="external/gpl3/gcc" + ;; +esac +_OUTDIR="$_TOP/$_OUTDIRBASE" sanitise_includes () { sed \ Index: src/tools/gcc/mknative-gcc.old diff -u src/tools/gcc/mknative-gcc.old:1.7 src/tools/gcc/mknative-gcc.old:1.8 --- src/tools/gcc/mknative-gcc.old:1.7 Wed Aug 12 08:53:20 2020 +++ src/tools/gcc/mknative-gcc.old Thu Aug 13 01:52:37 2020 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc.old,v 1.7 2020/08/12 08:53:20 mrg Exp $ +# $NetBSD: mknative-gcc.old,v 1.8 2020/08/13 01:52:37 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -24,8 +24,15 @@ fi . $_TOP/tools/gcc/mknative.common -_OUTDIR="$_TOP/external/gpl3/gcc" -_OUTDIRBASE="external/gpl3/gcc" +case $0 in + *mknative-gcc.old) + _OUTDIRBASE="external/gpl3/gcc.old" + ;; + *) + _OUTDIRBASE="external/gpl3/gcc" + ;; +esac +_OUTDIR="$_TOP/$_OUTDIRBASE" sanitise_includes () { sed \
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Wed Aug 12 08:53:20 UTC 2020 Modified Files: src/tools/gcc: mknative-gcc mknative-gcc.old Log Message: mknative-gcc is for GCC 8.4. mknative-gcc.old is supposed to be for GCC 7, but is the GCC 6 version. update it and mark it for GCC 7.5. To generate a diff of this commit: cvs rdiff -u -r1.103 -r1.104 src/tools/gcc/mknative-gcc cvs rdiff -u -r1.6 -r1.7 src/tools/gcc/mknative-gcc.old Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.103 src/tools/gcc/mknative-gcc:1.104 --- src/tools/gcc/mknative-gcc:1.103 Thu Oct 24 03:19:14 2019 +++ src/tools/gcc/mknative-gcc Wed Aug 12 08:53:20 2020 @@ -1,10 +1,10 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.103 2019/10/24 03:19:14 christos Exp $ +# $NetBSD: mknative-gcc,v 1.104 2020/08/12 08:53:20 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. # -# This version is for GCC 6.4 +# This version is for GCC 8.4 # initialise Index: src/tools/gcc/mknative-gcc.old diff -u src/tools/gcc/mknative-gcc.old:1.6 src/tools/gcc/mknative-gcc.old:1.7 --- src/tools/gcc/mknative-gcc.old:1.6 Wed Sep 5 01:20:20 2018 +++ src/tools/gcc/mknative-gcc.old Wed Aug 12 08:53:20 2020 @@ -1,10 +1,10 @@ #!/bin/sh -# $NetBSD: mknative-gcc.old,v 1.6 2018/09/05 01:20:20 mrg Exp $ +# $NetBSD: mknative-gcc.old,v 1.7 2020/08/12 08:53:20 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. # -# This version is for GCC 6.4 +# This version is for GCC 7.5 # initialise @@ -24,8 +24,8 @@ fi . $_TOP/tools/gcc/mknative.common -_OUTDIR="$_TOP/external/gpl3/gcc.old" -_OUTDIRBASE="external/gpl3/gcc.old" +_OUTDIR="$_TOP/external/gpl3/gcc" +_OUTDIRBASE="external/gpl3/gcc" sanitise_includes () { sed \ @@ -82,10 +82,18 @@ get_libgcc () { SHLIB_MAPFILES SHLIB_NM_FLAGS getvars gcc/Makefile \ NOEXCEPTION_FLAGS EXTRA_HEADERS - getlinks config.status libgcc } | sanitise_includes \ | write_mk $_OUTDIRBASE/lib/lib$_subdir/arch/$MACHINE_ARCH/defs.mk + cd $_TMPDIR/$_PLATFORM/libgcc + { + getvars $_PLATFORM/libgcc/Makefile \ + enable_execute_stack \ + unwind_header md_unwind_header \ + sfp_machine_header thread_header + } | sanitise_includes \ + | write_mk $_OUTDIRBASE/lib/lib$_subdir/arch/$MACHINE_ARCH/gthr-defs.mk + if [ "${MACHINE_ARCH}" = "m68000" ] then ex <<__EOF__ $_OUTDIR/lib/lib$_subdir/arch/$MACHINE_ARCH/defs.mk @@ -152,6 +160,11 @@ get_libgomp () { _subdir="$1" mkdir -p $_OUTDIR/lib/$_subdir/arch/$MACHINE_ARCH + + getvars $_PLATFORM/libgomp/Makefile \ + libgomp_la_SOURCES \ + | write_mk $_OUTDIRBASE/lib/$_subdir/defs.mk + write_c $_OUTDIRBASE/lib/$_subdir/arch/$MACHINE_ARCH/config.h \ <$_TMPDIR/$_PLATFORM/libgomp/config.h write_c $_OUTDIRBASE/lib/$_subdir/arch/$MACHINE_ARCH/libgomp_f.h \ @@ -169,9 +182,9 @@ get_libbacktrace () { mkdir -p $_OUTDIR/lib/$_subdir/arch/$MACHINE_ARCH write_c $_OUTDIRBASE/lib/$_subdir/arch/$MACHINE_ARCH/config.h \ - <$_TMPDIR/$_subdir/config.h + <$_TMPDIR/$_PLATFORM/$_subdir/config.h write_c $_OUTDIRBASE/lib/$_subdir/arch/$MACHINE_ARCH/backtrace-supported.h \ - <$_TMPDIR/$_subdir/backtrace-supported.h + <$_TMPDIR/$_PLATFORM/$_subdir/backtrace-supported.h } # lib/libobjc # @@ -189,7 +202,6 @@ get_libobjc () { getvars $_PLATFORM/libobjc/Makefile \ ALL_CFLAGS INCLUDES OBJC_SOURCE_FILES C_SOURCE_FILES OBJC_H \ | sed "s,$_GNU_DIST,\${GNUHOSTDIST},g" - getlinks $_TMPDIR/$_PLATFORM/libgcc/config.status libgcc } | sanitise_includes \ | write_mk $_OUTDIRBASE/lib/$_subdir/defs.mk @@ -205,7 +217,7 @@ get_libstdcxx_v3 () { mkdir -p $_OUTDIR/lib/$_subdir/arch/$MACHINE_ARCH - _build_headers="c++config.h cxxabi_tweaks.h gthr-posix.h gthr-single.h gthr.h" + _build_headers="c++config.h cxxabi_tweaks.h" _headers1="c_base_headers_extra_install" _headers1="$_headers1 tr1_headers tr2_headers decimal_headers c_compatibility_headers_install" _headers1="$_headers1 debug_headers parallel_headers" @@ -221,10 +233,15 @@ get_libstdcxx_v3 () { write_c $_OUTDIRBASE/lib/$_subdir/arch/$MACHINE_ARCH/gstdint.h \ <$_TMPDIR/$_PLATFORM/libstdc++-v3/include/gstdint.h + write_c $_OUTDIRBASE/lib/$_subdir/arch/$MACHINE_ARCH/symver-config.h \ + <$_TMPDIR/$_PLATFORM/libstdc++-v3/config.h { getvars $_PLATFORM/libstdc++-v3/Makefile \ port_specific_symbol_files + getvars $_PLATFORM/libstdc++-v3/src/Makefile \ + cxx11_sources \ + cxx98_sources # libsupc++ getvars $_PLATFORM/libstdc++-v3/libsupc++/Makefile \ @@ -247,6 +264,9 @@ get_libstdcxx_v3 () { GLIBCXX_ABI_FLAGS libc__98convenience_la_SOURCES | \ sed -e 's/^G_libc__98convenience_la_SOURCES=/G_CPP98_SOURCES=/' \ -e 's/codecvt.cc/c98-codecvt.cc/' + getvars $_PLATFORM/libstdc++-v3/src/fil
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Wed Mar 11 10:07:01 UTC 2020 Modified Files: src/tools/gcc: gcc-version.mk Log Message: update date for GCC 8.4.0 import. To generate a diff of this commit: cvs rdiff -u -r1.17 -r1.18 src/tools/gcc/gcc-version.mk Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/gcc-version.mk diff -u src/tools/gcc/gcc-version.mk:1.17 src/tools/gcc/gcc-version.mk:1.18 --- src/tools/gcc/gcc-version.mk:1.17 Mon Sep 30 08:40:20 2019 +++ src/tools/gcc/gcc-version.mk Wed Mar 11 10:07:01 2020 @@ -1,9 +1,9 @@ -# $NetBSD: gcc-version.mk,v 1.17 2019/09/30 08:40:20 mrg Exp $ +# $NetBSD: gcc-version.mk,v 1.18 2020/03/11 10:07:01 mrg Exp $ # common location for tools and native build .if ${HAVE_GCC} == 7 NETBSD_GCC_VERSION=nb3 20190319 .elif ${HAVE_GCC} == 8 -NETBSD_GCC_VERSION=nb1 20190930 +NETBSD_GCC_VERSION=nb1 20200311 .endif
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Wed Feb 27 09:11:01 UTC 2019 Modified Files: src/tools/gcc: gcc-version.mk Log Message: also bump the X in "nbX" with previous To generate a diff of this commit: cvs rdiff -u -r1.14 -r1.15 src/tools/gcc/gcc-version.mk Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/gcc-version.mk diff -u src/tools/gcc/gcc-version.mk:1.14 src/tools/gcc/gcc-version.mk:1.15 --- src/tools/gcc/gcc-version.mk:1.14 Wed Feb 27 09:10:38 2019 +++ src/tools/gcc/gcc-version.mk Wed Feb 27 09:11:01 2019 @@ -1,9 +1,9 @@ -# $NetBSD: gcc-version.mk,v 1.14 2019/02/27 09:10:38 mrg Exp $ +# $NetBSD: gcc-version.mk,v 1.15 2019/02/27 09:11:01 mrg Exp $ # common location for tools and native build .if ${HAVE_GCC} == 6 NETBSD_GCC_VERSION=nb4 20181109 .elif ${HAVE_GCC} == 7 -NETBSD_GCC_VERSION=nb1 20190226 +NETBSD_GCC_VERSION=nb2 20190226 .endif
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Wed Feb 27 09:10:38 UTC 2019 Modified Files: src/tools/gcc: gcc-version.mk Log Message: bump netbsd gcc version date. To generate a diff of this commit: cvs rdiff -u -r1.13 -r1.14 src/tools/gcc/gcc-version.mk Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/gcc-version.mk diff -u src/tools/gcc/gcc-version.mk:1.13 src/tools/gcc/gcc-version.mk:1.14 --- src/tools/gcc/gcc-version.mk:1.13 Sat Jan 19 12:58:37 2019 +++ src/tools/gcc/gcc-version.mk Wed Feb 27 09:10:38 2019 @@ -1,9 +1,9 @@ -# $NetBSD: gcc-version.mk,v 1.13 2019/01/19 12:58:37 mrg Exp $ +# $NetBSD: gcc-version.mk,v 1.14 2019/02/27 09:10:38 mrg Exp $ # common location for tools and native build .if ${HAVE_GCC} == 6 NETBSD_GCC_VERSION=nb4 20181109 .elif ${HAVE_GCC} == 7 -NETBSD_GCC_VERSION=nb1 20190119 +NETBSD_GCC_VERSION=nb1 20190226 .endif
CVS commit: src/tools/gcc
Module Name:src Committed By: christos Date: Tue Feb 26 21:09:18 UTC 2019 Modified Files: src/tools/gcc: Makefile Log Message: Remove "--disable-libstdcxx-dual-abi". This option does not do what it says: Instead of disabling the dual-abi and letting you choose which one you want, it disables the cxx11 abi and the "--with-default-libstdcxx-abi=OPTION" becomes a noop. Removing the old COW compatibility ABI is not easy. For more info see: https://gcc.gnu.org/onlinedocs/libstdc++/manual/configure.html https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html To generate a diff of this commit: cvs rdiff -u -r1.91 -r1.92 src/tools/gcc/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.91 src/tools/gcc/Makefile:1.92 --- src/tools/gcc/Makefile:1.91 Sat Feb 16 19:22:53 2019 +++ src/tools/gcc/Makefile Tue Feb 26 16:09:18 2019 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.91 2019/02/17 00:22:53 mrg Exp $ +# $NetBSD: Makefile,v 1.92 2019/02/26 21:09:18 christos Exp $ .include @@ -36,7 +36,6 @@ COMMON_CONFIGURE_ARGS= --target=${MACHIN --with-pkgversion="NetBSD ${NETBSD_GCC_VERSION}" \ --with-system-zlib \ --without-isl \ - --disable-libstdcxx-dual-abi \ --enable-__cxa_atexit \ --enable-libstdcxx-time=rt \ --enable-libstdcxx-threads \
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Sat Feb 23 06:54:45 UTC 2019 Modified Files: src/tools/gcc: mknative-gcc Log Message: pull out libstdc++ config.h as-is, for gnu.ver processing. pull out the cxx11_sources and cxx98_sources values to avoid hard coding. To generate a diff of this commit: cvs rdiff -u -r1.100 -r1.101 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.100 src/tools/gcc/mknative-gcc:1.101 --- src/tools/gcc/mknative-gcc:1.100 Sat Feb 9 03:57:00 2019 +++ src/tools/gcc/mknative-gcc Sat Feb 23 06:54:45 2019 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.100 2019/02/09 03:57:00 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.101 2019/02/23 06:54:45 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -233,10 +233,15 @@ get_libstdcxx_v3 () { write_c $_OUTDIRBASE/lib/$_subdir/arch/$MACHINE_ARCH/gstdint.h \ <$_TMPDIR/$_PLATFORM/libstdc++-v3/include/gstdint.h + write_c $_OUTDIRBASE/lib/$_subdir/arch/$MACHINE_ARCH/symver-config.h \ + <$_TMPDIR/$_PLATFORM/libstdc++-v3/config.h { getvars $_PLATFORM/libstdc++-v3/Makefile \ port_specific_symbol_files + getvars $_PLATFORM/libstdc++-v3/src/Makefile \ + cxx11_sources \ + cxx98_sources # libsupc++ getvars $_PLATFORM/libstdc++-v3/libsupc++/Makefile \
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Sun Feb 17 00:22:53 UTC 2019 Modified Files: src/tools/gcc: Makefile Log Message: don't pass --disable-symver to mknative configure. this turns off the checking for gcc 4.6 and some exception handling routines which we need on several platforms. this should fix missing symbol issues seen on current-users. To generate a diff of this commit: cvs rdiff -u -r1.90 -r1.91 src/tools/gcc/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.90 src/tools/gcc/Makefile:1.91 --- src/tools/gcc/Makefile:1.90 Sun Feb 3 11:57:25 2019 +++ src/tools/gcc/Makefile Sun Feb 17 00:22:53 2019 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.90 2019/02/03 11:57:25 mrg Exp $ +# $NetBSD: Makefile,v 1.91 2019/02/17 00:22:53 mrg Exp $ .include @@ -187,7 +187,6 @@ EXTRA_GCC_TARGETS= i386-builtin-types.in NATIVE_CONFIGURE_ARGS+= \ --disable-multilib \ - --disable-symvers \ --disable-libstdcxx-pch \ --build=`${GCCDIST}/config.guess` \ --host=${MACHINE_GNU_PLATFORM} \
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Mon Feb 4 01:46:59 UTC 2019 Modified Files: src/tools/gcc: mknative-gcc Log Message: common-target source list is MD. make it so. To generate a diff of this commit: cvs rdiff -u -r1.98 -r1.99 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.98 src/tools/gcc/mknative-gcc:1.99 --- src/tools/gcc/mknative-gcc:1.98 Mon Feb 4 00:55:26 2019 +++ src/tools/gcc/mknative-gcc Mon Feb 4 01:46:59 2019 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.98 2019/02/04 00:55:26 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.99 2019/02/04 01:46:59 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -302,6 +302,7 @@ get_gcc () { mkdir -p $_OUTDIR/usr.bin/$_subdir/arch/$MACHINE_ARCH mkdir -p $_OUTDIR/usr.bin/libcpp/arch/$MACHINE_ARCH mkdir -p $_OUTDIR/usr.bin/include/arch + mkdir -p $_OUTDIR/usr.bin/common-target/arch _buildname="BUILD_" _libcppsubdir="" _extravars="TM_H ALL_OPT_FILES" @@ -357,7 +358,7 @@ get_gcc () { | write_mk $_OUTDIRBASE/usr.bin/common/defs.mk getvars gcc/Makefile \ OBJS-libcommon-target \ - | write_mk $_OUTDIRBASE/usr.bin/common-target/defs.mk + | write_mk $_OUTDIRBASE/usr.bin/common-target/arch/$MACHINE_ARCH.mk write_c $_OUTDIRBASE/usr.bin/libcpp/arch/$MACHINE_ARCH/config.h <$_TMPDIR/libcpp/config.h hfiles='auto-host configargs config bconfig bversion plugin-version multilib tm'
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Mon Feb 4 00:55:26 UTC 2019 Modified Files: src/tools/gcc: mknative-gcc Log Message: - don't getlinks here, they're no longer used. - pullout the libcommon, libcommon-target and libgomp source list so they don't have to be hard coded in the reachover makefile To generate a diff of this commit: cvs rdiff -u -r1.97 -r1.98 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.97 src/tools/gcc/mknative-gcc:1.98 --- src/tools/gcc/mknative-gcc:1.97 Fri Feb 1 09:27:23 2019 +++ src/tools/gcc/mknative-gcc Mon Feb 4 00:55:26 2019 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.97 2019/02/01 09:27:23 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.98 2019/02/04 00:55:26 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -82,7 +82,6 @@ get_libgcc () { SHLIB_MAPFILES SHLIB_NM_FLAGS getvars gcc/Makefile \ NOEXCEPTION_FLAGS EXTRA_HEADERS - getlinks config.status libgcc } | sanitise_includes \ | write_mk $_OUTDIRBASE/lib/lib$_subdir/arch/$MACHINE_ARCH/defs.mk @@ -161,6 +160,11 @@ get_libgomp () { _subdir="$1" mkdir -p $_OUTDIR/lib/$_subdir/arch/$MACHINE_ARCH + + getvars $_PLATFORM/libgomp/Makefile \ + libgomp_la_SOURCES \ + | write_mk $_OUTDIRBASE/lib/$_subdir/defs.mk + write_c $_OUTDIRBASE/lib/$_subdir/arch/$MACHINE_ARCH/config.h \ <$_TMPDIR/$_PLATFORM/libgomp/config.h write_c $_OUTDIRBASE/lib/$_subdir/arch/$MACHINE_ARCH/libgomp_f.h \ @@ -198,7 +202,6 @@ get_libobjc () { getvars $_PLATFORM/libobjc/Makefile \ ALL_CFLAGS INCLUDES OBJC_SOURCE_FILES C_SOURCE_FILES OBJC_H \ | sed "s,$_GNU_DIST,\${GNUHOSTDIST},g" - getlinks $_TMPDIR/$_PLATFORM/libgcc/config.status libgcc } | sanitise_includes \ | write_mk $_OUTDIRBASE/lib/$_subdir/defs.mk @@ -275,7 +278,6 @@ get_libstdcxx_v3 () { $_pf_headers | sed -e 's#\${GNUHOSTDIST}/libstdc++-v3/include/profile/##g' getvars $_PLATFORM/libstdc++-v3/include/Makefile \ BASIC_FILE_H ALLOCATOR_H CSTDIO_H CLOCALE_H CMESSAGES_H CTIME_H - getlinks $_TMPDIR/$_PLATFORM/libgcc/config.status libgcc } | sanitise_includes \ | write_mk $_OUTDIRBASE/lib/$_subdir/arch/$MACHINE_ARCH/defs.mk } @@ -350,6 +352,13 @@ get_gcc () { EXTRA_HEADERS \ | write_mk $_OUTDIRBASE/usr.bin/include/arch/$MACHINE_ARCH.mk + getvars gcc/Makefile \ + OBJS-libcommon \ + | write_mk $_OUTDIRBASE/usr.bin/common/defs.mk + getvars gcc/Makefile \ + OBJS-libcommon-target \ + | write_mk $_OUTDIRBASE/usr.bin/common-target/defs.mk + write_c $_OUTDIRBASE/usr.bin/libcpp/arch/$MACHINE_ARCH/config.h <$_TMPDIR/libcpp/config.h hfiles='auto-host configargs config bconfig bversion plugin-version multilib tm' for f in $hfiles; do
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Sun Feb 3 11:57:25 UTC 2019 Modified Files: src/tools/gcc: Makefile Log Message: add || true to the gthr-default.h copy, it can fail first time around To generate a diff of this commit: cvs rdiff -u -r1.89 -r1.90 src/tools/gcc/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.89 src/tools/gcc/Makefile:1.90 --- src/tools/gcc/Makefile:1.89 Fri Feb 1 09:27:23 2019 +++ src/tools/gcc/Makefile Sun Feb 3 11:57:25 2019 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.89 2019/02/01 09:27:23 mrg Exp $ +# $NetBSD: Makefile,v 1.90 2019/02/03 11:57:25 mrg Exp $ .include @@ -197,7 +197,7 @@ MKENV_BUILD_MAKE=cd .native && ${MKNATIV .native/.configure_done: ${_GNU_CFGSRC} ${.CURDIR}/Makefile mkdir .native .native/gcc .native/gcc/include 2>/dev/null || true # If this fails, gthreads won't be configured initially, but reconfig will. - -cp ${DESTDIR}/usr/include/g++/bits/gthr-default.h .native/gcc/include + cp ${DESTDIR}/usr/include/g++/bits/gthr-default.h .native/gcc/include || true PATH=${TOOLDIR}/bin:$$PATH; export PATH; \ (cd .native && ${MKNATIVE_ENV} \ ${HOST_SH} ${GNUHOSTDIST}/configure \
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Fri Feb 1 09:27:24 UTC 2019 Modified Files: src/tools/gcc: Makefile mknative-gcc Log Message: - use --with-default-libstdcxx-abi=new for GCC, otherwise we get the old ABI with --disable-libstdcxx-dual-abi - fix libbacktrace mknative - find gthr-default.h for libstdc++ mknative - fetch FILESYSTEM_SOURCES To generate a diff of this commit: cvs rdiff -u -r1.88 -r1.89 src/tools/gcc/Makefile cvs rdiff -u -r1.96 -r1.97 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.88 src/tools/gcc/Makefile:1.89 --- src/tools/gcc/Makefile:1.88 Sat Jan 19 12:58:37 2019 +++ src/tools/gcc/Makefile Fri Feb 1 09:27:23 2019 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.88 2019/01/19 12:58:37 mrg Exp $ +# $NetBSD: Makefile,v 1.89 2019/02/01 09:27:23 mrg Exp $ .include @@ -39,7 +39,8 @@ COMMON_CONFIGURE_ARGS= --target=${MACHIN --disable-libstdcxx-dual-abi \ --enable-__cxa_atexit \ --enable-libstdcxx-time=rt \ - --enable-libstdcxx-threads + --enable-libstdcxx-threads \ + --with-diagnostics-color=auto-if-env .if defined(GCC_CONFIG_ARCH.${MACHINE_ARCH}) COMMON_CONFIGURE_ARGS+= --with-arch=${GCC_CONFIG_ARCH.${MACHINE_ARCH}} .endif @@ -47,7 +48,9 @@ COMMON_CONFIGURE_ARGS+= --with-arch=${GC COMMON_CONFIGURE_ARGS+= --with-tune=${GCC_CONFIG_TUNE.${MACHINE_ARCH}} .endif -COMMON_CONFIGURE_ARGS+= --with-diagnostics-color=auto-if-env +.if ${HAVE_GCC} >= 7 +COMMON_CONFIGURE_ARGS+= --with-default-libstdcxx-abi=new +.endif CONFIGURE_ARGS= ${COMMON_CONFIGURE_ARGS} CONFIGURE_ARGS+= \ @@ -94,6 +97,7 @@ MKNATIVE_TARGET= gcc6 MKNATIVE_CONFIG_TARGET_LIBS+= \ configure-target-libstdc++-v3 \ + configure-target-libbacktrace \ configure-target-libobjc BINENV= /usr/bin/env -i @@ -105,7 +109,7 @@ MKNATIVE_ENV= ${BINENV} ${CONFIGURE_ENV: CFLAGS_FOR_BUILD="-I${TOOLDIR}/include" \ CC=${CC:Q}' '${CCADDFLAGS:Q} \ CXX=${CXX:Q}' '${CCADDFLAGS:Q}' '${CXXADDFLAGS:Q} \ - CPP=${CPP:Q}' '-I${DESTDIR}/usr/include \ + CPP=${CPP:Q}' '-I${DESTDIR}/usr/include' '-I${DESTDIR}/usr/include/g++/bits \ CFLAGS= CPPFLAGS= CXXFLAGS= LDFLAGS= \ AS=${AS:Q} AWK=${TOOL_AWK:Q} LD=${LD:Q} \ MSGFMT=${TOOLDIR}/bin/${_TOOL_PREFIX}msgfmt \ @@ -185,14 +189,15 @@ NATIVE_CONFIGURE_ARGS+= \ --disable-multilib \ --disable-symvers \ --disable-libstdcxx-pch \ - --disable-libstdcxx-dual-abi \ --build=`${GCCDIST}/config.guess` \ --host=${MACHINE_GNU_PLATFORM} \ --with-sysroot=${DESTDIR} MKENV_BUILD_MAKE=cd .native && ${MKNATIVE_ENV} ${BUILD_MAKE} .native/.configure_done: ${_GNU_CFGSRC} ${.CURDIR}/Makefile - mkdir .native 2>/dev/null || true + mkdir .native .native/gcc .native/gcc/include 2>/dev/null || true + # If this fails, gthreads won't be configured initially, but reconfig will. + -cp ${DESTDIR}/usr/include/g++/bits/gthr-default.h .native/gcc/include PATH=${TOOLDIR}/bin:$$PATH; export PATH; \ (cd .native && ${MKNATIVE_ENV} \ ${HOST_SH} ${GNUHOSTDIST}/configure \ Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.96 src/tools/gcc/mknative-gcc:1.97 --- src/tools/gcc/mknative-gcc:1.96 Sat Jan 19 20:02:06 2019 +++ src/tools/gcc/mknative-gcc Fri Feb 1 09:27:23 2019 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.96 2019/01/19 20:02:06 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.97 2019/02/01 09:27:23 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -178,9 +178,9 @@ get_libbacktrace () { mkdir -p $_OUTDIR/lib/$_subdir/arch/$MACHINE_ARCH write_c $_OUTDIRBASE/lib/$_subdir/arch/$MACHINE_ARCH/config.h \ - <$_TMPDIR/$_subdir/config.h + <$_TMPDIR/$_PLATFORM/$_subdir/config.h write_c $_OUTDIRBASE/lib/$_subdir/arch/$MACHINE_ARCH/backtrace-supported.h \ - <$_TMPDIR/$_subdir/backtrace-supported.h + <$_TMPDIR/$_PLATFORM/$_subdir/backtrace-supported.h } # lib/libobjc # @@ -256,6 +256,9 @@ get_libstdcxx_v3 () { GLIBCXX_ABI_FLAGS libc__98convenience_la_SOURCES | \ sed -e 's/^G_libc__98convenience_la_SOURCES=/G_CPP98_SOURCES=/' \ -e 's/codecvt.cc/c98-codecvt.cc/' + getvars $_PLATFORM/libstdc++-v3/src/filesystem/Makefile \ + libstdc__fs_la_SOURCES | \ + sed -e 's/^G_libstdc__fs_la_SOURCES=/G_FILESYSTEM_SOURCES=/' getvars $_PLATFORM/libstdc++-v3/Makefile ATOMICITY_SRCDIR \ BASIC_FILE_CC CLOCALE_CC CCODECVT_CC CCOLLATE_CC \ CCTYPE_CC CMESSAGES_CC CMONEY_CC CNUMERIC_CC CTIME_CC \
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Sat Jan 19 17:08:40 UTC 2019 Modified Files: src/tools/gcc: mknative-gcc Log Message: also pull out these variables: enable_execute_stack unwind_header md_unwind_header sfp_machine_header thread_header To generate a diff of this commit: cvs rdiff -u -r1.94 -r1.95 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.94 src/tools/gcc/mknative-gcc:1.95 --- src/tools/gcc/mknative-gcc:1.94 Tue Sep 4 22:57:25 2018 +++ src/tools/gcc/mknative-gcc Sat Jan 19 17:08:39 2019 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.94 2018/09/04 22:57:25 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.95 2019/01/19 17:08:39 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -82,6 +82,10 @@ get_libgcc () { SHLIB_MAPFILES SHLIB_NM_FLAGS getvars gcc/Makefile \ NOEXCEPTION_FLAGS EXTRA_HEADERS + getvars gcc/Makefile \ + enable_execute_stack \ + unwind_header md_unwind_header \ + sfp_machine_header thread_header getlinks config.status libgcc } | sanitise_includes \ | write_mk $_OUTDIRBASE/lib/lib$_subdir/arch/$MACHINE_ARCH/defs.mk
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Sun Nov 11 23:05:25 UTC 2018 Modified Files: src/tools/gcc: gcc-version.mk Log Message: our GCC 6.5 is "nb4 20181109". To generate a diff of this commit: cvs rdiff -u -r1.11 -r1.12 src/tools/gcc/gcc-version.mk Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/gcc-version.mk diff -u src/tools/gcc/gcc-version.mk:1.11 src/tools/gcc/gcc-version.mk:1.12 --- src/tools/gcc/gcc-version.mk:1.11 Wed Sep 5 05:03:28 2018 +++ src/tools/gcc/gcc-version.mk Sun Nov 11 23:05:25 2018 @@ -1,9 +1,9 @@ -# $NetBSD: gcc-version.mk,v 1.11 2018/09/05 05:03:28 mrg Exp $ +# $NetBSD: gcc-version.mk,v 1.12 2018/11/11 23:05:25 mrg Exp $ # common location for tools and native build .if ${HAVE_GCC} == 6 -NETBSD_GCC_VERSION=nb3 20180905 +NETBSD_GCC_VERSION=nb4 20181109 .elif ${HAVE_GCC} == 7 NETBSD_GCC_VERSION=nb1 20180905 .endif
CVS commit: src/tools/gcc
Module Name:src Committed By: maya Date: Fri Oct 19 16:16:21 UTC 2018 Modified Files: src/tools/gcc: Makefile Log Message: Pass --without-isl to GCC. We don't provide one, but if we did the build would fail. This can also happen if there's a system isl that GCC manages to find. >From mgorny. To generate a diff of this commit: cvs rdiff -u -r1.86 -r1.87 src/tools/gcc/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.86 src/tools/gcc/Makefile:1.87 --- src/tools/gcc/Makefile:1.86 Tue May 1 19:59:46 2018 +++ src/tools/gcc/Makefile Fri Oct 19 16:16:21 2018 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.86 2018/05/01 19:59:46 christos Exp $ +# $NetBSD: Makefile,v 1.87 2018/10/19 16:16:21 maya Exp $ .include @@ -35,6 +35,7 @@ COMMON_CONFIGURE_ARGS= --target=${MACHIN --with-bugurl=http://www.NetBSD.org/Misc/send-pr.html \ --with-pkgversion="NetBSD ${NETBSD_GCC_VERSION}" \ --with-system-zlib \ + --without-isl \ --disable-libstdcxx-dual-abi \ --enable-__cxa_atexit \ --enable-libstdcxx-time=rt \
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Wed Sep 5 05:03:28 UTC 2018 Modified Files: src/tools/gcc: gcc-version.mk Log Message: remove GCC 5 marker. this is now nb3 20180905. To generate a diff of this commit: cvs rdiff -u -r1.10 -r1.11 src/tools/gcc/gcc-version.mk Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/gcc-version.mk diff -u src/tools/gcc/gcc-version.mk:1.10 src/tools/gcc/gcc-version.mk:1.11 --- src/tools/gcc/gcc-version.mk:1.10 Wed Mar 28 19:30:41 2018 +++ src/tools/gcc/gcc-version.mk Wed Sep 5 05:03:28 2018 @@ -1,9 +1,9 @@ -# $NetBSD: gcc-version.mk,v 1.10 2018/03/28 19:30:41 mrg Exp $ +# $NetBSD: gcc-version.mk,v 1.11 2018/09/05 05:03:28 mrg Exp $ # common location for tools and native build -.if ${HAVE_GCC} == 5 -NETBSD_GCC_VERSION=nb2 20180327 -.elif ${HAVE_GCC} == 6 -NETBSD_GCC_VERSION=nb2 20180327 +.if ${HAVE_GCC} == 6 +NETBSD_GCC_VERSION=nb3 20180905 +.elif ${HAVE_GCC} == 7 +NETBSD_GCC_VERSION=nb1 20180905 .endif
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Wed Sep 5 01:20:20 UTC 2018 Modified Files: src/tools/gcc: mknative-gcc.old Log Message: copy across GCC 6.4 mknative-gcc into mknative-gcc.old. To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.6 src/tools/gcc/mknative-gcc.old Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc.old diff -u src/tools/gcc/mknative-gcc.old:1.5 src/tools/gcc/mknative-gcc.old:1.6 --- src/tools/gcc/mknative-gcc.old:1.5 Wed Oct 4 21:42:20 2017 +++ src/tools/gcc/mknative-gcc.old Wed Sep 5 01:20:20 2018 @@ -1,10 +1,10 @@ #!/bin/sh -# $NetBSD: mknative-gcc.old,v 1.5 2017/10/04 21:42:20 christos Exp $ +# $NetBSD: mknative-gcc.old,v 1.6 2018/09/05 01:20:20 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. # -# This version is for GCC 5.3 +# This version is for GCC 6.4 # initialise @@ -71,7 +71,9 @@ get_libgcc () { cd $_TMPDIR/$_PLATFORM/libgcc { getvars $_PLATFORM/libgcc/Makefile \ - INCLUDES LIB2ADD LIB2ADDEH LIB2ADD_ST \ + INCLUDES \ + INTERNAL_CFLAGS \ + LIB2ADD LIB2ADDEH LIB2ADD_ST \ LIB1ASMFUNCS LIB1ASMSRC \ LIB2_DIVMOD_FUNCS LIB2FUNCS_ST \ LIB2FUNCS_EXTRA \ @@ -221,6 +223,9 @@ get_libstdcxx_v3 () { <$_TMPDIR/$_PLATFORM/libstdc++-v3/include/gstdint.h { + getvars $_PLATFORM/libstdc++-v3/Makefile \ + port_specific_symbol_files + # libsupc++ getvars $_PLATFORM/libstdc++-v3/libsupc++/Makefile \ sources | sed 's/^G_sources=/G_LIBSUPCXX_SOURCES=/' @@ -303,7 +308,7 @@ get_gcc () { -e 's#build/##g' getvars gcc/Makefile \ ALL_CFLAGS ALL_CPPFLAGS C_AND_OBJC_OBJS C_OBJS CCCP_OBJS \ - GCC_OBJS GCOV_OBJS GXX_OBJS GTM_H PROTO_OBJS ${_extravars1} \ + GCC_OBJS GCOV_OBJS GCOV_DUMP_OBJS GXX_OBJS GTM_H PROTO_OBJS ${_extravars1} \ INCLUDES md_file OBJC_OBJS OBJS out_file version \ BUILD_PREFIX RTL_H RTL_BASE_H TREE_H ${_hconfig_h} BASIC_BLOCK_H GCC_H \ GGC_H \ @@ -366,10 +371,9 @@ __EOF__ if [ "${f}" = "configargs" ] then _srcquoted=$(echo "$_SRC" | sed 's/\//\\\//g') - ex <<__EOF__ $_OUTDIR/usr.bin/$_subdir/arch/$MACHINE_ARCH/$f.h -/static const char configuration_arguments/ s/$_srcquoted/\/usr\/src/g -wq -__EOF__ + sed -i -E -e "s,$_srcquoted,/usr/src,g" \ + -e 's/--build=[^ ]+ --host=([^ ]+)/--build=\1 --host=\1/' \ +$_OUTDIR/usr.bin/$_subdir/arch/$MACHINE_ARCH/$f.h fi done
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Tue Sep 4 22:57:25 UTC 2018 Modified Files: src/tools/gcc: mknative-gcc Log Message: also pullout INTERNAL_CFLAGS for the libgcc build, where it may have -DHAVE_CC_TLS defined on the command line. (we already collect all the other components.) To generate a diff of this commit: cvs rdiff -u -r1.93 -r1.94 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.93 src/tools/gcc/mknative-gcc:1.94 --- src/tools/gcc/mknative-gcc:1.93 Tue Sep 4 06:40:37 2018 +++ src/tools/gcc/mknative-gcc Tue Sep 4 22:57:25 2018 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.93 2018/09/04 06:40:37 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.94 2018/09/04 22:57:25 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -71,7 +71,9 @@ get_libgcc () { cd $_TMPDIR/$_PLATFORM/libgcc { getvars $_PLATFORM/libgcc/Makefile \ - INCLUDES LIB2ADD LIB2ADDEH LIB2ADD_ST \ + INCLUDES \ + INTERNAL_CFLAGS \ + LIB2ADD LIB2ADDEH LIB2ADD_ST \ LIB1ASMFUNCS LIB1ASMSRC \ LIB2_DIVMOD_FUNCS LIB2FUNCS_ST \ LIB2FUNCS_EXTRA \
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Tue Sep 4 06:40:37 UTC 2018 Modified Files: src/tools/gcc: mknative-gcc Log Message: in configargs.h, as well as normalising to /usr/src, normalise the --build to the same as the --host, so that it never changes based upon the host you ran mknative on. (some recent changes are only because i updated a system from netbsd-7 to netbsd-8. this will avoid that in the future.) To generate a diff of this commit: cvs rdiff -u -r1.92 -r1.93 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.92 src/tools/gcc/mknative-gcc:1.93 --- src/tools/gcc/mknative-gcc:1.92 Tue Feb 6 07:04:01 2018 +++ src/tools/gcc/mknative-gcc Tue Sep 4 06:40:37 2018 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.92 2018/02/06 07:04:01 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.93 2018/09/04 06:40:37 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -369,10 +369,9 @@ __EOF__ if [ "${f}" = "configargs" ] then _srcquoted=$(echo "$_SRC" | sed 's/\//\\\//g') - ex <<__EOF__ $_OUTDIR/usr.bin/$_subdir/arch/$MACHINE_ARCH/$f.h -/static const char configuration_arguments/ s/$_srcquoted/\/usr\/src/g -wq -__EOF__ + sed -i -E -e "s,$_srcquoted,/usr/src,g" \ + -e 's/--build=[^ ]+ --host=([^ ]+)/--build=\1 --host=\1/' \ +$_OUTDIR/usr.bin/$_subdir/arch/$MACHINE_ARCH/$f.h fi done
CVS commit: src/tools/gcc
Module Name:src Committed By: christos Date: Sun Apr 15 15:13:37 UTC 2018 Modified Files: src/tools/gcc: mknative.common Log Message: fix the variable name for then non-gmake case. To generate a diff of this commit: cvs rdiff -u -r1.15 -r1.16 src/tools/gcc/mknative.common Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative.common diff -u src/tools/gcc/mknative.common:1.15 src/tools/gcc/mknative.common:1.16 --- src/tools/gcc/mknative.common:1.15 Tue Nov 28 22:32:28 2017 +++ src/tools/gcc/mknative.common Sun Apr 15 11:13:37 2018 @@ -1,4 +1,4 @@ -# $NetBSD: mknative.common,v 1.15 2017/11/29 03:32:28 christos Exp $ +# $NetBSD: mknative.common,v 1.16 2018/04/15 15:13:37 christos Exp $ # # from: NetBSD: mknative,v 1.12 2003/03/05 06:17:17 mrg Exp # @@ -37,12 +37,12 @@ _x_: EOF ;; *) - $MAKE -B -f - _x_ <$_TOP/$1.tmp || \ bomb "cannot create $1" grep '$''NetBSD' $0 | sed 's,[ #$],,g;s,.*,/* Generated from: & */,' >>$_TOP/$1.tmp - echo '$NetBSD: mknative.common,v 1.15 2017/11/29 03:32:28 christos Exp $' | sed 's,[#$],,g;s,.*,/* Generated from: & */,' >>$_TOP/$1.tmp + echo '$NetBSD: mknative.common,v 1.16 2018/04/15 15:13:37 christos Exp $' | sed 's,[#$],,g;s,.*,/* Generated from: & */,' >>$_TOP/$1.tmp echo '' >>$_TOP/$1.tmp writefile $1 } @@ -77,7 +77,7 @@ write_mk() echo '# This file is automatically generated. DO NOT EDIT!' >$_TOP/$1.tmp || \ bomb "cannot create $1" grep '$''NetBSD' $0 | sed 's,[ #$],,g;s,.*,# Generated from: &,' >>$_TOP/$1.tmp - echo '$NetBSD: mknative.common,v 1.15 2017/11/29 03:32:28 christos Exp $' | sed 's,[#$],,g;s,.*,# Generated from: &,' >>$_TOP/$1.tmp + echo '$NetBSD: mknative.common,v 1.16 2018/04/15 15:13:37 christos Exp $' | sed 's,[#$],,g;s,.*,# Generated from: &,' >>$_TOP/$1.tmp echo '#' >>$_TOP/$1.tmp writefile $1 }
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Wed Mar 28 19:30:41 UTC 2018 Modified Files: src/tools/gcc: gcc-version.mk Log Message: bump the NetBSD GCC version. both GCC 5 and 6 got x86 spectre mitigation code, and both are now "nb2 20180327". To generate a diff of this commit: cvs rdiff -u -r1.9 -r1.10 src/tools/gcc/gcc-version.mk Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/gcc-version.mk diff -u src/tools/gcc/gcc-version.mk:1.9 src/tools/gcc/gcc-version.mk:1.10 --- src/tools/gcc/gcc-version.mk:1.9 Mon Feb 5 06:22:27 2018 +++ src/tools/gcc/gcc-version.mk Wed Mar 28 19:30:41 2018 @@ -1,9 +1,9 @@ -# $NetBSD: gcc-version.mk,v 1.9 2018/02/05 06:22:27 mrg Exp $ +# $NetBSD: gcc-version.mk,v 1.10 2018/03/28 19:30:41 mrg Exp $ # common location for tools and native build .if ${HAVE_GCC} == 5 -NETBSD_GCC_VERSION=nb1 20171112 +NETBSD_GCC_VERSION=nb2 20180327 .elif ${HAVE_GCC} == 6 -NETBSD_GCC_VERSION=nb1 20180203 +NETBSD_GCC_VERSION=nb2 20180327 .endif
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Tue Feb 6 07:04:01 UTC 2018 Modified Files: src/tools/gcc: mknative-gcc Log Message: also fetch GCOV_DUMP_OBJS. To generate a diff of this commit: cvs rdiff -u -r1.91 -r1.92 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.91 src/tools/gcc/mknative-gcc:1.92 --- src/tools/gcc/mknative-gcc:1.91 Sat Feb 3 19:06:25 2018 +++ src/tools/gcc/mknative-gcc Tue Feb 6 07:04:01 2018 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.91 2018/02/03 19:06:25 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.92 2018/02/06 07:04:01 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -306,7 +306,7 @@ get_gcc () { -e 's#build/##g' getvars gcc/Makefile \ ALL_CFLAGS ALL_CPPFLAGS C_AND_OBJC_OBJS C_OBJS CCCP_OBJS \ - GCC_OBJS GCOV_OBJS GXX_OBJS GTM_H PROTO_OBJS ${_extravars1} \ + GCC_OBJS GCOV_OBJS GCOV_DUMP_OBJS GXX_OBJS GTM_H PROTO_OBJS ${_extravars1} \ INCLUDES md_file OBJC_OBJS OBJS out_file version \ BUILD_PREFIX RTL_H RTL_BASE_H TREE_H ${_hconfig_h} BASIC_BLOCK_H GCC_H \ GGC_H \
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Mon Feb 5 06:22:27 UTC 2018 Modified Files: src/tools/gcc: gcc-version.mk Log Message: mark GCC 6.4 has nb1 20180203 To generate a diff of this commit: cvs rdiff -u -r1.8 -r1.9 src/tools/gcc/gcc-version.mk Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/gcc-version.mk diff -u src/tools/gcc/gcc-version.mk:1.8 src/tools/gcc/gcc-version.mk:1.9 --- src/tools/gcc/gcc-version.mk:1.8 Mon Nov 13 08:47:24 2017 +++ src/tools/gcc/gcc-version.mk Mon Feb 5 06:22:27 2018 @@ -1,5 +1,9 @@ -# $NetBSD: gcc-version.mk,v 1.8 2017/11/13 08:47:24 mrg Exp $ +# $NetBSD: gcc-version.mk,v 1.9 2018/02/05 06:22:27 mrg Exp $ # common location for tools and native build +.if ${HAVE_GCC} == 5 NETBSD_GCC_VERSION=nb1 20171112 +.elif ${HAVE_GCC} == 6 +NETBSD_GCC_VERSION=nb1 20180203 +.endif
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Sat Feb 3 19:06:25 UTC 2018 Modified Files: src/tools/gcc: mknative-gcc Log Message: pullout port_specific_symbol_files from libstdc++. To generate a diff of this commit: cvs rdiff -u -r1.90 -r1.91 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.90 src/tools/gcc/mknative-gcc:1.91 --- src/tools/gcc/mknative-gcc:1.90 Wed Oct 4 21:42:20 2017 +++ src/tools/gcc/mknative-gcc Sat Feb 3 19:06:25 2018 @@ -1,10 +1,10 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.90 2017/10/04 21:42:20 christos Exp $ +# $NetBSD: mknative-gcc,v 1.91 2018/02/03 19:06:25 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. # -# This version is for GCC 5.3 +# This version is for GCC 6.4 # initialise @@ -221,6 +221,9 @@ get_libstdcxx_v3 () { <$_TMPDIR/$_PLATFORM/libstdc++-v3/include/gstdint.h { + getvars $_PLATFORM/libstdc++-v3/Makefile \ + port_specific_symbol_files + # libsupc++ getvars $_PLATFORM/libstdc++-v3/libsupc++/Makefile \ sources | sed 's/^G_sources=/G_LIBSUPCXX_SOURCES=/'
CVS commit: src/tools/gcc
Module Name:src Committed By: christos Date: Wed Nov 29 03:32:28 UTC 2017 Modified Files: src/tools/gcc: mknative.common Log Message: Be more selective about what to quote-quote: only paths and version numbers. To generate a diff of this commit: cvs rdiff -u -r1.14 -r1.15 src/tools/gcc/mknative.common Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative.common diff -u src/tools/gcc/mknative.common:1.14 src/tools/gcc/mknative.common:1.15 --- src/tools/gcc/mknative.common:1.14 Tue Nov 28 22:06:46 2017 +++ src/tools/gcc/mknative.common Tue Nov 28 22:32:28 2017 @@ -1,4 +1,4 @@ -# $NetBSD: mknative.common,v 1.14 2017/11/29 03:06:46 christos Exp $ +# $NetBSD: mknative.common,v 1.15 2017/11/29 03:32:28 christos Exp $ # # from: NetBSD: mknative,v 1.12 2003/03/05 06:17:17 mrg Exp # @@ -28,7 +28,7 @@ getvars() _mf=$(basename "$_TMPDIR/$_mfp") env MAKEFLAGS= $MAKE -C "$_dir" --quiet -f - -f "$_mf" _x_ <$_TOP/$1.tmp || \ bomb "cannot create $1" grep '$''NetBSD' $0 | sed 's,[ #$],,g;s,.*,/* Generated from: & */,' >>$_TOP/$1.tmp - echo '$NetBSD: mknative.common,v 1.14 2017/11/29 03:06:46 christos Exp $' | sed 's,[#$],,g;s,.*,/* Generated from: & */,' >>$_TOP/$1.tmp + echo '$NetBSD: mknative.common,v 1.15 2017/11/29 03:32:28 christos Exp $' | sed 's,[#$],,g;s,.*,/* Generated from: & */,' >>$_TOP/$1.tmp echo '' >>$_TOP/$1.tmp writefile $1 } @@ -77,7 +77,7 @@ write_mk() echo '# This file is automatically generated. DO NOT EDIT!' >$_TOP/$1.tmp || \ bomb "cannot create $1" grep '$''NetBSD' $0 | sed 's,[ #$],,g;s,.*,# Generated from: &,' >>$_TOP/$1.tmp - echo '$NetBSD: mknative.common,v 1.14 2017/11/29 03:06:46 christos Exp $' | sed 's,[#$],,g;s,.*,# Generated from: &,' >>$_TOP/$1.tmp + echo '$NetBSD: mknative.common,v 1.15 2017/11/29 03:32:28 christos Exp $' | sed 's,[#$],,g;s,.*,# Generated from: &,' >>$_TOP/$1.tmp echo '#' >>$_TOP/$1.tmp writefile $1 }
CVS commit: src/tools/gcc
Module Name:src Committed By: christos Date: Wed Nov 29 03:06:47 UTC 2017 Modified Files: src/tools/gcc: mknative.common Log Message: backslash me harder! To generate a diff of this commit: cvs rdiff -u -r1.13 -r1.14 src/tools/gcc/mknative.common Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative.common diff -u src/tools/gcc/mknative.common:1.13 src/tools/gcc/mknative.common:1.14 --- src/tools/gcc/mknative.common:1.13 Tue Nov 28 21:10:15 2017 +++ src/tools/gcc/mknative.common Tue Nov 28 22:06:46 2017 @@ -1,4 +1,4 @@ -# $NetBSD: mknative.common,v 1.13 2017/11/29 02:10:15 christos Exp $ +# $NetBSD: mknative.common,v 1.14 2017/11/29 03:06:46 christos Exp $ # # from: NetBSD: mknative,v 1.12 2003/03/05 06:17:17 mrg Exp # @@ -28,7 +28,7 @@ getvars() _mf=$(basename "$_TMPDIR/$_mfp") env MAKEFLAGS= $MAKE -C "$_dir" --quiet -f - -f "$_mf" _x_ <$_TOP/$1.tmp || \ bomb "cannot create $1" grep '$''NetBSD' $0 | sed 's,[ #$],,g;s,.*,/* Generated from: & */,' >>$_TOP/$1.tmp - echo '$NetBSD: mknative.common,v 1.13 2017/11/29 02:10:15 christos Exp $' | sed 's,[#$],,g;s,.*,/* Generated from: & */,' >>$_TOP/$1.tmp + echo '$NetBSD: mknative.common,v 1.14 2017/11/29 03:06:46 christos Exp $' | sed 's,[#$],,g;s,.*,/* Generated from: & */,' >>$_TOP/$1.tmp echo '' >>$_TOP/$1.tmp writefile $1 } @@ -77,7 +77,7 @@ write_mk() echo '# This file is automatically generated. DO NOT EDIT!' >$_TOP/$1.tmp || \ bomb "cannot create $1" grep '$''NetBSD' $0 | sed 's,[ #$],,g;s,.*,# Generated from: &,' >>$_TOP/$1.tmp - echo '$NetBSD: mknative.common,v 1.13 2017/11/29 02:10:15 christos Exp $' | sed 's,[#$],,g;s,.*,# Generated from: &,' >>$_TOP/$1.tmp + echo '$NetBSD: mknative.common,v 1.14 2017/11/29 03:06:46 christos Exp $' | sed 's,[#$],,g;s,.*,# Generated from: &,' >>$_TOP/$1.tmp echo '#' >>$_TOP/$1.tmp writefile $1 }
CVS commit: src/tools/gcc
Module Name:src Committed By: christos Date: Wed Nov 29 02:10:15 UTC 2017 Modified Files: src/tools/gcc: mknative.common Log Message: since gmake does not have :Q handle it in sed... To generate a diff of this commit: cvs rdiff -u -r1.12 -r1.13 src/tools/gcc/mknative.common Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative.common diff -u src/tools/gcc/mknative.common:1.12 src/tools/gcc/mknative.common:1.13 --- src/tools/gcc/mknative.common:1.12 Tue Nov 28 17:05:57 2017 +++ src/tools/gcc/mknative.common Tue Nov 28 21:10:15 2017 @@ -1,4 +1,4 @@ -# $NetBSD: mknative.common,v 1.12 2017/11/28 22:05:57 christos Exp $ +# $NetBSD: mknative.common,v 1.13 2017/11/29 02:10:15 christos Exp $ # # from: NetBSD: mknative,v 1.12 2003/03/05 06:17:17 mrg Exp # @@ -28,7 +28,8 @@ getvars() _mf=$(basename "$_TMPDIR/$_mfp") env MAKEFLAGS= $MAKE -C "$_dir" --quiet -f - -f "$_mf" _x_ <$_TOP/$1.tmp || \ bomb "cannot create $1" grep '$''NetBSD' $0 | sed 's,[ #$],,g;s,.*,/* Generated from: & */,' >>$_TOP/$1.tmp - echo '$NetBSD: mknative.common,v 1.12 2017/11/28 22:05:57 christos Exp $' | sed 's,[#$],,g;s,.*,/* Generated from: & */,' >>$_TOP/$1.tmp + echo '$NetBSD: mknative.common,v 1.13 2017/11/29 02:10:15 christos Exp $' | sed 's,[#$],,g;s,.*,/* Generated from: & */,' >>$_TOP/$1.tmp echo '' >>$_TOP/$1.tmp writefile $1 } @@ -76,7 +77,7 @@ write_mk() echo '# This file is automatically generated. DO NOT EDIT!' >$_TOP/$1.tmp || \ bomb "cannot create $1" grep '$''NetBSD' $0 | sed 's,[ #$],,g;s,.*,# Generated from: &,' >>$_TOP/$1.tmp - echo '$NetBSD: mknative.common,v 1.12 2017/11/28 22:05:57 christos Exp $' | sed 's,[#$],,g;s,.*,# Generated from: &,' >>$_TOP/$1.tmp + echo '$NetBSD: mknative.common,v 1.13 2017/11/29 02:10:15 christos Exp $' | sed 's,[#$],,g;s,.*,# Generated from: &,' >>$_TOP/$1.tmp echo '#' >>$_TOP/$1.tmp writefile $1 }
CVS commit: src/tools/gcc
Module Name:src Committed By: christos Date: Tue Nov 28 22:05:57 UTC 2017 Modified Files: src/tools/gcc: mknative.common Log Message: use make -C path/to -f Makefile instead of make -f path/to/Makefile so that includes with relative paths work. To generate a diff of this commit: cvs rdiff -u -r1.11 -r1.12 src/tools/gcc/mknative.common Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative.common diff -u src/tools/gcc/mknative.common:1.11 src/tools/gcc/mknative.common:1.12 --- src/tools/gcc/mknative.common:1.11 Mon Feb 17 16:39:43 2014 +++ src/tools/gcc/mknative.common Tue Nov 28 17:05:57 2017 @@ -1,4 +1,4 @@ -# $NetBSD: mknative.common,v 1.11 2014/02/17 21:39:43 christos Exp $ +# $NetBSD: mknative.common,v 1.12 2017/11/28 22:05:57 christos Exp $ # # from: NetBSD: mknative,v 1.12 2003/03/05 06:17:17 mrg Exp # @@ -21,10 +21,12 @@ fi # getvars() { - _mf="$1"; shift + _mfp="$1"; shift case "$MAKE" in *gmake) - env MAKEFLAGS= $MAKE --quiet -f - -f "$_TMPDIR/$_mf" _x_ <$_TOP/$1.tmp || \ bomb "cannot create $1" grep '$''NetBSD' $0 | sed 's,[ #$],,g;s,.*,/* Generated from: & */,' >>$_TOP/$1.tmp - echo '$NetBSD: mknative.common,v 1.11 2014/02/17 21:39:43 christos Exp $' | sed 's,[#$],,g;s,.*,/* Generated from: & */,' >>$_TOP/$1.tmp + echo '$NetBSD: mknative.common,v 1.12 2017/11/28 22:05:57 christos Exp $' | sed 's,[#$],,g;s,.*,/* Generated from: & */,' >>$_TOP/$1.tmp echo '' >>$_TOP/$1.tmp writefile $1 } @@ -74,7 +76,7 @@ write_mk() echo '# This file is automatically generated. DO NOT EDIT!' >$_TOP/$1.tmp || \ bomb "cannot create $1" grep '$''NetBSD' $0 | sed 's,[ #$],,g;s,.*,# Generated from: &,' >>$_TOP/$1.tmp - echo '$NetBSD: mknative.common,v 1.11 2014/02/17 21:39:43 christos Exp $' | sed 's,[#$],,g;s,.*,# Generated from: &,' >>$_TOP/$1.tmp + echo '$NetBSD: mknative.common,v 1.12 2017/11/28 22:05:57 christos Exp $' | sed 's,[#$],,g;s,.*,# Generated from: &,' >>$_TOP/$1.tmp echo '#' >>$_TOP/$1.tmp writefile $1 }
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Mon Nov 13 08:47:24 UTC 2017 Modified Files: src/tools/gcc: gcc-version.mk Log Message: update netbsd version. To generate a diff of this commit: cvs rdiff -u -r1.7 -r1.8 src/tools/gcc/gcc-version.mk Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/gcc-version.mk diff -u src/tools/gcc/gcc-version.mk:1.7 src/tools/gcc/gcc-version.mk:1.8 --- src/tools/gcc/gcc-version.mk:1.7 Wed Feb 22 12:34:49 2017 +++ src/tools/gcc/gcc-version.mk Mon Nov 13 08:47:24 2017 @@ -1,5 +1,5 @@ -# $NetBSD: gcc-version.mk,v 1.7 2017/02/22 12:34:49 maya Exp $ +# $NetBSD: gcc-version.mk,v 1.8 2017/11/13 08:47:24 mrg Exp $ # common location for tools and native build -NETBSD_GCC_VERSION=nb1 20160606 +NETBSD_GCC_VERSION=nb1 20171112
CVS commit: src/tools/gcc
Module Name:src Committed By: christos Date: Wed Oct 4 21:42:20 UTC 2017 Modified Files: src/tools/gcc: mknative-gcc mknative-gcc.old Log Message: use the variable for the source dir instead of duplicating it. To generate a diff of this commit: cvs rdiff -u -r1.89 -r1.90 src/tools/gcc/mknative-gcc cvs rdiff -u -r1.4 -r1.5 src/tools/gcc/mknative-gcc.old Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.89 src/tools/gcc/mknative-gcc:1.90 --- src/tools/gcc/mknative-gcc:1.89 Wed Oct 5 15:25:49 2016 +++ src/tools/gcc/mknative-gcc Wed Oct 4 17:42:20 2017 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.89 2016/10/05 19:25:49 christos Exp $ +# $NetBSD: mknative-gcc,v 1.90 2017/10/04 21:42:20 christos Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -380,7 +380,7 @@ __EOF__ # special transforms for f in gtyp-input.list; do - sed -e 's/^.*external\/gpl3\/gcc\/dist/SRCDIR/' < $_TMPDIR/gcc/$f > $_OUTDIR/usr.bin/$_subdir/arch/$MACHINE_ARCH/$f + sed -e "s@^.*$_OUTDIRBASE/dist@SRCDIR@" < $_TMPDIR/gcc/$f > $_OUTDIR/usr.bin/$_subdir/arch/$MACHINE_ARCH/$f done # special platforms Index: src/tools/gcc/mknative-gcc.old diff -u src/tools/gcc/mknative-gcc.old:1.4 src/tools/gcc/mknative-gcc.old:1.5 --- src/tools/gcc/mknative-gcc.old:1.4 Wed Oct 4 17:29:43 2017 +++ src/tools/gcc/mknative-gcc.old Wed Oct 4 17:42:20 2017 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc.old,v 1.4 2017/10/04 21:29:43 christos Exp $ +# $NetBSD: mknative-gcc.old,v 1.5 2017/10/04 21:42:20 christos Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -380,7 +380,7 @@ __EOF__ # special transforms for f in gtyp-input.list; do - sed -e 's/^.*external\/gpl3\/gcc\/dist/SRCDIR/' < $_TMPDIR/gcc/$f > $_OUTDIR/usr.bin/$_subdir/arch/$MACHINE_ARCH/$f + sed -e "s@^.*$_OUTDIRBASE/dist@SRCDIR@" < $_TMPDIR/gcc/$f > $_OUTDIR/usr.bin/$_subdir/arch/$MACHINE_ARCH/$f done # special platforms
CVS commit: src/tools/gcc
Module Name:src Committed By: christos Date: Wed Oct 4 21:29:43 UTC 2017 Modified Files: src/tools/gcc: Makefile mknative-gcc.old Log Message: - gcc.old == gcc-5.3, so copy mknative-gcc{,.old} and adjust - disable dual libstdc++ abi per joerg (https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html) will require a major libstdc++ major bump. To generate a diff of this commit: cvs rdiff -u -r1.82 -r1.83 src/tools/gcc/Makefile cvs rdiff -u -r1.3 -r1.4 src/tools/gcc/mknative-gcc.old Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.82 src/tools/gcc/Makefile:1.83 --- src/tools/gcc/Makefile:1.82 Tue Aug 22 05:17:50 2017 +++ src/tools/gcc/Makefile Wed Oct 4 17:29:43 2017 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.82 2017/08/22 09:17:50 mrg Exp $ +# $NetBSD: Makefile,v 1.83 2017/10/04 21:29:43 christos Exp $ .include @@ -8,7 +8,7 @@ MODULE= gcc4 GCCDIST= ${.CURDIR}/../../external/gpl3/${EXTERNAL_GCC_SUBDIR}/dist GNUHOSTDIST= ${GCCDIST} -.if ${HAVE_GCC} == 48 +.if ${HAVE_GCC} == 53 MKNATIVE= ${.CURDIR}/mknative-gcc.old .endif @@ -35,6 +35,7 @@ COMMON_CONFIGURE_ARGS= --target=${MACHIN --with-bugurl=http://www.NetBSD.org/Misc/send-pr.html \ --with-pkgversion="NetBSD ${NETBSD_GCC_VERSION}" \ --with-system-zlib \ + --disable-libstdcxx-dual-abi \ --enable-__cxa_atexit \ --enable-libstdcxx-time=rt \ --enable-libstdcxx-threads @@ -190,6 +191,7 @@ NATIVE_CONFIGURE_ARGS+= \ --disable-multilib \ --disable-symvers \ --disable-libstdcxx-pch \ + --disable-libstdcxx-dual-abi \ --build=`${GCCDIST}/config.guess` \ --host=${MACHINE_GNU_PLATFORM} \ --with-sysroot=${DESTDIR} Index: src/tools/gcc/mknative-gcc.old diff -u src/tools/gcc/mknative-gcc.old:1.3 src/tools/gcc/mknative-gcc.old:1.4 --- src/tools/gcc/mknative-gcc.old:1.3 Thu Apr 21 03:22:15 2016 +++ src/tools/gcc/mknative-gcc.old Wed Oct 4 17:29:43 2017 @@ -1,10 +1,10 @@ #!/bin/sh -# $NetBSD: mknative-gcc.old,v 1.3 2016/04/21 07:22:15 mrg Exp $ +# $NetBSD: mknative-gcc.old,v 1.4 2017/10/04 21:29:43 christos Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. # -# This version is for GCC 4.8. +# This version is for GCC 5.3 # initialise @@ -37,19 +37,6 @@ sanitise_includes () { -e "s,-I/usr/include/[^ ]*,," } -# lib/crtstuff # - -get_crtstuff () { - _subdir="$1" - mkdir -p $_OUTDIR/lib/$_subdir/arch - - getvars gcc/Makefile \ - INCLUDES CRTSTUFF_CFLAGS CRTSTUFF_T_CFLAGS CRTSTUFF_T_CFLAGS_S \ - tm_defines xm_file xm_defines \ - | sanitise_includes \ - | write_mk $_OUTDIRBASE/lib/$_subdir/arch/$MACHINE_ARCH.mk -} - # lib/libg2c # get_libg2c () { @@ -121,7 +108,10 @@ get_libgcov () { { getvars $_mf \ - LIBGCOV + LIBGCOV_MERGE \ + LIBGCOV_PROFILER \ + LIBGCOV_INTERFACE \ + LIBGCOV_DRIVER } | write_mk $_OUTDIRBASE/lib/lib$_subdir/libgcov/arch/$MACHINE_ARCH/defs.mk write_c $_OUTDIRBASE/lib/lib$_subdir/libgcov/arch/$MACHINE_ARCH/gcov-iov.h \ @@ -245,9 +235,13 @@ get_libstdcxx_v3 () { getvars $_PLATFORM/libstdc++-v3/src/Makefile \ libstdc___la_SOURCES | sed 's/^G_libstdc___la_SOURCES=/G_SRC_SOURCES=/' getvars $_PLATFORM/libstdc++-v3/src/c++11/Makefile \ - libc__11convenience_la_SOURCES | sed 's/^G_libc__11convenience_la_SOURCES=/G_CPP11_SOURCES=/' + libc__11convenience_la_SOURCES | \ + sed -e 's/^G_libc__11convenience_la_SOURCES=/G_CPP11_SOURCES=/' \ + -e 's/codecvt.cc/c11-codecvt.cc/' getvars $_PLATFORM/libstdc++-v3/src/c++98/Makefile \ - libc__98convenience_la_SOURCES | sed 's/^G_libc__98convenience_la_SOURCES=/G_CPP98_SOURCES=/' + GLIBCXX_ABI_FLAGS libc__98convenience_la_SOURCES | \ + sed -e 's/^G_libc__98convenience_la_SOURCES=/G_CPP98_SOURCES=/' \ + -e 's/codecvt.cc/c98-codecvt.cc/' getvars $_PLATFORM/libstdc++-v3/Makefile ATOMICITY_SRCDIR \ BASIC_FILE_CC CLOCALE_CC CCODECVT_CC CCOLLATE_CC \ CCTYPE_CC CMESSAGES_CC CMONEY_CC CNUMERIC_CC CTIME_CC \ @@ -277,6 +271,11 @@ get_gcc_bootstrap () { for f in auto-host tm config; do write_c $_OUTDIRBASE/usr.bin/$_subdir/arch/$MACHINE_ARCH/$f.h <$_TMPDIR/gcc/$f.h done + # XXXGCC5 don't really want to copy insn-modes as we build + # it but libgcc needs to too early yet + for f in insn-modes; do + write_c $_OUTDIRBASE/usr.bin/$_subdir/arch/$MACHINE_ARCH/$f.h <$_TMPDIR/gcc/$f.h + done } get_gcc () { @@ -307,6 +306,7 @@ get_gcc () { GCC_OBJS GCOV_OBJS GXX_OBJS GTM_H PROTO_OBJS ${_extravars1} \ INCLUDES md_file OBJC_OBJS OBJS out_file version \ BUILD_PREFIX RTL_H RTL_BASE_H TREE_H ${_hconfig_h} BASIC_BLOCK_H GCC_H \ + GGC_H \ GTFILES_SRCDIR GTFILES_FILES_FILES GTFILES_FILES_LANGS \ GTFILES GTFILES_LANG_DIR_NAMES NOEXCEPTION_FLAGS \ NATIVE_SYSTEM_HEADER_DIR \ @@ -380,13 +380,17 @@ __EOF__ # speci
CVS commit: src/tools/gcc
Module Name:src Committed By: christos Date: Wed Oct 5 19:25:49 UTC 2016 Modified Files: src/tools/gcc: mknative-gcc Log Message: revert our changes; softfloat removal is now done in libgcc/config.host To generate a diff of this commit: cvs rdiff -u -r1.88 -r1.89 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.88 src/tools/gcc/mknative-gcc:1.89 --- src/tools/gcc/mknative-gcc:1.88 Wed Oct 5 10:16:12 2016 +++ src/tools/gcc/mknative-gcc Wed Oct 5 15:25:49 2016 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.88 2016/10/05 14:16:12 christos Exp $ +# $NetBSD: mknative-gcc,v 1.89 2016/10/05 19:25:49 christos Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -59,10 +59,6 @@ get_libg2c () { # lib/libgcc # -skipsoftfloat() { - sed -e 's@${GNUHOSTDIST}/libgcc/soft-fp/[a-z0-9]*.c@@g' -e 's@ @@g' -} - get_libgcc () { _subdir="$1" mkdir -p $_OUTDIR/lib/lib$_subdir/arch @@ -75,14 +71,13 @@ get_libgcc () { cd $_TMPDIR/$_PLATFORM/libgcc { getvars $_PLATFORM/libgcc/Makefile \ - INCLUDES LIB2ADDEH LIB2ADD_ST \ + INCLUDES LIB2ADD LIB2ADDEH LIB2ADD_ST \ LIB1ASMFUNCS LIB1ASMSRC \ LIB2_DIVMOD_FUNCS LIB2FUNCS_ST \ LIB2FUNCS_EXTRA \ LIBGCC2_CFLAGS \ SHLIB_MKMAP SHLIB_MKMAP_OPTS \ SHLIB_MAPFILES SHLIB_NM_FLAGS - getvars $_PLATFORM/libgcc/Makefile LIB2ADD | skipsoftfloat getvars gcc/Makefile \ NOEXCEPTION_FLAGS EXTRA_HEADERS getlinks config.status libgcc
CVS commit: src/tools/gcc
Module Name:src Committed By: christos Date: Wed Oct 5 14:16:12 UTC 2016 Modified Files: src/tools/gcc: mknative-gcc Log Message: We provide our own soft-float implementation in libc, so elide the libgcc sources for it. To generate a diff of this commit: cvs rdiff -u -r1.87 -r1.88 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.87 src/tools/gcc/mknative-gcc:1.88 --- src/tools/gcc/mknative-gcc:1.87 Thu Mar 17 19:41:21 2016 +++ src/tools/gcc/mknative-gcc Wed Oct 5 10:16:12 2016 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.87 2016/03/17 23:41:21 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.88 2016/10/05 14:16:12 christos Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -59,6 +59,10 @@ get_libg2c () { # lib/libgcc # +skipsoftfloat() { + sed -e 's@${GNUHOSTDIST}/libgcc/soft-fp/[a-z0-9]*.c@@g' -e 's@ @@g' +} + get_libgcc () { _subdir="$1" mkdir -p $_OUTDIR/lib/lib$_subdir/arch @@ -71,13 +75,14 @@ get_libgcc () { cd $_TMPDIR/$_PLATFORM/libgcc { getvars $_PLATFORM/libgcc/Makefile \ - INCLUDES LIB2ADD LIB2ADDEH LIB2ADD_ST \ + INCLUDES LIB2ADDEH LIB2ADD_ST \ LIB1ASMFUNCS LIB1ASMSRC \ LIB2_DIVMOD_FUNCS LIB2FUNCS_ST \ LIB2FUNCS_EXTRA \ LIBGCC2_CFLAGS \ SHLIB_MKMAP SHLIB_MKMAP_OPTS \ SHLIB_MAPFILES SHLIB_NM_FLAGS + getvars $_PLATFORM/libgcc/Makefile LIB2ADD | skipsoftfloat getvars gcc/Makefile \ NOEXCEPTION_FLAGS EXTRA_HEADERS getlinks config.status libgcc
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Tue Jun 7 08:12:13 UTC 2016 Modified Files: src/tools/gcc: gcc-version.mk Log Message: set gcc 5.4 netbsd version to 2016-06-06 To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.6 src/tools/gcc/gcc-version.mk Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/gcc-version.mk diff -u src/tools/gcc/gcc-version.mk:1.5 src/tools/gcc/gcc-version.mk:1.6 --- src/tools/gcc/gcc-version.mk:1.5 Thu Mar 17 23:41:21 2016 +++ src/tools/gcc/gcc-version.mk Tue Jun 7 08:12:13 2016 @@ -1,9 +1,9 @@ -# $NetBSD: gcc-version.mk,v 1.5 2016/03/17 23:41:21 mrg Exp $ +# $NetBSD: gcc-version.mk,v 1.6 2016/06/07 08:12:13 mrg Exp $ # common location for tools and native build .if ${HAVE_GCC} == 48 NETBSD_GCC_VERSION=nb3 20151015 .else -NETBSD_GCC_VERSION=nb1 20160317 +NETBSD_GCC_VERSION=nb1 20160606 .endif
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Thu Apr 21 07:22:15 UTC 2016 Modified Files: src/tools/gcc: mknative-gcc.old Log Message: set _OUTDIR and _OUTDIRBASE properly for gcc.old, and fix a sed. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 src/tools/gcc/mknative-gcc.old Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc.old diff -u src/tools/gcc/mknative-gcc.old:1.2 src/tools/gcc/mknative-gcc.old:1.3 --- src/tools/gcc/mknative-gcc.old:1.2 Sun Jan 24 05:10:26 2016 +++ src/tools/gcc/mknative-gcc.old Thu Apr 21 07:22:15 2016 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc.old,v 1.2 2016/01/24 05:10:26 mrg Exp $ +# $NetBSD: mknative-gcc.old,v 1.3 2016/04/21 07:22:15 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -24,9 +24,8 @@ fi . $_TOP/tools/gcc/mknative.common -# default to GCC 4.1 for now -_OUTDIR="$_TOP/gnu" -_OUTDIRBASE="gnu" +_OUTDIR="$_TOP/external/gpl3/gcc.old" +_OUTDIRBASE="external/gpl3/gcc.old" sanitise_includes () { sed \ @@ -381,7 +380,7 @@ __EOF__ # special transforms for f in gtyp-input.list; do - sed -e 's/^.*external\/gpl3\/gcc\/dist/SRCDIR/' < $_TMPDIR/gcc/$f > $_OUTDIR/usr.bin/$_subdir/arch/$MACHINE_ARCH/$f + sed -e 's/^.*external\/gpl3\/gcc\.old\/dist/SRCDIR/' < $_TMPDIR/gcc/$f > $_OUTDIR/usr.bin/$_subdir/arch/$MACHINE_ARCH/$f done # special platforms @@ -396,8 +395,6 @@ case "$1" in # .mk and .h files for libgcc bootstrap (from host build) libgcc*-bootstrap) - _OUTDIR="$_TOP/external/gpl3/gcc" - _OUTDIRBASE="external/gpl3/gcc" get_libgcc gcc get_libgcov gcc $_PLATFORM/libgcc/Makefile get_crtstuff crtstuff @@ -406,15 +403,11 @@ libgcc*-bootstrap) ;; libstdc++-bootstrap) - _OUTDIR="$_TOP/external/gpl3/gcc" - _OUTDIRBASE="external/gpl3/gcc" get_libstdcxx_v3 libstdc++-v3 gcc exit 0 ;; gcc*) - _OUTDIR="$_TOP/external/gpl3/gcc" - _OUTDIRBASE="external/gpl3/gcc" get_gcc gcc get_libgcc gcc get_libgcov gcc $_PLATFORM/libgcc/Makefile
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Thu Mar 17 23:41:21 UTC 2016 Modified Files: src/tools/gcc: gcc-version.mk mknative-gcc Log Message: set NETBSD_GCC_VERSION for GCC 5.3 separately. don't collect crtstuff anymore. To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 src/tools/gcc/gcc-version.mk cvs rdiff -u -r1.86 -r1.87 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/gcc-version.mk diff -u src/tools/gcc/gcc-version.mk:1.4 src/tools/gcc/gcc-version.mk:1.5 --- src/tools/gcc/gcc-version.mk:1.4 Fri Oct 16 00:41:07 2015 +++ src/tools/gcc/gcc-version.mk Thu Mar 17 23:41:21 2016 @@ -1,5 +1,9 @@ -# $NetBSD: gcc-version.mk,v 1.4 2015/10/16 00:41:07 christos Exp $ +# $NetBSD: gcc-version.mk,v 1.5 2016/03/17 23:41:21 mrg Exp $ # common location for tools and native build +.if ${HAVE_GCC} == 48 NETBSD_GCC_VERSION=nb3 20151015 +.else +NETBSD_GCC_VERSION=nb1 20160317 +.endif Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.86 src/tools/gcc/mknative-gcc:1.87 --- src/tools/gcc/mknative-gcc:1.86 Wed Mar 16 11:16:05 2016 +++ src/tools/gcc/mknative-gcc Thu Mar 17 23:41:21 2016 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.86 2016/03/16 11:16:05 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.87 2016/03/17 23:41:21 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -37,19 +37,6 @@ sanitise_includes () { -e "s,-I/usr/include/[^ ]*,," } -# lib/crtstuff # - -get_crtstuff () { - _subdir="$1" - mkdir -p $_OUTDIR/lib/$_subdir/arch - - getvars gcc/Makefile \ - INCLUDES CRTSTUFF_CFLAGS CRTSTUFF_T_CFLAGS CRTSTUFF_T_CFLAGS_S \ - tm_defines xm_file xm_defines \ - | sanitise_includes \ - | write_mk $_OUTDIRBASE/lib/$_subdir/arch/$MACHINE_ARCH.mk -} - # lib/libg2c # get_libg2c () { @@ -414,7 +401,6 @@ case "$1" in libgcc*-bootstrap) get_libgcc gcc get_libgcov gcc $_PLATFORM/libgcc/Makefile - get_crtstuff crtstuff get_gcc_bootstrap gcc exit 0 ;; @@ -428,7 +414,6 @@ gcc*) get_gcc gcc get_libgcc gcc get_libgcov gcc $_PLATFORM/libgcc/Makefile - get_crtstuff crtstuff get_gcc_bootstrap gcc get_gcc_libiberty gcc get_libobjc libobjc
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Wed Mar 16 11:16:05 UTC 2016 Modified Files: src/tools/gcc: mknative-gcc Log Message: grab insn-modes.h, and do the libgcc bootstrap from gcc as well. To generate a diff of this commit: cvs rdiff -u -r1.85 -r1.86 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.85 src/tools/gcc/mknative-gcc:1.86 --- src/tools/gcc/mknative-gcc:1.85 Tue Mar 15 21:38:32 2016 +++ src/tools/gcc/mknative-gcc Wed Mar 16 11:16:05 2016 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.85 2016/03/15 21:38:32 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.86 2016/03/16 11:16:05 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -284,6 +284,11 @@ get_gcc_bootstrap () { for f in auto-host tm config; do write_c $_OUTDIRBASE/usr.bin/$_subdir/arch/$MACHINE_ARCH/$f.h <$_TMPDIR/gcc/$f.h done + # XXXGCC5 don't really want to copy insn-modes as we build + # it but libgcc needs to too early yet + for f in insn-modes; do + write_c $_OUTDIRBASE/usr.bin/$_subdir/arch/$MACHINE_ARCH/$f.h <$_TMPDIR/gcc/$f.h + done } get_gcc () { @@ -424,6 +429,7 @@ gcc*) get_libgcc gcc get_libgcov gcc $_PLATFORM/libgcc/Makefile get_crtstuff crtstuff + get_gcc_bootstrap gcc get_gcc_libiberty gcc get_libobjc libobjc get_libstdcxx_v3 libstdc++-v3 gcc
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Wed Mar 16 05:47:43 UTC 2016 Modified Files: src/tools/gcc: Makefile Log Message: unwind.h has a new problem, and fix the grabbing of x86 specific files. To generate a diff of this commit: cvs rdiff -u -r1.78 -r1.79 src/tools/gcc/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.78 src/tools/gcc/Makefile:1.79 --- src/tools/gcc/Makefile:1.78 Tue Mar 15 21:38:32 2016 +++ src/tools/gcc/Makefile Wed Mar 16 05:47:43 2016 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.78 2016/03/15 21:38:32 mrg Exp $ +# $NetBSD: Makefile,v 1.79 2016/03/16 05:47:43 mrg Exp $ .include @@ -87,13 +87,11 @@ BUILD_MAKE=${TOOL_GMAKE} MKNATIVE_CONFIG_TARGET_LIBS= -.if ${HAVE_GCC} >= 50 MKNATIVE_CONFIG_TARGET_LIBS+= configure-target-libgcc MKNATIVE_CONFIG_TARGET_LIBS+= configure-target-libgomp +.if ${HAVE_GCC} == 53 MKNATIVE_TARGET= gcc5 .elif ${HAVE_GCC} == 48 -MKNATIVE_CONFIG_TARGET_LIBS+= configure-target-libgcc -MKNATIVE_CONFIG_TARGET_LIBS+= configure-target-libgomp MKNATIVE_TARGET= gcc48 .endif @@ -195,6 +193,12 @@ NATIVE_CONFIGURE_ARGS+= \ --with-sysroot=${DESTDIR} MKENV_BUILD_MAKE=cd .native && ${MKNATIVE_ENV} ${BUILD_MAKE} +UNWIND_H=unwind.h +# XXXGCC5 +.if ${HAVE_GCC} == 53 +UNWIND_H= +.endif + .native/.configure_done: ${_GNU_CFGSRC} ${.CURDIR}/Makefile mkdir .native 2>/dev/null || true PATH=${TOOLDIR}/bin:$$PATH; export PATH; \ @@ -217,9 +221,10 @@ MKENV_BUILD_MAKE=cd .native && ${MKNATIV PATH=${TOOLDIR}/bin:$$PATH; export PATH; \ (cd .native/gcc && ${MKNATIVE_ENV} ${BUILD_MAKE} -e tree-check.h config.h multilib.h gcov-iov.h) PATH=${TOOLDIR}/bin:$$PATH; export PATH; \ - (cd .native/gcc && ${MKNATIVE_ENV} ${BUILD_MAKE} -e libgcc.mvars tconfig.h unwind.h); \ + (cd .native/gcc && ${MKNATIVE_ENV} ${BUILD_MAKE} -e libgcc.mvars tconfig.h ${UNWIND_H}); \ (cd .native && touch gcc/cc1obj gcc/cc1plus gcc/f771 gcc/libgcc.a gcc/libgcc_s.so) -.if !empty(${EXTRA_GCC_TARGETS}) +.if defined(EXTRA_GCC_TARGETS) + PATH=${TOOLDIR}/bin:$$PATH; export PATH; \ (cd .native/gcc && ${MKNATIVE_ENV} ${BUILD_MAKE} -e ${EXTRA_GCC_TARGETS}) .endif .for _lib in ${MKNATIVE_CONFIG_TARGET_LIBS} @@ -242,11 +247,6 @@ MKENV_BUILD_MAKE=cd .native && ${MKNATIV CPP=${CPP:Q}' '-I${DESTDIR}/usr/include \ all-local) && \ true -.if 0 - PATH=${TOOLDIR}/bin:$$PATH; export PATH; \ - (cd .native/${MACHINE_GNU_PLATFORM}/libiberty && \ - ${MKNATIVE_ENV} ${BUILD_MAKE} needed-list) -.endif @touch $@ clean: clean.native
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Tue Mar 15 21:38:32 UTC 2016 Modified Files: src/tools/gcc: Makefile mknative-gcc Log Message: - pull i386-builtin-types.inc automatically on x86 - reenable cxx rt support - don't grab insn-modes.h, we build it - rename the c98 and c11 subdir codecvt.cc files while extracting them with mknative - grab GGC_H as well, and use it in dependency lists To generate a diff of this commit: cvs rdiff -u -r1.77 -r1.78 src/tools/gcc/Makefile cvs rdiff -u -r1.84 -r1.85 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.77 src/tools/gcc/Makefile:1.78 --- src/tools/gcc/Makefile:1.77 Sun Mar 13 01:06:51 2016 +++ src/tools/gcc/Makefile Tue Mar 15 21:38:32 2016 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.77 2016/03/13 01:06:51 mrg Exp $ +# $NetBSD: Makefile,v 1.78 2016/03/15 21:38:32 mrg Exp $ .include @@ -48,6 +48,10 @@ COMMON_CONFIGURE_ARGS+= --with-tune=${GC COMMON_CONFIGURE_ARGS+= --enable-libstdcxx-time=rt --enable-lto .endif +.if ${HAVE_GCC} == 53 +COMMON_CONFIGURE_ARGS+= --enable-libstdcxx-time=rt +.endif + CONFIGURE_ARGS= ${COMMON_CONFIGURE_ARGS} CONFIGURE_ARGS+= \ --with-sysroot=${DESTDIR} \ @@ -178,6 +182,10 @@ NATIVE_CONFIGURE_ARGS+= --enable-initfin NATIVE_CONFIGURE_ARGS+= --disable-shared .endif +.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64" +EXTRA_GCC_TARGETS= i386-builtin-types.inc +.endif + NATIVE_CONFIGURE_ARGS+= \ --disable-multilib \ --disable-symvers \ @@ -211,6 +219,9 @@ MKENV_BUILD_MAKE=cd .native && ${MKNATIV PATH=${TOOLDIR}/bin:$$PATH; export PATH; \ (cd .native/gcc && ${MKNATIVE_ENV} ${BUILD_MAKE} -e libgcc.mvars tconfig.h unwind.h); \ (cd .native && touch gcc/cc1obj gcc/cc1plus gcc/f771 gcc/libgcc.a gcc/libgcc_s.so) +.if !empty(${EXTRA_GCC_TARGETS}) + (cd .native/gcc && ${MKNATIVE_ENV} ${BUILD_MAKE} -e ${EXTRA_GCC_TARGETS}) +.endif .for _lib in ${MKNATIVE_CONFIG_TARGET_LIBS} PATH=${TOOLDIR}/bin:$$PATH; export PATH; \ (cd .native && ${MKNATIVE_ENV} ${BUILD_MAKE} \ Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.84 src/tools/gcc/mknative-gcc:1.85 --- src/tools/gcc/mknative-gcc:1.84 Tue Mar 15 06:10:13 2016 +++ src/tools/gcc/mknative-gcc Tue Mar 15 21:38:32 2016 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.84 2016/03/15 06:10:13 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.85 2016/03/15 21:38:32 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -248,11 +248,13 @@ get_libstdcxx_v3 () { getvars $_PLATFORM/libstdc++-v3/src/Makefile \ libstdc___la_SOURCES | sed 's/^G_libstdc___la_SOURCES=/G_SRC_SOURCES=/' getvars $_PLATFORM/libstdc++-v3/src/c++11/Makefile \ - libc__11convenience_la_SOURCES | sed 's/^G_libc__11convenience_la_SOURCES=/G_CPP11_SOURCES=/' + libc__11convenience_la_SOURCES | \ + sed -e 's/^G_libc__11convenience_la_SOURCES=/G_CPP11_SOURCES=/' \ + -e 's/codecvt.cc/c11-codecvt.cc/' getvars $_PLATFORM/libstdc++-v3/src/c++98/Makefile \ GLIBCXX_ABI_FLAGS libc__98convenience_la_SOURCES | \ sed -e 's/^G_libc__98convenience_la_SOURCES=/G_CPP98_SOURCES=/' \ - -e 's/locale_init.cc//' -e 's/localename.cc//' + -e 's/codecvt.cc/c98-codecvt.cc/' getvars $_PLATFORM/libstdc++-v3/Makefile ATOMICITY_SRCDIR \ BASIC_FILE_CC CLOCALE_CC CCODECVT_CC CCOLLATE_CC \ CCTYPE_CC CMESSAGES_CC CMONEY_CC CNUMERIC_CC CTIME_CC \ @@ -279,7 +281,7 @@ get_libstdcxx_v3 () { get_gcc_bootstrap () { _subdir="$1" mkdir -p $_OUTDIR/usr.bin/$_subdir/arch/$MACHINE_ARCH - for f in auto-host tm config insn-modes; do + for f in auto-host tm config; do write_c $_OUTDIRBASE/usr.bin/$_subdir/arch/$MACHINE_ARCH/$f.h <$_TMPDIR/gcc/$f.h done } @@ -312,6 +314,7 @@ get_gcc () { GCC_OBJS GCOV_OBJS GXX_OBJS GTM_H PROTO_OBJS ${_extravars1} \ INCLUDES md_file OBJC_OBJS OBJS out_file version \ BUILD_PREFIX RTL_H RTL_BASE_H TREE_H ${_hconfig_h} BASIC_BLOCK_H GCC_H \ + GGC_H \ GTFILES_SRCDIR GTFILES_FILES_FILES GTFILES_FILES_LANGS \ GTFILES GTFILES_LANG_DIR_NAMES NOEXCEPTION_FLAGS \ NATIVE_SYSTEM_HEADER_DIR \ @@ -392,6 +395,10 @@ __EOF__ if [ "${MACHINE_ARCH}" = "sh3el" -o "${MACHINE_ARCH}" = "sh3eb" ]; then write_c $_OUTDIRBASE/usr.bin/$_subdir/arch/$MACHINE_ARCH/sysroot-suffix.h <$_TMPDIR/gcc/sysroot-suffix.h fi + + if [ "${MACHINE_ARCH}" = "i386" -o "${MACHINE_ARCH}" = "x86_64" ]; then + write_c $_OUTDIRBASE/usr.bin/$_subdir/arch/$MACHINE_ARCH/i386-builtin-types.inc <$_TMPDIR/gcc/i386-builtin-types.inc + fi } # main #
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Tue Mar 15 06:10:13 UTC 2016 Modified Files: src/tools/gcc: mknative-gcc Log Message: update for GCC 5.3 libgcov and libstdc++ To generate a diff of this commit: cvs rdiff -u -r1.83 -r1.84 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.83 src/tools/gcc/mknative-gcc:1.84 --- src/tools/gcc/mknative-gcc:1.83 Tue Mar 15 03:22:06 2016 +++ src/tools/gcc/mknative-gcc Tue Mar 15 06:10:13 2016 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.83 2016/03/15 03:22:06 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.84 2016/03/15 06:10:13 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -121,7 +121,10 @@ get_libgcov () { { getvars $_mf \ - LIBGCOV + LIBGCOV_MERGE \ + LIBGCOV_PROFILER \ + LIBGCOV_INTERFACE \ + LIBGCOV_DRIVER } | write_mk $_OUTDIRBASE/lib/lib$_subdir/libgcov/arch/$MACHINE_ARCH/defs.mk write_c $_OUTDIRBASE/lib/lib$_subdir/libgcov/arch/$MACHINE_ARCH/gcov-iov.h \ @@ -247,7 +250,9 @@ get_libstdcxx_v3 () { getvars $_PLATFORM/libstdc++-v3/src/c++11/Makefile \ libc__11convenience_la_SOURCES | sed 's/^G_libc__11convenience_la_SOURCES=/G_CPP11_SOURCES=/' getvars $_PLATFORM/libstdc++-v3/src/c++98/Makefile \ - libc__98convenience_la_SOURCES | sed 's/^G_libc__98convenience_la_SOURCES=/G_CPP98_SOURCES=/' + GLIBCXX_ABI_FLAGS libc__98convenience_la_SOURCES | \ + sed -e 's/^G_libc__98convenience_la_SOURCES=/G_CPP98_SOURCES=/' \ + -e 's/locale_init.cc//' -e 's/localename.cc//' getvars $_PLATFORM/libstdc++-v3/Makefile ATOMICITY_SRCDIR \ BASIC_FILE_CC CLOCALE_CC CCODECVT_CC CCOLLATE_CC \ CCTYPE_CC CMESSAGES_CC CMONEY_CC CNUMERIC_CC CTIME_CC \
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Tue Mar 15 03:22:06 UTC 2016 Modified Files: src/tools/gcc: mknative-gcc Log Message: very first baby steps towards GCC 5.3 mknative. To generate a diff of this commit: cvs rdiff -u -r1.82 -r1.83 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.82 src/tools/gcc/mknative-gcc:1.83 --- src/tools/gcc/mknative-gcc:1.82 Sun Jan 24 05:02:23 2016 +++ src/tools/gcc/mknative-gcc Tue Mar 15 03:22:06 2016 @@ -1,10 +1,10 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.82 2016/01/24 05:02:23 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.83 2016/03/15 03:22:06 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. # -# This version is for GCC 4.8. +# This version is for GCC 5.3 # initialise @@ -24,9 +24,8 @@ fi . $_TOP/tools/gcc/mknative.common -# default to GCC 4.1 for now -_OUTDIR="$_TOP/gnu" -_OUTDIRBASE="gnu" +_OUTDIR="$_TOP/external/gpl3/gcc" +_OUTDIRBASE="external/gpl3/gcc" sanitise_includes () { sed \ @@ -275,7 +274,7 @@ get_libstdcxx_v3 () { get_gcc_bootstrap () { _subdir="$1" mkdir -p $_OUTDIR/usr.bin/$_subdir/arch/$MACHINE_ARCH - for f in auto-host tm config; do + for f in auto-host tm config insn-modes; do write_c $_OUTDIRBASE/usr.bin/$_subdir/arch/$MACHINE_ARCH/$f.h <$_TMPDIR/gcc/$f.h done } @@ -396,8 +395,6 @@ case "$1" in # .mk and .h files for libgcc bootstrap (from host build) libgcc*-bootstrap) - _OUTDIR="$_TOP/external/gpl3/gcc" - _OUTDIRBASE="external/gpl3/gcc" get_libgcc gcc get_libgcov gcc $_PLATFORM/libgcc/Makefile get_crtstuff crtstuff @@ -406,15 +403,11 @@ libgcc*-bootstrap) ;; libstdc++-bootstrap) - _OUTDIR="$_TOP/external/gpl3/gcc" - _OUTDIRBASE="external/gpl3/gcc" get_libstdcxx_v3 libstdc++-v3 gcc exit 0 ;; gcc*) - _OUTDIR="$_TOP/external/gpl3/gcc" - _OUTDIRBASE="external/gpl3/gcc" get_gcc gcc get_libgcc gcc get_libgcov gcc $_PLATFORM/libgcc/Makefile
CVS commit: src/tools/gcc
Module Name:src Committed By: martin Date: Mon Feb 15 13:25:12 UTC 2016 Modified Files: src/tools/gcc: Makefile Log Message: Add missing closing ) and line continuation for mknative To generate a diff of this commit: cvs rdiff -u -r1.75 -r1.76 src/tools/gcc/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.75 src/tools/gcc/Makefile:1.76 --- src/tools/gcc/Makefile:1.75 Sun Jan 24 05:10:26 2016 +++ src/tools/gcc/Makefile Mon Feb 15 13:25:12 2016 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.75 2016/01/24 05:10:26 mrg Exp $ +# $NetBSD: Makefile,v 1.76 2016/02/15 13:25:12 martin Exp $ .include @@ -209,7 +209,7 @@ MKENV_BUILD_MAKE=cd .native && ${MKNATIV PATH=${TOOLDIR}/bin:$$PATH; export PATH; \ (cd .native/gcc && ${MKNATIVE_ENV} ${BUILD_MAKE} -e tree-check.h config.h multilib.h gcov-iov.h) PATH=${TOOLDIR}/bin:$$PATH; export PATH; \ - (cd .native/gcc && ${MKNATIVE_ENV} ${BUILD_MAKE} -e libgcc.mvars tconfig.h unwind.h + (cd .native/gcc && ${MKNATIVE_ENV} ${BUILD_MAKE} -e libgcc.mvars tconfig.h unwind.h); \ (cd .native && touch gcc/cc1obj gcc/cc1plus gcc/f771 gcc/libgcc.a gcc/libgcc_s.so) .for _lib in ${MKNATIVE_CONFIG_TARGET_LIBS} PATH=${TOOLDIR}/bin:$$PATH; export PATH; \
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Sun Jan 24 05:10:26 UTC 2016 Modified Files: src/tools/gcc: Makefile mknative-gcc.old Log Message: prepare for GCC 5: - remove GCC 4.5 stuff, add most very basic GCC 5 stuff. - use mknative-gcc.old for GCC 4.8 - copy mknative-gcc to mknative-gcc.old (should have done this when we switched to using gcc.old.) this should not affect current builds. To generate a diff of this commit: cvs rdiff -u -r1.74 -r1.75 src/tools/gcc/Makefile cvs rdiff -u -r1.1 -r1.2 src/tools/gcc/mknative-gcc.old Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.74 src/tools/gcc/Makefile:1.75 --- src/tools/gcc/Makefile:1.74 Fri Jan 16 20:10:26 2015 +++ src/tools/gcc/Makefile Sun Jan 24 05:10:26 2016 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.74 2015/01/16 20:10:26 christos Exp $ +# $NetBSD: Makefile,v 1.75 2016/01/24 05:10:26 mrg Exp $ .include @@ -9,16 +9,11 @@ GCCDIST= ${.CURDIR}/../../external/gpl3/ GNUHOSTDIST= ${GCCDIST} .if ${HAVE_GCC} == 48 -CC_FOR_BUILD= ${HOST_CXX:Q} -LIB_INTL= -.elif ${HAVE_GCC} == 45 -UNWIND_H=unwind.h MKNATIVE= ${.CURDIR}/mknative-gcc.old .endif # Defaults -CC_FOR_BUILD?= ${HOST_CC:Q} -LIB_INTL?= "LIBS=-lintl" +CC_FOR_BUILD= ${HOST_CXX:Q} MKNATIVE?= ${.CURDIR}/mknative-gcc .if ${MACHINE_ARCH} == "x86_64" || ${MACHINE_ARCH} == "sparc64" @@ -88,13 +83,14 @@ BUILD_MAKE=${TOOL_GMAKE} MKNATIVE_CONFIG_TARGET_LIBS= -.if ${HAVE_GCC} == 48 +.if ${HAVE_GCC} == 5 MKNATIVE_CONFIG_TARGET_LIBS+= configure-target-libgcc MKNATIVE_CONFIG_TARGET_LIBS+= configure-target-libgomp -MKNATIVE_TARGET= gcc48 -.elif ${HAVE_GCC} == 45 +MKNATIVE_TARGET= gcc5 +.elif ${HAVE_GCC} == 48 +MKNATIVE_CONFIG_TARGET_LIBS+= configure-target-libgcc MKNATIVE_CONFIG_TARGET_LIBS+= configure-target-libgomp -MKNATIVE_TARGET= gcc45 +MKNATIVE_TARGET= gcc48 .endif MKNATIVE_CONFIG_TARGET_LIBS+= \ @@ -116,7 +112,6 @@ MKNATIVE_ENV= ${BINENV} ${CONFIGURE_ENV: MSGFMT=${TOOLDIR}/bin/${_TOOL_PREFIX}msgfmt \ NM=${NM:Q} OBJDUMP=${OBJDUMP:Q} \ XGETTEXT=${TOOLDIR}/bin/${_TOOL_PREFIX}xgettext \ - ${LIB_INTL} \ ac_cv_prog_cc_cross=yes \ ac_cv_func_strcoll_works=yes \ ac_cv_func_elf_getshstrndx=no \ @@ -141,14 +136,12 @@ bootstrap-libgcc: .configure_done ${.OBJDIR}/build ${NEWCONFIGDIR} ${NETBSDSRCDIR} \ ${MACHINE_GNU_PLATFORM} ${DESTDIR} ${TOOLDIR} -.if ${HAVE_GCC} == "48" bootstrap-libstdc++: .configure_done @echo 'Creating files needed for libstdc++ by a native bootstrap build.' (cd ${.OBJDIR}/build && ${BUILD_COMMAND} configure-target-libstdc++-v3) @MAKE=${BUILD_MAKE:Q} ${HOST_SH} ${MKNATIVE} libstdc++-bootstrap \ ${.OBJDIR}/build ${NEWCONFIGDIR} ${NETBSDSRCDIR} \ ${MACHINE_GNU_PLATFORM} ${DESTDIR} ${TOOLDIR} -.endif native-gcc: .native/.configure_done @echo 'Extracting GNU GCC configury for a native toolchain.' @@ -201,8 +194,7 @@ MKENV_BUILD_MAKE=cd .native && ${MKNATIV ${HOST_SH} ${GNUHOSTDIST}/configure \ ${NATIVE_CONFIGURE_ARGS}) && \ (${MKENV_BUILD_MAKE} all-build-libiberty) && \ - ([ "${HAVE_GCC}" = "48" ] && \ - (${MKENV_BUILD_MAKE} all-libcpp) && \ + ((${MKENV_BUILD_MAKE} all-libcpp) && \ (${MKENV_BUILD_MAKE} all-libbacktrace) && \ (${MKENV_BUILD_MAKE} all-libdecnumber) || true) PATH=${TOOLDIR}/bin:$$PATH; export PATH; \ @@ -217,7 +209,7 @@ MKENV_BUILD_MAKE=cd .native && ${MKNATIV PATH=${TOOLDIR}/bin:$$PATH; export PATH; \ (cd .native/gcc && ${MKNATIVE_ENV} ${BUILD_MAKE} -e tree-check.h config.h multilib.h gcov-iov.h) PATH=${TOOLDIR}/bin:$$PATH; export PATH; \ - (cd .native/gcc && ${MKNATIVE_ENV} ${BUILD_MAKE} -e libgcc.mvars tconfig.h ${UNWIND_H}) + (cd .native/gcc && ${MKNATIVE_ENV} ${BUILD_MAKE} -e libgcc.mvars tconfig.h unwind.h (cd .native && touch gcc/cc1obj gcc/cc1plus gcc/f771 gcc/libgcc.a gcc/libgcc_s.so) .for _lib in ${MKNATIVE_CONFIG_TARGET_LIBS} PATH=${TOOLDIR}/bin:$$PATH; export PATH; \ Index: src/tools/gcc/mknative-gcc.old diff -u src/tools/gcc/mknative-gcc.old:1.1 src/tools/gcc/mknative-gcc.old:1.2 --- src/tools/gcc/mknative-gcc.old:1.1 Wed Feb 26 09:54:34 2014 +++ src/tools/gcc/mknative-gcc.old Sun Jan 24 05:10:26 2016 @@ -1,13 +1,10 @@ #!/bin/sh -# $NetBSD: mknative-gcc.old,v 1.1 2014/02/26 09:54:34 mrg Exp $ -# -# was: NetBSD: mknative-gcc,v 1.75 2014/02/16 11:26:31 skrll Exp +# $NetBSD: mknative-gcc.old,v 1.2 2016/01/24 05:10:26 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. # - -# XXX split out GCC 4.1 support +# This version is for GCC 4.8. # initialise @@ -16,7 +13,7 @@ _TOP=$3 _SRC=$4 _PLATFORM=$5 _DESTDIR=$6 -_ABI=$7 +_TOOLDIR=$7 _VPATH=`grep VPATH ${_TMPDIR}/Makefile | sed 's,^.*=[ ]*,,'` _GNU_DIST=`cd ${_VPATH}; pwd` @@ -36,11 +33,12 @@ sanitise_includes () { -e "s,-I$_DESTDIR/usr/include,,g" \ -e "s,-I$_SRC/extern
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Sun Jan 24 05:02:24 UTC 2016 Modified Files: src/tools/gcc: mknative-gcc Log Message: add a comment saying this is for GCC 4.8 To generate a diff of this commit: cvs rdiff -u -r1.81 -r1.82 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.81 src/tools/gcc/mknative-gcc:1.82 --- src/tools/gcc/mknative-gcc:1.81 Sat Jan 31 08:50:01 2015 +++ src/tools/gcc/mknative-gcc Sun Jan 24 05:02:23 2016 @@ -1,9 +1,10 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.81 2015/01/31 08:50:01 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.82 2016/01/24 05:02:23 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. # +# This version is for GCC 4.8. # initialise
CVS commit: src/tools/gcc
Module Name:src Committed By: christos Date: Fri Oct 16 00:41:08 UTC 2015 Modified Files: src/tools/gcc: gcc-version.mk Log Message: bump for printf/syslog format changres To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 src/tools/gcc/gcc-version.mk Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/gcc-version.mk diff -u src/tools/gcc/gcc-version.mk:1.3 src/tools/gcc/gcc-version.mk:1.4 --- src/tools/gcc/gcc-version.mk:1.3 Thu Jan 15 03:42:14 2015 +++ src/tools/gcc/gcc-version.mk Thu Oct 15 20:41:07 2015 @@ -1,5 +1,5 @@ -# $NetBSD: gcc-version.mk,v 1.3 2015/01/15 08:42:14 skrll Exp $ +# $NetBSD: gcc-version.mk,v 1.4 2015/10/16 00:41:07 christos Exp $ # common location for tools and native build -NETBSD_GCC_VERSION=nb2 20150115 +NETBSD_GCC_VERSION=nb3 20151015
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Sat Jan 31 08:50:01 UTC 2015 Modified Files: src/tools/gcc: mknative-gcc Log Message: kill the -fPIC that m68000 ends up with, fixing it in the specs is not trivial.. To generate a diff of this commit: cvs rdiff -u -r1.80 -r1.81 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.80 src/tools/gcc/mknative-gcc:1.81 --- src/tools/gcc/mknative-gcc:1.80 Fri Jan 30 12:23:47 2015 +++ src/tools/gcc/mknative-gcc Sat Jan 31 08:50:01 2015 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.80 2015/01/30 12:23:47 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.81 2015/01/31 08:50:01 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -97,6 +97,14 @@ get_libgcc () { } | sanitise_includes \ | write_mk $_OUTDIRBASE/lib/lib$_subdir/arch/$MACHINE_ARCH/defs.mk + if [ "${MACHINE_ARCH}" = "m68000" ] + then + ex <<__EOF__ $_OUTDIR/lib/lib$_subdir/arch/$MACHINE_ARCH/defs.mk +/G_LIBGCC2_CFLAGS/ s/-fPIC// +wq +__EOF__ + fi + for f in auto-target.h; do write_c $_OUTDIRBASE/lib/lib$_subdir/arch/$MACHINE_ARCH/$f \ <$_TMPDIR/$_PLATFORM/libgcc/$f
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Fri Jan 30 12:23:47 UTC 2015 Modified Files: src/tools/gcc: mknative-gcc Log Message: canonicalise the src dir to /usr/src, so it doesn't matter where we run mknative. To generate a diff of this commit: cvs rdiff -u -r1.79 -r1.80 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.79 src/tools/gcc/mknative-gcc:1.80 --- src/tools/gcc/mknative-gcc:1.79 Thu May 29 16:27:50 2014 +++ src/tools/gcc/mknative-gcc Fri Jan 30 12:23:47 2015 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.79 2014/05/29 16:27:50 skrll Exp $ +# $NetBSD: mknative-gcc,v 1.80 2015/01/30 12:23:47 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -331,7 +331,7 @@ get_gcc () { write_c $_OUTDIRBASE/usr.bin/$_subdir/arch/$MACHINE_ARCH/$f.h <$_TMPDIR/gcc/$f.h if [ "${MACHINE_ARCH}" = "powerpc" -a "${f}" = "configargs" ] then - ex <<__EOF__ $_OUTDIRBASE/usr.bin/$_subdir/arch/$MACHINE_ARCH/$f.h + ex <<__EOF__ $_OUTDIR/usr.bin/$_subdir/arch/$MACHINE_ARCH/$f.h /configuration_arguments/ s/$// ya i @@ -355,6 +355,14 @@ a wq __EOF__ fi + if [ "${f}" = "configargs" ] + then + _srcquoted=$(echo "$_SRC" | sed 's/\//\\\//g') + ex <<__EOF__ $_OUTDIR/usr.bin/$_subdir/arch/$MACHINE_ARCH/$f.h +/static const char configuration_arguments/ s/$_srcquoted/\/usr\/src/g +wq +__EOF__ + fi done # keep identical
CVS commit: src/tools/gcc
Module Name:src Committed By: christos Date: Fri Jan 16 20:10:26 UTC 2015 Modified Files: src/tools/gcc: Makefile Log Message: we have lto... To generate a diff of this commit: cvs rdiff -u -r1.73 -r1.74 src/tools/gcc/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.73 src/tools/gcc/Makefile:1.74 --- src/tools/gcc/Makefile:1.73 Sat Nov 22 14:41:27 2014 +++ src/tools/gcc/Makefile Fri Jan 16 15:10:26 2015 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.73 2014/11/22 19:41:27 mrg Exp $ +# $NetBSD: Makefile,v 1.74 2015/01/16 20:10:26 christos Exp $ .include @@ -50,7 +50,7 @@ COMMON_CONFIGURE_ARGS+= --with-tune=${GC .endif .if ${HAVE_GCC} == 48 -COMMON_CONFIGURE_ARGS+= --enable-libstdcxx-time=rt +COMMON_CONFIGURE_ARGS+= --enable-libstdcxx-time=rt --enable-lto .endif CONFIGURE_ARGS= ${COMMON_CONFIGURE_ARGS}
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Sat Nov 22 19:41:27 UTC 2014 Modified Files: src/tools/gcc: Makefile Log Message: use --disable-shared on m68000 for mknative. To generate a diff of this commit: cvs rdiff -u -r1.72 -r1.73 src/tools/gcc/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.72 src/tools/gcc/Makefile:1.73 --- src/tools/gcc/Makefile:1.72 Fri Oct 10 20:23:22 2014 +++ src/tools/gcc/Makefile Sat Nov 22 19:41:27 2014 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.72 2014/10/10 20:23:22 mrg Exp $ +# $NetBSD: Makefile,v 1.73 2014/11/22 19:41:27 mrg Exp $ .include @@ -181,6 +181,10 @@ NATIVE_CONFIGURE_ARGS+= --enable-tls NATIVE_CONFIGURE_ARGS+= --enable-initfini-array .endif +.if ${MACHINE_ARCH} == "m68000" +NATIVE_CONFIGURE_ARGS+= --disable-shared +.endif + NATIVE_CONFIGURE_ARGS+= \ --disable-multilib \ --disable-symvers \
CVS commit: src/tools/gcc
Module Name:src Committed By: skrll Date: Mon Oct 20 08:37:30 UTC 2014 Modified Files: src/tools/gcc: gcc-version.mk Log Message: Note new date for version - this is the import date. To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.2 src/tools/gcc/gcc-version.mk Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/gcc-version.mk diff -u src/tools/gcc/gcc-version.mk:1.1 src/tools/gcc/gcc-version.mk:1.2 --- src/tools/gcc/gcc-version.mk:1.1 Thu May 29 07:40:37 2014 +++ src/tools/gcc/gcc-version.mk Mon Oct 20 08:37:30 2014 @@ -1,5 +1,5 @@ -# $NetBSD: gcc-version.mk,v 1.1 2014/05/29 07:40:37 mrg Exp $ +# $NetBSD: gcc-version.mk,v 1.2 2014/10/20 08:37:30 skrll Exp $ # common location for tools and native build -NETBSD_GCC_VERSION=nb1 20140527 +NETBSD_GCC_VERSION=nb1 20141012
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Fri Oct 10 20:23:22 UTC 2014 Modified Files: src/tools/gcc: Makefile Log Message: add --enable-libstdcxx-time=rt for the GCC 4.8 build. To generate a diff of this commit: cvs rdiff -u -r1.71 -r1.72 src/tools/gcc/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.71 src/tools/gcc/Makefile:1.72 --- src/tools/gcc/Makefile:1.71 Wed Sep 3 19:25:29 2014 +++ src/tools/gcc/Makefile Fri Oct 10 20:23:22 2014 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.71 2014/09/03 19:25:29 matt Exp $ +# $NetBSD: Makefile,v 1.72 2014/10/10 20:23:22 mrg Exp $ .include @@ -49,6 +49,10 @@ COMMON_CONFIGURE_ARGS+= --with-arch=${GC COMMON_CONFIGURE_ARGS+= --with-tune=${GCC_CONFIG_TUNE.${MACHINE_ARCH}} .endif +.if ${HAVE_GCC} == 48 +COMMON_CONFIGURE_ARGS+= --enable-libstdcxx-time=rt +.endif + CONFIGURE_ARGS= ${COMMON_CONFIGURE_ARGS} CONFIGURE_ARGS+= \ --with-sysroot=${DESTDIR} \
CVS commit: src/tools/gcc
Module Name:src Committed By: matt Date: Wed Sep 3 19:25:29 UTC 2014 Modified Files: src/tools/gcc: Makefile Log Message: or1k does not support --with-float To generate a diff of this commit: cvs rdiff -u -r1.70 -r1.71 src/tools/gcc/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.70 src/tools/gcc/Makefile:1.71 --- src/tools/gcc/Makefile:1.70 Sat Jun 14 20:49:37 2014 +++ src/tools/gcc/Makefile Wed Sep 3 19:25:29 2014 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.70 2014/06/14 20:49:37 mrg Exp $ +# $NetBSD: Makefile,v 1.71 2014/09/03 19:25:29 matt Exp $ .include @@ -27,7 +27,8 @@ MULTILIB_ARGS= --enable-multilib MULTILIB_ARGS= --disable-multilib .endif -.if ${MKSOFTFLOAT} != "no" && ${MACHINE_CPU} != "m68k" +.if ${MKSOFTFLOAT} != "no" && ${MACHINE_CPU} != "m68k" \ +&& ${MACHINE_CPU} != "or1k" SOFTFLOAT_ARGS= -with-float=soft .endif
CVS commit: src/tools/gcc
Module Name:src Committed By: skrll Date: Thu May 29 16:27:50 UTC 2014 Modified Files: src/tools/gcc: mknative-gcc Log Message: Don't grab libstdc++-v3/config.h it's not used. To generate a diff of this commit: cvs rdiff -u -r1.78 -r1.79 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.78 src/tools/gcc/mknative-gcc:1.79 --- src/tools/gcc/mknative-gcc:1.78 Sun Mar 2 04:58:20 2014 +++ src/tools/gcc/mknative-gcc Thu May 29 16:27:50 2014 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.78 2014/03/02 04:58:20 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.79 2014/05/29 16:27:50 skrll Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -219,8 +219,6 @@ get_libstdcxx_v3 () { <$_TMPDIR/$_PLATFORM/libstdc++-v3/include/$_PLATFORM/bits/$h done - write_c $_OUTDIRBASE/lib/$_subdir/arch/$MACHINE_ARCH/config.h \ - <$_TMPDIR/$_PLATFORM/libstdc++-v3/config.h write_c $_OUTDIRBASE/lib/$_subdir/arch/$MACHINE_ARCH/gstdint.h \ <$_TMPDIR/$_PLATFORM/libstdc++-v3/include/gstdint.h
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Wed May 28 07:32:22 UTC 2014 Modified Files: src/tools/gcc: Makefile Log Message: two fixes skrll@ pointed out: - pass --enable-libstdcxx-threads to enable a bunch of tests and thus get the right answers - MKNATIVE_CONFIG_TARGET_LIBS needs to do libgcc before libstdc++-v3, for the GCC 4.8 case. with these we now get the right threading options in the headers. To generate a diff of this commit: cvs rdiff -u -r1.67 -r1.68 src/tools/gcc/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.67 src/tools/gcc/Makefile:1.68 --- src/tools/gcc/Makefile:1.67 Tue May 27 09:19:30 2014 +++ src/tools/gcc/Makefile Wed May 28 07:32:22 2014 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.67 2014/05/27 09:19:30 skrll Exp $ +# $NetBSD: Makefile,v 1.68 2014/05/28 07:32:22 mrg Exp $ .include @@ -41,7 +41,8 @@ COMMON_CONFIGURE_ARGS= --target=${MACHIN --with-bugurl=http://www.NetBSD.org/Misc/send-pr.html \ --with-pkgversion="NetBSD nb1 20140527" \ --with-system-zlib \ - --enable-__cxa_atexit + --enable-__cxa_atexit \ + --enable-libstdcxx-threads .if defined(GCC_CONFIG_ARCH.${MACHINE_ARCH}) COMMON_CONFIGURE_ARGS+= --with-arch=${GCC_CONFIG_ARCH.${MACHINE_ARCH}} .endif @@ -85,23 +86,23 @@ BUILD_MAKE=${TOOL_GMAKE} # mknative-gcc specific stuff # -MKNATIVE_CONFIG_TARGET_LIBS= \ - configure-target-libstdc++-v3 \ - configure-target-libobjc +MKNATIVE_CONFIG_TARGET_LIBS= .if ${HAVE_GCC} == 48 -MKNATIVE_CONFIG_TARGET_LIBS += configure-target-libgcc +MKNATIVE_CONFIG_TARGET_LIBS+= configure-target-libgcc +MKNATIVE_CONFIG_TARGET_LIBS+= configure-target-libgomp MKNATIVE_TARGET= gcc48 -MKNATIVE_CONFIG_TARGET_LIBS+= \ - configure-target-libgomp .elif ${HAVE_GCC} == 45 +MKNATIVE_CONFIG_TARGET_LIBS+= configure-target-libgomp MKNATIVE_TARGET= gcc45 -MKNATIVE_CONFIG_TARGET_LIBS+= \ - configure-target-libgomp .else MKNATIVE_TARGET= gcc4 .endif +MKNATIVE_CONFIG_TARGET_LIBS+= \ + configure-target-libstdc++-v3 \ + configure-target-libobjc + BINENV= /usr/bin/env -i
CVS commit: src/tools/gcc
Module Name:src Committed By: skrll Date: Tue May 27 09:19:30 UTC 2014 Modified Files: src/tools/gcc: Makefile Log Message: Update with-pkgversion date for gcc 4.8.3 import. To generate a diff of this commit: cvs rdiff -u -r1.66 -r1.67 src/tools/gcc/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.66 src/tools/gcc/Makefile:1.67 --- src/tools/gcc/Makefile:1.66 Thu Feb 27 20:15:53 2014 +++ src/tools/gcc/Makefile Tue May 27 09:19:30 2014 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.66 2014/02/27 20:15:53 mrg Exp $ +# $NetBSD: Makefile,v 1.67 2014/05/27 09:19:30 skrll Exp $ .include @@ -39,7 +39,7 @@ COMMON_CONFIGURE_ARGS= --target=${MACHIN --enable-long-long \ --enable-threads \ --with-bugurl=http://www.NetBSD.org/Misc/send-pr.html \ - --with-pkgversion="NetBSD nb1 20120916" \ + --with-pkgversion="NetBSD nb1 20140527" \ --with-system-zlib \ --enable-__cxa_atexit .if defined(GCC_CONFIG_ARCH.${MACHINE_ARCH})
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Sun Mar 2 04:58:20 UTC 2014 Modified Files: src/tools/gcc: mknative-gcc Log Message: don't collect gthr-default.h anymore. To generate a diff of this commit: cvs rdiff -u -r1.77 -r1.78 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.77 src/tools/gcc/mknative-gcc:1.78 --- src/tools/gcc/mknative-gcc:1.77 Sun Mar 2 03:17:14 2014 +++ src/tools/gcc/mknative-gcc Sun Mar 2 04:58:20 2014 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.77 2014/03/02 03:17:14 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.78 2014/03/02 04:58:20 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -205,7 +205,7 @@ get_libstdcxx_v3 () { mkdir -p $_OUTDIR/lib/$_subdir/arch/$MACHINE_ARCH - _build_headers="c++config.h cxxabi_tweaks.h gthr-default.h gthr-posix.h gthr-single.h gthr.h" + _build_headers="c++config.h cxxabi_tweaks.h gthr-posix.h gthr-single.h gthr.h" _headers1="c_base_headers_extra_install" _headers1="$_headers1 tr1_headers tr2_headers decimal_headers c_compatibility_headers_install" _headers1="$_headers1 debug_headers parallel_headers"
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Sun Mar 2 03:17:14 UTC 2014 Modified Files: src/tools/gcc: mknative-gcc Log Message: don't collect c++allocator.h. we copy it via G_ALLOCATOR_H we've already pulled out, and the extra copy can confuse make when it has an older timestamp than the copy in dist/libstdc++-v3/. To generate a diff of this commit: cvs rdiff -u -r1.76 -r1.77 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.76 src/tools/gcc/mknative-gcc:1.77 --- src/tools/gcc/mknative-gcc:1.76 Wed Feb 26 09:54:34 2014 +++ src/tools/gcc/mknative-gcc Sun Mar 2 03:17:14 2014 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.76 2014/02/26 09:54:34 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.77 2014/03/02 03:17:14 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -205,7 +205,7 @@ get_libstdcxx_v3 () { mkdir -p $_OUTDIR/lib/$_subdir/arch/$MACHINE_ARCH - _build_headers="c++allocator.h c++config.h cxxabi_tweaks.h gthr-default.h gthr-posix.h gthr-single.h gthr.h" + _build_headers="c++config.h cxxabi_tweaks.h gthr-default.h gthr-posix.h gthr-single.h gthr.h" _headers1="c_base_headers_extra_install" _headers1="$_headers1 tr1_headers tr2_headers decimal_headers c_compatibility_headers_install" _headers1="$_headers1 debug_headers parallel_headers"
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Thu Feb 27 20:15:53 UTC 2014 Modified Files: src/tools/gcc: Makefile Log Message: define GCCDIST properly for GCC 4.1, and since it is now the same as GCCSRCDIR remove the latter. To generate a diff of this commit: cvs rdiff -u -r1.65 -r1.66 src/tools/gcc/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.65 src/tools/gcc/Makefile:1.66 --- src/tools/gcc/Makefile:1.65 Wed Feb 26 09:54:34 2014 +++ src/tools/gcc/Makefile Thu Feb 27 20:15:53 2014 @@ -1,12 +1,16 @@ -# $NetBSD: Makefile,v 1.65 2014/02/26 09:54:34 mrg Exp $ +# $NetBSD: Makefile,v 1.66 2014/02/27 20:15:53 mrg Exp $ .include GCC_LANGUAGES=c c++ objc MODULE= gcc4 -GCCDIST= ${.CURDIR}/../../external/gpl3/${EXTERNAL_GCC_SUBDIR}/dist -GNUHOSTDIST= ${GCCDIST} +.if ${HAVE_GCC} < 45 +GCCDIST= ${.CURDIR}/../../gnu/dist/gcc4 +.else +GCCDIST= ${.CURDIR}/../../external/gpl3/${EXTERNAL_GCC_SUBDIR}/dist +.endif +GNUHOSTDIST= ${GCCDIST} .if ${HAVE_GCC} == 48 CC_FOR_BUILD= ${HOST_CXX:Q} @@ -124,12 +128,6 @@ MKNATIVE_ENV= ${BINENV} ${CONFIGURE_ENV: gdb_cv_scanf_has_long_double=yes \ gcc_cv_as_sparc_gotdata_op=no -.if ${HAVE_GCC} < 45 -GCCSRCDIR=${.CURDIR}/../../gnu/dist/gcc4 -.else -GCCSRCDIR=${.CURDIR}/../../external/gpl3/${EXTERNAL_GCC_SUBDIR}/dist -.endif - CXXADDFLAGS= --sysroot=${DESTDIR} CCADDFLAGS= --sysroot=${DESTDIR} -L${DESTDIR}/lib -L${DESTDIR}/usr/lib -B${DESTDIR}/usr/lib/ -I${.OBJDIR}/.native/gcc/include @@ -189,7 +187,7 @@ NATIVE_CONFIGURE_ARGS+= \ --disable-multilib \ --disable-symvers \ --disable-libstdcxx-pch \ - --build=`${GCCSRCDIR}/config.guess` \ + --build=`${GCCDIST}/config.guess` \ --host=${MACHINE_GNU_PLATFORM} \ --with-sysroot=${DESTDIR} MKENV_BUILD_MAKE=cd .native && ${MKNATIVE_ENV} ${BUILD_MAKE}
CVS commit: src/tools/gcc
Module Name:src Committed By: christos Date: Tue Feb 18 01:34:18 UTC 2014 Modified Files: src/tools/gcc: Makefile Log Message: put back some cppflags we lost. To generate a diff of this commit: cvs rdiff -u -r1.63 -r1.64 src/tools/gcc/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.63 src/tools/gcc/Makefile:1.64 --- src/tools/gcc/Makefile:1.63 Mon Feb 17 16:39:43 2014 +++ src/tools/gcc/Makefile Mon Feb 17 20:34:18 2014 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.63 2014/02/17 21:39:43 christos Exp $ +# $NetBSD: Makefile,v 1.64 2014/02/18 01:34:18 christos Exp $ .include @@ -59,7 +59,8 @@ CONFIGURE_ARGS+= \ --program-transform-name="s,^,${MACHINE_GNU_PLATFORM}-," \ --enable-languages="${GCC_LANGUAGES}" -GCC_CPPFLAGS= -DNETBSD_TOOLS +GCC_CPPFLAGS= -DNETBSD_TOOLS -DTARGET_SYSTEM_ROOT=0 \ + -DTARGET_SYSTEM_ROOT_RELOCATABLE MAKE_ARGS= MACHINE= MAKEINFO=${TOOL_MAKEINFO:Q} \ LIBGCC= LIBGCC1= LIBGCC1_TEST= LIBGCC2= INSTALL_LIBGCC= \
CVS commit: src/tools/gcc
Module Name:src Committed By: christos Date: Mon Feb 17 21:39:43 UTC 2014 Modified Files: src/tools/gcc: Makefile mknative.common Added Files: src/tools/gcc: mknative-gcc48 Log Message: Merge gcc-4.8 mknative bits. To generate a diff of this commit: cvs rdiff -u -r1.62 -r1.63 src/tools/gcc/Makefile cvs rdiff -u -r0 -r1.1 src/tools/gcc/mknative-gcc48 cvs rdiff -u -r1.10 -r1.11 src/tools/gcc/mknative.common Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.62 src/tools/gcc/Makefile:1.63 --- src/tools/gcc/Makefile:1.62 Sun Feb 16 06:26:31 2014 +++ src/tools/gcc/Makefile Mon Feb 17 16:39:43 2014 @@ -1,14 +1,25 @@ -# $NetBSD: Makefile,v 1.62 2014/02/16 11:26:31 skrll Exp $ +# $NetBSD: Makefile,v 1.63 2014/02/17 21:39:43 christos Exp $ .include GCC_LANGUAGES=c c++ objc MODULE= gcc4 -.if ${HAVE_GCC} == 45 +.if ${HAVE_GCC} == 48 +CC_FOR_BUILD= ${HOST_CXX:Q} +LIB_INTL= +MKNATIVE= ${.CURDIR}/mknative-gcc48 +GNUHOSTDIST= ${.CURDIR}/../../external/gpl3/yagcc/dist +.elif ${HAVE_GCC} == 45 GNUHOSTDIST= ${.CURDIR}/../../external/gpl3/gcc/dist +UNWIND_H=unwind.h .endif +# Defaults +CC_FOR_BUILD?= ${HOST_CC:Q} +LIB_INTL?= "LIBS=-lintl" +MKNATIVE?= ${.CURDIR}/mknative-gcc + .if ${MACHINE_ARCH} == "x86_64" || ${MACHINE_ARCH} == "sparc64" MULTILIB_ARGS= --enable-multilib .else @@ -36,6 +47,7 @@ COMMON_CONFIGURE_ARGS+= --with-tune=${GC CONFIGURE_ARGS= ${COMMON_CONFIGURE_ARGS} .if ${HAVE_GCC} >= 45 CONFIGURE_ARGS+= \ + --with-sysroot=${DESTDIR} \ --with-mpc=${TOOLDIR} \ --with-mpfr=${TOOLDIR} \ --with-gmp=${TOOLDIR} @@ -47,8 +59,7 @@ CONFIGURE_ARGS+= \ --program-transform-name="s,^,${MACHINE_GNU_PLATFORM}-," \ --enable-languages="${GCC_LANGUAGES}" -GCC_CPPFLAGS= -DNETBSD_TOOLS -DTARGET_SYSTEM_ROOT=0 \ - -DTARGET_SYSTEM_ROOT_RELOCATABLE +GCC_CPPFLAGS= -DNETBSD_TOOLS MAKE_ARGS= MACHINE= MAKEINFO=${TOOL_MAKEINFO:Q} \ LIBGCC= LIBGCC1= LIBGCC1_TEST= LIBGCC2= INSTALL_LIBGCC= \ @@ -67,11 +78,17 @@ BUILD_MAKE=${TOOL_GMAKE} # # mknative-gcc specific stuff # + MKNATIVE_CONFIG_TARGET_LIBS= \ configure-target-libstdc++-v3 \ configure-target-libobjc -.if ${HAVE_GCC} == 45 +.if ${HAVE_GCC} == 48 +MKNATIVE_CONFIG_TARGET_LIBS += configure-target-libgcc +MKNATIVE_TARGET= gcc48 +MKNATIVE_CONFIG_TARGET_LIBS+= \ + configure-target-libgomp +.elif ${HAVE_GCC} == 45 MKNATIVE_TARGET= gcc45 MKNATIVE_CONFIG_TARGET_LIBS+= \ configure-target-libgomp @@ -81,8 +98,11 @@ MKNATIVE_TARGET= gcc4 BINENV= /usr/bin/env -i + MKNATIVE_ENV= ${BINENV} ${CONFIGURE_ENV:NC*:NLD*} \ - CC_FOR_BUILD=${HOST_CC:Q} \ + CC_FOR_BUILD=${CC_FOR_BUILD:Q} \ + CXX_FOR_BUILD=${HOST_CXX:Q} \ + CFLAGS_FOR_BUILD="-I${TOOLDIR}/include" \ CC=${CC:Q}' '${CCADDFLAGS:Q} \ CXX=${CXX:Q}' '${CCADDFLAGS:Q}' '${CXXADDFLAGS:Q} \ CPP=${CPP:Q}' '-I${DESTDIR}/usr/include \ @@ -91,7 +111,7 @@ MKNATIVE_ENV= ${BINENV} ${CONFIGURE_ENV: MSGFMT=${TOOLDIR}/bin/${_TOOL_PREFIX}msgfmt \ NM=${NM:Q} OBJDUMP=${OBJDUMP:Q} \ XGETTEXT=${TOOLDIR}/bin/${_TOOL_PREFIX}xgettext \ - LIBS=-lintl \ + ${LIB_INTL} \ ac_cv_prog_cc_cross=yes \ ac_cv_func_strcoll_works=yes \ ac_cv_func_elf_getshstrndx=no \ @@ -114,19 +134,28 @@ CCADDFLAGS= --sysroot=${DESTDIR} -L${DES # NEWCONFIGDIR can be set to a read-write location of the source tree # in case the version being used is not. NEWCONFIGDIR?= ${.CURDIR}/../.. -MKNATIVE?= ${.CURDIR}/mknative-gcc bootstrap-libgcc: .configure_done @echo 'Creating files needed for libgcc by a native bootstrap build.' - @MAKE=${BUILD_MAKE:Q} ${HOST_SH} ${MKNATIVE} lib${MKNATIVE_TARGET} \ + (cd ${.OBJDIR}/build && ${BUILD_COMMAND} configure-target-libgcc) + @MAKE=${BUILD_MAKE:Q} ${HOST_SH} ${MKNATIVE} lib${MKNATIVE_TARGET}-bootstrap \ ${.OBJDIR}/build ${NEWCONFIGDIR} ${NETBSDSRCDIR} \ - ${MACHINE_GNU_PLATFORM} ${DESTDIR} + ${MACHINE_GNU_PLATFORM} ${DESTDIR} ${TOOLDIR} + +.if ${HAVE_GCC} == "48" +bootstrap-libstdc++: .configure_done + @echo 'Creating files needed for libstdc++ by a native bootstrap build.' + (cd ${.OBJDIR}/build && ${BUILD_COMMAND} configure-target-libstdc++-v3) + @MAKE=${BUILD_MAKE:Q} ${HOST_SH} ${MKNATIVE} libstdc++-bootstrap \ + ${.OBJDIR}/build ${NEWCONFIGDIR} ${NETBSDSRCDIR} \ + ${MACHINE_GNU_PLATFORM} ${DESTDIR} ${TOOLDIR} +.endif native-gcc: .native/.configure_done @echo 'Extracting GNU GCC configury for a native toolchain.' @MAKE=${BUILD_MAKE:Q} ${HOST_SH} ${MKNATIVE} ${MKNATIVE_TARGET} \ ${.OBJDIR}/.native ${NEWCONFIGDIR} ${NETBSDSRCDIR} \ - ${MACHINE_GNU_PLATFORM} ${DESTDIR} + ${MACHINE_GNU_PLATFORM} ${DESTDIR} ${TOOLDIR} NATIVE_CONFIGURE_ARGS= ${COMMON_CONFIGURE_ARGS} .if ${HAVE_GCC} >= 45 @@ -137,24 +166,31 @@ MPCOBJ!= cd ${MPC}/lib/libmpc && ${PRINT MPFROBJ!= cd ${MPFR}/lib/libmpfr && ${PRINTOBJDIR} GMPOBJ!= cd ${GMP}/lib/libgmp && ${PRINTOBJDIR}
CVS commit: src/tools/gcc
Module Name:src Committed By: skrll Date: Sun Feb 16 11:26:31 UTC 2014 Modified Files: src/tools/gcc: Makefile mknative-gcc Log Message: The mpfr sources moved down into a src directory - deal with this in mknative. To generate a diff of this commit: cvs rdiff -u -r1.61 -r1.62 src/tools/gcc/Makefile cvs rdiff -u -r1.74 -r1.75 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.61 src/tools/gcc/Makefile:1.62 --- src/tools/gcc/Makefile:1.61 Thu Nov 28 12:08:57 2013 +++ src/tools/gcc/Makefile Sun Feb 16 11:26:31 2014 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.61 2013/11/28 12:08:57 mrg Exp $ +# $NetBSD: Makefile,v 1.62 2014/02/16 11:26:31 skrll Exp $ .include @@ -142,7 +142,7 @@ NATIVE_CONFIGURE_ARGS+= \ --with-mpfr-lib=${MPFROBJ} \ --with-gmp-lib=${GMPOBJ} \ --with-mpc-include=${MPC}/dist/src \ - --with-mpfr-include=${MPFR}/dist \ + --with-mpfr-include=${MPFR}/dist/src \ --with-gmp-include=${GMP}/lib/libgmp/arch/${MACHINE_ARCH} . if ${MACHINE_ARCH} != "vax" Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.74 src/tools/gcc/mknative-gcc:1.75 --- src/tools/gcc/mknative-gcc:1.74 Thu Nov 28 12:08:57 2013 +++ src/tools/gcc/mknative-gcc Sun Feb 16 11:26:31 2014 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.74 2013/11/28 12:08:57 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.75 2014/02/16 11:26:31 skrll Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -30,7 +30,7 @@ _OUTDIRBASE="gnu" sanitise_includes () { sed \ -e "s,-I$_DESTDIR/usr/include,,g" \ - -e "s,-I$_SRC/external/lgpl3/mpfr/dist,,g" \ + -e "s,-I$_SRC/external/lgpl3/mpfr/dist/src,,g" \ -e "s,-I$_SRC/external/lgpl3/mpc/dist/src,,g" \ -e "s,-I$_SRC/external/lgpl3/gmp/lib/libgmp/arch/$MACHINE_ARCH,,g" \ -e "s,-I/usr/include/[^ ]*,,"
CVS commit: src/tools/gcc
Module Name:src Committed By: skrll Date: Mon Oct 21 09:02:08 UTC 2013 Modified Files: src/tools/gcc: README.mknative Log Message: Improve wording and remove typos To generate a diff of this commit: cvs rdiff -u -r1.15 -r1.16 src/tools/gcc/README.mknative Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/README.mknative diff -u src/tools/gcc/README.mknative:1.15 src/tools/gcc/README.mknative:1.16 --- src/tools/gcc/README.mknative:1.15 Thu Apr 18 05:20:00 2013 +++ src/tools/gcc/README.mknative Mon Oct 21 09:02:08 2013 @@ -1,4 +1,4 @@ -$NetBSD: README.mknative,v 1.15 2013/04/18 05:20:00 skrll Exp $ +$NetBSD: README.mknative,v 1.16 2013/10/21 09:02:08 skrll Exp $ This file describes how to bootstrap the native toolchain on a new NetBSD platform (and how to update the new toolchain files, if needed). These @@ -23,8 +23,8 @@ work. 2. Build and install a cross toolchain (via "build.sh -m MACHINE tools"). Note that while PR #47353 is not fixed, you can not use the -O option - to build.sh. Use -M instead. (The difference is only a minor layout/ - pathname prefixe in the object directory pointed to bei either option.) + to build.sh. Use -M instead. (The differences are in layout and pathname + prefixes in the object directory pointed to by each option.) 3. In src/tools/gcc, do "nbmake-MACHINE HAVE_GCC=45 bootstrap-libgcc".
CVS commit: src/tools/gcc
Module Name:src Committed By: skrll Date: Mon Oct 21 08:59:29 UTC 2013 Modified Files: src/tools/gcc: Makefile Log Message: Move the GNUHOSTDIST assignment back to the top of the Makefile. To generate a diff of this commit: cvs rdiff -u -r1.59 -r1.60 src/tools/gcc/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.59 src/tools/gcc/Makefile:1.60 --- src/tools/gcc/Makefile:1.59 Sun Oct 20 17:12:23 2013 +++ src/tools/gcc/Makefile Mon Oct 21 08:59:29 2013 @@ -1,10 +1,14 @@ -# $NetBSD: Makefile,v 1.59 2013/10/20 17:12:23 skrll Exp $ +# $NetBSD: Makefile,v 1.60 2013/10/21 08:59:29 skrll Exp $ .include GCC_LANGUAGES=c c++ objc MODULE= gcc4 +.if ${HAVE_GCC} == 45 +GNUHOSTDIST= ${.CURDIR}/../../external/gpl3/gcc/dist +.endif + .if ${MACHINE_ARCH} == "x86_64" || ${MACHINE_ARCH} == "sparc64" MULTILIB_ARGS= --enable-multilib .else @@ -69,7 +73,6 @@ MKNATIVE_CONFIG_TARGET_LIBS= \ .if ${HAVE_GCC} == 45 MKNATIVE_TARGET= gcc45 -GNUHOSTDIST= ${.CURDIR}/../../external/gpl3/gcc/dist MKNATIVE_CONFIG_TARGET_LIBS+= \ configure-target-libgomp .else
CVS commit: src/tools/gcc
Module Name:src Committed By: skrll Date: Sun Oct 20 17:12:23 UTC 2013 Modified Files: src/tools/gcc: Makefile Log Message: Group the mknative stuff together - no functional change To generate a diff of this commit: cvs rdiff -u -r1.58 -r1.59 src/tools/gcc/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.58 src/tools/gcc/Makefile:1.59 --- src/tools/gcc/Makefile:1.58 Sun Oct 20 17:10:15 2013 +++ src/tools/gcc/Makefile Sun Oct 20 17:12:23 2013 @@ -1,25 +1,10 @@ -# $NetBSD: Makefile,v 1.58 2013/10/20 17:10:15 skrll Exp $ +# $NetBSD: Makefile,v 1.59 2013/10/20 17:12:23 skrll Exp $ .include GCC_LANGUAGES=c c++ objc MODULE= gcc4 -MKNATIVE_CONFIG_TARGET_LIBS= \ - configure-target-libstdc++-v3 \ - configure-target-libobjc - -.if ${HAVE_GCC} == 45 -MKNATIVE_TARGET= gcc45 -GNUHOSTDIST= ${.CURDIR}/../../external/gpl3/gcc/dist -MKNATIVE_CONFIG_TARGET_LIBS+= \ - configure-target-libgomp -.else -MKNATIVE_TARGET= gcc4 -.endif - -BINENV= /usr/bin/env -i - .if ${MACHINE_ARCH} == "x86_64" || ${MACHINE_ARCH} == "sparc64" MULTILIB_ARGS= --enable-multilib .else @@ -69,6 +54,30 @@ MAKE_ARGS= MACHINE= MAKEINFO=${TOOL_MAKE CONFIGURE_ENV+= gcc_cv_libc_provides_ssp=yes \ gcc_cv_as_sparc_gotdata_op=no +ALL_TARGET= all-gcc +INSTALL_TARGET= install-gcc + +.include "${.CURDIR}/../Makefile.gmakehost" +BUILD_MAKE=${TOOL_GMAKE} + +# +# mknative-gcc specific stuff +# +MKNATIVE_CONFIG_TARGET_LIBS= \ + configure-target-libstdc++-v3 \ + configure-target-libobjc + +.if ${HAVE_GCC} == 45 +MKNATIVE_TARGET= gcc45 +GNUHOSTDIST= ${.CURDIR}/../../external/gpl3/gcc/dist +MKNATIVE_CONFIG_TARGET_LIBS+= \ + configure-target-libgomp +.else +MKNATIVE_TARGET= gcc4 +.endif + +BINENV= /usr/bin/env -i + MKNATIVE_ENV= ${BINENV} ${CONFIGURE_ENV:NC*:NLD*} \ CC_FOR_BUILD=${HOST_CC:Q} \ CC=${CC:Q}' '${CCADDFLAGS:Q} \ @@ -90,16 +99,6 @@ MKNATIVE_ENV= ${BINENV} ${CONFIGURE_ENV: gdb_cv_scanf_has_long_double=yes \ gcc_cv_as_sparc_gotdata_op=no -ALL_TARGET= all-gcc -INSTALL_TARGET= install-gcc - -.include "${.CURDIR}/../Makefile.gmakehost" -BUILD_MAKE=${TOOL_GMAKE} - -# -# mknative-gcc specific stuff -# - .if ${HAVE_GCC} < 45 GCCSRCDIR=${.CURDIR}/../../gnu/dist/gcc4 .else
CVS commit: src/tools/gcc
Module Name:src Committed By: skrll Date: Sun Oct 20 17:10:15 UTC 2013 Modified Files: src/tools/gcc: Makefile Log Message: g/c VAX_CONFIGURE_ARGS To generate a diff of this commit: cvs rdiff -u -r1.57 -r1.58 src/tools/gcc/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.57 src/tools/gcc/Makefile:1.58 --- src/tools/gcc/Makefile:1.57 Thu Jul 18 22:00:48 2013 +++ src/tools/gcc/Makefile Sun Oct 20 17:10:15 2013 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.57 2013/07/18 22:00:48 matt Exp $ +# $NetBSD: Makefile,v 1.58 2013/10/20 17:10:15 skrll Exp $ .include @@ -20,8 +20,6 @@ MKNATIVE_TARGET= gcc4 BINENV= /usr/bin/env -i -VAX_CONFIGURE_ARGS= - .if ${MACHINE_ARCH} == "x86_64" || ${MACHINE_ARCH} == "sparc64" MULTILIB_ARGS= --enable-multilib .else @@ -38,7 +36,6 @@ COMMON_CONFIGURE_ARGS= --target=${MACHIN --with-bugurl=http://www.NetBSD.org/Misc/send-pr.html \ --with-pkgversion="NetBSD nb1 20120916" \ --with-system-zlib \ - ${VAX_CONFIGURE_ARGS} \ --enable-__cxa_atexit .if defined(GCC_CONFIG_ARCH.${MACHINE_ARCH}) COMMON_CONFIGURE_ARGS+= --with-arch=${GCC_CONFIG_ARCH.${MACHINE_ARCH}}
CVS commit: src/tools/gcc
Module Name:src Committed By: skrll Date: Sun Oct 20 16:00:20 UTC 2013 Modified Files: src/tools/gcc: mknative.common Log Message: Make sure gmake is quiet when grabbing variables. To generate a diff of this commit: cvs rdiff -u -r1.9 -r1.10 src/tools/gcc/mknative.common Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative.common diff -u src/tools/gcc/mknative.common:1.9 src/tools/gcc/mknative.common:1.10 --- src/tools/gcc/mknative.common:1.9 Mon Feb 5 18:26:01 2007 +++ src/tools/gcc/mknative.common Sun Oct 20 16:00:20 2013 @@ -1,4 +1,4 @@ -# $NetBSD: mknative.common,v 1.9 2007/02/05 18:26:01 apb Exp $ +# $NetBSD: mknative.common,v 1.10 2013/10/20 16:00:20 skrll Exp $ # # from: NetBSD: mknative,v 1.12 2003/03/05 06:17:17 mrg Exp # @@ -24,7 +24,7 @@ getvars() _mf="$1"; shift case "$MAKE" in *gmake) - env MAKEFLAGS= $MAKE -f - -f "$_TMPDIR/$_mf" _x_ <$_TOP/$1.tmp || \ bomb "cannot create $1" grep '$''NetBSD' $0 | sed 's,[#$],,g;s,.*,/* Generated from: & */,' >>$_TOP/$1.tmp - echo '$NetBSD: mknative.common,v 1.9 2007/02/05 18:26:01 apb Exp $' | sed 's,[#$],,g;s,.*,/* Generated from: & */,' >>$_TOP/$1.tmp + echo '$NetBSD: mknative.common,v 1.10 2013/10/20 16:00:20 skrll Exp $' | sed 's,[#$],,g;s,.*,/* Generated from: & */,' >>$_TOP/$1.tmp echo '' >>$_TOP/$1.tmp writefile $1 } @@ -64,7 +64,7 @@ write_mk() echo '# This file is automatically generated. DO NOT EDIT!' >$_TOP/$1.tmp || \ bomb "cannot create $1" grep '$''NetBSD' $0 | sed 's,[#$],,g;s,.*,# Generated from: &,' >>$_TOP/$1.tmp - echo '$NetBSD: mknative.common,v 1.9 2007/02/05 18:26:01 apb Exp $' | sed 's,[#$],,g;s,.*,# Generated from: &,' >>$_TOP/$1.tmp + echo '$NetBSD: mknative.common,v 1.10 2013/10/20 16:00:20 skrll Exp $' | sed 's,[#$],,g;s,.*,# Generated from: &,' >>$_TOP/$1.tmp echo '#' >>$_TOP/$1.tmp writefile $1 }
CVS commit: src/tools/gcc
Module Name:src Committed By: skrll Date: Sun Oct 20 14:55:28 UTC 2013 Modified Files: src/tools/gcc: mknative-gcc Log Message: Deleted 1 line too many in previous commit. To generate a diff of this commit: cvs rdiff -u -r1.72 -r1.73 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.72 src/tools/gcc/mknative-gcc:1.73 --- src/tools/gcc/mknative-gcc:1.72 Sun Oct 20 14:14:18 2013 +++ src/tools/gcc/mknative-gcc Sun Oct 20 14:55:28 2013 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.72 2013/10/20 14:14:18 skrll Exp $ +# $NetBSD: mknative-gcc,v 1.73 2013/10/20 14:55:28 skrll Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -622,6 +622,7 @@ get_gcc () { getvars libcpp/Makefile \ libcpp_a_OBJS ;; + esac getvars gcc/Makefile \ ENABLE_SHARED case ${_subdir} in
CVS commit: src/tools/gcc
Module Name:src Committed By: skrll Date: Sun Oct 20 14:14:18 UTC 2013 Modified Files: src/tools/gcc: mknative-gcc Log Message: g/c gcc3 goop To generate a diff of this commit: cvs rdiff -u -r1.71 -r1.72 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.71 src/tools/gcc/mknative-gcc:1.72 --- src/tools/gcc/mknative-gcc:1.71 Fri Jun 28 08:30:10 2013 +++ src/tools/gcc/mknative-gcc Sun Oct 20 14:14:18 2013 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.71 2013/06/28 08:30:10 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.72 2013/10/20 14:14:18 skrll Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -556,7 +556,7 @@ get_libstdcxx_v3 () { } | write_mk $_OUTDIRBASE/lib/$_subdir/arch/$MACHINE_ARCH/defs.mk } -# gnu/usr.bin/gcc3 # +# gnu/usr.bin/gcc* # get_gcc_bootstrap () { _subdir="$1" @@ -622,11 +622,6 @@ get_gcc () { getvars libcpp/Makefile \ libcpp_a_OBJS ;; - gcc3) - getvars gcc/Makefile \ -LIBCPP_OBJS LIBCPP_H - ;; - esac getvars gcc/Makefile \ ENABLE_SHARED case ${_subdir} in @@ -697,11 +692,6 @@ __EOF__ case "$1" in # .mk and .h files for libgcc bootstrap (from host build) -libgcc) - get_libgcc gcc3 - get_crtstuff crtstuff3 - exit 0 - ;; libgcc4) get_libgcc gcc4
CVS commit: src/tools/gcc
Module Name:src Committed By: matt Date: Thu Jul 18 22:00:48 UTC 2013 Modified Files: src/tools/gcc: Makefile Log Message: m68k doesn't support with-float=soft To generate a diff of this commit: cvs rdiff -u -r1.56 -r1.57 src/tools/gcc/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.56 src/tools/gcc/Makefile:1.57 --- src/tools/gcc/Makefile:1.56 Fri Jun 28 08:30:10 2013 +++ src/tools/gcc/Makefile Thu Jul 18 22:00:48 2013 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.56 2013/06/28 08:30:10 mrg Exp $ +# $NetBSD: Makefile,v 1.57 2013/07/18 22:00:48 matt Exp $ .include @@ -28,7 +28,7 @@ MULTILIB_ARGS= --enable-multilib MULTILIB_ARGS= --disable-multilib .endif -.if ${MKSOFTFLOAT} != "no" +.if ${MKSOFTFLOAT} != "no" && ${MACHINE_CPU} != "m68k" SOFTFLOAT_ARGS= -with-float=soft .endif
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Fri Jun 28 08:30:10 UTC 2013 Modified Files: src/tools/gcc: Makefile mknative-gcc Log Message: pass both NEWCONFIGDIR and NETBSDSRCDIR to mknative-gcc. To generate a diff of this commit: cvs rdiff -u -r1.55 -r1.56 src/tools/gcc/Makefile cvs rdiff -u -r1.70 -r1.71 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.55 src/tools/gcc/Makefile:1.56 --- src/tools/gcc/Makefile:1.55 Thu Jun 27 02:38:39 2013 +++ src/tools/gcc/Makefile Fri Jun 28 08:30:10 2013 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.55 2013/06/27 02:38:39 mrg Exp $ +# $NetBSD: Makefile,v 1.56 2013/06/28 08:30:10 mrg Exp $ .include @@ -120,14 +120,14 @@ MKNATIVE?= ${.CURDIR}/mknative-gcc bootstrap-libgcc: .configure_done @echo 'Creating files needed for libgcc by a native bootstrap build.' @MAKE=${BUILD_MAKE:Q} ${HOST_SH} ${MKNATIVE} lib${MKNATIVE_TARGET} \ - ${.OBJDIR}/build ${NEWCONFIGDIR} ${MACHINE_GNU_PLATFORM} \ - ${DESTDIR} + ${.OBJDIR}/build ${NEWCONFIGDIR} ${NETBSDSRCDIR} \ + ${MACHINE_GNU_PLATFORM} ${DESTDIR} native-gcc: .native/.configure_done @echo 'Extracting GNU GCC configury for a native toolchain.' @MAKE=${BUILD_MAKE:Q} ${HOST_SH} ${MKNATIVE} ${MKNATIVE_TARGET} \ - ${.OBJDIR}/.native ${NEWCONFIGDIR} ${MACHINE_GNU_PLATFORM} \ - ${DESTDIR} + ${.OBJDIR}/.native ${NEWCONFIGDIR} ${NETBSDSRCDIR} \ + ${MACHINE_GNU_PLATFORM} ${DESTDIR} NATIVE_CONFIGURE_ARGS= ${COMMON_CONFIGURE_ARGS} .if ${HAVE_GCC} >= 45 Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.70 src/tools/gcc/mknative-gcc:1.71 --- src/tools/gcc/mknative-gcc:1.70 Sun May 5 07:11:34 2013 +++ src/tools/gcc/mknative-gcc Fri Jun 28 08:30:10 2013 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.70 2013/05/05 07:11:34 skrll Exp $ +# $NetBSD: mknative-gcc,v 1.71 2013/06/28 08:30:10 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -9,9 +9,10 @@ _TMPDIR=$2 _TOP=$3 -_PLATFORM=$4 -_DESTDIR=$5 -_ABI=$6 +_SRC=$4 +_PLATFORM=$5 +_DESTDIR=$6 +_ABI=$7 _VPATH=`grep VPATH ${_TMPDIR}/Makefile | sed 's,^.*=[ ]*,,'` _GNU_DIST=`cd ${_VPATH}; pwd` @@ -29,9 +30,10 @@ _OUTDIRBASE="gnu" sanitise_includes () { sed \ -e "s,-I$_DESTDIR/usr/include,,g" \ - -e "s,-I$_TOP/external/lgpl3/mpfr/dist,,g" \ - -e "s,-I$_TOP/external/lgpl2/mpc/dist/src,,g" \ - -e "s,-I$_TOP/external/lgpl3/gmp/lib/libgmp/arch/$MACHINE_ARCH,,g" + -e "s,-I$_SRC/external/lgpl3/mpfr/dist,,g" \ + -e "s,-I$_SRC/external/lgpl2/mpc/dist/src,,g" \ + -e "s,-I$_SRC/external/lgpl3/gmp/lib/libgmp/arch/$MACHINE_ARCH,,g" \ + -e "s,-I/usr/include/[^ ]*,," } # gnu/lib/crtstuff #
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Thu Jun 27 02:38:39 UTC 2013 Modified Files: src/tools/gcc: Makefile Log Message: use NETBSDSRCDIR to find mpc/mpfr/gmp, not NEWCONFIGDIR, the latter which is for finding a r/w directory to write to if we're running from a read-only tree. To generate a diff of this commit: cvs rdiff -u -r1.54 -r1.55 src/tools/gcc/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.54 src/tools/gcc/Makefile:1.55 --- src/tools/gcc/Makefile:1.54 Thu Apr 25 16:18:43 2013 +++ src/tools/gcc/Makefile Thu Jun 27 02:38:39 2013 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.54 2013/04/25 16:18:43 skrll Exp $ +# $NetBSD: Makefile,v 1.55 2013/06/27 02:38:39 mrg Exp $ .include @@ -112,6 +112,8 @@ GCCSRCDIR=${.CURDIR}/../../external/gpl3 CXXADDFLAGS= --sysroot=${DESTDIR} CCADDFLAGS= --sysroot=${DESTDIR} -L${DESTDIR}/lib -L${DESTDIR}/usr/lib -B${DESTDIR}/usr/lib/ -I${.OBJDIR}/.native/gcc/include +# NEWCONFIGDIR can be set to a read-write location of the source tree +# in case the version being used is not. NEWCONFIGDIR?= ${.CURDIR}/../.. MKNATIVE?= ${.CURDIR}/mknative-gcc @@ -129,9 +131,9 @@ native-gcc: .native/.configure_done NATIVE_CONFIGURE_ARGS= ${COMMON_CONFIGURE_ARGS} .if ${HAVE_GCC} >= 45 -MPC= ${NEWCONFIGDIR}/external/lgpl2/mpc -MPFR= ${NEWCONFIGDIR}/external/lgpl3/mpfr -GMP= ${NEWCONFIGDIR}/external/lgpl3/gmp +MPC= ${NETBSDSRCDIR}/external/lgpl2/mpc +MPFR= ${NETBSDSRCDIR}/external/lgpl3/mpfr +GMP= ${NETBSDSRCDIR}/external/lgpl3/gmp MPCOBJ!= cd ${MPC}/lib/libmpc && ${PRINTOBJDIR} MPFROBJ!= cd ${MPFR}/lib/libmpfr && ${PRINTOBJDIR} GMPOBJ!= cd ${GMP}/lib/libgmp && ${PRINTOBJDIR}
CVS commit: src/tools/gcc
Module Name:src Committed By: skrll Date: Sun May 5 07:11:34 UTC 2013 Modified Files: src/tools/gcc: mknative-gcc Log Message: Create a sanitise_includes function and use it everywhere it's needed. To generate a diff of this commit: cvs rdiff -u -r1.69 -r1.70 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.69 src/tools/gcc/mknative-gcc:1.70 --- src/tools/gcc/mknative-gcc:1.69 Thu Apr 25 16:18:43 2013 +++ src/tools/gcc/mknative-gcc Sun May 5 07:11:34 2013 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.69 2013/04/25 16:18:43 skrll Exp $ +# $NetBSD: mknative-gcc,v 1.70 2013/05/05 07:11:34 skrll Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -26,6 +26,14 @@ fi _OUTDIR="$_TOP/gnu" _OUTDIRBASE="gnu" +sanitise_includes () { + sed \ + -e "s,-I$_DESTDIR/usr/include,,g" \ + -e "s,-I$_TOP/external/lgpl3/mpfr/dist,,g" \ + -e "s,-I$_TOP/external/lgpl2/mpc/dist/src,,g" \ + -e "s,-I$_TOP/external/lgpl3/gmp/lib/libgmp/arch/$MACHINE_ARCH,,g" +} + # gnu/lib/crtstuff # get_crtstuff () { @@ -35,7 +43,7 @@ get_crtstuff () { getvars gcc/Makefile \ INCLUDES CRTSTUFF_CFLAGS CRTSTUFF_T_CFLAGS CRTSTUFF_T_CFLAGS_S \ tm_defines xm_file xm_defines \ - | sed "s,-I$_DESTDIR/usr/include,,g" \ + | sanitise_includes \ | write_mk $_OUTDIRBASE/lib/$_subdir/arch/$MACHINE_ARCH.mk } @@ -394,11 +402,7 @@ get_libgcc () { SHLIB_MAPFILES SHLIB_NM_FLAGS \ EXTRA_HEADERS xm_defines \ tm_defines ${_extravars} - } | sed \ - -e "s,-I$_DESTDIR/usr/include,,g" \ - -e "s,-I$_TOP/external/lgpl3/mpfr/dist,,g" \ - -e "s,-I$_TOP/external/lgpl2/mpc/dist/src,,g" \ - -e "s,-I$_TOP/external/lgpl3/gmp/lib/libgmp/arch/$MACHINE_ARCH,,g" \ + } | sanitise_includes \ | write_mk $_OUTDIRBASE/lib/lib$_subdir/arch${_archsubdir}/$MACHINE_ARCH.mk # Generate new style files. @@ -573,7 +577,7 @@ get_gcc () { _extravars2="tm_file_list build_xm_include_list" _extravars3="tm_p_include_list" ;; - + gcc) _buildname="BUILD_" _libcppsubdir="" @@ -604,10 +608,7 @@ get_gcc () { tm_defines host_xm_file host_xm_defines tm_p_file \ target_cpu_default ${_extravars} ${_extravars2} \ lang_specs_files ${_extravars3} \ -| sed -e "s,-I$_DESTDIR/usr/include,,g" \ - -e "s,-I$_TOP/external/lgpl3/mpfr/dist,,g" \ - -e "s,-I$_TOP/external/lgpl2/mpc/dist/src,,g" \ - -e "s,-I$_TOP/external/lgpl3/gmp/lib/libgmp/arch/$MACHINE_ARCH,,g" +| sanitise_includes getvars gcc/Makefile \ LIB2ADDEHDEP | sed 's/unwind.inc//' getvars gcc/Makefile \
CVS commit: src/tools/gcc
Module Name:src Committed By: skrll Date: Thu Apr 25 16:18:43 UTC 2013 Modified Files: src/tools/gcc: Makefile mknative-gcc Log Message: Avoid populating mknative output with gmp,mpfr, and mpc source directories To generate a diff of this commit: cvs rdiff -u -r1.53 -r1.54 src/tools/gcc/Makefile cvs rdiff -u -r1.68 -r1.69 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.53 src/tools/gcc/Makefile:1.54 --- src/tools/gcc/Makefile:1.53 Thu Apr 18 05:20:00 2013 +++ src/tools/gcc/Makefile Thu Apr 25 16:18:43 2013 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.53 2013/04/18 05:20:00 skrll Exp $ +# $NetBSD: Makefile,v 1.54 2013/04/25 16:18:43 skrll Exp $ .include @@ -129,9 +129,9 @@ native-gcc: .native/.configure_done NATIVE_CONFIGURE_ARGS= ${COMMON_CONFIGURE_ARGS} .if ${HAVE_GCC} >= 45 -MPC= ${NETBSDSRCDIR}/external/lgpl2/mpc -MPFR= ${NETBSDSRCDIR}/external/lgpl3/mpfr -GMP= ${NETBSDSRCDIR}/external/lgpl3/gmp +MPC= ${NEWCONFIGDIR}/external/lgpl2/mpc +MPFR= ${NEWCONFIGDIR}/external/lgpl3/mpfr +GMP= ${NEWCONFIGDIR}/external/lgpl3/gmp MPCOBJ!= cd ${MPC}/lib/libmpc && ${PRINTOBJDIR} MPFROBJ!= cd ${MPFR}/lib/libmpfr && ${PRINTOBJDIR} GMPOBJ!= cd ${GMP}/lib/libgmp && ${PRINTOBJDIR} Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.68 src/tools/gcc/mknative-gcc:1.69 --- src/tools/gcc/mknative-gcc:1.68 Tue Sep 25 06:55:10 2012 +++ src/tools/gcc/mknative-gcc Thu Apr 25 16:18:43 2013 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.68 2012/09/25 06:55:10 skrll Exp $ +# $NetBSD: mknative-gcc,v 1.69 2013/04/25 16:18:43 skrll Exp $ # # Shell script for generating all the constants needed for a native # platform build of gcc. @@ -394,8 +394,12 @@ get_libgcc () { SHLIB_MAPFILES SHLIB_NM_FLAGS \ EXTRA_HEADERS xm_defines \ tm_defines ${_extravars} - } | sed "s,-I$_DESTDIR/usr/include,,g" \ - | write_mk $_OUTDIRBASE/lib/lib$_subdir/arch${_archsubdir}/$MACHINE_ARCH.mk + } | sed \ + -e "s,-I$_DESTDIR/usr/include,,g" \ + -e "s,-I$_TOP/external/lgpl3/mpfr/dist,,g" \ + -e "s,-I$_TOP/external/lgpl2/mpc/dist/src,,g" \ + -e "s,-I$_TOP/external/lgpl3/gmp/lib/libgmp/arch/$MACHINE_ARCH,,g" \ + | write_mk $_OUTDIRBASE/lib/lib$_subdir/arch${_archsubdir}/$MACHINE_ARCH.mk # Generate new style files. if [ -n "${MKNATIVE_LIBGCC_NEW}" ]; then @@ -600,7 +604,10 @@ get_gcc () { tm_defines host_xm_file host_xm_defines tm_p_file \ target_cpu_default ${_extravars} ${_extravars2} \ lang_specs_files ${_extravars3} \ -| sed "s,-I$_DESTDIR/usr/include,,g" +| sed -e "s,-I$_DESTDIR/usr/include,,g" \ + -e "s,-I$_TOP/external/lgpl3/mpfr/dist,,g" \ + -e "s,-I$_TOP/external/lgpl2/mpc/dist/src,,g" \ + -e "s,-I$_TOP/external/lgpl3/gmp/lib/libgmp/arch/$MACHINE_ARCH,,g" getvars gcc/Makefile \ LIB2ADDEHDEP | sed 's/unwind.inc//' getvars gcc/Makefile \
CVS commit: src/tools/gcc
Module Name:src Committed By: skrll Date: Thu Apr 18 05:20:01 UTC 2013 Modified Files: src/tools/gcc: Makefile README.mknative Log Message: Use --with-{mpc,mpfr,gmp}-{lib,include} to avoid the LIBISPRIVATE=no dance in mknative and avoid poluting the DESTDIR. Update the README to reflect this. To generate a diff of this commit: cvs rdiff -u -r1.52 -r1.53 src/tools/gcc/Makefile cvs rdiff -u -r1.14 -r1.15 src/tools/gcc/README.mknative Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.52 src/tools/gcc/Makefile:1.53 --- src/tools/gcc/Makefile:1.52 Tue Sep 18 07:05:15 2012 +++ src/tools/gcc/Makefile Thu Apr 18 05:20:00 2013 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.52 2012/09/18 07:05:15 skrll Exp $ +# $NetBSD: Makefile,v 1.53 2013/04/18 05:20:00 skrll Exp $ .include @@ -129,10 +129,20 @@ native-gcc: .native/.configure_done NATIVE_CONFIGURE_ARGS= ${COMMON_CONFIGURE_ARGS} .if ${HAVE_GCC} >= 45 +MPC= ${NETBSDSRCDIR}/external/lgpl2/mpc +MPFR= ${NETBSDSRCDIR}/external/lgpl3/mpfr +GMP= ${NETBSDSRCDIR}/external/lgpl3/gmp +MPCOBJ!= cd ${MPC}/lib/libmpc && ${PRINTOBJDIR} +MPFROBJ!= cd ${MPFR}/lib/libmpfr && ${PRINTOBJDIR} +GMPOBJ!= cd ${GMP}/lib/libgmp && ${PRINTOBJDIR} + NATIVE_CONFIGURE_ARGS+= \ - --with-mpc=${DESTDIR}/usr \ - --with-mpfr=${DESTDIR}/usr \ - --with-gmp=${DESTDIR}/usr + --with-mpc-lib=${MPCOBJ} \ + --with-mpfr-lib=${MPFROBJ} \ + --with-gmp-lib=${GMPOBJ} \ + --with-mpc-include=${MPC}/dist/src \ + --with-mpfr-include=${MPFR}/dist \ + --with-gmp-include=${GMP}/lib/libgmp/arch/${MACHINE_ARCH} . if ${MACHINE_ARCH} != "vax" NATIVE_CONFIGURE_ARGS+= --enable-tls Index: src/tools/gcc/README.mknative diff -u src/tools/gcc/README.mknative:1.14 src/tools/gcc/README.mknative:1.15 --- src/tools/gcc/README.mknative:1.14 Wed Dec 26 19:11:27 2012 +++ src/tools/gcc/README.mknative Thu Apr 18 05:20:00 2013 @@ -1,4 +1,4 @@ -$NetBSD: README.mknative,v 1.14 2012/12/26 19:11:27 martin Exp $ +$NetBSD: README.mknative,v 1.15 2013/04/18 05:20:00 skrll Exp $ This file describes how to bootstrap the native toolchain on a new NetBSD platform (and how to update the new toolchain files, if needed). These @@ -26,7 +26,7 @@ work. to build.sh. Use -M instead. (The difference is only a minor layout/ pathname prefixe in the object directory pointed to bei either option.) -3. In src/tools/gcc, do "nbmake-MACHINE bootstrap-libgcc". +3. In src/tools/gcc, do "nbmake-MACHINE HAVE_GCC=45 bootstrap-libgcc". This will create just enough glue in src/external/gpl3/gcc/lib/libgcc/arch to make it possible to build, based on the toolchain built in @@ -54,11 +54,7 @@ work. 8. In each of src/external/lgpl3/gmp/lib/libgmp, src/external/lgpl3/mpfr/lib/libmpfr, src/external/lgpl2/mpc/lib/libmpc - do "nbmake-MACHINE obj includes LIBISPRIVATE=no", and - "nbmake-MACHINE dependall install". - - It is important to have LIBISPRIVATE=no while doing includes as this - installs a header file that is not part of standard build. + do "nbmake-MACHINE obj dependall". 9. In src/lib, do "nbmake-MACHINE dependall install MKGCC=no HAVE_GCC=45".
CVS commit: src/tools/gcc
Module Name:src Committed By: martin Date: Wed Dec 26 19:11:27 UTC 2012 Modified Files: src/tools/gcc: README.mknative Log Message: Note MKRUMP=no and the need to specify HAVE_GCC= explicitly when using MKGCC=no. Also point at but number 47353. To generate a diff of this commit: cvs rdiff -u -r1.13 -r1.14 src/tools/gcc/README.mknative Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/README.mknative diff -u src/tools/gcc/README.mknative:1.13 src/tools/gcc/README.mknative:1.14 --- src/tools/gcc/README.mknative:1.13 Thu Sep 27 11:29:49 2012 +++ src/tools/gcc/README.mknative Wed Dec 26 19:11:27 2012 @@ -1,4 +1,4 @@ -$NetBSD: README.mknative,v 1.13 2012/09/27 11:29:49 skrll Exp $ +$NetBSD: README.mknative,v 1.14 2012/12/26 19:11:27 martin Exp $ This file describes how to bootstrap the native toolchain on a new NetBSD platform (and how to update the new toolchain files, if needed). These @@ -22,6 +22,9 @@ work. gets built, eliciting proper HAVE_*GETTEXT* defns in config.h files.) 2. Build and install a cross toolchain (via "build.sh -m MACHINE tools"). + Note that while PR #47353 is not fixed, you can not use the -O option + to build.sh. Use -M instead. (The difference is only a minor layout/ + pathname prefixe in the object directory pointed to bei either option.) 3. In src/tools/gcc, do "nbmake-MACHINE bootstrap-libgcc". @@ -33,8 +36,11 @@ work. will regenerate the "proper" libgcc config files. 4. At top level, do - "nbmake-MACHINE obj do-distrib-dirs MKGCC=no MKBINUTILS=no", and - "nbmake-MACHINE includes HAVE_GCC= MKGCC=no MKBINUTILS=no". + "nbmake-MACHINE obj do-distrib-dirs MKGCC=no MKBINUTILS=no HAVE_GCC=45", and + "nbmake-MACHINE includes HAVE_GCC= MKGCC=no MKBINUTILS=no HAVE_GCC=45". + (Note: replace 45 [for gcc 4.5.x] with the appropriate version you are + going to mknative-for, the MKGCC=no prevents the standard makefiles from + picking up any gcc version info automatically) 5. In src/lib/csu, do "nbmake-MACHINE dependall". and "nbmake-MACHINE install". @@ -55,7 +61,7 @@ work. installs a header file that is not part of standard build. 9. In src/lib, do - "nbmake-MACHINE dependall install MKGCC=no". + "nbmake-MACHINE dependall install MKGCC=no HAVE_GCC=45". Optionally, all of the following may be set in the environment to reduce the amount of code needed to build at this step. Basically, it must be @@ -67,6 +73,7 @@ work. MKLINT=no MKPROFILE=no MKSHARE=no + MKRUMP=no 10. In src/tools/gcc, do "nbmake-MACHINE native-gcc".
CVS commit: src/tools/gcc
Module Name:src Committed By: skrll Date: Thu Sep 27 11:29:50 UTC 2012 Modified Files: src/tools/gcc: README.mknative Log Message: More tweaks To generate a diff of this commit: cvs rdiff -u -r1.12 -r1.13 src/tools/gcc/README.mknative Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/README.mknative diff -u src/tools/gcc/README.mknative:1.12 src/tools/gcc/README.mknative:1.13 --- src/tools/gcc/README.mknative:1.12 Tue Sep 25 11:12:16 2012 +++ src/tools/gcc/README.mknative Thu Sep 27 11:29:49 2012 @@ -1,4 +1,4 @@ -$NetBSD: README.mknative,v 1.12 2012/09/25 11:12:16 skrll Exp $ +$NetBSD: README.mknative,v 1.13 2012/09/27 11:29:49 skrll Exp $ This file describes how to bootstrap the native toolchain on a new NetBSD platform (and how to update the new toolchain files, if needed). These @@ -33,16 +33,17 @@ work. will regenerate the "proper" libgcc config files. 4. At top level, do - "nbmake-MACHINE obj do-distrib-dirs includes MKGCC=no MKBINUTILS=no". + "nbmake-MACHINE obj do-distrib-dirs MKGCC=no MKBINUTILS=no", and + "nbmake-MACHINE includes HAVE_GCC= MKGCC=no MKBINUTILS=no". -5. In src/external/gpl3/gcc/lib/libgcc, do - "nbmake-MACHINE obj includes dependall install MKPIC=no". +5. In src/lib/csu, do + "nbmake-MACHINE dependall". and "nbmake-MACHINE install". 6. If the platform sets USE_COMPILERCRTSTUFF=yes, then in src/external/gpl3/gcc/lib/crtstuff/ do "nbmake-MACHINE obj dependall install" -7. In src/lib/csu, do +7. In src/external/gpl3/gcc/lib/libgcc, do "nbmake-MACHINE obj includes dependall install". 8. In each of src/external/lgpl3/gmp/lib/libgmp, @@ -54,7 +55,7 @@ work. installs a header file that is not part of standard build. 9. In src/lib, do - "nbmake-MACHINE obj includes dependall install MKGCC=no". + "nbmake-MACHINE dependall install MKGCC=no". Optionally, all of the following may be set in the environment to reduce the amount of code needed to build at this step. Basically, it must be
CVS commit: src/tools/gcc
Module Name:src Committed By: skrll Date: Tue Sep 25 11:12:16 UTC 2012 Modified Files: src/tools/gcc: README.mknative Log Message: No need to do "obj includes" twice. To generate a diff of this commit: cvs rdiff -u -r1.11 -r1.12 src/tools/gcc/README.mknative Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/README.mknative diff -u src/tools/gcc/README.mknative:1.11 src/tools/gcc/README.mknative:1.12 --- src/tools/gcc/README.mknative:1.11 Tue Sep 25 06:55:10 2012 +++ src/tools/gcc/README.mknative Tue Sep 25 11:12:16 2012 @@ -1,4 +1,4 @@ -$NetBSD: README.mknative,v 1.11 2012/09/25 06:55:10 skrll Exp $ +$NetBSD: README.mknative,v 1.12 2012/09/25 11:12:16 skrll Exp $ This file describes how to bootstrap the native toolchain on a new NetBSD platform (and how to update the new toolchain files, if needed). These @@ -48,7 +48,7 @@ work. 8. In each of src/external/lgpl3/gmp/lib/libgmp, src/external/lgpl3/mpfr/lib/libmpfr, src/external/lgpl2/mpc/lib/libmpc do "nbmake-MACHINE obj includes LIBISPRIVATE=no", and - "nbmake-MACHINE obj includes dependall install". + "nbmake-MACHINE dependall install". It is important to have LIBISPRIVATE=no while doing includes as this installs a header file that is not part of standard build.
CVS commit: src/tools/gcc
Module Name:src Committed By: skrll Date: Tue Sep 25 06:55:10 UTC 2012 Modified Files: src/tools/gcc: README.mknative mknative-gcc Log Message: More tweaks. I didn't manage to complete a mknative from scratch run, but this is a step in the right direction. To generate a diff of this commit: cvs rdiff -u -r1.10 -r1.11 src/tools/gcc/README.mknative cvs rdiff -u -r1.67 -r1.68 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/README.mknative diff -u src/tools/gcc/README.mknative:1.10 src/tools/gcc/README.mknative:1.11 --- src/tools/gcc/README.mknative:1.10 Sun Sep 16 15:09:55 2012 +++ src/tools/gcc/README.mknative Tue Sep 25 06:55:10 2012 @@ -1,4 +1,4 @@ -$NetBSD: README.mknative,v 1.10 2012/09/16 15:09:55 skrll Exp $ +$NetBSD: README.mknative,v 1.11 2012/09/25 06:55:10 skrll Exp $ This file describes how to bootstrap the native toolchain on a new NetBSD platform (and how to update the new toolchain files, if needed). These @@ -33,32 +33,41 @@ work. will regenerate the "proper" libgcc config files. 4. At top level, do - "nbmake-MACHINE do-distrib-dirs obj includes MKGCC=no MKBINUTILS=no". + "nbmake-MACHINE obj do-distrib-dirs includes MKGCC=no MKBINUTILS=no". -5. In src/external/gpl3/gcc/lib/libgcc, do "nbmake-MACHINE obj includes". +5. In src/external/gpl3/gcc/lib/libgcc, do + "nbmake-MACHINE obj includes dependall install MKPIC=no". 6. If the platform sets USE_COMPILERCRTSTUFF=yes, then in - src/external/gpl3/gcc/lib/crtstuff/ do "nbmake-MACHINE dependall install" + src/external/gpl3/gcc/lib/crtstuff/ do + "nbmake-MACHINE obj dependall install" -7. In each of src/lib/csu, src/external/gpl3/gcc/lib/libgcc, - src/external/lgpl3/gmp/lib/libgmp, src/external/lgpl3/mpfr/lib/libmpfr, - src/external/lgpl2/mpc/lib/libmpc and src/lib, - do "nbmake-MACHINE includes dependall install". +7. In src/lib/csu, do + "nbmake-MACHINE obj includes dependall install". - It is important to have LIBISPRIVATE=no while doing src/external/lgpl[23]/* +8. In each of src/external/lgpl3/gmp/lib/libgmp, + src/external/lgpl3/mpfr/lib/libmpfr, src/external/lgpl2/mpc/lib/libmpc + do "nbmake-MACHINE obj includes LIBISPRIVATE=no", and + "nbmake-MACHINE obj includes dependall install". + + It is important to have LIBISPRIVATE=no while doing includes as this + installs a header file that is not part of standard build. + +9. In src/lib, do + "nbmake-MACHINE obj includes dependall install MKGCC=no". Optionally, all of the following may be set in the environment to reduce the amount of code needed to build at this step. Basically, it must be possible for static binaries to build and base system libs to exist so that "configure" can do its job for the target--these MK* options omit - the rest for this stage of the build. + the rest for this stage of the build. MKCRYPTO=no MKLINT=no MKPROFILE=no MKSHARE=no -8. In src/tools/gcc, do "nbmake-MACHINE native-gcc". +10. In src/tools/gcc, do "nbmake-MACHINE native-gcc". This will do a full configury in ${.OBJDIR}/.native that is a "Canadian" cross toolchain (--build reflects the host platform, but --host and @@ -66,7 +75,7 @@ work. native-to-NetBSD compiler on a cross host, and mknative pulls glue data from this. -9. Try out a full build using "nbmake-MACHINE"; the result should include +11. Try out a full build using "nbmake-MACHINE"; the result should include a native compiler. -10. If all is well, commit the glue files added to src/gnu/{lib,usr.bin}/*. +12. If all is well, commit the glue files added to src/gnu/{lib,usr.bin}/*. Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.67 src/tools/gcc/mknative-gcc:1.68 --- src/tools/gcc/mknative-gcc:1.67 Sat Aug 11 16:05:01 2012 +++ src/tools/gcc/mknative-gcc Tue Sep 25 06:55:10 2012 @@ -1,8 +1,8 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.67 2012/08/11 16:05:01 skrll Exp $ +# $NetBSD: mknative-gcc,v 1.68 2012/09/25 06:55:10 skrll Exp $ # # Shell script for generating all the constants needed for a native -# platform build of src/gnu/dist/gcc. +# platform build of gcc. # # initialise @@ -548,6 +548,14 @@ get_libstdcxx_v3 () { # gnu/usr.bin/gcc3 # +get_gcc_bootstrap () { + _subdir="$1" + mkdir -p $_OUTDIR/usr.bin/$_subdir/arch/$MACHINE_ARCH + for f in auto-host tm config gthr-default; do + write_c $_OUTDIRBASE/usr.bin/$_subdir/arch/$MACHINE_ARCH/$f.h <$_TMPDIR/gcc/$f.h + done +} + get_gcc () { _subdir="$1" mkdir -p $_OUTDIR/usr.bin/$_subdir/arch/$MACHINE_ARCH @@ -697,6 +705,7 @@ libgcc45) get_libgcc gcc get_crtstuff crtstuff get_libgcov gcc + get_gcc_bootstrap gcc exit 0 ;;
CVS commit: src/tools/gcc
Module Name:src Committed By: skrll Date: Sun Sep 16 15:09:55 UTC 2012 Modified Files: src/tools/gcc: README.mknative Log Message: Attempt to describe the gcc 4.5 method (untested) To generate a diff of this commit: cvs rdiff -u -r1.9 -r1.10 src/tools/gcc/README.mknative Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/README.mknative diff -u src/tools/gcc/README.mknative:1.9 src/tools/gcc/README.mknative:1.10 --- src/tools/gcc/README.mknative:1.9 Wed Sep 21 02:15:18 2011 +++ src/tools/gcc/README.mknative Sun Sep 16 15:09:55 2012 @@ -1,6 +1,4 @@ -$NetBSD: README.mknative,v 1.9 2011/09/21 02:15:18 mrg Exp $ - -XXX THIS FILE DOES NOT DESCRIBE GCC 4.5 METHODS PROPERLY XXX +$NetBSD: README.mknative,v 1.10 2012/09/16 15:09:55 skrll Exp $ This file describes how to bootstrap the native toolchain on a new NetBSD platform (and how to update the new toolchain files, if needed). These @@ -27,8 +25,9 @@ work. 3. In src/tools/gcc, do "nbmake-MACHINE bootstrap-libgcc". - This will create just enough glue in src/gnu/lib/libgcc4/arch to make it - possible to build, based on the toolchain built in ${.OBJDIR}/build. + This will create just enough glue in src/external/gpl3/gcc/lib/libgcc/arch + to make it possible to build, based on the toolchain built in + ${.OBJDIR}/build. Because the files generated in this step contain things like -DCROSS_COMPILE, they are not suitable for committing. Step 8 below will regenerate the "proper" libgcc config files. @@ -36,13 +35,17 @@ work. 4. At top level, do "nbmake-MACHINE do-distrib-dirs obj includes MKGCC=no MKBINUTILS=no". -5. In src/gnu/lib/libgcc4, do "nbmake-MACHINE obj includes". +5. In src/external/gpl3/gcc/lib/libgcc, do "nbmake-MACHINE obj includes". + +6. If the platform sets USE_COMPILERCRTSTUFF=yes, then in + src/external/gpl3/gcc/lib/crtstuff/ do "nbmake-MACHINE dependall install" -6. If the platform sets USE_COMPILERCRTSTUFF=yes, then in src/gnu/lib/crtstuff4 - do "nbmake-MACHINE dependall install" +7. In each of src/lib/csu, src/external/gpl3/gcc/lib/libgcc, + src/external/lgpl3/gmp/lib/libgmp, src/external/lgpl3/mpfr/lib/libmpfr, + src/external/lgpl2/mpc/lib/libmpc and src/lib, + do "nbmake-MACHINE includes dependall install". -7. In each of src/lib/csu, src/gnu/lib/libgcc4, and src/lib, - do "nbmake-MACHINE dependall install". + It is important to have LIBISPRIVATE=no while doing src/external/lgpl[23]/* Optionally, all of the following may be set in the environment to reduce the amount of code needed to build at this step. Basically, it must be
CVS commit: src/tools/gcc
Module Name:src Committed By: skrll Date: Sat Aug 11 16:05:01 UTC 2012 Modified Files: src/tools/gcc: mknative-gcc Log Message: Grab CRTSTUFF_T_CFLAGS_S. Gentlement start your mknative runs. To generate a diff of this commit: cvs rdiff -u -r1.66 -r1.67 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.66 src/tools/gcc/mknative-gcc:1.67 --- src/tools/gcc/mknative-gcc:1.66 Tue Jan 10 12:27:54 2012 +++ src/tools/gcc/mknative-gcc Sat Aug 11 16:05:01 2012 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.66 2012/01/10 12:27:54 skrll Exp $ +# $NetBSD: mknative-gcc,v 1.67 2012/08/11 16:05:01 skrll Exp $ # # Shell script for generating all the constants needed for a native # platform build of src/gnu/dist/gcc. @@ -33,7 +33,7 @@ get_crtstuff () { mkdir -p $_OUTDIR/lib/$_subdir/arch getvars gcc/Makefile \ - INCLUDES CRTSTUFF_CFLAGS CRTSTUFF_T_CFLAGS \ + INCLUDES CRTSTUFF_CFLAGS CRTSTUFF_T_CFLAGS CRTSTUFF_T_CFLAGS_S \ tm_defines xm_file xm_defines \ | sed "s,-I$_DESTDIR/usr/include,,g" \ | write_mk $_OUTDIRBASE/lib/$_subdir/arch/$MACHINE_ARCH.mk
CVS commit: src/tools/gcc
Module Name:src Committed By: joerg Date: Thu May 31 21:02:03 UTC 2012 Modified Files: src/tools/gcc: Makefile Log Message: Always use system zlib. Avoids the need for 32bit build environment when bootstrapping on some Linux distros. We require zlib to be present anyway. To generate a diff of this commit: cvs rdiff -u -r1.50 -r1.51 src/tools/gcc/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.50 src/tools/gcc/Makefile:1.51 --- src/tools/gcc/Makefile:1.50 Tue Jan 10 12:27:54 2012 +++ src/tools/gcc/Makefile Thu May 31 21:02:02 2012 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.50 2012/01/10 12:27:54 skrll Exp $ +# $NetBSD: Makefile,v 1.51 2012/05/31 21:02:02 joerg Exp $ .include @@ -38,6 +38,7 @@ COMMON_CONFIGURE_ARGS= --target=${MACHIN --enable-threads \ --with-bugurl=http://www.NetBSD.org/Misc/send-pr.html \ --with-pkgversion="NetBSD nb2 20111202" \ + --with-system-zlib \ ${VAX_CONFIGURE_ARGS} \ --enable-__cxa_atexit .if defined(GCC_CONFIG_ARCH.${MACHINE_ARCH})
CVS commit: src/tools/gcc
Module Name:src Committed By: skrll Date: Tue Jan 10 12:27:54 UTC 2012 Modified Files: src/tools/gcc: Makefile mknative-gcc Log Message: Fix bootstrap-libgcc for gcc 4.5 To generate a diff of this commit: cvs rdiff -u -r1.49 -r1.50 src/tools/gcc/Makefile cvs rdiff -u -r1.65 -r1.66 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.49 src/tools/gcc/Makefile:1.50 --- src/tools/gcc/Makefile:1.49 Tue Jan 10 12:26:45 2012 +++ src/tools/gcc/Makefile Tue Jan 10 12:27:54 2012 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.49 2012/01/10 12:26:45 skrll Exp $ +# $NetBSD: Makefile,v 1.50 2012/01/10 12:27:54 skrll Exp $ .include @@ -117,7 +117,7 @@ MKNATIVE?= ${.CURDIR}/mknative-gcc bootstrap-libgcc: .configure_done @echo 'Creating files needed for libgcc by a native bootstrap build.' - @MAKE=${BUILD_MAKE:Q} ${HOST_SH} ${MKNATIVE} lib${MODULE} \ + @MAKE=${BUILD_MAKE:Q} ${HOST_SH} ${MKNATIVE} lib${MKNATIVE_TARGET} \ ${.OBJDIR}/build ${NEWCONFIGDIR} ${MACHINE_GNU_PLATFORM} \ ${DESTDIR} Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.65 src/tools/gcc/mknative-gcc:1.66 --- src/tools/gcc/mknative-gcc:1.65 Thu Oct 13 19:52:33 2011 +++ src/tools/gcc/mknative-gcc Tue Jan 10 12:27:54 2012 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.65 2011/10/13 19:52:33 matt Exp $ +# $NetBSD: mknative-gcc,v 1.66 2012/01/10 12:27:54 skrll Exp $ # # Shell script for generating all the constants needed for a native # platform build of src/gnu/dist/gcc. @@ -691,6 +691,15 @@ libgcc4) exit 0 ;; +libgcc45) + _OUTDIR="$_TOP/external/gpl3/gcc" + _OUTDIRBASE="external/gpl3/gcc" + get_libgcc gcc + get_crtstuff crtstuff + get_libgcov gcc + exit 0 + ;; + # gcc files gcc4) get_gcc gcc4
CVS commit: src/tools/gcc
Module Name:src Committed By: skrll Date: Tue Jan 10 12:26:45 UTC 2012 Modified Files: src/tools/gcc: Makefile Log Message: Fix (harmless?) HAVE_GCC comparison version. To generate a diff of this commit: cvs rdiff -u -r1.48 -r1.49 src/tools/gcc/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.48 src/tools/gcc/Makefile:1.49 --- src/tools/gcc/Makefile:1.48 Mon Dec 12 18:59:06 2011 +++ src/tools/gcc/Makefile Tue Jan 10 12:26:45 2012 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.48 2011/12/12 18:59:06 joerg Exp $ +# $NetBSD: Makefile,v 1.49 2012/01/10 12:26:45 skrll Exp $ .include @@ -103,7 +103,7 @@ BUILD_MAKE=${TOOL_GMAKE} # mknative-gcc specific stuff # -.if ${HAVE_GCC} >= 45 +.if ${HAVE_GCC} < 45 GCCSRCDIR=${.CURDIR}/../../gnu/dist/gcc4 .else GCCSRCDIR=${.CURDIR}/../../external/gpl3/gcc/dist
CVS commit: src/tools/gcc
Module Name:src Committed By: joerg Date: Mon Dec 12 18:59:06 UTC 2011 Modified Files: src/tools/gcc: Makefile Log Message: Explicitly request TLS support for mknative. To generate a diff of this commit: cvs rdiff -u -r1.47 -r1.48 src/tools/gcc/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/Makefile diff -u src/tools/gcc/Makefile:1.47 src/tools/gcc/Makefile:1.48 --- src/tools/gcc/Makefile:1.47 Fri Dec 2 09:44:48 2011 +++ src/tools/gcc/Makefile Mon Dec 12 18:59:06 2011 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.47 2011/12/02 09:44:48 skrll Exp $ +# $NetBSD: Makefile,v 1.48 2011/12/12 18:59:06 joerg Exp $ .include @@ -133,6 +133,10 @@ NATIVE_CONFIGURE_ARGS+= \ --with-mpc=${DESTDIR}/usr \ --with-mpfr=${DESTDIR}/usr \ --with-gmp=${DESTDIR}/usr + +. if ${MACHINE_ARCH} != "vax" +NATIVE_CONFIGURE_ARGS+= --enable-tls +. endif .endif NATIVE_CONFIGURE_ARGS+= \ --disable-multilib \
CVS commit: src/tools/gcc
Module Name:src Committed By: matt Date: Thu Oct 13 19:52:33 UTC 2011 Modified Files: src/tools/gcc: mknative-gcc Log Message: Fix PPC _SOFT_FLOAT To generate a diff of this commit: cvs rdiff -u -r1.64 -r1.65 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.64 src/tools/gcc/mknative-gcc:1.65 --- src/tools/gcc/mknative-gcc:1.64 Fri Sep 23 06:43:46 2011 +++ src/tools/gcc/mknative-gcc Thu Oct 13 19:52:33 2011 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.64 2011/09/23 06:43:46 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.65 2011/10/13 19:52:33 matt Exp $ # # Shell script for generating all the constants needed for a native # platform build of src/gnu/dist/gcc. @@ -637,7 +637,7 @@ get_gcc () { /configuration_arguments/ s/$// ya i -#ifdef _SOFT_FLOAT_ +#ifdef _SOFT_FLOAT . pu s/";$/ -with-float=soft";/ @@ -648,7 +648,7 @@ a . m +1 /configure_default_options/ s/{ NULL.*$// a -#ifdef _SOFT_FLOAT_ +#ifdef _SOFT_FLOAT { "float", "soft" }, #endif { NULL, NULL }
CVS commit: src/tools/gcc
Module Name:src Committed By: mrg Date: Fri Sep 23 06:43:47 UTC 2011 Modified Files: src/tools/gcc: mknative-gcc Log Message: since omp.h is part of libgomp, put it in the libgomp files not the libstdc++ files. To generate a diff of this commit: cvs rdiff -u -r1.63 -r1.64 src/tools/gcc/mknative-gcc Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/tools/gcc/mknative-gcc diff -u src/tools/gcc/mknative-gcc:1.63 src/tools/gcc/mknative-gcc:1.64 --- src/tools/gcc/mknative-gcc:1.63 Wed Sep 21 02:15:18 2011 +++ src/tools/gcc/mknative-gcc Fri Sep 23 06:43:46 2011 @@ -1,5 +1,5 @@ #!/bin/sh -# $NetBSD: mknative-gcc,v 1.63 2011/09/21 02:15:18 mrg Exp $ +# $NetBSD: mknative-gcc,v 1.64 2011/09/23 06:43:46 mrg Exp $ # # Shell script for generating all the constants needed for a native # platform build of src/gnu/dist/gcc. @@ -464,6 +464,8 @@ <$_TMPDIR/$_PLATFORM/libgomp/libgomp_f.h write_mk $_OUTDIRBASE/lib/$_subdir/arch/$MACHINE_ARCH/libgomp.spec \ <$_TMPDIR/$_PLATFORM/libgomp/libgomp.spec + write_c $_OUTDIRBASE/lib/$_subdir/arch/$MACHINE_ARCH/omp.h \ + <$_TMPDIR/$_PLATFORM/libgomp/omp.h } # gnu/lib/libobjc # @@ -517,8 +519,6 @@ <$_TMPDIR/$_PLATFORM/libstdc++-v3/config.h write_c $_OUTDIRBASE/lib/$_subdir/arch/$MACHINE_ARCH/gstdint.h \ <$_TMPDIR/$_PLATFORM/libstdc++-v3/include/gstdint.h - write_c $_OUTDIRBASE/lib/$_subdir/arch/$MACHINE_ARCH/omp.h \ - <$_TMPDIR/$_PLATFORM/libgomp/omp.h { # libsupc++