diff options
Diffstat (limited to 'atari/Makefile.st')
-rw-r--r-- | atari/Makefile.st | 183 |
1 files changed, 111 insertions, 72 deletions
diff --git a/atari/Makefile.st b/atari/Makefile.st index ca00b466..20664a48 100644 --- a/atari/Makefile.st +++ b/atari/Makefile.st @@ -9,7 +9,7 @@ # (like bash). If this is not the case you will have to edit various # targets or perform some actions by hand. # -# Copyright (C) 1986, 1988-1995 the Free Software Foundation, Inc. +# Copyright (C) 1986, 1988-1996 the Free Software Foundation, Inc. # # This file is part of GAWK, the GNU implementation of the # AWK Programming Language. @@ -29,23 +29,29 @@ # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA +MAKEINFO = makeinfo --no-split srcdir = . # native compiler with freshly compiled gawk.ttp to fix awklib +GAWK = gawk.ttp CC = gcc -GAWK=../gawk.ttp + # cross-compiler and gawk already installed on the system (any awk will do) -# CC = cgcc # GAWK = gawk +# CC = cgcc + # WIDTH and EXT have to be both defined or both undefined # WIDTH = -mshort -DINT_IS_16BIT # EXT = 16 + OFLAGS = -O2 -Wall -fomit-frame-pointer $(WIDTH) LDFLAGS = $(WIDTH) YACC = bison -y -INSTALL = cp -p +# xstrip -k in target gawk.ttp removes all symbols but _stksize +# allowing for stack size manipulations without recompiling (with fixstk) +INSTALL = xstrip -k ; cp -p INSTALL_PROGRAM = ${INSTALL} #INSTALL_DATA = ${INSTALL} -m 644 INSTALL_DATA = ${INSTALL} @@ -60,14 +66,15 @@ prefix = /usr/local binprefix = manprefix = -bindir = $(exec_prefix)/bin -libdir = $(exec_prefix)/lib +bindir = ${exec_prefix}/bin +libdir = ${exec_prefix}/lib manexta = l -mandir = $(prefix)/man$(manexta) +mandir = ${prefix}/man/man$(manexta) manext = .$(manexta) -infodir = $(prefix)/info -datadir = $(prefix)/lib/awk -libexecdir = $(prefix)/libexec/awk +infodir = ${prefix}/info +#datadir = ${prefix}/share/awk +datadir = ${prefix}/lib/awk +libexecdir = ${exec_prefix}/lib/awk #DEFPATH = ".:$(datadir)" # datadir is passed to the next Makefile level and through sed @@ -76,27 +83,42 @@ libexecdir = $(prefix)/libexec/awk DEFPATH = ".,c:\\lib\\awk,c:\\gnu\\lib\\awk" SHELL = /bin/sh -CFLAGS = $(OFLAGS) -DGAWK -I. -I$(srcdir) -DHAVE_CONFIG_H -MFLAGS = "CC=$(CC)" "CFLAGS=$(CFLAGS) $(LDFLAGS)" GAWK=$(GAWK) \ - PWCAT=pwcat.ttp GRCAT=grcat.ttp GCOM='{sub(/\":\"/, "\",\""); print}' \ - "INSTALL_PROGRAM=$(INSTALL)" "INSTALL_DATA=$(INSTALL)" \ +SHELL = /bin/sh +#CFLAGS = -g -O +CFLAGS = $(OFLAGS) +COMPFLAGS = $(CFLAGS) -DGAWK -I. -I$(srcdir) -DHAVE_CONFIG_H + +MFLAGS = "CC=$(CC)" \ + "CFLAGS=$(CFLAGS)" \ + GAWK=../$(GAWK) \ + AWK=awk \ + PWCAT=pwcat.ttp GRCAT=grcat.ttp \ + "GCOM='{sub(/\":\"/, \"\\\",\\\"\"); print}'" \ + "COMPFLAGS=$(COMPFLAGS)" \ + "LDFLAGS=$(LDFLAGS)" \ + "INSTALL=$(INSTALL)" \ + "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \ + "INSTALL_DATA=$(INSTALL_DATA)" \ "bindir=$(bindir)" \ "libdir=$(libdir)" \ "mandir=$(mandir)" \ + "manext=$(manext)" \ "infodir=$(infodir)" \ "datadir=$(datadir)" \ "libexecdir=$(libexecdir)" +MMAKE = $(MAKE) $(MFLAGS) + # object files AWKOBJS = array.o builtin.o eval.o field.o gawkmisc.o io.o main.o \ missing.o msg.o node.o re.o version.o ALLOBJS = $(AWKOBJS) awktab.o -# GNUOBJS -# GNU stuff that gawk uses as library routines. -GNUOBJS= getopt.o getopt1.o regex.o dfa.o $(ALLOCA) +# LIBOBJS +# GNU and other stuff that gawk uses as library routines. +LIBOBJS= getopt.o getopt1.o regex.o dfa.o random.o $(ALLOCA) # source and documentation files SRC = array.c builtin.c eval.c field.c gawkmisc.c io.c main.c \ @@ -104,50 +126,62 @@ SRC = array.c builtin.c eval.c field.c gawkmisc.c io.c main.c \ ALLSRC= $(SRC) awktab.c -AWKSRC= awk.h awk.y $(ALLSRC) patchlevel.h protos.h +AWKSRC= awk.h awk.y custom.h $(ALLSRC) patchlevel.h protos.h random.h + +LIBSRC = alloca.c dfa.c dfa.h regex.c regex.h getopt.h getopt.c getopt1.c random.c -GNUSRC = alloca.c dfa.c dfa.h regex.c regex.h getopt.h getopt.c getopt1.c +COPIES = missing/system.c missing/tzset.c \ + missing/memcmp.c missing/memcpy.c missing/memset.c \ + missing/strncasecmp.c missing/strchr.c \ + missing/strerror.c missing/strtod.c \ + missing/strftime.c missing/strftime.3 -DOCS= doc/gawk.1.in doc/gawk.texi.in doc/texinfo.tex +DOCS= doc/gawk.1 doc/gawk.texi doc/texinfo.tex TEXFILES= doc/gawk.aux doc/gawk.cp doc/gawk.cps doc/gawk.fn doc/gawk.fns \ doc/gawk.ky doc/gawk.kys doc/gawk.pg doc/gawk.pgs doc/gawk.toc \ doc/gawk.tp doc/gawk.tps doc/gawk.vr doc/gawk.vrs +MISC = NEWS COPYING FUTURES Makefile.in PROBLEMS README PORTS POSIX.STD \ + configure configure.in acconfig.h configh.in ACKNOWLEDGMENT \ + ChangeLog INSTALL LIMITATIONS install-sh mkinstalldirs aclocal.m4 \ + stamp-h.in + +OTHERS= amiga doc pc atari vms README_d posix awklib + ALLDOC= doc/gawk.dvi $(TEXFILES) doc/gawk.info* +MAKEFILEIN = Makefile.in awklib/Makefile.in doc/Makefile.in test/Makefile.in + # Release of gawk. There can be no leading or trailing white space here! REL=3.0 -PROG=gawk.ttp # clear out suffixes list .SUFFIXES: .SUFFIXES: .c .o .c.o: - $(CC) -c $(CFLAGS) $< - -# rules to build $(PROG) -all: $(PROG) awklib/all + $(CC) -c $(COMPFLAGS) $< -alldoc: all doc/all +# rules to build gawk +all: $(GAWK) awklib/all -$(PROG): $(ALLOBJS) $(GNUOBJS) $(REOBJS) - $(CC) -o $@ $(LDFLAGS) $(ALLOBJS) $(GNUOBJS) $(REOBJS) $(LIBS) -# toglclr -fload $@ -# xstrip -k $@ +alldoc: all doc/all +$(GAWK): $(ALLOBJS) $(LIBOBJS) $(REOBJS) + $(CC) -o $(GAWK) $(COMPFLAGS) $(LDFLAGS) $(ALLOBJS) $(LIBOBJS) \ + $(REOBJS) $(LIBS) $(ALLOBJS): awk.h dfa.h regex.h config.h custom.h - -$(GNUOBJS): config.h custom.h + +$(LIBOBJS): config.h custom.h gawkmisc.o: $(srcdir)/atari/gawkmisc.atr - $(CC) -c -DDEFPATH='$(DEFPATH)' $(CFLAGS) $(srcdir)/$< + $(CC) -c $(COMPFLAGS) -DDEFPATH='$(DEFPATH)' $(srcdir)/gawkmisc.c # this rule needed or not - depending on your library missing.o io.o: - $(CC) -c $(CFLAGS) -DPIPES_SIMULATED $(srcdir)/$< + $(CC) -c $(COMPFLAGS) -DPIPES_SIMULATED $(srcdir)/$< # cheat with defines to force an inclusion of a proper code getopt.o: getopt.h @@ -157,6 +191,8 @@ getopt.o: getopt.h getopt1.o: getopt.h +random.o: random.h + main.o: patchlevel.h awktab.c: awk.y @@ -167,77 +203,80 @@ awktab.c: awk.y # VMS POSIX make won't apply the default .c.o rule to awktab.o for some reason awktab.o: awktab.c awk.h - $(CC) -c $(CFLAGS) $(srcdir)/awktab.c + $(CC) -c $(COMPFLAGS) $(srcdir)/awktab.c alloca.o: alloca.c -install: $(PROG) - $(INSTALL) $(PROG) $(bindir) && chmod 755 $(bindir)/$(PROG) - cd awklib && $(MAKE) $(MFLAGS) install -# cd doc && $(MAKE) $(MFLAGS) install +install: $(GAWK) info installdirs + $(INSTALL_PROGRAM) $(GAWK) $(bindir) && chmod 755 $(bindir)/$(GAWK) + cd awklib && $(MMAKE) install + +installdirs: mkinstalldirs + $(srcdir)/mkinstalldirs $(bindir) $(datadir) \ + $(libdir) $(infodir) $(mandir) $(libexecdir) installdoc: info - cd doc && $(MAKE) $(MFLAGS) install + cd doc && $(MMAKE) install # #installtotal: installdirs install installdoc - -installdirs: mkinstalldirs - $(srcdir)/mkinstalldirs $(bindir) $(datadir) \ - $(libdir) $(infodir) $(mandir) - uninstall: - rm -f $(bindir)/$(PROG) - cd awklib && $(MAKE) $(MFLAGS) uninstall -# cd doc && $(MAKE) $(MFLAGS) uninstall + rm -f $(bindir)/$(GAWK) + cd awklib && $(MMAKE) uninstall + -rmdir $(datadir) $(libexecdir) +# cd doc && $(MMAKE) uninstall clean: - rm -rf $(PROG) *.o core y.output - cd awklib && $(MAKE) $(MFLAGS) clean + rm -rf $(GAWK) *.o core y.output + cd awklib && $(MMAKE) clean # the following does not always make sense (when crosscompiling) # cd test && $(MAKE) $(MFLAGS) clean # cd doc && $(MAKE) $(MFLAGS) clean +local-distclean: + rm -f Makefile *.orig *.rej */*.orig */*.rej awk.output \ + gmon.out make.out config.h config.status config.cache \ + config.log stamp-h *~ -distclean: clean - rm -f Makefile *.orig *.rej */*.orig */*.rej awk.output gmon.out \ - make.out config.h config.status config.cache config.log stamp-h stamp-h.in - cd doc && $(MAKE) $(MFLAGS) distclean +distclean: clean local-distclean + cd doc && $(MMAKE) distclean + cd awklib && $(MMAKE) distclean + cd test && $(MMAKE) distclean -mostlyclean: clean - -maintainer-clean: distclean - @echo "This command is intended for maintainers to use;" - @echo "it deletes files that may require special tools to rebuild." - rm -f awktab.c - cd doc && $(MAKE) $(MFLAGS) maintainer-clean - cd test && $(MAKE) $(MFLAGS) maintainer-clean -# cd awklib && $(MAKE) $(MFLAGS) maintainer-clean +maintainer-clean: clean local-distclean + @echo "This command is intended for maintainers to use; it" + @echo "deletes files that may require special tools to rebuild." + rm -f awktab.c TAGS tags + cd doc && $(MMAKE) maintainer-clean +# cd test && $(MMAKE) maintainer-clean +# cd awklib && $(MMAKE) maintainer-clean clobber: maintainer-clean TAGS: etags $(AWKSRC) + +tags: ctags $(AWKSRC) -dvi: $(srcdir)/doc/gawk.texi.in - cd doc && $(MAKE) $(MFLAGS) dvi +dvi: $(srcdir)/doc/gawk.texi + cd doc && $(MMAKE) dvi -info: $(srcdir)/doc/gawk.texi.in - cd doc && $(MAKE) $(MFLAGS) info +info: $(srcdir)/doc/gawk.texi + cd doc && $(MMAKE) info doc/all: - cd doc && $(MAKE) $(MFLAGS) all + cd doc && $(MMAKE) all awklib/all: - cd awklib && $(MAKE) $(MFLAGS) all + cd awklib && $(MMAKE) all # to run this target you have to adjust test/Makefile quite a bit -# in order to make it paltable to your shell +# in order to make it palatable to your shell # -check: $(PROG) - cd test; $(MAKE) -k +check: $(GAWK) + cd test; $(MMAKE) -k test: check |