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