OSDN Git Service

Add NIOS2 support. Code from SourceyG++.
[pf3gnuchains/gcc-fork.git] / gcc / config / nios2 / linux.h
1 /* Definitions of target support for Altera Nios II systems
2    running GNU/Linux with ELF format.
3    Copyright (C) 2012 Free Software Foundation, Inc.
4    Contributed by Mentor Graphics, Inc.
5
6    This file is part of GCC.
7
8    GCC is free software; you can redistribute it and/or modify it
9    under the terms of the GNU General Public License as published
10    by the Free Software Foundation; either version 3, or (at your
11    option) any later version.
12
13    GCC is distributed in the hope that it will be useful, but WITHOUT
14    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
15    or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public
16    License for more details.
17
18    You should have received a copy of the GNU General Public License
19    along with GCC; see the file COPYING3.  If not see
20    <http://www.gnu.org/licenses/>.  */
21
22 #undef LIB_SPEC
23 #define LIB_SPEC "-lc \
24  %{pthread:-lpthread}"
25
26 #undef STARTFILE_SPEC
27 #define STARTFILE_SPEC \
28 "%{!shared: crt1.o%s} \
29  crti.o%s %{static:crtbeginT.o%s;shared|pie:crtbeginS.o%s;:crtbegin.o%s}"
30
31 #undef ENDFILE_SPEC
32 #define ENDFILE_SPEC \
33 "%{shared|pie:crtendS.o%s;:crtend.o%s} crtn.o%s"
34
35 #define TARGET_OS_CPP_BUILTINS()                \
36   do                                            \
37     {                                           \
38       GNU_USER_TARGET_OS_CPP_BUILTINS();           \
39     }                                           \
40   while (0)
41
42 #undef SYSROOT_SUFFIX_SPEC
43 #define SYSROOT_SUFFIX_SPEC \
44   "%{EB:/EB}"
45
46 #undef LINK_SPEC
47 #define LINK_SPEC LINK_SPEC_ENDIAN \
48   " %{shared:-shared} \
49     %{static:-Bstatic} \
50     %{rdynamic:-export-dynamic}"
51
52 /* This toolchain implements the ABI for Linux Systems documented in the
53    Nios II Processor Reference Handbook.  */
54 #define TARGET_LINUX_ABI 1
55