Article View: gnu.gcc.help
Article #41514GCC 2.7.2 on SCO OpenServer 5
From: Scott Michel
Date: Fri, 15 Mar 1996 00:00
Date: Fri, 15 Mar 1996 00:00
592 lines
20710 bytes
20710 bytes
Well, it never showed up on my server, so I can only assume that
my first post failed...
Find enclosed a patch file which creates a usable GCC compiler for
SCO OpenServer 5 (aka Everest). It's an initial port, and there may
be a need to tweak the defines a bit. I've not run into any bad problems
with it yet.
BTW: Unless history has changed or the earth stopped moving and I
didn't notice it, but DWARF still doesn't support C++ debugging, so
don't bother me with that administrivia.
The appropriate patches to GDB will follow in the next week or so,
assuming I weather exams well enough.
-scottm
--------------------------------------------------------------------------
Index: gcc/README.SCO
diff -c /dev/null gcc/README.SCO:2.2
*** /dev/null Tue Mar 12 18:14:29 1996
--- gcc/README.SCO Tue Mar 12 17:51:59 1996
***************
*** 0 ****
--- 1,51 ----
+ Notes on the SCO Everest/OpenServer 5 Implementation
+ --------------------------------------------------------------
+ Last Updated: by scottm@intime.com
+ ------------------------------------------------------------
+
+ The SCO Everest operating system, also known as OpenServer 5, comes with
+ two flavours of development system: COFF and ELF. The default, if you
+ don't specify anything to configure, is the COFF system.
+
+ "./configure i386-unknown-sco5coff"
+
+ This is the COFF generating configuration.
+
+ "./configure i386-unknown-sco5elf"
+
+ This is the ELF generating configuration.
+
+ Specific notes:
+
+ 1. The -X flags are supported: (the default is -Xc)
+
+ -Xa, -Xk, -Xt, -Xm, -Xc
+
+ 2. API bindings: (same as SCO's dev. kit, witout the '-a'. The default is
+ -xpg4plus)
+
+ -xpg4plus, -posix, -xpg4, -odt30
+
+ 3. You will get warnings from 'cc' when you bootstrap this compiler if
+ /etc/default/cc defines a '-X' flag. The bootstrap uses '-Xa'.
+ Ignore the warnings.
+
+ 4. You can emulate the '-b coff' and '-b elf' flags that the SCO cc supports.
+ You need to go to the /usr/local/lib/gcc-lib/ directory and create some
+ symbolic links. If you're installation is different, substitute the
+ appropriate directory name:
+
+ cd /usr/local/lib/gcc-lib # where compiler pieces live
+ ln -s i386-unknown-sco5coff coff # "-b coff"
+ ln -s i386-unknown-sco5elf elf # "-b elf"
+
+ 5. If you decide to build both environments, make sure you 'make clean'
+ first before you run configure. And remember to tell configure what
+ you're building (i386-unknown-sco5{coff|elf})!
+
+ 6. As a last resort, you can e-mail me for some help. Bear in mind that
+ as of this date (12 Mar 96) I am a UCLA CS graduate student. I have no
+ life and no time. :-) But I do consulting at reasonable rates if it's
+ that much of an emergency.
+
+ -scottm
Index: gcc/config.guess
diff -c gcc/config.guess:1.1.1.3 gcc/config.guess:2.2
*** gcc/config.guess:1.1.1.3 Fri Jan 26 13:07:13 1996
--- gcc/config.guess Fri Mar 8 11:04:56 1996
***************
*** 362,374 ****
fi
exit 0 ;;
i[34]86:*:3.2:*)
if test -f /usr/options/cb.name; then
UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
echo ${UNAME_MACHINE}-unknown-isc$UNAME_REL
elif /bin/uname -X 2>/dev/null >/dev/null ; then
UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')`
(/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486
! echo ${UNAME_MACHINE}-unknown-sco$UNAME_REL
else
echo ${UNAME_MACHINE}-unknown-sysv32
fi
--- 362,385 ----
fi
exit 0 ;;
i[34]86:*:3.2:*)
+
if test -f /usr/options/cb.name; then
UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
echo ${UNAME_MACHINE}-unknown-isc$UNAME_REL
elif /bin/uname -X 2>/dev/null >/dev/null ; then
UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')`
(/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486
! case $UNAME_REL in
! 3.2v5*)
! # Scott Michel (scottm@intime.com) added this damage.
! # At this point, the default is sco5elf but at some
! # point, sco5elf will be the default.
! echo ${UNAME_MACHINE}-unknown-sco5coff
! ;;
! *)
! echo ${UNAME_MACHINE}-unknown-sco$UNAME_REL
! ;;
! esac
else
echo ${UNAME_MACHINE}-unknown-sysv32
fi
Index: gcc/config.sub
diff -c gcc/config.sub:1.1.1.4 gcc/config.sub:2.1
*** gcc/config.sub:1.1.1.4 Mon Jul 10 13:02:33 1995
--- gcc/config.sub Fri Mar 8 11:04:57 1996
***************
*** 92,97 ****
--- 92,113 ----
os=-sco3.2v4
basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
;;
+ -sco5)
+ os=-sco5coff
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
+ ;;
+ -sco5elf)
+ os=-sco5elf
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
+ ;;
+ -sco5coff)
+ os=-sco5coff
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
+ ;;
+ -sco3.2v5*)
+ os=-sco5coff
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
+ ;;
-sco3.2.[4-9]*)
os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
Index: gcc/configure
diff -c gcc/configure:1.1.1.5 gcc/configure:2.3
*** gcc/configure:1.1.1.5 Fri Jan 26 13:07:14 1996
--- gcc/configure Fri Mar 8 11:04:58 1996
***************
*** 1065,1070 ****
--- 1065,1104 ----
extra_parts="crtbegin.o crtend.o"
fi
;;
+ i[345]86-*-sco5elf) # 80386 running SCO Everest/OpenServer
+ cpu_type=i386
+ xm_file=i386/xm-sco5.h
+ xmake_file=i386/x-sco5elf
+ fixincludes=fixinc.sco
+ broken_install=yes
+ install_headers_dir=install-headers-cpio
+ if [ x$stabs = xyes ]
+ then
+ echo "Sorry, stabs not supported."
+ exit 1
+ else
+ tm_file=i386/sco5-elf.h
+ tmake_file=i386/t-crtstuff
+ extra_parts="crtbegin.o crtend.o"
+ fi
+ ;;
+ i[345]86-*-sco5coff) # 80386 running SCO Everest/OpenServer
+ cpu_type=i386
+ xm_file=i386/xm-sco5.h
+ xmake_file=i386/x-sco5coff
+ fixincludes=fixinc.sco
+ broken_install=yes
+ install_headers_dir=install-headers-cpio
+ if [ x$stabs = xyes ]
+ then
+ echo "Sorry, stabs not supported."
+ exit 1
+ else
+ tm_file=i386/sco5-coff.h
+ tmake_file=i386/t-crtstuff
+ extra_parts="crtbegin.o crtend.o"
+ fi
+ ;;
i[345]86-*-sco*) # 80386 running SCO system
cpu_type=i386
xm_file=i386/xm-sco.h
Index: gcc/config/i386/sco5-coff.h
diff -c /dev/null gcc/config/i386/sco5-coff.h:2.1
*** /dev/null Tue Mar 12 18:16:41 1996
--- gcc/config/i386/sco5-coff.h Fri Mar 8 11:05:04 1996
***************
*** 0 ****
--- 1,129 ----
+ /* Definitions for Intel 386 running SCO Unix System V 3.2 Version 4.
+ Written by Chip Salzenberg.
+ Copyright (C) 1992, 1994 Free Software Foundation, Inc.
+
+ 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. */
+
+
+ /* Mostly it's like earlier SCO UNIX. */
+
+ #include "i386/sco.h"
+
+ /* Use crt1.o as a startup file and crtn.o as a closing file. */
+
+ #undef STARTFILE_SPEC
+ #define STARTFILE_SPEC \
+ "%{xpg4plus:-Rxpg4plus,COFF} \
+ %{!xpg4plus: \
+ %{posix:-Rposix,COFF} \
+ %{!posix: \
+ %{xpg4:-Rxpg4,COFF} \
+ %{!xpg4: \
+ %{ods30:-Rods30,COFF} \
+ %{!ods30:-Rxpg4plus,COFF}}}} \
+ %{Xk:-Rk} \
+ %{!Xk: \
+ %{Xt:-Rt} \
+ %{!Xt: \
+ %{Xa:-Ra} \
+ %{!Xa: \
+ %{Xm:-Rm} \
+ %{!Xm: \
+ %{Xc:-Rc} \
+ %{!Xc:-Ra}}}}} \
+ %{qp:-Y P,/usr/ccs/lib/libp:/lib/libp:/usr/lib/libp:/usr/ccs/lib:/lib:/usr/lib /usr/ccs/lib/mcrt.o} \
+ %{!qp: \
+ %{ql:-Y P,/usr/ccs/lib:/lib:/usr/lib /usr/ccs/lib/pcrt1.o} \
+ %{!ql: \
+ %{p:-Y P,/usr/ccs/lib/libp:/lib/libp:/usr/lib/libp:/usr/ccs/lib:/lib:/usr/lib /usr/ccs/lib/mcrt.o} \
+ %{!p:-Y P,/usr/ccs/lib:/lib:/usr/lib /usr/ccs/lib/crt1.o}}} \
+ %{Xk:/usr/ccs/lib/values-Xk.o} \
+ %{!Xk: \
+ %{Xt:/usr/ccs/lib/values-Xt.o} \
+ %{!Xt: \
+ %{Xa:/usr/ccs/lib/values-Xa.o} \
+ %{!Xa: \
+ %{Xm:/usr/ccs/lib/values-Xm.o} \
+ %{!Xm: \
+ %{Xc:/usr/ccs/lib/values-Xc.o} \
+ %{!Xc:/usr/ccs/lib/values-Xa.o}}}}} \
+ crtbegin.o%s"
+
+ #undef ENDFILE_SPEC
+ #define ENDFILE_SPEC \
+ "crtend.o%s"
+
+ /* Library spec. */
+
+ #undef LIB_SPEC
+ #define LIB_SPEC \
+ "%{qp:-P} \
+ %{!qp:%{ql:-lprof -lld -P} \
+ %{!ql:%{p:-P}}} \
+ -lcrypt -lgen -lc"
+
+ /* Macros, macros everywhere:
+ Specify predefined symbols in preprocessor. */
+
+ #undef CPP_PREDEFINES
+ #define CPP_PREDEFINES \
+ "-Asystem(unix) -Asystem(svr3) -Acpu(i386) -Amachine(i386)"
+
+ /* Note that the default compile environment is the same as "-Xa" */
+
+ #undef CPP_PREDEFINES
+ #define CPP_PREDEFINES \
+ "-Asystem(unix) -Asystem(svr3) -Acpu(i386) -Amachine(i386) -D__i386 \
+ -D__unix -D_SCO_DS=1 -D_M_I386 -D_M_XENIX -D_M_UNIX"
+
+ /* Note that the default compile environment is the same as "-Xa" */
+
+ #undef CPP_SPEC
+ #define CPP_SPEC \
+ "%{Xk:-traditional -D_KR -D_NO_PROTOTYPE -D_SCO_C_DIALECT=4} \
+ %{!Xk: \
+ %{Xt:-traditional -D_KR -D_SCO_C_DIALECT=2} \
+ %{!Xt: \
+ %{Xa:-D_SCO_C_DIALECT=1 -D__STDC__=1} \
+ %{!Xa: \
+ %{Xm:-D_SCO_C_DIALECT=5 -D__STDC__=1} \
+ %{!Xm: \
+ %{Xc:-pedantic -D_SCO_C_DIALECT=3 -D__STDC__=1} \
+ %{!Xc:-D_SCO_DIALECT=1 -D_SCO_COFF -D__STDC__=1}}}}} \
+ %{posix:-D_POSIX_SOURCE=1 -D_POSIX_C_SOURCE=2 -D_STRICT_NAMES -D_M_COFF \
+ -D_SCO_COFF} \
+ %{!posix: \
+ %{ansi:-D_STRICT_ANSI -D_STRICT_NAMES -D_M_COFF -D_SCO_COFF} \
+ %{!ansi: \
+ %{xpg4:-D_XOPEN_SOURCE=1 -D_STRICT_NAMES -D_SCO_XPG_VERS=4 -D_M_COFF \
+ -D_SCO_COFF} \
+ %{!xpg4: \
+ %{ods30:-D_SCO_ODS_30 -DM_I86 -DM_I86SM \
+ -DM_SDATA -DM_STEXT -DM_BITFIELDS -DM_INTERNAT -DM_SYS5 \
+ -DM_SYSV -DM_SYSIII -DM_WORDSWAP -D_M_I86 -D_M_I86SM \
+ -D_M_SDATA -D_M_STEXT -D_M_BITFIELDS -D_M_INTERNAT -D_M_SYS5 \
+ -D_M_SYSV -D_M_SYSIII -D_M_WORDSWAP -Di386 -Dunix -DM_I386 \
+ -DM_UNIX -DM_XENIX -D_M_COFF -D_SCO_COFF} \
+ %{!ods30:-D_STRICT_NAMES -D_M_I86 -D_M_I86SM -D_M_SDATA \
+ -D_M_STEXT -D_M_BITFIELDS -D_M_INTERNAT -D_M_SYS5 -D_M_SYSV \
+ -D_M_SYSIII -D_M_WORDSWAP -Di386 -Dunix -DM_I386 -DM_UNIX \
+ -DM_XENIX -D_SCO_XPG_VERS=4 -D_M_COFF -D_SCO_COFF}}}} \
+ "
+
+ /* The system headers are C++-aware. */
+ #define NO_IMPLICIT_EXTERN_C
Index: gcc/config/i386/sco5-elf.h
diff -c /dev/null gcc/config/i386/sco5-elf.h:2.1
*** /dev/null Tue Mar 12 18:16:41 1996
--- gcc/config/i386/sco5-elf.h Tue Mar 12 17:52:09 1996
***************
*** 0 ****
--- 1,135 ----
+ /* Definitions for Intel 386 running SCO Unix System V 3.2 Version 4.
+ Written by Chip Salzenberg.
+ Copyright (C) 1992, 1994 Free Software Foundation, Inc.
+
+ 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. */
+
+ /* This is now the UnixWare component... */
+
+ #include "i386/sysv4.h"
+
+ /* SCO OpenServer 5 supports both COFF and ELF. We select ELF here,
+ but in sco5-coff.h, the default COFF is used. */
+
+ #ifndef OBJECT_FORMAT_ELF
+ #define OBJECT_FORMAT_ELF
+ #endif
+
+ #undef ASM_SPEC
+ #define ASM_SPEC \
+ "-b elf"
+
+ #undef LINK_SPEC
+ #define LINK_SPEC "%{v*: -v} \
+ %{dy} %{dn} \
+ %{h*} %{z*} \
+ %{static:-dn -Bstatic} \
+ %{shared:-G -dy} \
+ %{symbolic:-Bsymbolic -G -dy} \
+ %{G:-G} \
+ %{!dy: %{!dn: %{!static: %{!shared: %{!symbolic: \
+ %{noshrlib: -dn } %{pic-none: -dn } \
+ %{!noshrlib: %{!pic-none: -dy}}}}}}} \
+ %{xpg4plus:-Rxpg4plus,elf} \
+ %{posix:-Rposix,elf} \
+ %{xpg4:-Rxpg4,elf} \
+ %{ods30:-Rods30,elf} \
+ %{!xpg4plus: %{!posix: %{!xpg4: %{!ods30:-Rxpg4plus,elf}}}} \
+ %{Xk:-Rk} \
+ %{Xt:-Rt} \
+ %{Xa:-Ra} \
+ %{Xm:-Rm} \
+ %{Xc:-Rc} \
+ %{!Xk: %{!Xt: %{!Xa: %{!Xm: %{!Xc:-Ra}}}}}";
+
+ /* Use crt1.o as a startup file, but *do not* use crtn.o as the closing file.
+ crtn.o disrupts the crtbegin.o code. (Actually, there's some hair there
+ in the .init section where GCC does a pushl $0, and this is what screws
+ the pooch if there are no global constructors. Could be a bug in SCO's
+ linker too when it arranges the segments.) */
+
+ #undef STARTFILE_SPEC
+ #define STARTFILE_SPEC \
+ "%{qp:-Y P,/usr/ccs/lib/libp:/lib/libp:/usr/lib/libp:/usr/ccs/lib:/lib:/usr/lib /usr/ccs/lib/mcrt.o} \
+ %{ql:-Y P,/usr/ccs/lib:/lib:/usr/lib /usr/ccs/lib/pcrt1.o} \
+ %{p:-Y P,/usr/ccs/lib/libp:/lib/libp:/usr/lib/libp:/usr/ccs/lib:/lib:/usr/lib /usr/ccs/lib/mcrt.o} \
+ %{!qp: %{!ql: %{!p:-Y P,/usr/ccs/lib:/lib:/usr/lib /usr/ccs/lib/crt1.o}}} \
+ %{Xk:/usr/ccs/lib/values-Xk.o} \
+ %{Xt:/usr/ccs/lib/values-Xt.o} \
+ %{Xa:/usr/ccs/lib/values-Xa.o} \
+ %{Xm:/usr/ccs/lib/values-Xm.o} \
+ %{Xc:/usr/ccs/lib/values-Xc.o} \
+ %{!Xk: %{!Xt: %{!Xa: %{!Xm: %{!Xc:/usr/ccs/lib/values-Xa.o}}}}} \
+ crtbegin.o%s"
+
+ #undef ENDFILE_SPEC
+ #define ENDFILE_SPEC \
+ "/usr/ccs/lib/crtn.o crtend.o%s"
+
+ /* Library spec. */
+
+ #undef LIB_SPEC
+ #define LIB_SPEC \
+ "%{qp:-P} \
+ %{!qp:%{ql:-lprof -lld -P} \
+ %{!ql:%{p:-P}}} \
+ -lcrypt -lgen -lc"
+
+ /* Macros, macros everywhere:
+ Specify predefined symbols in preprocessor. */
+
+ #undef CPP_PREDEFINES
+ #define CPP_PREDEFINES \
+ "-Asystem(unix) -Asystem(svr3) -Acpu(i386) -Amachine(i386) -D__i386 \
+ -D__unix -D_SCO_DS=1 -D_M_I386 -D_M_XENIX -D_M_UNIX"
+
+ /* Note: The default compile environment is the same as "-Xa -a xpg4plus"
+ offered by SCO's cc compiler. */
+
+ #undef CPP_SPEC
+ #define CPP_SPEC \
+ "%{Xk:-traditional -D_KR -D_NO_PROTOTYPE -D_SCO_C_DIALECT=4} \
+ %{!Xk: \
+ %{Xt:-traditional -D_KR -D_SCO_C_DIALECT=2} \
+ %{!Xt: \
+ %{Xa:-D_SCO_C_DIALECT=1 -D__STDC__=1} \
+ %{!Xa: \
+ %{Xm:-D_SCO_C_DIALECT=5 -D__STDC__=1} \
+ %{!Xm: \
+ %{Xc:-pedantic -D_SCO_C_DIALECT=3 -D__STDC__=1} \
+ %{!Xc:-D_SCO_DIALECT=1 -D__STDC__=1}}}}} \
+ %{posix:-D_POSIX_SOURCE=1 -D_POSIX_C_SOURCE=2 -D_STRICT_NAMES -D_SCO_ELF} \
+ %{!posix: \
+ %{ansi:-D_STRICT_ANSI -D_STRICT_NAMES -D_SCO_ELF} \
+ %{!ansi: \
+ %{xpg4:-D_XOPEN_SOURCE=1 -D_STRICT_NAMES -D_SCO_XPG_VERS=4 \
+ -D_SCO_ELF} \
+ %{!xpg4: \
+ %{ods30:-D_SCO_ODS_30 -DM_I86 -DM_I86SM \
+ -DM_SDATA -DM_STEXT -DM_BITFIELDS -DM_INTERNAT -DM_SYS5 \
+ -DM_SYSV -DM_SYSIII -DM_WORDSWAP -D_M_I86 -D_M_I86SM \
+ -D_M_SDATA -D_M_STEXT -D_M_BITFIELDS -D_M_INTERNAT -D_M_SYS5 \
+ -D_M_SYSV -D_M_SYSIII -D_M_WORDSWAP -Di386 -Dunix -DM_I386 \
+ -DM_UNIX -DM_XENIX -D_SCO_ELF} \
+ %{!ods30:-D_STRICT_NAMES -D_M_I86 -D_M_I86SM -D_M_SDATA \
+ -D_M_STEXT -D_M_BITFIELDS -D_M_INTERNAT -D_M_SYS5 -D_M_SYSV \
+ -D_M_SYSIII -D_M_WORDSWAP -Di386 -Dunix -DM_I386 -DM_UNIX \
+ -DM_XENIX -D_SCO_XPG_VERS=4 -D_SCO_ELF}}}} \
+ "
+ /* The system headers are C++-aware. */
+ #define NO_IMPLICIT_EXTERN_C
Index: gcc/config/i386/x-sco5coff
diff -c /dev/null gcc/config/i386/x-sco5coff:2.1
*** /dev/null Tue Mar 12 18:16:45 1996
--- gcc/config/i386/x-sco5coff Fri Mar 8 11:05:05 1996
***************
*** 0 ****
--- 1,10 ----
+ RANLIB = :
+ RANLIB_TEST = false
+ CC = cc $(CCFLAGS)
+ OLDCC = cc $(CCFLAGS)
+ CCFLAGS = -b coff -Xa -a xpg4plus -Dunix -Di386 -DM_UNIX -DM_I386 -DNULL=0
+ CCLIBFLAGS =
+ CLIB = -lmalloc -lPW
+
+ # See all the declarations.
+ # FIXPROTO_DEFINES = -D_XOPEN_SOURCE
Index: gcc/config/i386/x-sco5elf
diff -c /dev/null gcc/config/i386/x-sco5elf:2.1
*** /dev/null Tue Mar 12 18:16:45 1996
--- gcc/config/i386/x-sco5elf Tue Mar 12 17:52:10 1996
***************
*** 0 ****
--- 1,10 ----
+ RANLIB = :
+ RANLIB_TEST = false
+ CC = cc $(CCFLAGS)
+ OLDCC = cc $(CCFLAGS)
+ CCFLAGS = -b elf -Xa -a xpg4plus -Dunix -Di386 -DM_UNIX -DM_I386 -DNULL=0
+ CCLIBFLAGS =
+ CLIB = -lmalloc -lPW
+
+ # See all the declarations.
+ # FIXPROTO_DEFINES = -D_XOPEN_SOURCE
Index: gcc/config/i386/xm-sco5.h
diff -c /dev/null gcc/config/i386/xm-sco5.h:2.1
*** /dev/null Tue Mar 12 18:16:46 1996
--- gcc/config/i386/xm-sco5.h Fri Mar 8 11:05:06 1996
***************
*** 0 ****
--- 1,22 ----
+ /* Configuration for GCC for Intel i386 running SCO. */
+
+ #include "i386/xm-sysv3.h"
+
+ /* On SCO 3.2.1, ldexp rejects values outside [0.5, 1). */
+
+ #define BROKEN_LDEXP
+
+ /* Big buffers improve performance. */
+
+ #define IO_BUFFER_SIZE (0x8000 - 1024)
+
+ /* SCO has a very small ARG_MAX. */
+ #define SMALL_ARG_MAX
+
+ #ifndef __GNUC__
+ /* The SCO compiler gets it wrong, and treats enumerated bitfields
+ as signed quantities, making it impossible to use an 8-bit enum
+ for compiling GNU C++. */
+ #define ONLY_INT_FIELDS 1
+ #define CODE_FIELD_BUG 1
+ #endif
Index: gcc/ginclude/stdarg.h
diff -c gcc/ginclude/stdarg.h:1.1.1.3 gcc/ginclude/stdarg.h:2.2
*** gcc/ginclude/stdarg.h:1.1.1.3 Fri Jan 26 13:12:53 1996
--- gcc/ginclude/stdarg.h Fri Mar 8 11:05:11 1996
***************
*** 135,140 ****
--- 135,145 ----
typedef __gnuc_va_list va_list;
#endif /* _VA_LIST_ */
#else /* not __svr4__ */
+ #ifdef _SCO_DIALECT
+ /* With OpenServer 5, which can be identified at least by the _SCO_DIALECT
+ macro, *don't* define _VA_LIST. Just give a definition for va_list. */
+ typedef __gnuc_va_list va_list;
+ #else
/* The macro _VA_LIST_ is the same thing used by this file in Ultrix.
But on BSD NET2 we must not test or define or undef it.
***************
*** 166,171 ****
--- 171,177 ----
#endif /* not _VA_LIST_, except on certain systems */
+ #endif /* not _SCO_DIALECT */
#endif /* not __svr4__ */
#endif /* _STDARG_H */
Index: gcc/ginclude/varargs.h
diff -c gcc/ginclude/varargs.h:1.1.1.3 gcc/ginclude/varargs.h:2.2
*** gcc/ginclude/varargs.h:1.1.1.3 Fri Jan 26 13:12:56 1996
--- gcc/ginclude/varargs.h Fri Mar 8 11:05:12 1996
***************
*** 147,152 ****
--- 147,157 ----
#endif /* _VA_LIST_ */
#else /* not __svr4__ */
+ #ifdef _SCO_DIALECT
+ /* With OpenServer 5, which can be identified at least by the _SCO_DIALECT
+ macro, *don't* define _VA_LIST. Just give a definition for va_list. */
+ typedef __gnuc_va_list va_list;
+ #else
/* The macro _VA_LIST_ is the same thing used by this file in Ultrix.
But on BSD NET2 we must not test or define or undef it.
***************
*** 181,186 ****
--- 186,192 ----
#endif /* not _VA_LIST_, except on certain systems */
+ #endif /* not _SCO_DIALECT */
#endif /* not __svr4__ */
/* The next BSD release (if there is one) wants this symbol to be
Technical Details
Message-ID:
<4iaccs$ss@delphi.cs.ucla.edu>Path:
arc1-ca.pugleaf.net!unknown!not-for-mailShow Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 11318c,c51be8eb842625da,start X-Google-Attributes: gid11318c,public From: scottm@pelican.cs.ucla.edu (Scott Michel) Subject: GCC 2.7.2 on SCO OpenServer 5 Date: 1996/03/15 Message-ID: <4iaccs$ss@delphi.cs.ucla.edu> X-Deja-AN: 142665355 organization: UCLA CS Dept newsgroups: gnu.gcc.help