2011-03-21 Daniel Jacobowitz <dan@codesourcery.com>
[official-gcc.git] / gcc / config / arm / freebsd.h
blob701bb149930ae5f13c55322daf57d2c8fcd95939
1 /* Definitions for StrongARM running FreeBSD using the ELF format
2 Copyright (C) 2001, 2004, 2007, 2010 Free Software Foundation, Inc.
3 Contributed by David E. O'Brien <obrien@FreeBSD.org> and BSDi.
5 This file is part of GCC.
7 GCC is free software; you can redistribute it and/or modify it
8 under the terms of the GNU General Public License as published
9 by the Free Software Foundation; either version 3, or (at your
10 option) any later version.
12 GCC is distributed in the hope that it will be useful, but WITHOUT
13 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
14 or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
15 License for more details.
17 You should have received a copy of the GNU General Public License
18 along with GCC; see the file COPYING3. If not see
19 <http://www.gnu.org/licenses/>. */
22 #undef SUBTARGET_EXTRA_SPECS
23 #define SUBTARGET_EXTRA_SPECS \
24 { "fbsd_dynamic_linker", FBSD_DYNAMIC_LINKER }
26 #undef SUBTARGET_CPP_SPEC
27 #define SUBTARGET_CPP_SPEC FBSD_CPP_SPEC
29 #undef LINK_SPEC
30 #define LINK_SPEC " \
31 %{p:%nconsider using '-pg' instead of '-p' with gprof(1)} \
32 %{v:-V} \
33 %{assert*} %{R*} %{rpath*} %{defsym*} \
34 %{shared:-Bshareable %{h*} %{soname*}} \
35 %{!shared: \
36 %{!static: \
37 %{rdynamic:-export-dynamic} \
38 -dynamic-linker %(fbsd_dynamic_linker) } \
39 %{static:-Bstatic}} \
40 %{symbolic:-Bsymbolic}"
43 /************************[ Target stuff ]***********************************/
45 /* Define the actual types of some ANSI-mandated types.
46 Needs to agree with <machine/ansi.h>. GCC defaults come from c-decl.c,
47 c-common.c, and config/<arch>/<arch>.h. */
49 /* arm.h gets this wrong for FreeBSD. We use the GCC defaults instead. */
51 #undef SIZE_TYPE
52 #define SIZE_TYPE "unsigned int"
54 #undef PTRDIFF_TYPE
55 #define PTRDIFF_TYPE "int"
57 /* We use the GCC defaults here. */
58 #undef WCHAR_TYPE
60 #undef WCHAR_TYPE_SIZE
61 #define WCHAR_TYPE_SIZE 32
63 #undef SUBTARGET_CPU_DEFAULT
64 #define SUBTARGET_CPU_DEFAULT TARGET_CPU_strongarm
66 #undef TARGET_VERSION
67 #define TARGET_VERSION fprintf (stderr, " (FreeBSD/StrongARM ELF)");