head 1.4; access; symbols pkgsrc-2026Q1:1.4.0.60 pkgsrc-2026Q1-base:1.4 pkgsrc-2025Q4:1.4.0.58 pkgsrc-2025Q4-base:1.4 pkgsrc-2025Q3:1.4.0.56 pkgsrc-2025Q3-base:1.4 pkgsrc-2025Q2:1.4.0.54 pkgsrc-2025Q2-base:1.4 pkgsrc-2025Q1:1.4.0.52 pkgsrc-2025Q1-base:1.4 pkgsrc-2024Q4:1.4.0.50 pkgsrc-2024Q4-base:1.4 pkgsrc-2024Q3:1.4.0.48 pkgsrc-2024Q3-base:1.4 pkgsrc-2024Q2:1.4.0.46 pkgsrc-2024Q2-base:1.4 pkgsrc-2024Q1:1.4.0.44 pkgsrc-2024Q1-base:1.4 pkgsrc-2023Q4:1.4.0.42 pkgsrc-2023Q4-base:1.4 pkgsrc-2023Q3:1.4.0.40 pkgsrc-2023Q3-base:1.4 pkgsrc-2023Q2:1.4.0.38 pkgsrc-2023Q2-base:1.4 pkgsrc-2023Q1:1.4.0.36 pkgsrc-2023Q1-base:1.4 pkgsrc-2022Q4:1.4.0.34 pkgsrc-2022Q4-base:1.4 pkgsrc-2022Q3:1.4.0.32 pkgsrc-2022Q3-base:1.4 pkgsrc-2022Q2:1.4.0.30 pkgsrc-2022Q2-base:1.4 pkgsrc-2022Q1:1.4.0.28 pkgsrc-2022Q1-base:1.4 pkgsrc-2021Q4:1.4.0.26 pkgsrc-2021Q4-base:1.4 pkgsrc-2021Q3:1.4.0.24 pkgsrc-2021Q3-base:1.4 pkgsrc-2021Q2:1.4.0.22 pkgsrc-2021Q2-base:1.4 pkgsrc-2021Q1:1.4.0.20 pkgsrc-2021Q1-base:1.4 pkgsrc-2020Q4:1.4.0.18 pkgsrc-2020Q4-base:1.4 pkgsrc-2020Q3:1.4.0.16 pkgsrc-2020Q3-base:1.4 pkgsrc-2020Q2:1.4.0.14 pkgsrc-2020Q2-base:1.4 pkgsrc-2020Q1:1.4.0.10 pkgsrc-2020Q1-base:1.4 pkgsrc-2019Q4:1.4.0.12 pkgsrc-2019Q4-base:1.4 pkgsrc-2019Q3:1.4.0.8 pkgsrc-2019Q3-base:1.4 pkgsrc-2019Q2:1.4.0.6 pkgsrc-2019Q2-base:1.4 pkgsrc-2019Q1:1.4.0.4 pkgsrc-2019Q1-base:1.4 pkgsrc-2018Q4:1.4.0.2 pkgsrc-2018Q4-base:1.4 pkgsrc-2018Q3:1.3.0.4 pkgsrc-2018Q3-base:1.3 pkgsrc-2018Q2:1.3.0.2 pkgsrc-2018Q2-base:1.3 pkgsrc-2018Q1:1.2.0.2 pkgsrc-2018Q1-base:1.2 pkgsrc-2017Q4:1.1.0.8 pkgsrc-2017Q4-base:1.1 pkgsrc-2017Q3:1.1.0.6 pkgsrc-2017Q3-base:1.1 pkgsrc-2017Q2:1.1.0.2 pkgsrc-2017Q2-base:1.1; locks; strict; comment @# @; 1.4 date 2018.11.09.11.22.13; author mrg; state Exp; branches; next 1.3; commitid e7sCTW5slI8acgZA; 1.3 date 2018.06.17.19.50.52; author maya; state Exp; branches; next 1.2; commitid yfUHHZvopo2aGFGA; 1.2 date 2018.01.25.23.27.30; author maya; state Exp; branches; next 1.1; commitid XwI0cnN3VvJxsjoA; 1.1 date 2017.05.03.00.21.03; author maya; state Exp; branches; next ; commitid vGEePRIp9lemnSPz; desc @@ 1.4 log @port our gcc arm64 patches over to gcc 7. only real change is to add 'md_unwind_header=aarch64/aarch64-unwind.h' to the new netbsd/arm64 section of libgcc/config.host. @ text @$NetBSD: patch-gcc_config.gcc,v 1.3 2018/06/17 19:50:52 maya Exp $ Workaround netbsd's compatibility non-C99 cabs (causes gfortran link failures) netbsd/arm eabi support use nbsd_tm_file to make sure every netbsd target gets netbsd-stdint.h (upstreamed) add arm64 support. --- gcc/config.gcc.orig 2018-01-08 13:39:11.000000000 +0000 +++ gcc/config.gcc 2018-11-09 09:20:10.688545085 +0000 @@@@ -781,7 +781,12 @@@@ gas=yes gnu_ld=yes use_gcc_stdint=wrap +# cabs/cabsf are renamed to __c99_cabs/cabsf + tm_p_file="${tm_p_file} netbsd-protos.h" + target_gtfiles="${target_gtfiles} \$(srcdir)/config/netbsd.c" + extra_objs="${extra_objs} netbsd.o" + nbsd_tm_file="netbsd.h netbsd-stdint.h netbsd-elf.h" # NetBSD 2.0 and later get POSIX threads enabled by default. # Allow them to be explicitly enabled on any other version. case ${enable_threads} in @@@@ -962,6 +967,13 @@@@ tm_file="${tm_file} aarch64/aarch64-elf.h aarch64/aarch64-freebsd.h" tmake_file="${tmake_file} aarch64/t-aarch64 aarch64/t-aarch64-freebsd" ;; +aarch64*-*-netbsd*) + tm_file="${tm_file} dbxelf.h elfos.h ${nbsd_tm_file}" + tm_file="${tm_file} aarch64/aarch64-elf.h aarch64/aarch64-netbsd.h" + tmake_file="${tmake_file} aarch64/t-aarch64 aarch64/t-aarch64-netbsd" + extra_options="${extra_options} netbsd.opt netbsd-elf.opt" + # XXX big endian + ;; aarch64*-*-linux*) tm_file="${tm_file} dbxelf.h elfos.h gnu-user.h linux.h glibc-stdint.h" tm_file="${tm_file} aarch64/aarch64-elf.h aarch64/aarch64-linux.h" @@@@ -1001,7 +1013,7 @@@@ extra_options="${extra_options} alpha/elf.opt" ;; alpha*-*-netbsd*) - tm_file="elfos.h ${tm_file} netbsd.h alpha/elf.h netbsd-elf.h alpha/netbsd.h" + tm_file="elfos.h ${tm_file} ${nbsd_tm_file} alpha/elf.h alpha/netbsd.h" tmake_file="${tmake_file} alpha/t-alpha" extra_options="${extra_options} netbsd.opt netbsd-elf.opt \ alpha/elf.opt" @@@@ -1092,10 +1104,37 @@@@ with_tls=${with_tls:-gnu} ;; arm*-*-netbsdelf*) - tm_file="dbxelf.h elfos.h netbsd.h netbsd-elf.h arm/elf.h arm/aout.h ${tm_file} arm/netbsd-elf.h" - extra_options="${extra_options} netbsd.opt netbsd-elf.opt" tmake_file="${tmake_file} arm/t-arm" - target_cpu_cname="arm6" + tm_file="dbxelf.h elfos.h ${nbsd_tm_file} arm/elf.h" + extra_options="${extra_options} netbsd.opt netbsd-elf.opt" + case ${target} in + arm*eb-*) tm_defines="${tm_defines} TARGET_BIG_ENDIAN_DEFAULT=1" ;; + esac + case ${target} in + arm*-*-netbsdelf-*eabi*) + tm_file="$tm_file arm/bpabi.h arm/netbsd-elf.h arm/netbsd-eabi.h" + tmake_file="$tmake_file arm/t-bpabi arm/t-netbsdeabi" + # The BPABI long long divmod functions return a 128-bit value in + # registers r0-r3. Correctly modeling that requires the use of + # TImode. + need_64bit_hwint=yes + ;; + *) + tm_file="$tm_file arm/netbsd-elf.h" + tmake_file="$tmake_file arm/t-netbsd" + ;; + esac + tm_file="${tm_file} arm/aout.h arm/arm.h" + case ${target} in + arm*-*-netbsdelf-*eabihf*) + tm_defines="${tm_defines} TARGET_DEFAULT_FLOAT_ABI=ARM_FLOAT_ABI_HARD" + ;; + esac + case ${target} in + armv4*) target_cpu_cname="strongarm";; + armv6*) target_cpu_cname="arm1176jzfs";; + armv7*) target_cpu_cname="cortexa8";; + esac ;; arm*-*-linux-*) # ARM GNU/Linux with ELF tm_file="dbxelf.h elfos.h gnu-user.h linux.h linux-android.h glibc-stdint.h arm/elf.h arm/linux-gas.h arm/linux-elf.h" @@@@ -1485,12 +1524,14 @@@@ tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ${fbsd_tm_file} i386/x86-64.h i386/freebsd.h i386/freebsd64.h" ;; i[34567]86-*-netbsdelf*) - tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h netbsd.h netbsd-stdint.h netbsd-elf.h i386/netbsd-elf.h" + tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ${nbsd_tm_file} i386/netbsd-elf.h" extra_options="${extra_options} netbsd.opt netbsd-elf.opt" + tmake_file="${tmake_file} i386/t-crtstuff" ;; x86_64-*-netbsd*) - tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h netbsd.h netbsd-stdint.h netbsd-elf.h i386/x86-64.h i386/netbsd64.h" + tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ${nbsd_tm_file} i386/x86-64.h i386/netbsd64.h" extra_options="${extra_options} netbsd.opt netbsd-elf.opt" + tmake_file="${tmake_file} i386/t-crtstuff" ;; i[34567]86-*-openbsd*) tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h" @@@@ -2381,7 +2422,7 @@@@ esac ;; powerpc-*-netbsd*) - tm_file="${tm_file} dbxelf.h elfos.h netbsd.h netbsd-elf.h freebsd-spec.h rs6000/sysv4.h rs6000/netbsd.h" + tm_file="${tm_file} dbxelf.h elfos.h ${nbsd_tm_file} freebsd-spec.h rs6000/sysv4.h rs6000/netbsd.h" extra_options="${extra_options} netbsd.opt netbsd-elf.opt" tmake_file="${tmake_file} rs6000/t-netbsd" extra_options="${extra_options} rs6000/sysv4.opt" @@@@ -2700,7 +2741,7 @@@@ fi tm_file="${tm_file} gnu-user.h linux.h glibc-stdint.h sh/linux.h" ;; sh*-*-netbsd*) - tm_file="${tm_file} netbsd.h netbsd-elf.h sh/netbsd-elf.h" + tm_file="${tm_file} ${nbsd_tm_file} sh/netbsd-elf.h" extra_options="${extra_options} netbsd.opt netbsd-elf.opt" ;; @@@@ -2860,7 +2901,7 @@@@ fi ;; sparc-*-netbsdelf*) - tm_file="${tm_file} dbxelf.h elfos.h sparc/sysv4.h netbsd.h netbsd-elf.h sparc/netbsd-elf.h" + tm_file="${tm_file} dbxelf.h elfos.h sparc/sysv4.h ${nbsd_tm_file} sparc/netbsd-elf.h" extra_options="${extra_options} netbsd.opt netbsd-elf.opt" extra_options="${extra_options} sparc/long-double-switch.opt" tmake_file="${tmake_file} sparc/t-sparc" @@@@ -2908,7 +2949,7 @@@@ ;; sparc64-*-netbsd*) tm_file="sparc/biarch64.h ${tm_file}" - tm_file="${tm_file} dbxelf.h elfos.h sparc/sysv4.h netbsd.h netbsd-elf.h sparc/netbsd-elf.h" + tm_file="${tm_file} dbxelf.h elfos.h sparc/sysv4.h ${nbsd_tm_file} sparc/netbsd-elf.h" extra_options="${extra_options} netbsd.opt netbsd-elf.opt" extra_options="${extra_options} sparc/long-double-switch.opt" tmake_file="${tmake_file} sparc/t-sparc sparc/t-netbsd64" @@@@ -3012,7 +3053,7 @@@@ extra_options="${extra_options} vax/elf.opt" ;; vax-*-netbsdelf*) - tm_file="${tm_file} elfos.h netbsd.h netbsd-elf.h vax/elf.h vax/netbsd-elf.h" + tm_file="${tm_file} elfos.h ${nbsd_tm_file} vax/elf.h vax/netbsd-elf.h" extra_options="${extra_options} netbsd.opt netbsd-elf.opt vax/elf.opt" ;; vax-*-openbsd*) @ 1.3 log @gcc7: fix many netbsd targets. add netbsd/arm EABI target. recognise dwarf2 unwinding in the common arm code. switch convoluted stddef.h logic from relying on include guards having certain names to only applying for netbsd, which should be the sole remaining user. (necessary for netbsd/arm, which uses different include guards for ansi.h) move linux/alpha code out of shared alpha+ELF header. make all netbsd targets include netbsd-stdint.h. Fixes PR pkg/52951. Bump PKGREVISION. bump gcc7-libs PKGREVISION above this one. @ text @d1 1 a1 1 $NetBSD: patch-gcc_config.gcc,v 1.2 2018/01/25 23:27:30 maya Exp $ d9 2 d12 2 a13 2 +++ gcc/config.gcc @@@@ -781,7 +781,12 @@@@ case ${target} in d26 15 a40 1 @@@@ -1001,7 +1006,7 @@@@ alpha*-*-freebsd*) d49 1 a49 1 @@@@ -1092,10 +1097,37 @@@@ arm*-*-freebsd*) # ARM Fr d90 1 a90 1 @@@@ -1485,12 +1517,14 @@@@ x86_64-*-freebsd*) d107 1 a107 1 @@@@ -2381,7 +2415,7 @@@@ powerpc*-*-freebsd*) d116 1 a116 1 @@@@ -2700,7 +2734,7 @@@@ sh-*-elf* | sh[12346l]*-*-elf* | \ d125 1 a125 1 @@@@ -2860,7 +2894,7 @@@@ sparc-*-linux*) d134 1 a134 1 @@@@ -2908,7 +2942,7 @@@@ sparc64-*-freebsd*|ultrasparc-*-freebsd* d143 1 a143 1 @@@@ -3012,7 +3046,7 @@@@ vax-*-linux*) @ 1.2 log @gcc7: update to 7.3.0 Local changes: Remove patch hunks merged upstream (non-c99 compatibility cabs workaround, linking to libc by default on netbsd). GCC changes: Added code generation options to mitigate Spectre variant 2 (CVE-2017-5715) for the powerpc and x86 targets. RTEMS: Support has been added for Epiphany target. List of bugs fixed: https://gcc.gnu.org/bugzilla/buglist.cgi?bug_status=RESOLVED&list_id=199567&resolution=FIXED&target_milestone=7.3 @ text @d1 1 a1 1 $NetBSD: patch-gcc_config.gcc,v 1.1 2017/05/03 00:21:03 maya Exp $ d4 4 d11 1 a11 1 @@@@ -781,6 +781,10 @@@@ case ${target} in d20 1 d23 54 a76 1 @@@@ -1487,10 +1491,12 @@@@ x86_64-*-freebsd*) d78 2 a79 1 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h netbsd.h netbsd-stdint.h netbsd-elf.h i386/netbsd-elf.h" d84 2 a85 1 tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h netbsd.h netbsd-stdint.h netbsd-elf.h i386/x86-64.h i386/netbsd64.h" d91 45 @ 1.1 log @Add GCC 7.1.0 GCC Java removed, package now uses ISL 0.16.1 Release notes: We are proud to announce the next, major release of the GNU Compiler Collection, 7.1. This year we celebrated the 30th anniversary of the first GCC beta release and this month we will celebrate 30 years since the GCC 1.0 release. GCC 7.1 is a major release containing substantial new functionality not available in GCC 6.x or previous GCC releases. The C++ frontend now has experimental support for all of the current C++17 draft, with the -std=c++1z and -std=gnu++1z options, and the libstdc++ library has most of the C++17 draft library features implemented too. This releases features various improvements in the emitted diagnostics, including improved locations, location ranges, suggestions for misspelled identifiers, option names, fix-it hints and various new warnings have been added. The optimizers have been improved, with improvements appearing in all of intra- and inter-procedural optimizations, link time optimizations and various target backends, including, but not limited to, additions of store merging pass, code hoisting optimization, loop splitting, and shrink wrapping improvements. The Address Sanitizer can now report uses of variables after leaving their scope. GCC now can be configured for OpenMP 4.5 offloading to NVidia PTX GPGPUs. Some code that compiled successfully with older GCC versions might require some code adjustments, see http://gcc.gnu.org/gcc-7/porting_to.html for details. See https://gcc.gnu.org/gcc-7/changes.html for more information about changes in GCC 7.1. @ text @d1 1 a1 1 $NetBSD: patch-gcc_config.gcc,v 1.2 2014/12/17 21:51:02 keckhardt Exp $ d3 3 a5 1 --- gcc/config.gcc.orig 2016-12-10 21:07:10.000000000 +0000 d7 1 a7 6 @@@@ -765,10 +765,15 @@@@ case ${target} in target_has_targetcm=yes ;; *-*-netbsd*) - tmake_file="t-slibgcc" + tmake_file="t-slibgcc t-netbsd" d11 1 a11 1 + # cabs/cabsf are renamed to __c99_cabs/cabsf a14 1 + d18 1 a18 1 @@@@ -1460,10 +1465,12 @@@@ x86_64-*-freebsd*) @