[gnu.gcc.bug] Prime EXL port of GNU C compiler

HECKER@fed1.prime.com (01/20/89)

I just wanted to inform you all that I've just completed porting
version 1.32 of gcc to the Prime EXL (a 80386-based system running
System V.3.1).  The port went absolutely smoothly: the only changes
required were the standard ones to `Makefile' for the System V stuff,
plus a minor bug in referring to the make variable `mandir' in the
make install step.  I have enclosed a shar file below containing the
EXL diffs and my `README-EXL' file.

The GNU C compiler is a beautiful piece of work (especially for beta
software!).  My congratulations to all the developers.

Frank Hecker
Prime Federal Operations
hecker@fed1.prime.com

P.S. As a side note, I used the patch utility to update my copy of
the gcc source from version 1.31 to 1.32 using the 1.32 diff file.
Unfortunately I encountered a problem in my version of the patch
program that I had to fix before patch would apply the 1.32 patches
correctly.  (I'm now seeing a completely different patch problem in
applying the 1.32 diffs for g++ to 1.31.)

My version of the patch program is 2.0, dating from August of 1986.
The patch.c file has a version line as follows:

char rcsid[] =
	"$Header: patch.c,v 2.0 86/09/17 15:37:32 lwall Exp $";

Can anyone tell me where I can pick up a newer, better version of
patch (or patches to patch) via anonymous ftp?  I'm sure the problems
I'm encountering with patch have long since been fixed, and I have no
desire to spend time debugging patch when I could be porting more GNU
software.

===============================================================================
#! /bin/sh
# This is a shell archive.  Remove anything before this line, then unpack
# it by saving it into a file and typing "sh file".  To overwrite existing
# files, type "sh file -c".  You can also feed this as standard input via
# unshar, or by typing "sh <file", e.g..  If this archive is complete, you
# will see the following message at the end:
#		"End of shell archive."
# Contents:  DIFFS-EXL README-EXL
# Wrapped by hecker@fops1 on Thu Jan 19 17:23:29 1989
PATH=/bin:/usr/bin:/usr/ucb ; export PATH
if test -f 'DIFFS-EXL' -a "${1}" != "-c" ; then
  echo shar: Will not clobber existing file \"'DIFFS-EXL'\"
else
echo shar: Extracting \"'DIFFS-EXL'\" \(2197 characters\)
sed "s/^X//" >'DIFFS-EXL' <<'END_OF_FILE'
X*** gcc/Makefile-bk	Wed Jan 18 12:29:21 1989
X--- gcc/Makefile	Wed Jan 18 18:44:15 1989
X***************
X*** 29,33 ****
X  SHELL = /bin/sh
X  # on sysV, define this as cp.
X! INSTALL = install
X
X  # Directory in which to put the executable for the command `gcc'
X--- 29,33 ----
X  SHELL = /bin/sh
X  # on sysV, define this as cp.
X! INSTALL = cp
X
X  # Directory in which to put the executable for the command `gcc'
X***************
X*** 36,40 ****
X  libdir = $(prefix)/usr/local/lib
X  # Directory in which to put man pages.
X! mandir = $(prefix)/usr/local/man/man1
X
X  # These are what you would need on HPUX:
X--- 36,40 ----
X  libdir = $(prefix)/usr/local/lib
X  # Directory in which to put man pages.
X! mandir = $(prefix)/usr/man/man1
X
X  # These are what you would need on HPUX:
X***************
X*** 58,62 ****
X
X  # If your system has alloca() in /lib/libPW.a, un-comment the following line:
X! # CLIB= -lPW
X
X  # If your system's malloc() routine fails for any reason (as it does on
X--- 58,62 ----
X
X  # If your system has alloca() in /lib/libPW.a, un-comment the following line:
X! CLIB= -lPW
X
X  # If your system's malloc() routine fails for any reason (as it does on
X***************
X*** 74,82 ****
X  # Dependency on obstack, alloca, malloc or whatever library facilities
X  # are not installed in the system libraries.
X! LIBDEPS= $(OBSTACK) $(ALLOCA) $(MALLOC)
X
X  # How to link with both our special library facilities
X  # and the system's installed libraries.
X! LIBS = $(OBSTACK) $(ALLOCA) $(MALLOC) $(CLIB)
X
X  DIR = ../gcc
X--- 74,82 ----
X  # Dependency on obstack, alloca, malloc or whatever library facilities
X  # are not installed in the system libraries.
X! LIBDEPS= $(OBSTACK)
X
X  # How to link with both our special library facilities
X  # and the system's installed libraries.
X! LIBS = $(OBSTACK) $(CLIB)
X
X  DIR = ../gcc
X***************
X*** 442,446 ****
X  	cd $(libdir)/gcc-include; rm -f $(USER_H)
X  	cp $(USER_H) $(libdir)/gcc-include
X! 	cp gcc.1 mandir
X
X  # do make -f ../gcc/Makefile maketest DIR=../gcc
X--- 442,446 ----
X  	cd $(libdir)/gcc-include; rm -f $(USER_H)
X  	cp $(USER_H) $(libdir)/gcc-include
X! 	cp gcc.1 $(mandir)
X
X  # do make -f ../gcc/Makefile maketest DIR=../gcc
END_OF_FILE
if test 2197 -ne `wc -c <'DIFFS-EXL'`; then
    echo shar: \"'DIFFS-EXL'\" unpacked with wrong size!
fi
# end of 'DIFFS-EXL'
fi
if test -f 'README-EXL' -a "${1}" != "-c" ; then
  echo shar: Will not clobber existing file \"'README-EXL'\"
else
echo shar: Extracting \"'README-EXL'\" \(5870 characters\)
sed "s/^X//" >'README-EXL' <<'END_OF_FILE'
X		 GNU C Compiler, Version 1.32 (Beta)
X	       Prime EXL Installation and Release Notes
X
X			     Frank Hecker
X			  Federal Operations
X			 Prime Computer, Inc.
X
X			   January 19, 1989
X
X
XIntroduction
X
XThis directory contains version 1.32 of the GNU C compiler (gcc),
Xported to the Prime EXL Series of 80386-based UNIX supermicro systems
Xrunning AT&T System V/386.  The GNU C compiler implements the ANSI
Xdraft proposed standard for the C language.
X
XNote that although the GNU C compiler is technically still in beta
Xrelease, it is quite stable and can be used with little or no
Xproblems.
X
XThe GNU C compiler is part of the GNU family of software from the Free
XSoftware Foundation, a non-profit organization dedicated to developing
Xa complete integrated software system called GNU (``GNU's not UNIX'')
Xthat will be upward compatible with UNIX.  The GNU software collection
Xalso includes the GNU Emacs editor, the GNU C++ compiler, and
Xcompatible replacements for such utilities as awk, make, tar, etc.
X
XAlthough all GNU software is made available at no charge, satisfied
Xusers can express their appreciation by making a contribution to:
X
X	Free Software Foundation
X	675 Massachusetts Avenue
X	Cambridge MA 02139
X
XDonations to the Free Software Foundation are fully tax-deductible and
Xare used to support the continuing development and distribution of
Xfree software.
X
X
XInstallation
X
XThis version of the GNU C compiler requires a Prime EXL Series system
Xwith the Development Tool Kit installed.  The executables were built
Xusing a beta version of Prime's implementation of AT&T System V/386,
XRelease 3.1; they may need to be rebuilt for earlier or later versions
Xof the EXL operating system.
X
XTo install the GNU C compiler on the Prime EXL please perform the
Xfollowing steps.
X
XFirst, load the distribution tape:
X
X	# cd /usr/local/src		(or some other suitable directory)
X	# cpio -icvdumB gcc </dev/rct/c0d5
X
X(Note that the GNU C compiler may be accompanied by other software on
Xthe same tape.)
X
XSecond, if necessary create the additional directories required for
Xthe installation:
X
X	# mkdir -p /usr/local/bin	(if not already present)
X	# mkdir -p /usr/local/lib	(if not already present)
X	# mkdir -p /usr/man/man1	(if not already present)
X
XFinally, install the compiler:
X
X	# cd gcc
X	# make install
X
XThe GNU C compiler is then invoked by the command `gcc', assuming that
Xthe directory /usr/local/bin is in your PATH variable.
X
X
XChanges for the Prime EXL
X
XI originally obtained version 1.31 of the GNU C compiler as a complete
Xdistribution.  I then obtained version 1.32 in the form of a patch
Xfile to be applied to the version 1.31 files using the patch utility
Xas shown in the shell script `PATCH-1.32'.  The file `PATCH-1.32.OUT'
Xcontains the output of that patch operation.
X
XIn addition to the patch run itself, I deleted the file `xm-gnx.h'
X(replaced by `xm-genix.h'), regenerated the on-line info files
X(`cpp.info', `gcc.info', and `gcc.info-*'), and recreated the `TAGS'
Xfile.
X
XSince version 1.32 of the GNU C compiler already includes the changes
Xnecessary to generate 80386 code, only two minor changes were
Xnecessary to port the compiler to the EXL, all of them in the make
Xfile (`Makefile').  First, `Makefile' was changed to enable System
XV-specific flags.  Second, the make variable `mandir' was referenced
Xincorrectly in the statement that installs the man pages for gcc.
X
XThe exact changes made to `Makefile' can be found in the file
X`DIFFS-EXL'.
X
X
XDocumentation
X
XFor basic information about invoking the GNU C compiler please see the
Xfile `gcc.txt'; this is an already-formatted version of the man pages
X(`gcc.1').  However note that it may be out of date with respect to
Xthe on-line documentation (see below).
X
XPlease see the files `README' and `INSTALL' for more information about
Xrebuilding the GNU C compiler from source code.  The files `PROBLEMS'
Xand `PROJECTS' also contain information of interest.
X
XComplete documentation for the GNU C compiler and its preprocessor is
Xincluded for on-line perusal using the `info' command in GNU Emacs.
XTo install the documentation files please do the following:
X
X	# cp gcc.info gcc.info-* /usr/local/emacs/info
X	# cp cpp.info /usr/local/emacs/info
X
X(assuming that /usr/local/emacs is the run-time directory for GNU
XEmacs).
X
XYou must also add the following lines to the bottom of the file `dir'
Xin /usr/local/emacs/info:
X
X* GCC: (gcc.info).  Use and internals of the GNU C compiler.
X
X* CPP: (cpp.info).  GNU C preprocessor.
X
XFor more information about using the GNU Emacs info facility please
Xsee the GNU Emacs documentation or the file `README-EXL' included with
Xthe Prime EXL port of GNU Emacs.
X
X
XRemaining Problems and Issues
X
XNote that the GNU C compiler with the `-g' option will generate code
Xfor either the sdb source-level debugger or the GNU source-level
Xdebugger gdb.  However the gdb debugger has not yet been ported to the
XPrime EXL.
X
XAlso note that when compiling existing code previously compiled by the
XAT&T C compiler (cc) you may get compilation errors unless you specify
Xthe `-traditional' option to the GNU C compiler.  This is due to
Xlanguage differences between traditional C compilers and compilers
Xthat implement the draft ANSI C standard.
X
X
XProblem Reporting
X
XPlease direct any problems or questions regarding the Prime EXL port
Xof the GNU C compiler to the following address(es):
X
X	U.S. mail:	Frank Hecker
X			Prime Computer, Inc.
X			1375 Piccard Dr.
X			Rockville MD  20850
X
X	Phone:		1-301-948-7010 x308
X
X	E-mail:		hecker@fed1.prime.com
X
XHowever, please note that the GNU C compiler is not an official Prime
Xproduct and is not supported or warrantied in any way whatsoever by
Xmyself, Prime Computer, Inc., or the Free Software Foundation.  It may
Xbe freely redistributed within Prime and to third parties under the
Xterms of the GNU CC general public license; see the file `COPYING' for
Xmore details.
END_OF_FILE
if test 5870 -ne `wc -c <'README-EXL'`; then
    echo shar: \"'README-EXL'\" unpacked with wrong size!
fi
# end of 'README-EXL'
fi
echo shar: End of shell archive.
exit 0