| |
|
| RCS_FILES = ToDo model high-level |
RCS_FILES = ToDo model high-level |
| |
|
| ENGINES = gforth$(EXE) gforth-ditc$(EXE) gforth-fast$(EXE) gforth-itc$(EXE) gforth-prof$(EXE) #gforth-native$(EXE) |
ENGINES = gforth$(EXE) gforth-ditc$(EXE) gforth-fast$(EXE) gforth-itc$(EXE) #gforth-prof$(EXE) #gforth-native$(EXE) |
| |
|
| GEN = $(ENGINES) kernel/version.fs |
GEN = $(ENGINES) kernel/version.fs |
| |
|
| engine/prim_superend.i engine/profile.i \ |
engine/prim_superend.i engine/profile.i \ |
| engine/prim_num.i engine/prim_grp.i \ |
engine/prim_num.i engine/prim_grp.i \ |
| engine/costs.i engine/super2.i |
engine/costs.i engine/super2.i |
| FORTH_GEN0 = prim.b $(FORTH_GEN_ENGINE) kernel/aliases.fs kernel/prim.fs |
FORTH_GEN_PRIMB = $(FORTH_GEN_ENGINE) kernel/aliases.fs kernel/prim.fs |
| |
FORTH_GEN0 = prim.b $(FORTH_GEN_PRIMB) |
| 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@ |
| -$(RM) -rf $(GEN) *.o engine/*.o arch/*/*.o version \ |
-$(RM) -rf $(GEN) *.o engine/*.o arch/*/*.o version \ |
| engine/gforth$(EXE) engine/gforth-fast$(EXE) \ |
engine/gforth$(EXE) engine/gforth-fast$(EXE) \ |
| engine/gforth-native$(EXE) engine/gforth-itc$(EXE) \ |
engine/gforth-native$(EXE) engine/gforth-itc$(EXE) \ |
| engine/gforth-ditc$(EXE) engine/gforth-prof$(EXE) |
engine/gforth-ditc$(EXE) #engine/gforth-prof$(EXE) |
| |
|
| distclean: clean |
distclean: clean |
| -$(RM) -rf config.cache config.log config.status \ |
-$(RM) -rf config.cache config.log config.status \ |
| #Some makes (Ultrix, SunOS, IRIX) are so broken, they cannot read the |
#Some makes (Ultrix, SunOS, IRIX) are so broken, they cannot read the |
| #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 FORCE |
|
| |
dist: Makedist machpc.fs 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 |
| |
|
| dosdist: Makedist FORCE |
dosdist: Makedist machpc.fs 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$@ |
| htmldist: Makedist FORCE |
htmldist: Makedist FORCE |
| $(MAKE) -f Makedist d$@ |
$(MAKE) -f Makedist d$@ |
| |
|
| bindist: Makedist FORCE |
bindist: Makedist machpc.fs 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 FORCE |
binonlydist: Makedist machpc.fs 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 |
| |
# touch some of the files if it acts up |
| |
hpux-workaround: |
| |
touch $(FORTH_GEN_PRIMB) |
| |
|
| #strip gforth, because the debugging stuff is hardly useful once |
#strip gforth, because the debugging stuff is hardly useful once |
| # gforth manages to execute more than a few primitives. |
# gforth manages to execute more than a few primitives. |
| |
|
| prim.b: prim peeprules.vmg |
prim.b: prim peeprules.vmg |
| m4 -s $(srcdir)/prim >$@ |
m4 -s $(srcdir)/prim >$@ |
| |
sleep 1 #should make hpux-workaround unnecessary |
| |
|
| engine/prim.i: prim.b prims2x.fs |
engine/prim.i: prim.b prims2x.fs |
| $(FORTHP) prims2x.fs -e "c-flag on s\" prim.i\" save-mem out-filename 2! s\" prim.b\" ' output-c ' output-c-combined process-file bye" >$@- |
$(FORTHP) prims2x.fs -e "c-flag on s\" prim.i\" save-mem out-filename 2! s\" prim.b\" ' output-c ' output-c-combined process-file bye" >$@- |
| $(CP) gforth.tags $@ |
$(CP) gforth.tags $@ |
| |
|
| install.TAGS: gforth.TAGS |
install.TAGS: gforth.TAGS |
| sed 's:^\$(srcdir)/:$(datadir)/gforth/$(VERSION)/:' gforth.TAGS >install.TAGS |
sed 's;^\$(srcdir)/;$(datadir)/gforth/$(VERSION)/;' gforth.TAGS >install.TAGS |
| |
|
| gforth.TAGS: @kernel_fi@ gforth$(EXE) $(GFORTH_FI_SRC) prim.TAGS kernel.TAGS |
gforth.TAGS: @kernel_fi@ gforth$(EXE) $(GFORTH_FI_SRC) prim.TAGS kernel.TAGS |
| $(FORTHK) etags.fs except.fs startup.fs -e bye |
$(FORTHK) etags.fs except.fs startup.fs -e bye |
| doc/vmgen.txt: $(VMGEN_TEXI) |
doc/vmgen.txt: $(VMGEN_TEXI) |
| -cd doc; $(MAKEINFO) --no-headers --no-split vmgen.texi >vmgen.txt |
-cd doc; $(MAKEINFO) --no-headers --no-split vmgen.texi >vmgen.txt |
| |
|
| doc: info doc/gforth doc/vmgen doc/gforth.ps doc/vmgen.ps doc/gforth.txt doc/vmgen.txt TAGS |
doc: gforth.fi info doc/gforth doc/vmgen doc/gforth.ps doc/vmgen.ps doc/gforth.txt doc/vmgen.txt TAGS |
| |
|
| # 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. |