OSDN Git Service

(LIB_SPEC, LINK_SPEC): Add missing blanks.
[pf3gnuchains/gcc-fork.git] / gcc / config / lynx.h
1 /* Target independent definitions for LynxOS.  */
2
3 /* ??? The -C option may need to change to whatever option the GNU assembler
4    actually accepts.  */
5 #undef ASM_SPEC
6 #define ASM_SPEC "%{mcoff:-C}"
7
8 #undef CPP_SPEC
9 #define CPP_SPEC "%{mthreads:-D_MULTITHREADED} %{mposix:-D_POSIX_SOURCE} %{msystem-v:-I/usr/include_v}"
10
11 /* Provide required defaults for linker switches.  */
12 /* ??? The -k option may need to change to whatever option the GNU linker
13    actually accepts.  This is to produce COFF output.  */
14 /* ??? The -V option may need to change to whatever option the GNU linker
15    actually accepts.  This is to produce System-V magic numbers.  */
16 #undef LINK_SPEC
17 #define LINK_SPEC "-P1000 %{msystem-v:-V} %{mcoff:-k}"
18
19 #undef LIB_SPEC
20 #define LIB_SPEC "%{mthreads:-L/lib/thread/} %{msystem-v:-lc_v} %{!msystem-v:%{mposix:-lc_p} -lc}"
21
22 #undef STARTFILE_SPEC
23 #define STARTFILE_SPEC "%{p:%{mcoff:pinit1.o%s} %{!mcoff:pinit.o%s}} %{!p:%{msystem-v:%{mcoff:vinit1.o%s} %{!mcoff:vinit.o%s}} %{!msystem-v:%{mcoff:init1.o%s}%{!mcoff:init.o%s}}}"
24
25 #undef ENDFILE_SPEC
26 #define ENDFILE_SPEC "%{mcoff:initn.o%s} %{p:_etext.o%s}"
27
28 #undef SIZE_TYPE
29 #define SIZE_TYPE "unsigned int"
30
31 #undef WCHAR_TYPE
32 #define WCHAR_TYPE "int"
33
34 #undef PTRDIFF_TYPE
35 #define PTRDIFF_TYPE "long int"
36
37 /* We want to output DBX debugging information.  */
38
39 #define DBX_DEBUGGING_INFO
40 #define PREFERRED_DEBUGGING_TYPE DBX_DEBUG
41
42 /* We optionally want to be able to produce SDB debugging output so that
43    we can create debuggable SDB/coff files.  This won't be needed when
44    stabs-in-coff works.  */
45
46 #define SDB_DEBUGGING_INFO
47
48 /* Generate calls to memcpy, memcmp and memset.  */
49
50 #define TARGET_MEM_FUNCTIONS
51
52 /* Handle #pragma pack and sometimes #pragma weak.  */
53
54 #define HANDLE_SYSV_PRAGMA
55
56 #define TARGET_THREADS  (target_flags & MASK_THREADS)
57 #define MASK_THREADS    0x40000000
58
59 #define TARGET_POSIX    (target_flags & MASK_POSIX)
60 #define MASK_POSIX      0x20000000
61
62 #define TARGET_SYSTEM_V (target_flags & MASK_SYSTEM_V)
63 #define MASK_SYSTEM_V   0x10000000
64
65 #define TARGET_COFF     (target_flags & MASK_COFF)
66 #define MASK_COFF       0x08000000
67
68 #undef SUBTARGET_SWITCHES
69 #define SUBTARGET_SWITCHES \
70     {"threads",         MASK_THREADS},          \
71     {"posix",           MASK_POSIX},            \
72     {"system-v",        MASK_SYSTEM_V},         \
73     {"coff",            MASK_COFF},
74
75 #undef SUBTARGET_OVERRIDE_OPTIONS
76 #define SUBTARGET_OVERRIDE_OPTIONS \
77 { if (TARGET_SYSTEM_V && profile_flag)                  \
78     warning ("-msystem-v and -p are incompatible");             \
79   if (TARGET_SYSTEM_V && TARGET_THREADS)                        \
80     warning ("-msystem-v and -mthreads are incompatible"); }
81
82 /* Define this so that C++ destructors will use atexit.  */
83
84 #define HAVE_ATEXIT
85
86 /* This is defined only so that we can find the assembler.  Everything else
87    is in /bin.  */
88
89 #define MD_EXEC_PREFIX "/usr/local/lib/gcc-"
90
91 /* ??? This is needed because /bin/ld does not handle -L options correctly.
92    This can be deleted if GNU ld is being used.  */
93
94 #define LINK_LIBGCC_SPECIAL_1
95
96 /* The Lynx linker considers __main to be a possible entry point, so we
97    must use a different name.  */
98
99 #define NAME__MAIN "____main"
100 #define SYMBOL__MAIN ____main