OSDN Git Service

Backported from mainline
[pf3gnuchains/gcc-fork.git] / gcc / config / i386 / nto.h
index 1095a63..aed9773 100644 (file)
@@ -1,11 +1,11 @@
 /* Definitions for Intel 386 running QNX/Neutrino.
-   Copyright (C) 2002, 2003 Free Software Foundation, Inc.
+   Copyright (C) 2002, 2003, 2007, 2010, 2011 Free Software Foundation, Inc.
 
 This file is part of GCC.
 
 GCC is free software; you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2, or (at your option)
+the Free Software Foundation; either version 3, or (at your option)
 any later version.
 
 GCC is distributed in the hope that it will be useful,
@@ -14,25 +14,21 @@ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License
-along with GCC; see the file COPYING.  If not, write to
-the Free Software Foundation, 51 Franklin Street, Fifth Floor,
-Boston, MA 02110-1301, USA.  */
+along with GCC; see the file COPYING3.  If not see
+<http://www.gnu.org/licenses/>.  */
 
 #undef  DEFAULT_PCC_STRUCT_RETURN
 #define DEFAULT_PCC_STRUCT_RETURN 1
 
-#undef TARGET_VERSION
-#define TARGET_VERSION fprintf (stderr, " (QNX/Neutrino/i386 ELF)");
-
 #undef TARGET_OS_CPP_BUILTINS
 #define TARGET_OS_CPP_BUILTINS()               \
   do                                           \
     {                                          \
-        builtin_define_std ("__X86__");                \
-        builtin_define_std ("__QNXNTO__");     \
-        builtin_define_std ("__QNX__");                \
-        builtin_define_std ("__ELF__");                \
-        builtin_define_std ("__LITTLEENDIAN__");\
+        builtin_define ("__X86__");            \
+        builtin_define ("__QNXNTO__");         \
+        builtin_define ("__QNX__");            \
+        builtin_define ("__ELF__");            \
+        builtin_define ("__LITTLEENDIAN__");   \
         builtin_assert ("system=qnx");         \
         builtin_assert ("system=qnxnto");      \
         builtin_assert ("system=nto");         \
@@ -43,10 +39,18 @@ Boston, MA 02110-1301, USA.  */
 #undef THREAD_MODEL_SPEC
 #define THREAD_MODEL_SPEC "posix"
 
-#ifdef CROSS_COMPILE
+#ifdef CROSS_DIRECTORY_STRUCTURE
 #define SYSROOT_SUFFIX_SPEC "x86"
 #endif
 
+#ifndef CROSS_DIRECTORY_STRUCTURE
+#undef MD_EXEC_PREFIX
+#define MD_EXEC_PREFIX "/usr/ccs/bin/"
+
+#undef MD_STARTFILE_PREFIX
+#define MD_STARTFILE_PREFIX "/usr/ccs/lib/"
+#endif
+
 #undef STARTFILE_SPEC
 #define STARTFILE_SPEC \
 "%{!shared: \
@@ -65,7 +69,6 @@ crti.o%s \
 #undef LINK_SPEC
 #define LINK_SPEC \
   "%{h*} %{v:-V} \
-   %{b} \
    %{static:-dn -Bstatic} \
    %{shared:-G -dy -z text} \
    %{symbolic:-Bsymbolic -G -dy -z text} \
@@ -77,6 +80,11 @@ crti.o%s \
    -m i386nto \
    %{!shared: --dynamic-linker /usr/lib/ldqnx.so.2}"
 
+#undef LIB_SPEC
+#define LIB_SPEC "%{!shared:%{!symbolic:-lc}}"
+
+#undef  ASM_SPEC
+#define ASM_SPEC ""
 
 #undef SIZE_TYPE
 #define SIZE_TYPE "unsigned int"
@@ -92,3 +100,6 @@ crti.o%s \
 
 #define NO_IMPLICIT_EXTERN_C 1
 
+#define TARGET_POSIX_IO
+
+#undef DBX_REGISTER_NUMBER