version 1.300, 2004/11/28 20:20:37
|
version 1.315, 2006/02/20 22:20:16
|
Line 1
|
Line 1
|
#Makefile for Gforth |
#Makefile for Gforth |
|
|
#Copyright (C) 1995,1996,1997,1998,2000,2003 Free Software Foundation, Inc. |
#Copyright (C) 1995,1996,1997,1998,2000,2003,2004,2005 Free Software Foundation, Inc. |
|
|
#This file is part of Gforth. |
#This file is part of Gforth. |
|
|
Line 109 XLDFLAGS = @LDFLAGS@
|
Line 109 XLDFLAGS = @LDFLAGS@
|
LDFLAGS = $(DEBUGFLAG) $(XLDFLAGS) |
LDFLAGS = $(DEBUGFLAG) $(XLDFLAGS) |
LDLIBS = @LIBS@ |
LDLIBS = @LIBS@ |
|
|
# ------------ Install Directorys |
STACK_CACHE_DEFAULT_FAST = @STACK_CACHE_DEFAULT_FAST@ |
|
|
|
# ------------ Install Directories |
|
|
VPATH = @srcdir@ |
VPATH = @srcdir@ |
prefix = @prefix@ |
prefix = @prefix@ |
Line 138 CVSDIRS = CVS engine/CVS kernel/CVS doc/
|
Line 140 CVSDIRS = CVS engine/CVS kernel/CVS doc/
|
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/sharc/CVS arch/ia64/CVS arch/amd64/CVS \ |
arch/shboom/CVS arch/sharc/CVS arch/ia64/CVS arch/amd64/CVS \ |
arch/arm/CVS |
arch/arm/CVS arch/r8c/CVS |
|
|
INCLUDES = engine/forth.h engine/threaded.h engine/io.h |
INCLUDES = engine/forth.h engine/threaded.h engine/io.h |
|
|
Line 177 KERN_SRC = \
|
Line 179 KERN_SRC = \
|
kernel/saccept.fs \ |
kernel/saccept.fs \ |
kernel/doers.fs \ |
kernel/doers.fs \ |
kernel/getdoers.fs \ |
kernel/getdoers.fs \ |
kernel/pass.fs |
kernel/pass.fs \ |
|
kernel/xchars.fs |
|
|
EC_SRC = \ |
EC_SRC = \ |
asm/README \ |
asm/README \ |
Line 200 GFORTH_FI_SRC = \
|
Line 203 GFORTH_FI_SRC = \
|
blocks.fs \ |
blocks.fs \ |
bufio.fs \ |
bufio.fs \ |
code.fs \ |
code.fs \ |
|
complex.fs \ |
debug.fs \ |
debug.fs \ |
debugs.fs \ |
debugs.fs \ |
dis-gdb.fs \ |
dis-gdb.fs \ |
Line 211 GFORTH_FI_SRC = \
|
Line 215 GFORTH_FI_SRC = \
|
except.fs \ |
except.fs \ |
extend.fs \ |
extend.fs \ |
float.fs \ |
float.fs \ |
|
fft.fs \ |
glocals.fs \ |
glocals.fs \ |
hash.fs \ |
hash.fs \ |
history.fs \ |
history.fs \ |
Line 228 GFORTH_FI_SRC = \
|
Line 233 GFORTH_FI_SRC = \
|
stuff.fs \ |
stuff.fs \ |
tasker.fs \ |
tasker.fs \ |
termsize.fs \ |
termsize.fs \ |
|
utf-8.fs \ |
vt100.fs \ |
vt100.fs \ |
vt100key.fs \ |
vt100key.fs \ |
wordinfo.fs \ |
wordinfo.fs \ |
arch/386/asm.fs arch/386/disasm.fs \ |
arch/386/asm.fs arch/386/disasm.fs \ |
arch/alpha/asm.fs arch/alpha/disasm.fs \ |
arch/amd64/asm.fs arch/amd64/disasm.fs \ |
arch/mips/asm.fs arch/mips/disasm.fs arch/mips/insts.fs |
arch/alpha/asm.fs arch/alpha/disasm.fs arch/alpha/testasm.fs\ |
|
arch/mips/asm.fs arch/mips/disasm.fs arch/mips/insts.fs \ |
|
arch/mips/testasm.fs arch/mips/testdisasm.fs |
|
|
FORTH_SRC = $(KERN_SRC) $(GFORTH_FI_SRC) $(EC_SRC) \ |
FORTH_SRC = $(KERN_SRC) $(GFORTH_FI_SRC) $(EC_SRC) \ |
ans-report.fs ansi.fs answords.fs \ |
ans-report.fs ansi.fs answords.fs \ |
Line 249 FORTH_SRC = $(KERN_SRC) $(GFORTH_FI_SRC)
|
Line 257 FORTH_SRC = $(KERN_SRC) $(GFORTH_FI_SRC)
|
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/primtest.fs test/coreext.fs test/deferred.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 sieve.fs unix/socket.fs |
add.fs lib.fs oldlib.fs fflib.fs libffi.fs sieve.fs unix/socket.fs |
|
|
COMPAT = compat/README \ |
COMPAT = compat/README \ |
compat/anslocal.fs \ |
compat/anslocal.fs \ |
Line 261 COMPAT = compat/README \
|
Line 269 COMPAT = compat/README \
|
compat/control.fs \ |
compat/control.fs \ |
compat/defer.fs \ |
compat/defer.fs \ |
compat/exception.fs \ |
compat/exception.fs \ |
|
compat/execute-parsing.fs \ |
compat/loops.fs \ |
compat/loops.fs \ |
compat/required.fs \ |
compat/required.fs \ |
compat/strcomp.fs \ |
compat/strcomp.fs \ |
Line 275 ALLSUBDIRS = engine
|
Line 284 ALLSUBDIRS = engine
|
|
|
ARCHS = \ |
ARCHS = \ |
arch/generic/machine.h \ |
arch/generic/machine.h \ |
|
arch/generic/128bit.h \ |
arch/m68k/machine.h \ |
arch/m68k/machine.h \ |
arch/mips/machine.h \ |
arch/mips/machine.h \ |
arch/386/machine.h \ |
arch/386/machine.h \ |
Line 302 ARCHS = \
|
Line 312 ARCHS = \
|
arch/misc/sim.fs \ |
arch/misc/sim.fs \ |
arch/misc/sokoban.fs \ |
arch/misc/sokoban.fs \ |
arch/misc/tt.fs \ |
arch/misc/tt.fs \ |
arch/6502/asm.fs \ |
|
arch/6502/prim.fs \ |
arch/6502/prim.fs \ |
arch/6502/mach.fs \ |
arch/6502/mach.fs \ |
arch/6502/zero.fs \ |
|
arch/6502/softuart.fs \ |
|
arch/6502/cold.fs \ |
|
arch/8086/asm.fs \ |
|
arch/8086/mach.fs \ |
|
arch/8086/mach.sh \ |
|
arch/8086/prim.fs \ |
|
arch/avr/asm.fs \ |
|
arch/c165/asm.fs \ |
|
arch/c165/mach.fs \ |
|
arch/c165/prim.fs \ |
|
arch/h8/asm.fs \ |
|
arch/shboom/asm.fs \ |
arch/shboom/asm.fs \ |
arch/shboom/compiler.fs \ |
arch/shboom/compiler.fs \ |
arch/shboom/dis.fs \ |
arch/shboom/dis.fs \ |
Line 328 ARCHS = \
|
Line 325 ARCHS = \
|
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/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 \ |
|
arch/r8c/asm.fs \ |
|
arch/r8c/asm-test.fs \ |
|
arch/r8c/prim.fs \ |
|
arch/r8c/mach.fs |
|
|
|
#not included in distribution until distribution terms are included: |
|
ARCHS_NO_DIST = \ |
|
arch/6502/asm.fs \ |
|
arch/6502/cold.fs \ |
|
arch/6502/softuart.fs \ |
|
arch/6502/zero.fs \ |
|
arch/8086/asm.fs \ |
|
arch/8086/mach.fs \ |
|
arch/8086/mach.sh \ |
|
arch/8086/prim.fs \ |
|
arch/avr/asm.fs \ |
|
arch/c165/asm.fs \ |
|
arch/c165/mach.fs \ |
|
arch/c165/prim.fs \ |
|
arch/h8/asm.fs \ |
|
arch/sharc/unistd.h |
|
|
VMGEN_EX = vmgen-ex/CVS vmgen-ex/Makefile vmgen-ex/README vmgen-ex/disasm.c \ |
VMGEN_EX = vmgen-ex/CVS vmgen-ex/Makefile vmgen-ex/README vmgen-ex/disasm.c \ |
vmgen-ex/engine.c vmgen-ex/fib.mini \ |
vmgen-ex/engine.c vmgen-ex/fib.mini \ |
Line 372 SOURCES = $(CVSDIRS) compat Makefile.in
|
Line 389 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 \ |
|
cache-fast*.vmg |
|
|
RCS_FILES = ToDo model high-level |
RCS_FILES = ToDo model high-level |
|
|
ENGINES = gforth$(EXE) gforth-ditc$(EXE) gforth-itc$(EXE) $(PROFEXES) |
ENGINES = gforth$(EXE) gforth-ditc$(EXE) gforth-itc$(EXE) $(PROFEXES) |
|
|
ENGINES_FAST = gforth-fast$(EXE) gforth-native$(EXE) |
ENGINES_FAST = gforth-fast$(EXE) #gforth-native$(EXE) |
|
|
GEN = $(ENGINES) $(ENGINES_FAST) kernel/version.fs |
GEN = $(ENGINES) $(ENGINES_FAST) kernel/version.fs |
|
|
Line 402 FORTH_GEN1 = $(FORTH_GEN0) @kernel_fi@
|
Line 420 FORTH_GEN1 = $(FORTH_GEN0) @kernel_fi@
|
KERN_DEPS = $(KERN_SRC) kernel/version.fs machpc.fs $(FORTH_GEN0) compat/strcomp.fs |
KERN_DEPS = $(KERN_SRC) kernel/version.fs machpc.fs $(FORTH_GEN0) compat/strcomp.fs |
|
|
#distributed documentation |
#distributed documentation |
DOCDIST = doc/gforth.info doc/gforth.info-* doc/gforth.ps \ |
DOCDIST = doc/gforth.info doc/gforth.info* doc/gforth.ps \ |
doc/vmgen.info doc/vmgen.info-* doc/vmgen.ps |
doc/vmgen.info doc/vmgen.info* doc/vmgen.ps |
|
|
KERNLS = kernl16b.fi- kernl16l.fi- \ |
KERNLS = kernl16b.fi- kernl16l.fi- \ |
kernl32b.fi- kernl32l.fi- \ |
kernl32b.fi- kernl32l.fi- \ |
Line 438 kernel/version.fs: version
|
Line 456 kernel/version.fs: version
|
echo ": version-string s\" $(VERSION)\" ;" > kernel/version.fs |
echo ": version-string s\" $(VERSION)\" ;" > kernel/version.fs |
|
|
more: engines $(FORTH_GEN) $(GEN) |
more: engines $(FORTH_GEN) $(GEN) |
|
@make check |
|
@$(FORTH_FAST) --diag -e bye |
|
|
#from the gcc Makefile: |
#from the gcc Makefile: |
#"Deletion of files made during compilation. |
#"Deletion of files made during compilation. |
Line 478 distclean: clean
|
Line 498 distclean: clean
|
-$(RM) -rf config.cache config.log config.status \ |
-$(RM) -rf config.cache config.log config.status \ |
engine/config.h Makefile Makedist engine/Makefile \ |
engine/config.h Makefile Makedist engine/Makefile \ |
stamp-h engine/stamp-h \ |
stamp-h engine/stamp-h \ |
doc/version.texi gforthmi vmgen |
doc/version.texi gforthmi vmgen \ |
|
prim-fast.b $(FORTH_GEN_ENGINE_FAST) |
|
|
#realclean is useless, but dangerous, so it's commented out |
#realclean is useless, but dangerous, so it's commented out |
realclean: distclean |
realclean: distclean |
Line 494 virtualclean: mostlyclean
|
Line 515 virtualclean: mostlyclean
|
#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 machpc.fs FORCE |
-sed -e 's/@[^ ]*CALLFLAG@/false/g' -e 's/@[P]EEPHOLEFLAG@/true/g' <machpc.fs.in >machpc.fs |
-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 |
-$(RM) machpc.fs |
|
|
Line 600 check: gforths gforth.fi
|
Line 621 check: gforths gforth.fi
|
@echo "*** Check successful ***" |
@echo "*** Check successful ***" |
|
|
checkone test: gforth$(EXE) gforth.fi |
checkone test: gforth$(EXE) gforth.fi |
$(FORTH) test/tester.fs test/coretest.fs test/postpone.fs test/dbltest.fs test/string.fs test/float.fs test/gforth.fs test/deferred.fs -e bye | tr -d '\015' | diff -c - $(srcdir)/test/coretest.out |
$(FORTH) test/tester.fs test/coretest.fs test/postpone.fs test/dbltest.fs test/string.fs test/float.fs test/gforth.fs test/deferred.fs test/coreext.fs -e bye | tr -d '\015' | diff -c - $(srcdir)/test/coretest.out |
$(FORTH) test/other.fs -e bye |
$(FORTH) test/other.fs -e bye |
$(FORTHS) test/signals.fs -e bye |
$(FORTHS) test/signals.fs -e bye |
$(FORTH) code.fs test/checkans.fs -e bye | tr -d '\015' | diff -c - $(srcdir)/test/checkans.out |
$(FORTH) code.fs test/checkans.fs -e bye | tr -d '\015' | diff -c - $(srcdir)/test/checkans.out |
Line 609 checkone test: gforth$(EXE) gforth.fi
|
Line 630 checkone test: gforth$(EXE) gforth.fi
|
tr -d '\015' | diff -c - $(srcdir)/engine/prim.i |
tr -d '\015' | diff -c - $(srcdir)/engine/prim.i |
|
|
test/primtest.fi: test/primtest.fs mach32l.fs cross.fs |
test/primtest.fi: test/primtest.fs mach32l.fs cross.fs |
$(FORTHB) -e 's" mach32l.fs"' $(srcdir)/test/primtest.fs -e "save-cross $@ $(bindir)/gforth-$(VERSION) bye" |
$(FORTHB) -e 's" mach32b.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 717 prim.b: prim cache0.vmg
|
Line 738 prim.b: prim cache0.vmg
|
m4 -s $(srcdir)/prim >$@ |
m4 -s $(srcdir)/prim >$@ |
sleep 1 #should make hpux-workaround unnecessary |
sleep 1 #should make hpux-workaround unnecessary |
|
|
prim-fast.b: prim cache1.vmg peeprules.vmg |
prim-fast.b: prim cache-fast$(STACK_CACHE_DEFAULT_FAST).vmg peeprules.vmg |
m4 -DM4_ENGINE_FAST -s $(srcdir)/prim >$@ |
m4 -DSTACK_CACHE_FILE=cache-fast$(STACK_CACHE_DEFAULT_FAST).vmg -s $(srcdir)/prim >$@ |
sleep 1 #should make hpux-workaround unnecessary |
sleep 1 #should make hpux-workaround unnecessary |
|
|
$(FORTH_GEN_ENGINE_FAST): prim-fast.b prims2x.fs |
$(FORTH_GEN_ENGINE_FAST): prim-fast.b prims2x.fs |