This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Add support for Interix version 3 on x86
- From: kenner at vlsi1 dot ultra dot nyu dot edu (Richard Kenner)
- To: gcc-patches at gcc dot gnu dot org
- Date: Wed, 28 Nov 01 16:36:59 EST
- Subject: Add support for Interix version 3 on x86
Wed Nov 28 14:51:23 2001 Douglas B. Rupp <rupp@gnat.com>
* config.gcc (i[34567]86-*-interix3*): New case.
* config/x-interix3, config/interix.h, config/i386-i386-interix3.h:
New files.
*** config.gcc 2001/11/25 11:30:17 1.121
--- config.gcc 2001/11/28 19:22:26
*************** i[34567]86-*-uwin*)
*** 1399,1402 ****
--- 1399,1416 ----
exeext=.exe
;;
+ i[34567]86-*-interix3*)
+ tm_file="i386/i386-interix.h i386/i386-interix3.h interix.h interix3.h"
+ xm_file="i386/xm-i386-interix.h xm-interix.h"
+ xm_defines=POSIX
+ tmake_file="i386/t-interix"
+ extra_objs=interix.o
+ xmake_file="x-interix x-interix3"
+ if test x$enable_threads = xyes ; then
+ thread_file='posix'
+ fi
+ if test x$stabs = xyes ; then
+ tm_file="${tm_file} dbxcoff.h"
+ fi
+ ;;
i[34567]86-*-interix*)
tm_file="i386/i386-interix.h interix.h"
*** /dev/null Sun Nov 18 15:56:36 2001
--- config/x-interix3 Wed Nov 28 14:08:40 2001
***************
*** 0 ****
--- 1,8 ----
+ # These are host overrides for Interix 3.x
+
+ # Interix 3.x has a single rooted file system, so LIBGCC2_INCLUDES
+ # SYSTEM_HEADER_DIR no longer need to be set
+
+ LIBGCC2_INCLUDES =
+
+ SYSTEM_HEADER_DIR =
*** /dev/null Sun Nov 18 15:56:36 2001
--- config/interix3.h Wed Nov 28 14:12:43 2001
***************
*** 0 ****
--- 1,35 ----
+ /* Operating system specific defines to be used when targeting GCC for
+ Interix version 3.
+ Copyright (C) 2001 Free Software Foundation, Inc.
+ Contributed by Douglas B. Rupp (rupp@gnat.com)
+
+ This file is part of GNU CC.
+
+ GNU CC 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)
+ any later version.
+
+ GNU CC is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ 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 GNU CC; see the file COPYING. If not, write to
+ the Free Software Foundation, 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA. */
+
+ /* Interix 3.x has a single rooted file system and properly named
+ libraries, so LIB_SPEC can be simplified */
+
+ #undef LIB_SPEC
+ #define LIB_SPEC "\
+ %{!shared:%{!dynamic:-lc -lpsxdll \
+ }} \
+ %{!G:%{!dynamic:-lc -lpsxdll \
+ }} \
+ %{dynamic:-lc -lpsxdll \
+ } \
+ %{v}"
+
*** /dev/null Sun Nov 18 15:56:36 2001
--- config/i386/i386-interix3.h Wed Nov 28 14:15:50 2001
***************
*** 0 ****
--- 1,32 ----
+ /* Target definitions for GNU compiler for Intel 80386 running Interix V3.
+ Copyright (C) 2001 Free Software Foundation, Inc.
+ Contributed by Douglas B. Rupp (rupp@gnat.com)
+
+ This file is part of GNU CC.
+
+ GNU CC 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)
+ any later version.
+
+ GNU CC is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ 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 GNU CC; see the file COPYING. If not, write to
+ the Free Software Foundation, 59 Temple Place - Suite 330,
+ Boston, MA 02111-1307, USA. */
+
+ #undef CPP_SPEC
+ #define CPP_SPEC "\
+ %{!.S: -D__LANGUAGE_C__ -D__LANGUAGE_C %{!ansi:-DLANGUAGE_C}} \
+ %{.S: -D__LANGUAGE_ASSEMBLY__ -D__LANGUAGE_ASSEMBLY %{!ansi:-DLANGUAGE_ASSEMBLY}} \
+ %{.cc: -D__LANGUAGE_C_PLUS_PLUS__ -D__LANGUAGE_C_PLUS_PLUS -D__cplusplus} \
+ %{.cxx: -D__LANGUAGE_C_PLUS_PLUS__ -D__LANGUAGE_C_PLUS_PLUS -D__cplusplus} \
+ %{.C: -D__LANGUAGE_C_PLUS_PLUS__ -D__LANGUAGE_C_PLUS_PLUS -D__cplusplus} \
+ %{.m: -D__LANGUAGE_OBJECTIVE_C__ -D__LANGUAGE_OBJECTIVE_C} \
+ %(cpp_cpu) \
+ %{posix:-D_POSIX_SOURCE}"
+