🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: gnu.gcc.help
Article #41483

GCC 2.7.2 on SCO OpenServer 5

#41483
From: Scott Michel
Date: Wed, 20 Mar 1996 00:00
595 lines
21002 bytes
Although you can compile and use the SCO OpenDesktop 3.0 configuration,
I've tweaked the GCC configuration code to support both the COFF and
ELF formats under Everest (aka OpenServer 5). I realize there are some
of us who really like to have the latest and greatest compiler. If you
look very closely at the compiler options for SCO's cc (and the Intel
bundled icc), they look really similar to GCC's. It may just be
conincidental, or maybe GCC does offer a nicer set of command line
options.

Apparently, someone might already have done this, but after searching
the Web and some archives, I couldn't find anything.

Enjoy!

-scottm

(Yes, GDB will have some patches to it too to support both COFF and ELF
binaries on SCO OS-5. I'll probably get it up to the net RSN.)
--------------------------------------------------------------------------

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: <gnusenet4i7918$mmk@delphi.cs.ucla.edu>
Path: arc1-ca.pugleaf.net!unknown!not-for-mail

Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit
X-Google-Thread: 11318c,703f6b758a00d6e9,start
X-Google-Attributes: gid11318c,public
From: scottm@oahu.cs.ucla.edu (Scott Michel)
Subject: GCC 2.7.2 on SCO OpenServer 5
Date: 1996/03/20
Message-ID: <gnusenet4i7918$mmk@delphi.cs.ucla.edu>
X-Deja-AN: 144103187
distribution: world
to: gnu-gcc-announce@cis.ohio-state.edu
followup-to: gnu.gcc.help,gnu.gcc.help
organization: UCLA CS Dept
newsgroups: gnu.gcc.help,gnu.gcc.help