version 1.191, 2000/10/09 14:12:25
|
version 1.203, 2001/03/11 21:47:27
|
Line 69 ENGINE = ./gforth
|
Line 69 ENGINE = ./gforth
|
FORTH = $(ENGINE) $(FORTH_ARGS) |
FORTH = $(ENGINE) $(FORTH_ARGS) |
ENGINE_FAST = $(ENGINE)-fast |
ENGINE_FAST = $(ENGINE)-fast |
FORTH_FAST = $(ENGINE_FAST) $(FORTH_ARGS) |
FORTH_FAST = $(ENGINE_FAST) $(FORTH_ARGS) |
FORTHKFLAGS= --die-on-signal -p ".$(PATHSEP)~+$(PATHSEP)$(srcdir)" -i $(kernel_fi) |
FORTHKFLAGS= --die-on-signal -p ".$(PATHSEP)~+$(PATHSEP)$(srcdir)" -m 1000000 -i $(kernel_fi) |
FORTHK = $(ENGINE) $(FORTHKFLAGS) |
FORTHK = $(ENGINE) $(FORTHKFLAGS) |
FORTHP = $(ENGINE) --die-on-signal -i ./$(kernel_fi) |
FORTHP = $(ENGINE) --die-on-signal -i ./$(kernel_fi) |
#the "-2 image-included-files +!" undoes the change to image-included-files |
#the "-2 image-included-files +!" undoes the change to image-included-files |
Line 116 emacssitelispdir=@lispdir@
|
Line 116 emacssitelispdir=@lispdir@
|
siteforthdir=$(datadir)/gforth/site-forth |
siteforthdir=$(datadir)/gforth/site-forth |
|
|
CVSDIRS = CVS engine/CVS kernel/CVS doc/CVS asm/CVS ec/CVS test/CVS \ |
CVSDIRS = CVS engine/CVS kernel/CVS doc/CVS asm/CVS ec/CVS test/CVS \ |
compat/CVS \ |
compat/CVS unix/CVS \ |
arch/CVS arch/generic/CVS arch/m68k/CVS arch/mips/CVS \ |
arch/CVS arch/generic/CVS arch/m68k/CVS arch/mips/CVS \ |
arch/386/CVS arch/hppa/CVS arch/sparc/CVS arch/power/CVS \ |
arch/386/CVS arch/hppa/CVS arch/sparc/CVS arch/power/CVS \ |
arch/alpha/CVS arch/4stack/CVS arch/misc/CVS arch/6502/CVS \ |
arch/alpha/CVS arch/4stack/CVS arch/misc/CVS arch/6502/CVS \ |
arch/8086/CVS arch/avr/CVS arch/c165/CVS arch/h8/CVS \ |
arch/8086/CVS arch/avr/CVS arch/c165/CVS arch/h8/CVS \ |
arch/shboom/CVS arch/ia64/CVS |
arch/shboom/CVS arch/sharc/CVS arch/ia64/CVS |
|
|
INCLUDES = engine/forth.h engine/threaded.h engine/io.h |
INCLUDES = engine/forth.h engine/threaded.h engine/io.h |
|
|
Line 154 KERN_SRC = \
|
Line 154 KERN_SRC = \
|
kernel/int.fs \ |
kernel/int.fs \ |
kernel/comp.fs \ |
kernel/comp.fs \ |
kernel/io.fs \ |
kernel/io.fs \ |
|
kernel/input.fs \ |
kernel/license.fs \ |
kernel/license.fs \ |
kernel/nio.fs \ |
kernel/nio.fs \ |
kernel/saccept.fs \ |
kernel/saccept.fs \ |
Line 218 FORTH_SRC = $(KERN_SRC) $(GFORTH_FI_SRC)
|
Line 219 FORTH_SRC = $(KERN_SRC) $(GFORTH_FI_SRC)
|
code.fs colorize.fs comp-i.fs \ |
code.fs colorize.fs comp-i.fs \ |
doskey.fs ds2texi.fs \ |
doskey.fs ds2texi.fs \ |
envos.fs envos.dos envos.os2 etags.fs filedump.fs fi2c.fs \ |
envos.fs envos.dos envos.os2 etags.fs filedump.fs fi2c.fs \ |
glosgen.fs gray.fs httpd.fs \ |
glosgen.fs gray.fs httpd.fs proxy.fs \ |
make-app.fs doc/makedoc.fs \ |
make-app.fs doc/makedoc.fs \ |
more.fs other.fs prims2x.fs random.fs \ |
more.fs other.fs prims2x.fs random.fs \ |
table.fs string.fs \ |
table.fs string.fs \ |
tt.fs sokoban.fs \ |
tt.fs sokoban.fs \ |
unbuffer.fs wordsets.fs \ |
unbuffer.fs wordsets.fs \ |
test/tester.fs test/coretest.fs test/postpone.fs test/dbltest.fs \ |
test/tester.fs test/coretest.fs test/postpone.fs test/dbltest.fs \ |
test/other.fs test/checkans.fs \ |
test/string.fs test/other.fs test/checkans.fs \ |
bubble.fs siev.fs matrix.fs fib.fs \ |
bubble.fs siev.fs matrix.fs fib.fs \ |
oof.fs oofsampl.fs objects.fs objexamp.fs mini-oof.fs moof-exm.fs \ |
oof.fs oofsampl.fs objects.fs objexamp.fs mini-oof.fs moof-exm.fs \ |
moofglos.fs \ |
moofglos.fs fixpath.fs \ |
add.fs lib.fs sieve.fs |
add.fs lib.fs sieve.fs unix/socket.fs |
|
|
COMPAT = compat/README \ |
COMPAT = compat/README \ |
compat/anslocal.fs \ |
compat/anslocal.fs \ |
Line 294 ARCHS = \
|
Line 295 ARCHS = \
|
arch/shboom/prim.fs \ |
arch/shboom/prim.fs \ |
arch/shboom/dis2.fs \ |
arch/shboom/dis2.fs \ |
arch/shboom/sh.p \ |
arch/shboom/sh.p \ |
arch/shboom/doers.fs |
arch/shboom/doers.fs \ |
|
arch/sharc/mach.fs \ |
# arch/sharc/mach.fs \ |
arch/sharc/machine.h \ |
# arch/sharc/machine.h \ |
arch/sharc/compile.sharc \ |
# arch/sharc/compile.sharc \ |
arch/sharc/unistd.h \ |
# arch/sharc/unistd.h \ |
arch/sharc/systypes.h \ |
# arch/sharc/systypes.h \ |
arch/sharc/types.h \ |
# arch/sharc/types.h \ |
arch/sharc/g21k-3.3.4-bp1.diff |
# arch/sharc/g21k-3.3.4-bp1.diff |
|
|
|
SOURCES = $(CVSDIRS) compat Makefile.in Makedist.in engine/Makefile.in gforthmi.in \ |
SOURCES = $(CVSDIRS) compat Makefile.in Makedist.in engine/Makefile.in gforthmi.in \ |
configure.in configure config.sub config.guess elisp-comp missing \ |
configure.in configure config.sub config.guess elisp-comp missing \ |
acconfig.h acinclude.m4 engine/config.h.in stamp-h.in \ |
acconfig.h acinclude.m4 engine/config.h.in stamp-h.in \ |
install-sh INSTALL INSTALL.BINDIST NEWS README ToDo BUGS model \ |
iss.sh install-sh INSTALL INSTALL.BINDIST NEWS README ToDo BUGS model \ |
COPYING AUTHORS ChangeLog Benchres aclocal.m4 \ |
COPYING AUTHORS ChangeLog Benchres aclocal.m4 \ |
doc/gforth.ds doc/texinfo.tex doc/gforth.1 doc/version.texi.in \ |
doc/gforth.ds doc/texinfo.tex doc/gforth.1 doc/version.texi.in \ |
gforth.el \ |
gforth.el \ |
Line 330 SOURCES = $(CVSDIRS) compat Makefile.in
|
Line 330 SOURCES = $(CVSDIRS) compat Makefile.in
|
|
|
RCS_FILES = ToDo model high-level |
RCS_FILES = ToDo model high-level |
|
|
GEN = gforth$(EXE) gforth-ditc$(EXE) gforth-fast$(EXE) kernel/version.fs |
GEN = gforth$(EXE) gforth-ditc$(EXE) gforth-fast$(EXE) gforth-prof$(EXE) kernel/version.fs |
|
|
# things that need a working forth system to be generated |
# things that need a working forth system to be generated |
FORTH_GEN0 = prim.b engine/prim.i engine/prim_lab.i kernel/aliases.fs kernel/prim.fs |
FORTH_GEN0 = prim.b engine/prim.i engine/prim_lab.i engine/peephole.i engine/profile.i kernel/aliases.fs kernel/prim.fs |
FORTH_GEN = $(FORTH_GEN0) @KERNEL@ gforth.fi |
FORTH_GEN = $(FORTH_GEN0) @KERNEL@ gforth.fi |
# this is used for antidependences, |
# this is used for antidependences, |
FORTH_GEN1 = $(FORTH_GEN0) @kernel_fi@ |
FORTH_GEN1 = $(FORTH_GEN0) @kernel_fi@ |
Line 403 docclean: FORCE
|
Line 403 docclean: FORCE
|
|
|
clean: mostlyclean |
clean: mostlyclean |
-$(RM) -rf $(GEN) engine/gforth$(EXE) \ |
-$(RM) -rf $(GEN) engine/gforth$(EXE) \ |
engine/gforth-fast$(EXE) engine/gforth-ditc$(EXE) \ |
engine/gforth-fast$(EXE) engine/gforth-ditc$(EXE) engine/gforth-prof$(EXE) \ |
*.o engine/*.o arch/*/*.o version |
*.o engine/*.o arch/*/*.o version |
|
|
distclean: clean |
distclean: clean |
Line 505 uninstall: FORCE
|
Line 505 uninstall: FORCE
|
@echo -e "To remove Gforth completely, type\n$(RM) -rf $(bindir)/gforth$(EXE) $(bindir)/gforth-fast$(EXE) $(bindir)/gforthmi $(man1dir)/gforth.1 $(infodir)/gforth.info* $(datadir)/gforth $(libdir)/gforth" |
@echo -e "To remove Gforth completely, type\n$(RM) -rf $(bindir)/gforth$(EXE) $(bindir)/gforth-fast$(EXE) $(bindir)/gforthmi $(man1dir)/gforth.1 $(infodir)/gforth.info* $(datadir)/gforth $(libdir)/gforth" |
|
|
check test: gforth$(EXE) gforth.fi |
check test: gforth$(EXE) gforth.fi |
$(FORTH) test/tester.fs test/coretest.fs test/postpone.fs test/dbltest.fs -e bye | diff -c - $(srcdir)/test/coretest.out |
$(FORTH) test/tester.fs test/coretest.fs test/postpone.fs test/dbltest.fs test/string.fs -e bye | diff -c - $(srcdir)/test/coretest.out |
$(FORTH) test/other.fs -e bye |
$(FORTH) test/other.fs -e bye |
$(FORTH) code.fs test/checkans.fs -e bye | diff -c - $(srcdir)/test/checkans.out |
$(FORTH) code.fs test/checkans.fs -e bye | diff -c - $(srcdir)/test/checkans.out |
$(FORTHK) -m 100000 prims2x.fs -e \ |
$(FORTH) -m 100000 prims2x.fs -e \ |
"c-flag on s\" $(srcdir)/prim.b\" ' output-c process-file bye"| \ |
"c-flag on s\" $(srcdir)/prim.b\" ' output-c ' output-c-combined process-file bye"| \ |
diff -c - $(srcdir)/engine/prim.i |
diff -c - $(srcdir)/engine/prim.i |
|
|
bench: gforth-fast$(EXE) gforth.fi |
bench: gforth-fast$(EXE) gforth.fi |
@echo 'Each benchmark takes about 30s on a 486-66 (gcc-2.6.3 -DFORCE_REG)' |
@echo 'Each benchmark takes about 30s on a 486-66 (gcc-2.6.3 -DFORCE_REG)' |
time $(FORTH_FAST) siev.fs -e "main bye" |
time $(FORTH_FAST) siev.fs -e "main bye" |
time $(FORTH_FAST) bubble.fs -e "main bye" |
time $(FORTH_FAST) bubble.fs -e "main bye" |
time $(FORTH_FAST) -m 160000 matrix.fs -e "main bye" |
time $(FORTH_FAST) -m 200000 matrix.fs -e "main bye" |
time $(FORTH_FAST) fib.fs -e "main bye" |
time $(FORTH_FAST) fib.fs -e "main bye" |
|
|
# ------------- Make forth images |
# ------------- Make forth images |
Line 594 prim.b: prim
|
Line 594 prim.b: prim
|
m4 -s $(srcdir)/prim >$@ |
m4 -s $(srcdir)/prim >$@ |
|
|
engine/prim.i: prim.b prims2x.fs |
engine/prim.i: prim.b prims2x.fs |
$(FORTHK) prims2x.fs -e "c-flag on s\" prim.b\" ' output-c process-file bye" >$@- |
$(FORTH) -m 1000000 prims2x.fs -e "c-flag on s\" prim.b\" ' output-c ' output-c-combined process-file bye" >$@- |
$(CP) $@- $@ |
$(CP) $@- $@ |
$(RM) $@- |
$(RM) $@- |
|
|
engine/prim_lab.i: prim.b prims2x.fs |
engine/prim_lab.i: prim.b prims2x.fs |
$(FORTHK) prims2x.fs -e "c-flag on s\" prim.b\" ' output-label process-file bye" >$@- |
$(FORTH) -m 1000000 prims2x.fs -e "c-flag on s\" prim.b\" ' output-label dup process-file bye" >$@- |
|
$(CP) $@- $@ |
|
$(RM) $@- |
|
|
|
engine/peephole.i: prim.b prims2x.fs |
|
$(FORTH) -m 1000000 prims2x.fs -e "c-flag on s\" prim.b\" ' noop ' output-peephole process-file bye" >$@- |
|
$(CP) $@- $@ |
|
$(RM) $@- |
|
|
|
engine/profile.i: prim.b prims2x.fs |
|
$(FORTH) -m 1000000 prims2x.fs -e "c-flag on s\" prim.b\" ' output-profile ' output-profile process-file bye" >$@- |
$(CP) $@- $@ |
$(CP) $@- $@ |
$(RM) $@- |
$(RM) $@- |
|
|
kernel/aliases.fs: prim.b prims2x.fs kernel/aliases0.fs |
kernel/aliases.fs: prim.b prims2x.fs kernel/aliases0.fs |
$(CP) kernel/aliases0.fs $@- |
$(CP) kernel/aliases0.fs $@- |
$(FORTHK) prims2x.fs -e "forth-flag on s\" prim.b\" ' output-alias process-file bye" >>$@- |
$(FORTH) -m 1000000 prims2x.fs -e "forth-flag on s\" prim.b\" ' output-alias dup process-file bye" >>$@- |
$(CP) $@- $@ |
$(CP) $@- $@ |
$(RM) $@- |
$(RM) $@- |
|
|
kernel/prim.fs: prim.b prims2x.fs kernel/prim0.fs |
kernel/prim.fs: prim.b prims2x.fs kernel/prim0.fs |
$(CP) kernel/prim0.fs kernel/prim.fs- |
$(CP) kernel/prim0.fs kernel/prim.fs- |
$(FORTHK) prims2x.fs -e "forth-flag on s\" prim.b\" ' output-forth process-file bye" >>$@- |
$(FORTH) -m 1000000 prims2x.fs -e "forth-flag on s\" prim.b\" ' output-forth ' output-forth-combined process-file bye" >>$@- |
|
$(CP) $@- $@ |
|
$(RM) $@- |
|
|
|
kernel/peephole.fs: prim.b prims2x.fs |
|
$(FORTH) -m 1000000 prims2x.fs -e "forth-flag on s\" prim.b\" ' noop ' output-forth-peephole process-file bye" >$@- |
$(CP) $@- $@ |
$(CP) $@- $@ |
$(RM) $@- |
$(RM) $@- |
|
|
Line 628 gforth-ditc$(EXE): engines
|
Line 643 gforth-ditc$(EXE): engines
|
$(CP) engine/$@ $@ |
$(CP) engine/$@ $@ |
@GFORTHDITC_EXE@ |
@GFORTHDITC_EXE@ |
|
|
engines: FORCE engine/Makefile engine/prim.i engine/prim_lab.i |
gforth-prof$(EXE): engines |
cd engine && $(MAKE) gforth$(EXE) gforth-fast$(EXE) gforth-ditc$(EXE) |
$(CP) engine/$@ $@ |
|
|
|
engines: FORCE engine/Makefile engine/prim.i engine/prim_lab.i engine/peephole.i engine/profile.i |
|
cd engine && $(MAKE) gforth$(EXE) gforth-fast$(EXE) gforth-ditc$(EXE) gforth-prof$(EXE) |
|
|
# ------------- additional C primitives |
# ------------- additional C primitives |
|
|
Line 654 gforth.TAGS: @kernel_fi@ gforth$(EXE) $(
|
Line 672 gforth.TAGS: @kernel_fi@ gforth$(EXE) $(
|
rm TAGS |
rm TAGS |
|
|
prim.TAGS: prim.b prims2x.fs |
prim.TAGS: prim.b prims2x.fs |
echo '2c\' >prim.TAGS.sed |
#echo '2c\' >prim.TAGS.sed |
echo $(srcdir)/prim >>prim.TAGS.sed |
#echo $(srcdir)/prim >>prim.TAGS.sed |
$(FORTHK) prims2x.fs -e "s\" $(srcdir)/prim.b\" ' output-tag process-file bye" | sed -f prim.TAGS.sed >$@- |
#$(FORTH) -m 1000000 prims2x.fs -e "s\" $(srcdir)/prim.b\" ' output-tag dup process-file bye" | sed -f prim.TAGS.sed >$@- |
|
$(FORTH) -m 1000000 prims2x.fs -e "s\" $(srcdir)/prim.b\" ' output-tag dup process-file bye" >$@- |
$(CP) $@- $@ |
$(CP) $@- $@ |
$(RM) $@- |
$(RM) $@- |
|
|
Line 671 doc/crossdoc.fd: $(KERN_SRC) kernel/vers
|
Line 690 doc/crossdoc.fd: $(KERN_SRC) kernel/vers
|
|
|
doc/gforth.texi: doc/gforth.ds prim.b ds2texi.fs prims2x.fs \ |
doc/gforth.texi: doc/gforth.ds prim.b ds2texi.fs prims2x.fs \ |
doc/doc.fd doc/crossdoc.fd |
doc/doc.fd doc/crossdoc.fd |
$(FORTHK) -m 100000 ds2texi.fs prims2x.fs -e "s\" $(srcdir)/prim.b\" ' register-doc process-file" doc/crossdoc.fd doc/doc.fd -e "s\" $(srcdir)/doc/gforth.ds\" r/o open-file throw ds2texi bye" >$@- |
$(FORTH) -m 100000 ds2texi.fs prims2x.fs -e "s\" $(srcdir)/prim.b\" ' register-doc ' noop process-file" doc/crossdoc.fd doc/doc.fd -e "s\" $(srcdir)/doc/gforth.ds\" r/o open-file throw ds2texi bye" >$@- |
$(CP) $@- $@ |
$(CP) $@- $@ |
$(RM) $@- |
$(RM) $@- |
|
|
checkdoc: doc/gforth.ds prim.b ds2texi.fs prims2x.fs doc/doc.fd doc/crossdoc.fd answords.fs doc/gforth.texi |
checkdoc: doc/gforth.ds prim.b ds2texi.fs prims2x.fs doc/doc.fd doc/crossdoc.fd answords.fs doc/gforth.texi |
$(FORTHK) -m 1M ds2texi.fs prims2x.fs -e "s\" $(srcdir)/prim.b\" ' register-doc process-file" doc/crossdoc.fd doc/doc.fd answords.fs -e bye |
$(FORTH) -m 1M ds2texi.fs prims2x.fs -e "s\" $(srcdir)/prim.b\" ' register-doc ' noop process-file" doc/crossdoc.fd doc/doc.fd answords.fs -e bye |
-grep unknown doc/gforth.texi |
-grep unknown doc/gforth.texi |
|
|
dvi: doc/gforth.dvi |
dvi: doc/gforth.dvi |