gnu.h revision 132718
1130803Smarcel/* Configuration common to all targets running the GNU system. */ 2130803Smarcel 3130803Smarcel/* Provide GCC options for standard feature-test macros. */ 4130803Smarcel#undef CPP_SPEC 5130803Smarcel#define CPP_SPEC "%{posix:-D_POSIX_SOURCE} %{bsd:-D_BSD_SOURCE}" 6130803Smarcel 7130803Smarcel/* Default C library spec. Use -lbsd-compat for gcc -bsd. */ 8130803Smarcel#undef LIB_SPEC 9130803Smarcel#define LIB_SPEC "%{bsd:-lbsd-compat} %{!p:%{!pg:-lc}}%{p:-lc_p}%{pg:-lc_p}" 10130803Smarcel 11130803Smarcel/* Standard include directory. In GNU, "/usr" is a four-letter word. */ 12130803Smarcel#undef STANDARD_INCLUDE_DIR 13130803Smarcel#define STANDARD_INCLUDE_DIR "/include" 14130803Smarcel 15130803Smarcel/* Implicit library calls should use memcpy, not bcopy, etc. */ 16130803Smarcel#undef TARGET_MEM_FUNCTIONS 17130803Smarcel#define TARGET_MEM_FUNCTIONS 18130803Smarcel 19130803Smarcel/* The system headers under GNU are C++-aware. */ 20130803Smarcel#define NO_IMPLICIT_EXTERN_C 21130803Smarcel 22130803Smarcel#define HURD_TARGET_OS_CPP_BUILTINS() \ 23130803Smarcel do { \ 24130803Smarcel builtin_define ("__gnu_hurd__"); \ 25130803Smarcel builtin_define ("__GNU__"); \ 26130803Smarcel builtin_define_std ("unix"); \ 27130803Smarcel builtin_define_std ("MACH"); \ 28130803Smarcel builtin_assert ("system=gnu"); \ 29130803Smarcel builtin_assert ("system=mach"); \ 30130803Smarcel builtin_assert ("system=unix"); \ 31130803Smarcel builtin_assert ("system=posix"); \ 32130803Smarcel } while (0) 33130803Smarcel