version 1.336, 2006/11/01 22:42:15
|
version 1.345, 2007/03/18 21:46:01
|
Line 1
|
Line 1
|
#Makefile for Gforth |
#Makefile for Gforth |
|
|
#Copyright (C) 1995,1996,1997,1998,2000,2003,2004,2005 Free Software Foundation, Inc. |
#Copyright (C) 1995,1996,1997,1998,2000,2003,2004,2005,2006 Free Software Foundation, Inc. |
|
|
#This file is part of Gforth. |
#This file is part of Gforth. |
|
|
Line 58 MV = mv
|
Line 58 MV = mv
|
TAR = tar cf - |
TAR = tar cf - |
INSTALL = @INSTALL@ |
INSTALL = @INSTALL@ |
INSTALL_PROGRAM = @INSTALL_PROGRAM@ -s |
INSTALL_PROGRAM = @INSTALL_PROGRAM@ -s |
|
MASSAGE_EXE = @MASSAGE_EXE@ |
INSTALL_SCRIPT = @INSTALL_SCRIPT@ |
INSTALL_SCRIPT = @INSTALL_SCRIPT@ |
INSTALL_DATA = @INSTALL_DATA@ |
INSTALL_DATA = @INSTALL_DATA@ |
INSTALL_INFO = @INSTALL_INFO@ |
INSTALL_INFO = @INSTALL_INFO@ |
Line 254 FORTH_SRC = $(KERN_SRC) $(GFORTH_FI_SRC)
|
Line 255 FORTH_SRC = $(KERN_SRC) $(GFORTH_FI_SRC)
|
locate.fs more.fs other.fs prims2x.fs random.fs \ |
locate.fs more.fs other.fs prims2x.fs random.fs \ |
regexp.fs sokoban.fs string.fs table.fs tags.fs \ |
regexp.fs sokoban.fs string.fs table.fs tags.fs \ |
tt.fs \ |
tt.fs \ |
unbuffer.fs wordsets.fs \ |
unbuffer.fs wordsets.fs xwords.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/string.fs test/float.fs test/gforth.fs \ |
test/string.fs test/float.fs test/gforth.fs \ |
test/other.fs test/signals.fs test/checkans.fs \ |
test/other.fs test/signals.fs test/checkans.fs \ |
test/primtest.fs test/coreext.fs test/deferred.fs \ |
test/primtest.fs test/coreext.fs test/deferred.fs \ |
|
test/coremore.fs test/gforth-nofast.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 fixpath.fs \ |
moofglos.fs fixpath.fs \ |
add.fs lib.fs oldlib.fs fflib.fs libffi.fs sieve.fs unix/socket.fs |
add.fs lib.fs oldlib.fs fflib.fs libffi.fs sieve.fs unix/socket.fs \ |
|
endtry-iferror.fs recover-endtry.fs |
|
|
COMPAT = compat/README \ |
COMPAT = compat/README \ |
compat/anslocal.fs \ |
compat/anslocal.fs \ |
Line 369 VMGEN_EX2 = $(VMGEN_EX:vmgen-ex/%=vmgen-
|
Line 372 VMGEN_EX2 = $(VMGEN_EX:vmgen-ex/%=vmgen-
|
SOURCES = $(CVSDIRS) compat Makefile.in Makedist.in engine/Makefile.in \ |
SOURCES = $(CVSDIRS) compat Makefile.in Makedist.in engine/Makefile.in \ |
gforthmi.in vmgen.in gfgen README.vmgen NEWS.vmgen \ |
gforthmi.in vmgen.in gfgen README.vmgen NEWS.vmgen \ |
configure.in configure config.sub config.guess elisp-comp missing \ |
configure.in configure config.sub config.guess elisp-comp missing \ |
engine/config.h.in stamp-h.in \ |
engine/config.h.in stamp-h.in envos.fs.in \ |
iss.sh install-sh INSTALL INSTALL.BINDIST NEWS README ToDo BUGS \ |
iss.sh install-sh INSTALL INSTALL.BINDIST NEWS README ToDo BUGS \ |
BUILD-FROM-SCRATCH model \ |
BUILD-FROM-SCRATCH model \ |
COPYING COPYING.DOC AUTHORS ChangeLog Benchres aclocal.m4 \ |
COPYING COPYING.DOC AUTHORS ChangeLog Benchres aclocal.m4 \ |
Line 395 SOURCES = $(CVSDIRS) compat Makefile.in
|
Line 398 SOURCES = $(CVSDIRS) compat Makefile.in
|
gforthmi.cmd glosgen.glo doc/glossaries.doc \ |
gforthmi.cmd glosgen.glo doc/glossaries.doc \ |
$(INCLUDES) $(FORTH_SRC) $(COMPAT) $(VMGEN_EX) $(VMGEN_EX2) \ |
$(INCLUDES) $(FORTH_SRC) $(COMPAT) $(VMGEN_EX) $(VMGEN_EX2) \ |
timings.sc \ |
timings.sc \ |
test/coretest.out test/checkans.out \ |
test/coretest.out test/checkans.out test/gforth.out \ |
cache-fast*.vmg |
cache-fast*.vmg |
|
|
RCS_FILES = ToDo model high-level |
RCS_FILES = ToDo model high-level |
Line 520 virtualclean: mostlyclean
|
Line 523 virtualclean: mostlyclean
|
#Makefile if it contains our dist rules. Therefore we have put these |
#Makefile if it contains our dist rules. Therefore we have put these |
#rules in Makedist (you can use them with GNU make on these systems). |
#rules in Makedist (you can use them with GNU make on these systems). |
|
|
dist: Makedist machpc.fs FORCE |
dist: Makedist FORCE |
-sed -e 's/@[^ ]*CALLFLAG@/false/g' -e 's/@[P]EEPHOLEFLAG@/true/g' -e 's/@[L]IBFFIFLAG@/false/g' <machpc.fs.in >machpc.fs |
|
$(MAKE) -f Makedist d$@ |
$(MAKE) -f Makedist d$@ |
-$(RM) machpc.fs |
|
|
|
dosdist: Makedist machpc.fs FORCE |
dosdist: Makedist FORCE |
-sed -e 's/@[^ ]*CALLFLAG@/false/g' -e 's/@[P]EEPHOLEFLAG@/true/g' <machpc.fs.in >machpc.fs |
|
$(MAKE) -f Makedist d$@ |
$(MAKE) -f Makedist d$@ |
-$(RM) machpc.fs |
|
|
|
srcdist: Makedist FORCE |
srcdist: Makedist FORCE |
$(MAKE) -f Makedist d$@ |
$(MAKE) -f Makedist d$@ |
Line 542 docdist: Makedist FORCE
|
Line 541 docdist: Makedist FORCE
|
htmldist: Makedist FORCE |
htmldist: Makedist FORCE |
$(MAKE) -f Makedist d$@ |
$(MAKE) -f Makedist d$@ |
|
|
bindist: Makedist machpc.fs FORCE |
bindist: Makedist FORCE |
-sed -e 's/@[^ ]*CALLFLAG@/false/g' -e 's/@[P]EEPHOLEFLAG@/true/g' <machpc.fs.in >machpc.fs |
|
$(MAKE) -f Makedist d$@ |
$(MAKE) -f Makedist d$@ |
-$(RM) machpc.fs |
|
|
|
binonlydist: Makedist machpc.fs FORCE |
binonlydist: Makedist FORCE |
-sed -e 's/@[^ ]*CALLFLAG@/false/g' -e 's/@[P]EEPHOLEFLAG@/true/g' <machpc.fs.in >machpc.fs |
|
$(MAKE) -f Makedist d$@ |
$(MAKE) -f Makedist d$@ |
-$(RM) machpc.fs |
|
|
|
#HPUX make breaks the cycle differently when the dates are equal, so |
#HPUX make breaks the cycle differently when the dates are equal, so |
# touch some of the files if it acts up |
# touch some of the files if it acts up |
Line 572 install: gforth$(EXE) $(FORTH_SRC) $(ker
|
Line 567 install: gforth$(EXE) $(FORTH_SRC) $(ker
|
-$(RM) $(DESTDIR)$(bindir)/gforth-fast$(EXE) $(DESTDIR)$(bindir)/gforth-fast-$(VERSION)$(EXE) |
-$(RM) $(DESTDIR)$(bindir)/gforth-fast$(EXE) $(DESTDIR)$(bindir)/gforth-fast-$(VERSION)$(EXE) |
-$(RM) $(DESTDIR)$(bindir)/gforth-itc$(EXE) $(DESTDIR)$(bindir)/gforth-itc-$(VERSION)$(EXE) |
-$(RM) $(DESTDIR)$(bindir)/gforth-itc$(EXE) $(DESTDIR)$(bindir)/gforth-itc-$(VERSION)$(EXE) |
$(INSTALL_PROGRAM) gforth$(EXE) $(DESTDIR)$(bindir)/gforth-$(VERSION)$(EXE) |
$(INSTALL_PROGRAM) gforth$(EXE) $(DESTDIR)$(bindir)/gforth-$(VERSION)$(EXE) |
|
-$(MASSAGE_EXE) $(DESTDIR)$(bindir)/gforth-$(VERSION)$(EXE) |
(cd $(DESTDIR)$(bindir) && $(LN_S) gforth-$(VERSION)$(EXE) gforth$(EXE)) |
(cd $(DESTDIR)$(bindir) && $(LN_S) gforth-$(VERSION)$(EXE) gforth$(EXE)) |
$(INSTALL_PROGRAM) gforth-fast$(EXE) $(DESTDIR)$(bindir)/gforth-fast-$(VERSION)$(EXE) |
$(INSTALL_PROGRAM) gforth-fast$(EXE) $(DESTDIR)$(bindir)/gforth-fast-$(VERSION)$(EXE) |
|
-$(MASSAGE_EXE) $(DESTDIR)$(bindir)/gforth-fast-$(VERSION)$(EXE) |
(cd $(DESTDIR)$(bindir) && $(LN_S) gforth-fast-$(VERSION)$(EXE) gforth-fast$(EXE)) |
(cd $(DESTDIR)$(bindir) && $(LN_S) gforth-fast-$(VERSION)$(EXE) gforth-fast$(EXE)) |
$(INSTALL_PROGRAM) gforth-itc$(EXE) $(DESTDIR)$(bindir)/gforth-itc-$(VERSION)$(EXE) |
$(INSTALL_PROGRAM) gforth-itc$(EXE) $(DESTDIR)$(bindir)/gforth-itc-$(VERSION)$(EXE) |
(cd $(DESTDIR)$(bindir) && $(LN_S) gforth-itc-$(VERSION)$(EXE) gforth-itc$(EXE)) |
(cd $(DESTDIR)$(bindir) && $(LN_S) gforth-itc-$(VERSION)$(EXE) gforth-itc$(EXE)) |
Line 588 install: gforth$(EXE) $(FORTH_SRC) $(ker
|
Line 585 install: gforth$(EXE) $(FORTH_SRC) $(ker
|
$(INSTALL_DATA) $(srcdir)/$$i $(DESTDIR)$(datadir)/gforth/$(VERSION)/$$i; \ |
$(INSTALL_DATA) $(srcdir)/$$i $(DESTDIR)$(datadir)/gforth/$(VERSION)/$$i; \ |
done |
done |
$(INSTALL_DATA) $(kernel_fi) $(DESTDIR)$(datadir)/gforth/$(VERSION) |
$(INSTALL_DATA) $(kernel_fi) $(DESTDIR)$(datadir)/gforth/$(VERSION) |
@if test -d "$(emacssitelispdir)"; then \ |
@if test -d "$(DESTDIR)$(emacssitelispdir)"; then \ |
$(INSTALL_DATA) $(srcdir)/gforth.el $(DESTDIR)$(emacssitelispdir); \ |
$(INSTALL_DATA) $(srcdir)/gforth.el $(DESTDIR)$(emacssitelispdir); \ |
else \ |
else \ |
echo ">>>>>Please install $(srcdir)/gforth.el in your .../emacs/site-lisp directory"; \ |
echo ">>>>>Please install $(srcdir)/gforth.el in your .../emacs/site-lisp directory"; \ |
Line 644 check-nofast: gforth$(EXE) gforth.fi
|
Line 641 check-nofast: gforth$(EXE) gforth.fi
|
$(FORTHS) test/gforth-nofast.fs -e bye |
$(FORTHS) test/gforth-nofast.fs -e bye |
|
|
test/primtest.fi: test/primtest.fs mach32l.fs cross.fs |
test/primtest.fi: test/primtest.fs mach32l.fs cross.fs |
$(FORTHB) -e 's" mach32b.fs"' $(srcdir)/test/primtest.fs -e "save-cross $@ $(bindir)/gforth-$(VERSION) bye" |
$(FORTHB) -e 's" mach32l.fs"' $(srcdir)/test/primtest.fs -e "save-cross $@ $(bindir)/gforth-$(VERSION) bye" |
|
|
primtest: gforth gforth-native test/primtest.fi FORCE |
primtest: gforth gforth-native test/primtest.fi FORCE |
(echo rs|ENVVAR=bla ./gforth -i test/primtest.fi) && (echo rs|ENVVAR=bla ./gforth-native -i test/primtest.fi); echo $$? |
(echo rs|ENVVAR=bla ./gforth -i test/primtest.fi) && (echo rs|ENVVAR=bla ./gforth-native -i test/primtest.fi); echo $$? |
Line 656 bench: gforth-fast$(EXE) gforth.fi
|
Line 653 bench: gforth-fast$(EXE) gforth.fi
|
time $(FORTH_FAST) matrix.fs -e "main bye" |
time $(FORTH_FAST) matrix.fs -e "main bye" |
time $(FORTH_FAST) fib.fs -e "main bye" |
time $(FORTH_FAST) fib.fs -e "main bye" |
|
|
onebench: |
onebench one-bench: |
@\time -f "siev %U" $(FORTH_FAST) siev.fs -e "main bye" |
$(FORTH_FAST) onebench.fs |
@\time -f "bubble %U" $(FORTH_FAST) -e "warnings off" bubble.fs -e "main bye" |
|
@\time -f "matrix %U" $(FORTH_FAST) matrix.fs -e "main bye" |
all-bench allbench: gforth-fast$(EXE) gforth$(EXE) gforth-itc$(EXE) gforth-ditc$(EXE) gforth.fi |
@\time -f "fib %U" $(FORTH_FAST) fib.fs -e "main bye" |
./gforth-fast --dynamic onebench.fs |
|
./gforth-fast --no-dynamic onebench.fs |
all-bench: gforth-fast$(EXE) gforth$(EXE) gforth-itc$(EXE) gforth-ditc$(EXE) gforth.fi |
./gforth --dynamic onebench.fs |
@echo "*** gforth-fast dynamic:" |
./gforth --no-dynamic onebench.fs |
@$(MAKE) onebench ENGINE_FAST="./gforth-fast --dynamic" |
./gforth-itc onebench.fs |
@echo "*** gforth-fast not dynamic:" |
./gforth-ditc onebench.fs |
@$(MAKE) onebench ENGINE_FAST="./gforth-fast --no-dynamic" |
|
@echo "*** gforth dynamic:" |
|
@$(MAKE) onebench ENGINE_FAST="./gforth --dynamic" |
|
@echo "*** gforth not dynamic:" |
|
@$(MAKE) onebench ENGINE_FAST="./gforth --no-dynamic" |
|
@echo "*** gforth-itc:" |
|
@$(MAKE) onebench ENGINE_FAST=./gforth-itc |
|
@echo "*** gforth-ditc:" |
|
@$(MAKE) onebench ENGINE_FAST=./gforth-ditc |
|
|
|
# ------------- Make forth images |
# ------------- Make forth images |
|
|
Line 777 kernel/prim.fs: prim.b prims2x.fs kernel
|
Line 765 kernel/prim.fs: prim.b prims2x.fs kernel
|
gforth$(EXE): engines |
gforth$(EXE): engines |
-$(CP) gforth$(EXE) gforth~ |
-$(CP) gforth$(EXE) gforth~ |
$(CP) engine/$@ $@ |
$(CP) engine/$@ $@ |
|
-$(MASSAGE_EXE) $@ |
@GFORTH_EXE@ |
@GFORTH_EXE@ |
|
|
gforth-fast$(EXE): engines-fast |
gforth-fast$(EXE): engines-fast |
$(CP) engine/$@ $@ |
$(CP) engine/$@ $@ |
|
-$(MASSAGE_EXE) $@ |
@GFORTHFAST_EXE@ |
@GFORTHFAST_EXE@ |
|
|
gforth-native$(EXE): engines-fast |
gforth-native$(EXE): engines-fast |
$(CP) engine/$@ $@ |
$(CP) engine/$@ $@ |
|
-$(MASSAGE_EXE) $@ |
#@GFORTHX_EXE@ |
#@GFORTHX_EXE@ |
|
|
gforth-itc$(EXE): engines |
gforth-itc$(EXE): engines |
Line 800 gforth-prof$(EXE): engines
|
Line 791 gforth-prof$(EXE): engines
|
|
|
gforths: $(ENGINES) $(ENGINES_FAST) |
gforths: $(ENGINES) $(ENGINES_FAST) |
|
|
engines: FORCE $(FORTH_GEN_ENGINE) engine/Makefile |
engines: FORCE $(FORTH_GEN_ENGINE) engine/Makefile engine/config.h |
cd engine && $(MAKE) $(ENGINES) |
cd engine && $(MAKE) $(ENGINES) |
|
|
engines-fast: FORCE $(FORTH_GEN_ENGINE_FAST) engine/Makefile |
engines-fast: FORCE $(FORTH_GEN_ENGINE_FAST) engine/Makefile engine/config.h |
cd engine && $(MAKE) $(ENGINES_FAST) |
cd engine && $(MAKE) $(ENGINES_FAST) |
|
|
# ------------- additional C primitives |
# ------------- additional C primitives |