00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #define TARGET_VERSION fprintf (stderr, " (i386 BeOS/ELF)");
00024
00025
00026 #undef PREFERRED_DEBUGGING_TYPE
00027 #define PREFERRED_DEBUGGING_TYPE DWARF2_DEBUG
00028
00029
00030
00031 #undef DEFAULT_PCC_STRUCT_RETURN
00032 #define DEFAULT_PCC_STRUCT_RETURN 1
00033
00034 #undef ASM_COMMENT_START
00035 #define ASM_COMMENT_START " #"
00036
00037 #undef DBX_REGISTER_NUMBER
00038 #define DBX_REGISTER_NUMBER(n) \
00039 (TARGET_64BIT ? dbx64_register_map[n] : svr4_dbx_register_map[n])
00040
00041
00042
00043
00044 #undef MCOUNT_NAME
00045 #define MCOUNT_NAME "mcount"
00046
00047 #undef SIZE_TYPE
00048 #define SIZE_TYPE "long unsigned int"
00049
00050 #undef PTRDIFF_TYPE
00051 #define PTRDIFF_TYPE "long int"
00052
00053 #undef WCHAR_TYPE
00054 #define WCHAR_TYPE "short unsigned int"
00055
00056 #undef WCHAR_TYPE_SIZE
00057 #define WCHAR_TYPE_SIZE 16
00058
00059 #define TARGET_DECLSPEC 1
00060
00061 #define TARGET_OS_CPP_BUILTINS() \
00062 do \
00063 { \
00064 builtin_define ("__BEOS__"); \
00065 builtin_define ("__INTEL__"); \
00066 builtin_define ("_X86_"); \
00067 builtin_define ("__stdcall=__attribute__((__stdcall__))"); \
00068 builtin_define ("__cdecl=__attribute__((__cdecl__))"); \
00069 builtin_assert ("system=beos"); \
00070 if (flag_pic) \
00071 { \
00072 builtin_define ("__PIC__"); \
00073 builtin_define ("__pic__"); \
00074 } \
00075 } \
00076 while (0)
00077
00078
00079
00080
00081
00082 #undef CC1_SPEC
00083 #define CC1_SPEC "%{!no-fpic:%{!fno-pic:%{!fno-pie:%{!fpie:%{!fPIC:%{!fPIE:-fpic}}}}}} %{!Wmultichar: -Wno-multichar} %(cc1_cpu) %{profile:-p}"
00084
00085 #undef CC1PLUS_SPEC
00086 #define CC1PLUS_SPEC "%{!Wctor-dtor-privacy:-Wno-ctor-dtor-privacy}"
00087
00088
00089
00090
00091
00092
00093
00094
00095 #undef LINK_SPEC
00096 #define LINK_SPEC "%{!o*:-o %b} -m elf_i386_be -shared -Bsymbolic %{nostart:-e 0}"
00097
00098
00099
00100
00101 #undef LIB_SPEC
00102 #define LIB_SPEC "-lnet -lroot"
00103
00104
00105
00106
00107 #undef LIBGCC_SPEC
00108 #define LIBGCC_SPEC ""
00109
00110 #undef STARTFILE_SPEC
00111 #define STARTFILE_SPEC "crti.o%s crtbegin.o%s %{!nostart:start_dyn.o%s} init_term_dyn.o%s %{p:i386-mcount.o%s}"
00112
00113 #undef ENDFILE_SPEC
00114 #define ENDFILE_SPEC "crtend.o%s crtn.o%s"
00115
00116
00117
00118
00119
00120
00121 #define ASM_OUTPUT_ALIGNED_BSS(FILE, DECL, NAME, SIZE, ALIGN) \
00122 asm_output_aligned_bss (FILE, DECL, NAME, SIZE, ALIGN)
00123
00124
00125
00126
00127
00128
00129
00130 #ifdef HAVE_GAS_MAX_SKIP_P2ALIGN
00131 #define ASM_OUTPUT_MAX_SKIP_ALIGN(FILE,LOG,MAX_SKIP) \
00132 if ((LOG)!=0) \
00133 if ((MAX_SKIP)==0) fprintf ((FILE), "\t.p2align %d\n", (LOG)); \
00134 else fprintf ((FILE), "\t.p2align %d,,%d\n", (LOG), (MAX_SKIP))
00135 #endif
00136
00137
00138
00139
00140
00141
00142
00143 #ifndef CROSS_COMPILE
00144 #undef INCLUDE_DEFAULTS
00145 #define INCLUDE_DEFAULTS \
00146 { \
00147 { GPLUSPLUS_INCLUDE_DIR, "G++", 1, 1 },\
00148 { GCC_INCLUDE_DIR, "GCC", 0, 0 },\
00149 { TOOL_INCLUDE_DIR, "BINUTILS", 0, 1}, \
00150 { "/boot/develop/headers/be/add-ons/graphics", 0, 0, 0 },\
00151 { "/boot/develop/headers/be/devel", 0, 0, 0 },\
00152 { "/boot/develop/headers/be/translation", 0, 0, 0 },\
00153 { "/boot/develop/headers/be/mail", 0, 0, 0 },\
00154 { "/boot/develop/headers/gnu", 0, 0, 0 },\
00155 { "/boot/develop/headers/be/drivers", 0, 0, 0 },\
00156 { "/boot/develop/headers/be/opengl", 0, 0, 0 },\
00157 { "/boot/develop/headers/be/game", 0, 0, 0 },\
00158 { "/boot/develop/headers/be/support", 0, 0, 0 },\
00159 { "/boot/develop/headers/be/storage", 0, 0, 0 },\
00160 { "/boot/develop/headers/be/kernel", 0, 0, 0 },\
00161 { "/boot/develop/headers/be/net", 0, 0, 0 },\
00162 { "/boot/develop/headers/be/midi", 0, 0, 0 },\
00163 { "/boot/develop/headers/be/midi2", 0, 0, 0 },\
00164 { "/boot/develop/headers/be/media", 0, 0, 0 },\
00165 { "/boot/develop/headers/be/interface", 0, 0, 0 },\
00166 { "/boot/develop/headers/be/device", 0, 0, 0 },\
00167 { "/boot/develop/headers/be/app", 0, 0, 0 },\
00168 { "/boot/develop/headers/be/precompiled", 0, 0, 0 },\
00169 { "/boot/develop/headers/be/add-ons/input_server", 0, 0, 0 },\
00170 { "/boot/develop/headers/be/add-ons/net_server", 0, 0, 0 },\
00171 { "/boot/develop/headers/be/add-ons/screen_saver", 0, 0, 0 },\
00172 { "/boot/develop/headers/be/add-ons/tracker", 0, 0, 0 },\
00173 { "/boot/develop/headers/be/be_apps/Deskbar", 0, 0, 0 },\
00174 { "/boot/develop/headers/be/be_apps/NetPositive", 0, 0, 0 },\
00175 { "/boot/develop/headers/be/be_apps/Tracker", 0, 0, 0 },\
00176 { "/boot/develop/headers/be/drivers/tty", 0, 0, 0 },\
00177 { "/boot/develop/headers/be/net/netinet", 0, 0, 0 },\
00178 { "/boot/develop/headers/be/storage", 0, 0, 0 },\
00179 { "/boot/develop/headers/be", 0, 0, 0 },\
00180 { "/boot/develop/headers/cpp", 0, 0, 0 },\
00181 { "/boot/develop/headers/posix", 0, 0, 0 },\
00182 { "/boot/develop/headers", 0, 0, 0 }, \
00183 { 0, 0, 0, 0 } \
00184 }
00185 #else
00186 #undef INCLUDE_DEFAULTS
00187 #define INCLUDE_DEFAULTS \
00188 { \
00189 { GPLUSPLUS_INCLUDE_DIR, "G++", 1, 1 },\
00190 { GCC_INCLUDE_DIR, "GCC", 0, 0 },\
00191 { TOOL_INCLUDE_DIR, "BINUTILS", 0, 1}, \
00192 { CROSS_INCLUDE_DIR "/be/add-ons/graphics", 0, 0, 0 },\
00193 { CROSS_INCLUDE_DIR "/be/devel", 0, 0, 0 },\
00194 { CROSS_INCLUDE_DIR "/be/translation", 0, 0, 0 },\
00195 { CROSS_INCLUDE_DIR "/be/mail", 0, 0, 0 },\
00196 { CROSS_INCLUDE_DIR "/gnu", 0, 0, 0 },\
00197 { CROSS_INCLUDE_DIR "/be/drivers", 0, 0, 0 },\
00198 { CROSS_INCLUDE_DIR "/be/opengl", 0, 0, 0 },\
00199 { CROSS_INCLUDE_DIR "/be/game", 0, 0, 0 },\
00200 { CROSS_INCLUDE_DIR "/be/support", 0, 0, 0 },\
00201 { CROSS_INCLUDE_DIR "/be/storage", 0, 0, 0 },\
00202 { CROSS_INCLUDE_DIR "/be/kernel", 0, 0, 0 },\
00203 { CROSS_INCLUDE_DIR "/be/net", 0, 0, 0 },\
00204 { CROSS_INCLUDE_DIR "/be/midi", 0, 0, 0 },\
00205 { CROSS_INCLUDE_DIR "/be/midi2", 0, 0, 0 },\
00206 { CROSS_INCLUDE_DIR "/be/media", 0, 0, 0 },\
00207 { CROSS_INCLUDE_DIR "/be/interface", 0, 0, 0 },\
00208 { CROSS_INCLUDE_DIR "/be/device", 0, 0, 0 },\
00209 { CROSS_INCLUDE_DIR "/be/app", 0, 0, 0 },\
00210 { CROSS_INCLUDE_DIR "/be/precompiled", 0, 0, 0 },\
00211 { CROSS_INCLUDE_DIR "/be/add-ons/input_server", 0, 0, 0 },\
00212 { CROSS_INCLUDE_DIR "/be/add-ons/net_server", 0, 0, 0 },\
00213 { CROSS_INCLUDE_DIR "/be/add-ons/screen_saver", 0, 0, 0 },\
00214 { CROSS_INCLUDE_DIR "/be/add-ons/tracker", 0, 0, 0 },\
00215 { CROSS_INCLUDE_DIR "/be/be_apps/Deskbar", 0, 0, 0 },\
00216 { CROSS_INCLUDE_DIR "/be/be_apps/NetPositive", 0, 0, 0 },\
00217 { CROSS_INCLUDE_DIR "/be/be_apps/Tracker", 0, 0, 0 },\
00218 { CROSS_INCLUDE_DIR "/be/drivers/tty", 0, 0, 0 },\
00219 { CROSS_INCLUDE_DIR "/be/net/netinet", 0, 0, 0 },\
00220 { CROSS_INCLUDE_DIR "/be/storage", 0, 0, 0 },\
00221 { CROSS_INCLUDE_DIR "/be", 0, 0, 0 },\
00222 { CROSS_INCLUDE_DIR "/cpp", 0, 0, 0 },\
00223 { CROSS_INCLUDE_DIR "/posix", 0, 0, 0 },\
00224 { CROSS_INCLUDE_DIR , 0, 0, 0 }, \
00225 { 0, 0, 0, 0 } \
00226 }
00227 #endif
00228
00229
00230
00231 #define LIBRARY_PATH_ENV "BELIBRARIES"
00232
00233
00234 #define MATH_LIBRARY ""
00235
00236
00237 #define NO_IMPLICIT_EXTERN_C
00238
00239
00240 #define MULTIPLE_SYMBOL_SPACES 1