version 1.50, 1995/12/23 16:21:55
|
version 1.60, 1996/05/07 16:15:20
|
Line 26
|
Line 26
|
#To do: |
#To do: |
#use $(srcdir) to make compilation in a non-srcdir possible |
#use $(srcdir) to make compilation in a non-srcdir possible |
|
|
VERSION =0.1beta-pl1#gforth version |
VERSION =0.2.0#gforth version |
SHELL = /bin/sh |
SHELL = /bin/sh |
RM = rm |
RM = rm |
CP = cp |
CP = cp |
Line 58 GCCLDFLAGS = @GCCLDFLAGS@
|
Line 58 GCCLDFLAGS = @GCCLDFLAGS@
|
LDFLAGS = $(DEBUGFLAG) $(XLDFLAGS) $(GCCLDFLAGS) |
LDFLAGS = $(DEBUGFLAG) $(XLDFLAGS) $(GCCLDFLAGS) |
LDLIBS = @LIBS@ |
LDLIBS = @LIBS@ |
|
|
|
VPATH = @srcdir@ |
prefix = @prefix@ |
prefix = @prefix@ |
exec_prefix = @exec_prefix@ |
exec_prefix = @exec_prefix@ |
srcdir = @srcdir@ |
srcdir = @srcdir@ |
Line 67 datadir = $(prefix)/share
|
Line 68 datadir = $(prefix)/share
|
#read-only architecture-dependent non-ascii files |
#read-only architecture-dependent non-ascii files |
libdir = $(prefix)/lib |
libdir = $(prefix)/lib |
infodir = $(prefix)/info |
infodir = $(prefix)/info |
mandir = $(prefix)/man/man1 |
mandir = $(prefix)/man |
|
man1dir= $(mandir)/man1 |
|
man1ext= .1 |
INCLUDES = forth.h threading.h io.h io-dos.h |
#older emacses have their site-lisp in $(libdir)/emacs/ |
|
emacssitelispdir=$(datadir)/emacs/site-lisp |
KERN_SRC = main.fs search-order.fs cross.fs aliases.fs vars.fs add.fs \ |
|
errore.fs kernal.fs version.fs extend.fs tools.fs toolsext.fs |
INCLUDES = forth.h threading.h io.h io-dos.h config.h |
|
|
GFORTH_FI_SRC = startup.fs glocals.fs search-order.fs hash.fs float.fs \ |
KERN_SRC = \ |
debugging.fs environ.fs wordinfo.fs look.fs vt100.fs see.fs \ |
add.fs \ |
bufio.fs debug.fs history.fs vt100key.fs assert.fs source.fs \ |
aliases.fs \ |
blocks.fs struct.fs dumpimage.fs |
cross.fs \ |
|
errore.fs \ |
FORTH_SRC = anslocal.fs add.fs assert.fs ansi.fs answords.fs blocks.fs bufio.fs checkans.fs \ |
extend.fs \ |
code.fs colorize.fs cross.fs debug.fs debugging.fs doskey.fs ds2texi.fs \ |
kernal.fs \ |
dumpimage.fs environ.fs errore.fs etags.fs extend.fs filedump.fs \ |
main.fs \ |
float.fs glocals.fs glosgen.fs gray.fs hash.fs history.fs \ |
search-order.fs \ |
kernal.fs locals-test.fs look.fs main.fs makedoc.fs \ |
tools.fs \ |
|
toolsext.fs \ |
|
vars.fs \ |
|
version.fs |
|
|
|
GFORTH_FI_SRC = \ |
|
assert.fs \ |
|
blockedit.fb \ |
|
blocks.fs \ |
|
bufio.fs \ |
|
debug.fs \ |
|
debugging.fs \ |
|
dumpimage.fs \ |
|
environ.fs \ |
|
float.fs \ |
|
glocals.fs \ |
|
hash.fs \ |
|
history.fs \ |
|
look.fs \ |
|
search-order.fs \ |
|
see.fs \ |
|
source.fs \ |
|
startup.fs \ |
|
struct.fs \ |
|
stuff.fs \ |
|
tasker.fs \ |
|
termsize.fs \ |
|
vt100.fs \ |
|
vt100key.fs \ |
|
wordinfo.fs |
|
|
|
FORTH_SRC = $(KERN_SRC) $(GFORTH_FI_SRC) \ |
|
ansi.fs answords.fs \ |
|
checkans.fs \ |
|
code.fs colorize.fs \ |
|
doskey.fs ds2texi.fs \ |
|
etags.fs filedump.fs \ |
|
glosgen.fs gray.fs \ |
|
makedoc.fs \ |
mach16b.fs mach16l.fs mach32b.fs mach32l.fs mach64b.fs mach64l.fs \ |
mach16b.fs mach16l.fs mach32b.fs mach32l.fs mach64b.fs mach64l.fs \ |
other.fs prims2x.fs random.fs search-order.fs see.fs sieve.fs source.fs \ |
more.fs other.fs prims2x.fs random.fs \ |
startup.fs site-init.fs struct.fs tools.fs toolsext.fs tt.fs vars.fs \ |
sieve.fs \ |
vt100.fs vt100key.fs wordinfo.fs wordsets.fs \ |
site-init.fs \ |
tester.fs coretest.fs \ |
tt.fs sokoban.fs \ |
|
wordsets.fs \ |
|
tester.fs coretest.fs dbltest.fs \ |
bubble.fs siev.fs matrix.fs fib.fs |
bubble.fs siev.fs matrix.fs fib.fs |
|
|
SOURCES = CVS Makefile.in configure.in configure config.sub config.guess \ |
SOURCES = CVS compat Makefile.in configure.in configure config.sub config.guess \ |
|
acconfig.h config.h.in \ |
install-sh INSTALL README ToDo BUGS model COPYING Benchres \ |
install-sh INSTALL README ToDo BUGS model COPYING Benchres \ |
gforth.ds texinfo.tex gforth.1 gforth.el \ |
gforth.ds texinfo.tex gforth.1 gforth.el \ |
primitives engine.c main.c io.c \ |
primitives engine.c main.c io.c \ |
m68k.h mips.h 386.h hppa.h cache.c sparc.h power.h alpha.h 32bit.h \ |
m68k.h mips.h 386.h hppa.h cache.c sparc.h power.h alpha.h 32bit.h \ |
getopt.c getopt1.c getopt.h select.c \ |
getopt.c getopt1.c getopt.h select.c \ |
ecvt.c memcmp.c strtol.c strtoul.c ansidecl.h memmove.c pow10.c \ |
ecvt.c memcmp.c strtol.c strtoul.c ansidecl.h memmove.c pow10.c \ |
strerror.c strsignal.c \ |
strerror.c strsignal.c dblsub.c \ |
INSTALL.DOS makefile.dos mkdosmf.sed configure.bat \ |
INSTALL.DOS makefile.dos mkdosmf.sed configure.bat \ |
startup.dos history.dos \ |
startup.dos history.dos \ |
glosgen.glo glossaries.doc \ |
glosgen.glo glossaries.doc \ |
Line 162 clean: mostlyclean
|
Line 204 clean: mostlyclean
|
-$(RM) -rf $(GEN) *.o |
-$(RM) -rf $(GEN) *.o |
|
|
distclean: clean |
distclean: clean |
-$(RM) machine.h kernal.fi config.cache config.log config.status Makefile |
-$(RM) machine.h kernal.fi config.cache config.log config.status config.h Makefile |
|
|
realclean: distclean |
#realclean is useless, but dangerous, so it's commented out |
-$(RM) $(GEN_PRECIOUS) |
#realclean: distclean |
|
# -$(RM) $(GEN_PRECIOUS) |
|
|
#mostlyclean, but also remove some of the stuff that is distributed |
#mostlyclean, but also remove some of the stuff that is distributed |
virtualclean: mostlyclean |
virtualclean: mostlyclean |
-$(RM) -rf gforth.fns gforth.texi gforth.ps gforth.info* \ |
-$(RM) -rf gforth.fns gforth.texi gforth.ps gforth.info* \ |
gforth-$(VERSION).tar.gz config.cache *~ *TAGS |
gforth-$(VERSION).tar.gz config.cache *~ */*~ |
|
|
dist: $(SOURCES) $(FORTH_GEN) $(DOCDIST) |
dist: $(SOURCES) $(FORTH_GEN) $(DOCDIST) |
-rm -rf gforth-$(VERSION) |
-rm -rf gforth-$(VERSION) |
Line 224 install: gforth $(FORTH_SRC) kernal.fi g
|
Line 267 install: gforth $(FORTH_SRC) kernal.fi g
|
$(INSTALL_DATA) kernal.fi $(libdir)/gforth/$(VERSION) |
$(INSTALL_DATA) kernal.fi $(libdir)/gforth/$(VERSION) |
$(FORTHK) startup.fs dumpimage.fs -e "savesystem $(libdir)/gforth/$(VERSION)/gforth.fi bye" #gforth.fi contains some path names |
$(FORTHK) startup.fs dumpimage.fs -e "savesystem $(libdir)/gforth/$(VERSION)/gforth.fi bye" #gforth.fi contains some path names |
sed s:$(srcdir)/:$(datadir)/gforth/$(VERSION): gforth.TAGS >TAGS; $(INSTALL_DATA) TAGS $(datadir)/gforth/$(VERSION) |
sed s:$(srcdir)/:$(datadir)/gforth/$(VERSION): gforth.TAGS >TAGS; $(INSTALL_DATA) TAGS $(datadir)/gforth/$(VERSION) |
|
if test -d $(emacssitelispdir); then \ |
|
$(INSTALL_DATA) gforth.el $(emacssitelispdir); \ |
|
else \ |
|
echo "please install gforth.el in your .../emacs/site-lisp directory"; \ |
|
fi |
|
|
#deinstall all files specific to this version of gforth |
#deinstall all files specific to this version of gforth |
#to uninstall version foo, type `make uninstall VERSION=foo' |
#to uninstall version foo, type `make uninstall VERSION=foo' |
Line 235 check: test
|
Line 283 check: test
|
touch test |
touch test |
|
|
test: gforth gforth.fi |
test: gforth gforth.fi |
$(FORTH) tester.fs coretest.fs -e bye |
$(FORTH) tester.fs coretest.fs dbltest.fs -e bye |
$(FORTH) code.fs checkans.fs -e bye |
$(FORTH) code.fs checkans.fs -e bye |
@echo 'Expect no differences' |
@echo 'Expect no differences' |
$(FORTH) prims2x.fs -e "s\" primitives.b\" ' output-c process-file bye"| diff -c - primitives.i |
$(FORTH) prims2x.fs -e "s\" primitives.b\" ' output-c process-file bye"| diff -c - primitives.i |
Line 255 gforth: $(OBJECTS)
|
Line 303 gforth: $(OBJECTS)
|
@MAKE_EXE@ |
@MAKE_EXE@ |
|
|
kernl16l.fi-: $(KERN_SRC) mach16l.fs $(FORTH_GEN0) |
kernl16l.fi-: $(KERN_SRC) mach16l.fs $(FORTH_GEN0) |
$(FORTHK) -p . -e 's" mach16l.fs"' main.fs |
$(FORTHK) -p . -e 's" mach16l.fs"' main.fs -e "save-cross kernl16l.fi- $(bindir)/gforth-$(VERSION) bye" |
|
|
kernl16b.fi-: $(KERN_SRC) mach16b.fs $(FORTH_GEN0) |
kernl16b.fi-: $(KERN_SRC) mach16b.fs $(FORTH_GEN0) |
$(FORTHK) -p . -e 's" mach16b.fs"' main.fs |
$(FORTHK) -p . -e 's" mach16b.fs"' main.fs -e "save-cross kernl16b.fi- $(bindir)/gforth-$(VERSION) bye" |
|
|
kernl32l.fi-: $(KERN_SRC) mach32l.fs $(FORTH_GEN0) |
kernl32l.fi-: $(KERN_SRC) mach32l.fs $(FORTH_GEN0) |
$(FORTHK) -p . -e 's" mach32l.fs"' main.fs |
$(FORTHK) -p . -e 's" mach32l.fs"' main.fs -e "save-cross kernl32l.fi- $(bindir)/gforth-$(VERSION) bye" |
|
|
kernl32b.fi-: $(KERN_SRC) mach32b.fs $(FORTH_GEN0) |
kernl32b.fi-: $(KERN_SRC) mach32b.fs $(FORTH_GEN0) |
$(FORTHK) -p . -e 's" mach32b.fs"' main.fs |
$(FORTHK) -p . -e 's" mach32b.fs"' main.fs -e "save-cross kernl32b.fi- $(bindir)/gforth-$(VERSION) bye" |
|
|
kernl64l.fi-: $(KERN_SRC) mach64l.fs $(FORTH_GEN0) |
kernl64l.fi-: $(KERN_SRC) mach64l.fs $(FORTH_GEN0) |
$(FORTHK) -p . -e 's" mach64l.fs"' main.fs |
$(FORTHK) -p . -e 's" mach64l.fs"' main.fs -e "save-cross kernl64l.fi- $(bindir)/gforth-$(VERSION) bye" |
|
|
kernl64b.fi-: $(KERN_SRC) mach64b.fs $(FORTH_GEN0) |
kernl64b.fi-: $(KERN_SRC) mach64b.fs $(FORTH_GEN0) |
$(FORTHK) -p . -e 's" mach64b.fs"' main.fs |
$(FORTHK) -p . -e 's" mach64b.fs"' main.fs -e "save-cross kernl64b.fi- $(bindir)/gforth-$(VERSION) bye" |
|
|
kernl16b.fi: $(KERNLS) |
kernl16b.fi: $(KERNLS) |
-$(CP) kernl16b.fi kernl16b.fi~ |
-$(CP) kernl16b.fi kernl16b.fi~ |
Line 303 kernl64l.fi: $(KERNLS)
|
Line 351 kernl64l.fi: $(KERNLS)
|
@LINK_KERNL64L@ |
@LINK_KERNL64L@ |
|
|
gforth.fi: @kernal_fi@ gforth $(GFORTH_FI_SRC) |
gforth.fi: @kernal_fi@ gforth $(GFORTH_FI_SRC) |
$(FORTHK) startup.fs -e "savesystem gforth.fi bye" |
$(FORTHK) -p . startup.fs -e "savesystem gforth.fi bye" |
|
|
gforth.TAGS: @kernal_fi@ gforth $(GFORTH_FI_SRC) primitives.TAGS |
gforth.TAGS: @kernal_fi@ gforth $(GFORTH_FI_SRC) primitives.TAGS |
$(FORTHK) etags.fs startup.fs -e bye |
$(FORTHK) -p . etags.fs startup.fs -e bye |
cat TAGS primitives.TAGS kernal.TAGS >gforth.TAGS |
cat TAGS primitives.TAGS kernal.TAGS >gforth.TAGS |
|
|
engine.s: engine.c primitives.i prim_labels.i machine.h threading.h $(INCLUDES) |
engine.s: engine.c primitives.i prim_labels.i machine.h threading.h $(INCLUDES) |
Line 369 html: gforth.texi
|
Line 417 html: gforth.texi
|
|
|
# For an explanation of the following Makefile rules, see node |
# For an explanation of the following Makefile rules, see node |
# `Automatic Remaking' in GNU Autoconf documentation. |
# `Automatic Remaking' in GNU Autoconf documentation. |
|
${srcdir}/configure: configure.in |
|
cd ${srcdir} && autoconf |
|
|
|
# autoheader might not change config.h.in, so touch a stamp file. |
|
${srcdir}/config.h.in: stamp-h.in |
|
${srcdir}/stamp-h.in: configure.in acconfig.h |
|
cd ${srcdir} && autoheader |
|
echo timestamp > ${srcdir}/stamp-h.in |
|
|
|
config.h: stamp-h |
|
stamp-h: config.h.in config.status |
|
CONFIG_FILES=$@ CONFIG_HEADERS=config.h ./config.status |
|
echo > stamp-h |
Makefile: Makefile.in config.status |
Makefile: Makefile.in config.status |
CONFIG_FILES=$@ CONFIG_HEADERS= ./config.status |
CONFIG_FILES=$@ CONFIG_HEADERS=config.h ./config.status |
|
|
config.status: configure |
config.status: configure |
./config.status --recheck |
./config.status --recheck |
configure: configure.in |
|
cd $(srcdir) && autoconf |
|
|
|
|
|
|
#create files for DOS, because DOS cannot do it itself |
makefile.dos: mkdosmf.sed Makefile.in |
makefile.dos: mkdosmf.sed Makefile.in |
sed -f mkdosmf.sed <Makefile.in >makefile.dos |
sed -f mkdosmf.sed <Makefile.in >makefile.dos |
|
|
Line 385 history.dos: history.fs Makefile.in
|
Line 447 history.dos: history.fs Makefile.in
|
startup.dos: startup.fs Makefile.in |
startup.dos: startup.fs Makefile.in |
sed -e "s/\\\\ include doskey/include doskey/g" \ |
sed -e "s/\\\\ include doskey/include doskey/g" \ |
-e "s/include vt100key/\\\\ include vt100key/g" <startup.fs >startup.dos |
-e "s/include vt100key/\\\\ include vt100key/g" <startup.fs >startup.dos |
|
|