From 1169f9e02d6b799cf612ced35975f17cbc9fe751 Mon Sep 17 00:00:00 2001 From: Jason Thorpe Date: Sun, 24 Nov 2002 23:36:26 +0000 Subject: [PATCH] config.gcc (*-*-netbsd*1.[7-9]*, [...]): Set extra_parts to "crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o". * config.gcc (*-*-netbsd*1.[7-9]*, *-*-netbsd*[2-9]*): Set extra_parts to "crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o". (arm*-*-netbsd*, i[34567]86-*-netbsd*, m68k*-*-netbsd*) (ns32k-*-netbsd*, sparc-*-netbsd*, vax-*-netbsd*): Set extra_parts to "" for a.out configurations. * config/t-netbsd (CRTSTUFF_T_CFLAGS): Set to "-fPIC". From-SVN: r59444 --- gcc/ChangeLog | 10 ++++++++++ gcc/config.gcc | 15 +++++++++++++++ gcc/config/t-netbsd | 3 +++ 3 files changed, 28 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 71ae193479e..3e6687002f0 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,13 @@ +2002-11-24 Jason Thorpe + + * config.gcc (*-*-netbsd*1.[7-9]*, *-*-netbsd*[2-9]*): Set + extra_parts to "crtbegin.o crtend.o crtbeginS.o crtendS.o + crtbeginT.o". + (arm*-*-netbsd*, i[34567]86-*-netbsd*, m68k*-*-netbsd*) + (ns32k-*-netbsd*, sparc-*-netbsd*, vax-*-netbsd*): Set extra_parts + to "" for a.out configurations. + * config/t-netbsd (CRTSTUFF_T_CFLAGS): Set to "-fPIC". + 2002-11-24 Jason Thorpe * config/alpha/netbsd.h (CPP_SUBTARGET_SPEC): Just use diff --git a/gcc/config.gcc b/gcc/config.gcc index ef7bac4fccc..902f0a2242f 100644 --- a/gcc/config.gcc +++ b/gcc/config.gcc @@ -370,6 +370,15 @@ case $machine in tm_defines="${tm_defines} NETBSD_ENABLE_PTHREADS" ;; esac + + # NetBSD 1.7 and later are set up to use GCC's crtstuff for + # ELF configurations. We will clear extra_parts in the + # a.out configurations. + case $machine in + *-*-netbsd*1.[7-9]* | *-*-netbsd*[2-9]*) + extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtbeginT.o" + ;; + esac ;; *-*-freebsd[12] | *-*-freebsd[12].* | *-*-freebsd*aout*) # This is the place-holder for the generic a.out configuration @@ -623,6 +632,7 @@ arm*-*-netbsdelf*) arm*-*-netbsd*) tm_file="arm/aout.h arm/arm.h netbsd.h netbsd-aout.h arm/netbsd.h" tmake_file="t-netbsd arm/t-netbsd" + extra_parts="" use_collect2=yes ;; arm*-*-linux*) # ARM GNU/Linux with ELF @@ -1068,6 +1078,7 @@ i[34567]86-*-netbsdelf*) i[34567]86-*-netbsd*) tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/gstabs.h netbsd.h netbsd-aout.h i386/netbsd.h" tmake_file=t-netbsd + extra_parts="" use_collect2=yes ;; x86_64-*-netbsd*) @@ -1631,6 +1642,7 @@ m68010-*-netbsdelf* | m68k*-*-netbsdelf*) m68k*-*-netbsd*) tm_file=m68k/netbsd.h tmake_file=t-netbsd + extra_parts="" use_collect2=yes ;; m68k*-*-openbsd*) @@ -1928,6 +1940,7 @@ ns32k-*-netbsd*) tm_file="${tm_file} netbsd.h netbsd-aout.h ns32k/netbsd.h" # On NetBSD, the headers are already okay, except for math.h. tmake_file="t-netbsd ns32k/t-ns32k" + extra_parts="" use_collect2=yes ;; pdp11-*-bsd) @@ -2320,6 +2333,7 @@ sparc-*-netbsdelf*) sparc-*-netbsd*) tm_file="${tm_file} sparc/aout.h netbsd.h netbsd-aout.h sparc/netbsd.h" tmake_file=t-netbsd + extra_parts="" use_collect2=yes ;; sparc-*-openbsd*) @@ -2638,6 +2652,7 @@ vax-*-netbsdelf*) vax-*-netbsd*) tm_file="${tm_file} netbsd.h netbsd-aout.h vax/netbsd.h" tmake_file=t-netbsd + extra_parts="" use_collect2=yes ;; vax-*-openbsd*) diff --git a/gcc/config/t-netbsd b/gcc/config/t-netbsd index d284b3e7e41..fa2a4886320 100644 --- a/gcc/config/t-netbsd +++ b/gcc/config/t-netbsd @@ -1,2 +1,5 @@ # Don't run fixproto STMP_FIXPROTO = + +# Always build crtstuff with PIC. +CRTSTUFF_T_CFLAGS = -fPIC -- 2.30.2