🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: gnu.gcc.help
Article #41514

GCC 2.7.2 on SCO OpenServer 5

#41514
From: Scott Michel
Date: Fri, 15 Mar 1996 00:00
592 lines
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-mail

Show 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