diff options
Diffstat (limited to 'pc.d')
-rw-r--r-- | pc.d/Makefile.pc | 282 | ||||
-rw-r--r-- | pc.d/makefile.pc | 169 | ||||
-rw-r--r-- | pc.d/names.lnk | 16 |
3 files changed, 282 insertions, 185 deletions
diff --git a/pc.d/Makefile.pc b/pc.d/Makefile.pc new file mode 100644 index 00000000..11aaa026 --- /dev/null +++ b/pc.d/Makefile.pc @@ -0,0 +1,282 @@ +# Makefile for GNU Awk. +# +# Copyright (C) 1986, 1988, 1989 the Free Software Foundation, Inc. +# +# This file is part of GAWK, the GNU implementation of the +# AWK Progamming Language. +# +# GAWK 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 1, or (at your option) +# any later version. +# +# GAWK 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 GAWK; see the file COPYING. If not, write to +# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. + +# User tunable macros + +# CFLAGS: options to the C compiler +# +# -O optimize +# -g include dbx/sdb info +# -gg include gdb debugging info; only for GCC (deprecated) +# -pg include new (gmon) profiling info +# -p include old style profiling info (System V) +# +# To port GAWK, examine and adjust the following flags carefully. +# In addition, you will have to look at alloca below. +# The intent (eventual) is to not penalize the most-standard-conforming +# systems with a lot of #define's. +# +# -DBCOPY_MISSING - bcopy() et al. are missing; will replace +# with a #define'd memcpy() et al. -- use at +# your own risk (should really use a memmove()) +# -DSPRINTF_INT - sprintf() returns int (most USG systems) +# -DBLKSIZE_MISSING - st_blksize missing from stat() structure +# (most USG systems) +# -DBSDSTDIO - has a BSD internally-compatible stdio +# -DDOPRNT_MISSING - lacks doprnt() routine +# -DDUP2_MISSING - lacks dup2() system call (S5Rn, n < 4) +# -DGCVT_MISSING - lacks gcvt() routine +# -DGETOPT_MISSING - lacks getopt() routine +# -DMEMCMP_MISSING - lacks memcmp() routine +# -DMEMCPY_MISSING - lacks memcpy() routine +# -DMEMSET_MISSING - lacks memset() routine +# -DRANDOM_MISSING - lacks random() routine +# -DSTRCASE_MISSING - lacks strcasecmp() routine +# -DSTRCHR_MISSING - lacks strchr() and strrchr() routines +# -DSTRERROR_MISSING - lacks (ANSI C) strerror() routine +# -DSTRTOD_MISSING - lacks strtod() routine +# -DTMPNAM_MISSING - lacks or deficient tmpnam() routine +# -DVPRINTF_MISSING - lacks vprintf and associated routines +# -DSIGTYPE=int - signal routines return int (default void) + +# Sun running SunOS 4.x +# MISSING = -DSTRERROR_MISSING -DSTRCASE_MISSING + +# SGI Personal Iris (Sys V derived) +# MISSING = -DSPRINTF_INT -DBLKSIZE_MISSING -DSTRERROR_MISSING -DRANDOM_MISSING + +# VAX running Ultrix 3.x +# MISSING = -DSTRERROR_MISSING + +# A generic 4.2 BSD machine +# (eliminate GETOPT_MISSING for 4.3 release) +# (eliminate STRCASE_MISSING and TMPNAM_MISSING for Tahoe release) +# MISSING = -DBSDSTDIO -DMEMCMP_MISSING -DMEMCPY_MISSING -DMEMSET_MISSING \ +# -DSTRERROR_MISSING -DSTRTOD_MISSING -DVPRINTF_MISSING \ +# -DSTRCASE_MISSING -DTMPNAM_MISSING \ +# -DGETOPT_MISSING -DSTRCHR_MISSING -DSIGTYPE=int + +# On Amdahl UTS, a SysVr2-derived system +# MISSING = -DBCOPY_MISSING -DSPRINTF_INT -DRANDOM_MISSING -DSTRERROR_MISSING \ +# -DSTRCASE_MISSING -DDUP2_MISSING # -DBLKSIZE_MISSING ?????? + +# Comment out the next line if you don't have gcc. +# Also choose just one of -g and -O. +# CC= gcc +# for DOS +CC= cl +POPEN = popen.o + +# for DOS, most of the missing symbols are defined in MISSING.C in order to +# get around the command line length limitations +MISSING = -DSPRINTF_INT -DBLKSIZE_MISSING -DBCOPY_MISSING +LINKFLAGS= /MAP /CO /FAR /PACKC /NOE /NOIG /st:0x1800 + +# also give suffixes and explicit rule for DOS +.SUFFIXES : .o .c +.c.o: + $(CC) -c $(CFLAGS) -Ipc.d -W2 -AL -Fo$*.o $< + +OPTIMIZE= -Od -Zi +PROFILE= #-pg +DEBUG= #-DDEBUG #-DMEMDEBUG #-DFUNC_TRACE #-DMPROF +DEBUGGER= #-g -Bstatic +WARN= #-W -Wunused -Wimplicit -Wreturn-type -Wcomment # for gcc only + +# Parser to use on grammar -- if you don't have bison use the first one +#PARSER = yacc +PARSER = bison + +# ALLOCA +# Set equal to alloca.o if your system is S5 and you don't have +# alloca. Uncomment one of the rules below to make alloca.o from +# either alloca.s or alloca.c. +ALLOCA= #alloca.o + +# +# With the exception of the alloca rule referred to above, you shouldn't +# need to customize this file below this point. +# + +FLAGS= $(MISSING) $(DEBUG) +CFLAGS= $(FLAGS) $(DEBUGGER) $(PROFILE) $(OPTIMIZE) $(WARN) + +# object files +O1 = main.o eval.o builtin.o msg.o debug.o io.o field.o array.o node.o +O2 = version.o missing.o $(POPEN) + +AWKOBJS = $(O1) $(O2) + + +# for unix +# AWKTAB = awk.tab.o +# for dos +AWKTAB = awk_tab.o + + + +ALLOBJS = $(AWKOBJS) $(AWKTAB) + +# GNUOBJS +# GNU stuff that gawk uses as library routines. +GNUOBJS= regex.o $(ALLOCA) + +# source and documentation files +SRC = main.c eval.c builtin.c msg.c \ + debug.c io.c field.c array.c node.c missing.c + +ALLSRC= $(SRC) awk.tab.c + +AWKSRC= awk.h awk.y $(ALLSRC) version.sh patchlevel.h + +GNUSRC = alloca.c alloca.s regex.c regex.h + +COPIES = missing.d/dup2.c missing.d/gcvt.c missing.d/getopt.c \ + missing.d/memcmp.c missing.d/memcpy.c missing.d/memset.c \ + missing.d/random.c missing.d/strcase.c missing.d/strchr.c \ + missing.d/strerror.c missing.d/strtod.c missing.d/tmpnam.c \ + missing.d/vprintf.c + +SUPPORT = support/texindex.c support/texinfo.tex + +DOCS= gawk.1 gawk.texinfo + +INFOFILES= gawk-info gawk-info-1 gawk-info-2 gawk-info-3 gawk-info-4 \ + gawk-info-5 gawk-info-6 gawk.aux gawk.cp gawk.cps gawk.fn \ + gawk.fns gawk.ky gawk.kys gawk.pg gawk.pgs gawk.toc \ + gawk.tp gawk.tps gawk.vr gawk.vrs + +MISC = CHANGES COPYING FUTURES Makefile PROBLEMS README + +PCSTUFF= pc.d/Makefile.pc pc.d/popen.c pc.d/popen.h + +ALLDOC= gawk.dvi $(INFOFILES) + +ALLFILES= $(AWKSRC) $(GNUSRC) $(COPIES) $(MISC) $(DOCS) $(ALLDOC) $(PCSTUFF) $(SUPPORT) + +# Release of gawk. There can be no leading or trailing white space here! +REL=2.11 +# for unix +# GAWK = gawk +# for DOS +GAWK = gawk.exe +$(GAWK) : $(ALLOBJS) $(GNUOBJS) names.lnk + link @names.lnk + +#GNULIB = ..\lib\lgnu.lib +GNULIB = +names.lnk : makefile + echo $(O1) + > $@ + echo $(O2) + >> $@ + echo $(AWKTAB) + >> $@ + echo $(GNUOBJS) >> $@ + echo $(GAWK) >> $@ + echo gawk.map >> $@ + echo $(GNULIB) $(LINKFLAGS) >> $@ + +popen.o : pc.d\popen.c + $(CC) -c $(CFLAGS) -Ipc.d -W2 -AL -Fo$*.o pc.d\popen.c + +# rules to build gawk +#$(GAWK) : $(ALLOBJS) $(GNUOBJS) +# $(CC) -o gawk $(CFLAGS) $(ALLOBJS) $(GNUOBJS) -lm + +$(AWKOBJS): awk.h + +main.o: patchlevel.h + +#awk.tab.o: awk.h awk.tab.c +# +#awk.tab.c: awk.y +# $(PARSER) -v awk.y +# -mv -f y.tab.c awk.tab.c + +# for dos +awk_tab.o : awk.y awk.h + bison -y awk.y + $(CC) -c $(CFLAGS) -Ipc.d -W2 -AL -Fo$@ y_tab.c + @-rm y_tab.c + +version.c: version.sh + sh version.sh $(REL) > version.c + +# Alloca: uncomment this if your system (notably System V boxen) +# does not have alloca in /lib/libc.a +# +#alloca.o: alloca.s +# /lib/cpp < alloca.s | sed '/^#/d' > t.s +# as t.s -o alloca.o +# rm t.s + +# If your machine is not supported by the assembly version of alloca.s, +# use the C version instead. This uses the default rules to make alloca.o. +# +#alloca.o: alloca.c + +# auxiliary rules for release maintenance +lint: $(ALLSRC) + lint -hcbax $(FLAGS) $(ALLSRC) + +xref: + cxref -c $(FLAGS) $(ALLSRC) | grep -v ' /' >xref + +clean: + rm -f gawk *.o core awk.output awk.tab.c gmon.out make.out version.c + +clobber: clean + rm -f $(ALLDOC) gawk.log + +gawk.dvi: gawk.texinfo + tex gawk.texinfo ; texindex gawk.?? + tex gawk.texinfo ; texindex gawk.?? + tex gawk.texinfo + +$(INFOFILES): gawk.texinfo + makeinfo gawk.texinfo + +srcrelease: $(AWKSRC) $(GNUSRC) $(DOCS) $(MISC) $(COPIES) $(PCSTUFF) $(SUPPORT) + -mkdir gawk-$(REL) + cp -p $(AWKSRC) $(GNUSRC) $(DOCS) $(MISC) gawk-$(REL) + -mkdir gawk-$(REL)/missing.d + cp -p $(COPIES) gawk-$(REL)/missing.d + -mkdir gawk-$(REL)/pc.d + cp -p $(PCSTUFF) gawk-$(REL)/pc.d + -mkdir gawk-$(REL)/support + cp -p $(SUPPORT) gawk-$(REL)/support + tar -cf - gawk-$(REL) | compress > gawk-$(REL).tar.Z + +docrelease: $(ALLDOC) + -mkdir gawk-$(REL)-doc + cp -p $(INFOFILES) gawk.dvi gawk-$(REL)-doc + nroff -man gawk.1 > gawk-$(REL)-doc/gawk.1.pr + tar -cf - gawk-$(REL)-doc | compress > gawk-doc-$(REL).tar.Z + +psrelease: docrelease + -mkdir gawk-postscript + dvi2ps gawk.dvi > gawk-postscript/gawk.postscript + psroff -t -man gawk.1 > gawk-postscript/gawk.1.ps + tar -cf - gawk-postscript | compress > gawk.postscript.tar.Z + +release: srcrelease docrelease psrelease + rm -fr gawk-postscript gawk-$(REL) gawk-$(REL)-doc + +diff: + for i in RCS/*; do rcsdiff -c -b $$i > `basename $$i ,v`.diff; done diff --git a/pc.d/makefile.pc b/pc.d/makefile.pc deleted file mode 100644 index b812dad4..00000000 --- a/pc.d/makefile.pc +++ /dev/null @@ -1,169 +0,0 @@ -# Makefile for GNU Awk (for use with Microsoft C V5.1) -# -# Rewritten by Arnold Robbins, September 1988, March 1989. -# -# Copyright (C) 1986, 1988, 1989 the Free Software Foundation, Inc. -# -# This file is part of GAWK, the GNU implementation of the -# AWK Progamming Language. -# -# GAWK 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 1, or (at your option) -# any later version. -# -# GAWK 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 GAWK; see the file COPYING. If not, write to -# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. - -# CFLAGS: options to the C compiler -# -# -Ox optimize -# -Zi include debugging info (include /CO in LINKFLAFS) -# -AL compile in large model -# -AS compile in small model -# -# -DNOVPRINTF - system has no vprintf and associated routines -# -DHASDOPRNT - system needs version of vprintf et al. defined in awk5.c -# and has a BSD compatable doprnt() -# -DNOMEMCMP - system lacks memcmp() -# -DUSG - system is generic-ish System V. -# -CC=cl -LINKFLAGS= /E /FAR /PAC /NOE /NOI /st:0x1800 -#LINKFLAGS= /CO /NOE /NOI /st:0x1800 -OPTIMIZE= -AL -Ox -DEBUG=#-DDEBUG #-DFUNC_TRACE -DMEMDEBUG -DEBUGGER= #-Zi -PROFILE=#-pg -SYSV= -BSD=#-DHASDOPRNT -MEMCMP=#-DNOMEMCMP -VPRINTF=#-DNOVPRINTF - -FLAGS= $(OPTIMIZE) $(SYSV) $(DEBUG) $(BSD) $(MEMCMP) $(VPRINTF) -CFLAGS= $(FLAGS) $(DEBUGGER) $(PROFILE) -LDFLAGS= #-Bstatic - -SRC = awk1.c awk2.c awk3.c awk4.c awk5.c \ - awk6.c awk7.c awk8.c awk9.c regex.c version.c do_free.c awka.c - -PCSTUFF= makefile.pc names.lnk random.c - -AWKOBJS = awk1.obj awk2.obj awk3.obj awk4.obj awk5.obj awk6.obj awk7.obj \ - awk8.obj awk9.obj version.obj awka.obj # do_free.obj # used for MEMDEBUG -ALLOBJS = $(AWKOBJS) awk_tab.obj - -# Parser to use on grammar -- if you don't have bison use the first one -PARSER = yacc -PARSOUT=ytab.c -#PARSER = bison -y -#PARSOUT=y_tab.c -#PARSFLAGS=-v - -# S5OBJS -# Set equal to alloca.o if your system is S5 and you don't have -# alloca. Uncomment the rule below to actually make alloca.o. -S5OBJS= - -# GETOPT -# Set equal to getopt.o if you have a generic BSD system. The -# generic BSD getopt is reported to not work with gawk. The -# gnu getopt is supplied in gnu.getopt.c. The Public Domain -# getopt from AT&T is in att.getopt.c. Choose one of these, -# and rename it getopt.c. -GETOPT=getopt.obj - -# LIBOBJS -# Stuff that awk uses as library routines, but not in /lib/libc.a. -LIBOBJS= regex.obj random.obj $(S5OBJS) $(GETOPT) - -UPDATES = Makefile awk.h awk.y \ - $(SRC) regex.c regex.h - -INFOFILES= gawk-info gawk-info-1 gawk-info-2 gawk-info-3 gawk-info-4 \ - gawk-info-5 gawk.aux gawk.cp gawk.cps gawk.dvi gawk.fn gawk.fns \ - gawk.ky gawk.kys gawk.pg gawk.pgs gawk.texinfo gawk.toc \ - gawk.tp gawk.tps gawk.vr gawk.vrs - -# DOCS -# Documentation for users -# -DOCS=gawk.1 $(INFOFILES) - -# We don't distribute shar files, but they're useful for mailing. -SHARS = $(DOCS) COPYING README PROBLEMS $(UPDATES) awk.tab.c \ - alloca.s alloca.c att_getopt.c gnu_getopt.c $(PCSTUFF) - -gawk: $(ALLOBJS) $(LIBOBJS) - link @names.lnk,gawk.exe $(LINKFLAGS); - -# this kludge necessary because MSC 5.1 compiler bombs with -Oa or -Ol (where -# -Ox == "-Oailt -Gs") -regex.obj: regex.c - $(CC) -c -Oit -AL regex.c - -$(AWKOBJS): awk.h - -awk_tab.obj: awk.h awk_tab.c - -awk_tab.c: awk.y - @-del awk_tab.c - $(PARSER) $(PARSFLAGS) awk.y - -rename $(PARSOUT) awk_tab.c - -# Alloca: uncomment this if your system (notably System V boxen) -# does not have alloca in /lib/libc.a -# -#alloca.o: alloca.s -# /lib/cpp < alloca.s | sed '/^#/d' > t.s -# as t.s -o alloca.o -# rm t.s - -# If your machine is not supported by the assembly version of alloca.s, -# use the C version instead. This uses the default rules to make alloca.o. -# -#alloca.o: alloca.c - -lint: $(SRC) - lint -hcbax $(FLAGS) $(SRC) awk_tab.c - -clean: - rm -f gawk *.obj core awk.output gmon.out make.out #awk_tab.c - -awk.shar: $(SHARS) - shar -f awk -c $(SHARS) - -awk.tar: $(SHARS) - tar cvf awk.tar $(SHARS) - -updates.tar: $(UPDATES) - tar cvf gawk.tar $(UPDATES) - -awk.tar.Z: awk.tar - compress < awk.tar > awk.tar.Z - -doc: $(DOCS) - nroff -man $(DOCS) | col > $(DOCS).out - -# This command probably won't be useful to the rest of the world, but makes -# life much easier for me. -dist: awk.tar awk.tar.Z - -diff: - for i in RCS/*; do rcsdiff -c -b $$i > `basename $$i ,v`.diff; done - -update: $(UPDATES) - sendup $? - touch update - -release: $(SHARS) - -rm -fr gawk-dist - mkdir gawk-dist - cp $(SHARS) gawk-dist - tar -cvf - gawk-dist | compress > dist.tar.Z diff --git a/pc.d/names.lnk b/pc.d/names.lnk deleted file mode 100644 index 28e1a0d5..00000000 --- a/pc.d/names.lnk +++ /dev/null @@ -1,16 +0,0 @@ -awk1.obj+ -awk2.obj+ -awk3.obj+ -awk4.obj+ -awk5.obj+ -awk6.obj+ -awk7.obj+ -awk8.obj+ -awk9.obj+ -awka.obj+ -version.obj+ -awk_tab.obj+ -regex.obj+ -random.obj+ -setargv.obj+ -getopt.obj |