diff options
author | cagney <cagney@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-08-01 19:25:18 +0000 |
---|---|---|
committer | cagney <cagney@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-08-01 19:25:18 +0000 |
commit | 93006578d2031216f781196b79b51e3a91b48717 (patch) | |
tree | c68b354c893c42ae0677cea5323bc79727e4e2b6 /gcc/config/rs6000/netbsd.h | |
parent | 8e7f75ad4cf9ecfa1b96d1459edfefd73fb006c5 (diff) | |
download | gcc-93006578d2031216f781196b79b51e3a91b48717.tar.gz |
* config.gcc: Recognize powerpc-*-netbsd*.
* doc/install.texi (Host/target specific installation notes for
GCC): Mention powerpc-*-netbsd*.
* config/rs6000/netbsd.h: New file.
(STANDARD_STARTFILE_PREFIX, LINK_SHLIB_SPEC): Redefine.
(LIB_DEFAULT_SPEC, STARTFILE_DEFAULT_SPEC): Redefine.
(ENDFILE_DEFAULT_SPEC, LINK_START_DEFAULT_SPEC): Redefine.
(LINK_OS_DEFAULT_SPEC, CPP_OS_DEFAULT_SPEC): Redefine.
(TARGET_VERSION): Redefine.
* config/rs6000/t-ppccomm (MULTILIB_MATCHES_SYSV): Recognize
mcall-netbsd as a match for mcall-sysv.
(EXTRA_MULTILIB_PARTS): Add ncrti$(objext) and ncrtn$(objext).
(ncrti.S, ncrtn.S): New targets.
($(T)ncrti$(objext), $(T)ncrtn$(objext)): New targets.
* config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Recognize
"netbsd' as a V4 ABI.
(ASM_SPEC): Check for -mcall-netbsd.
(CC1_SPEC, CC1_SPEC, LINK_START_SPEC, LINK_OS_SPEC): Ditto.
(CPP_ENDIAN_SPEC, CPP_SPEC, STARTFILE_SPEC): Ditto.
(LIB_SPEC, ENDFILE_SPEC): Ditto.
(LIB_NETBSD_SPEC, STARTFILE_NETBSD_SPEC): Define.
(ENDFILE_NETBSD_SPEC, LINK_START_NETBSD_SPEC): Define.
(LINK_OS_NETBSD_SPEC, CPP_OS_NETBSD_SPEC): Define.
(SUBTARGET_EXTRA_SPECS): Add NetBSD specs.
* doc/invoke.texi (Option Summary): Add -mcall-netbsd.
(RS/6000 and PowerPC Options): Mention -mcall-netbsd.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@44552 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/rs6000/netbsd.h')
-rw-r--r-- | gcc/config/rs6000/netbsd.h | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/gcc/config/rs6000/netbsd.h b/gcc/config/rs6000/netbsd.h new file mode 100644 index 00000000000..9978db50231 --- /dev/null +++ b/gcc/config/rs6000/netbsd.h @@ -0,0 +1,61 @@ +/* Definitions of target machine for GNU compiler, + for PowerPC NetBSD systems. + Copyright 2001 Free Software Foundation, Inc. + +This file is part of GNU CC. + +GNU CC is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +GNU CC is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU CC; see the file COPYING. If not, write to +the Free Software Foundation, 59 Temple Place - Suite 330, +Boston, MA 02111-1307, USA. */ + +/* Under NetBSD, the normal location of the various *crt*.o files is + the /usr/lib directory [from config/netbsd.h]. */ + +#undef STANDARD_STARTFILE_PREFIX +#define STANDARD_STARTFILE_PREFIX "/usr/lib/" + +/* FIXME: Should this macro be treated the same as for the other + spec's? */ +/* NOTE: -dc and -dp are equivalent yet NetBSD's CC passes both both! + NetBSD's CC also passes -O1 but we can skip that. NetBSD explictly + sets ``-e _start'', since LD knows this, skip it. */ + +#undef LINK_SHLIB_SPEC +#define LINK_SHLIB_SPEC "\ +%{shared:-shared} \ +%{!shared: %{static:-dc -dp -static}} \ +%{!shared: %{!static:-dc -dp}} \ +" + +/* Override the defaults. */ +#undef LIB_DEFAULT_SPEC +#define LIB_DEFAULT_SPEC "%(lib_netbsd)" + +#undef STARTFILE_DEFAULT_SPEC +#define STARTFILE_DEFAULT_SPEC "%(startfile_netbsd)" + +#undef ENDFILE_DEFAULT_SPEC +#define ENDFILE_DEFAULT_SPEC "%(endfile_netbsd)" + +#undef LINK_START_DEFAULT_SPEC +#define LINK_START_DEFAULT_SPEC "%(link_start_netbsd)" + +#undef LINK_OS_DEFAULT_SPEC +#define LINK_OS_DEFAULT_SPEC "%(link_os_netbsd)" + +#undef CPP_OS_DEFAULT_SPEC +#define CPP_OS_DEFAULT_SPEC "%(cpp_os_netbsd)" + +#undef TARGET_VERSION +#define TARGET_VERSION fprintf (stderr, " (PowerPC NetBSD/ELF)"); |