version 1.404, 2008/07/13 23:37:00
|
version 1.426, 2008/10/08 20:54:09
|
Line 1
|
Line 1
|
#Makefile for Gforth |
#Makefile for Gforth |
|
|
#Copyright (C) 1995,1996,1997,1998,2000,2003,2004,2005,2006,2007 Free Software Foundation, Inc. |
#Copyright (C) 1995,1996,1997,1998,2000,2003,2004,2005,2006,2007,2008 Free Software Foundation, Inc. |
|
|
#This file is part of Gforth. |
#This file is part of Gforth. |
|
|
Line 66 INSTALL_INFO = @INSTALL_INFO@
|
Line 66 INSTALL_INFO = @INSTALL_INFO@
|
LN_S = @LN_S@ |
LN_S = @LN_S@ |
M4 = @M4@ |
M4 = @M4@ |
GCC = @CC@ |
GCC = @CC@ |
|
EMACS = emacs |
PREFORTH = ./preforth -p ".$(PATHSEP)~+$(PATHSEP)$(srcdir)" |
PREFORTH = ./preforth -p ".$(PATHSEP)~+$(PATHSEP)$(srcdir)" |
CC = $(GCC) |
CC = $(GCC) |
FORTHPATH = .$(PATHSEP)$(libdir)/gforth/site-forth$(PATHSEP)$(siteforthdir)$(PATHSEP)$(libdir)/gforth/$(VERSION)$(PATHSEP)$(datadir)/gforth/$(VERSION) |
FORTHPATH = .$(PATHSEP)$(libdir)/gforth/site-forth$(PATHSEP)$(siteforthdir)$(PATHSEP)$(libdir)/gforth/$(VERSION)$(PATHSEP)$(datadir)/gforth/$(VERSION) |
Line 230 GFORTH_FI_SRC = \
|
Line 231 GFORTH_FI_SRC = \
|
hash.fs \ |
hash.fs \ |
history.fs \ |
history.fs \ |
intcomp.fs \ |
intcomp.fs \ |
|
mkdir.fs \ |
libcc.fs \ |
libcc.fs \ |
locals.fs \ |
locals.fs \ |
look.fs \ |
look.fs \ |
|
mkdir.fs \ |
quotes.fs \ |
quotes.fs \ |
search.fs \ |
search.fs \ |
see.fs \ |
see.fs \ |
Line 256 GFORTH_FI_SRC = \
|
Line 259 GFORTH_FI_SRC = \
|
arch/mips/testasm.fs arch/mips/testdisasm.fs \ |
arch/mips/testasm.fs arch/mips/testdisasm.fs \ |
arch/power/asm.fs arch/power/disasm.fs arch/power/inst.fs |
arch/power/asm.fs arch/power/disasm.fs arch/power/inst.fs |
|
|
LIBCC_SRC = libffi.fs fflib.fs unix/socket.fs |
LIBCC_SRC = cstr.fs unix/socket.fs |
|
|
FORTH_SRC = $(KERN_SRC) $(GFORTH_FI_SRC) $(EC_SRC) $(LIBCC_SRC) \ |
LIBCC_DIST_SRC = libffi.fs fflib.fs $(LIBCC_SRC) |
|
|
|
LIBCC_BUILD_SRC = @LIBCC_BUILD_SRC@ $(LIBCC_SRC) |
|
|
|
FORTH_SRC = $(KERN_SRC) $(GFORTH_FI_SRC) $(EC_SRC) $(LIBCC_DIST_SRC) \ |
ans-report.fs ansi.fs answords.fs \ |
ans-report.fs ansi.fs answords.fs \ |
colorize.fs comp-i.fs complex.fs \ |
colorize.fs comp-i.fs complex.fs \ |
depth-changes.fs dosekey.fs doskey.fs ds2texi.fs \ |
depth-changes.fs dosekey.fs doskey.fs ds2texi.fs \ |
Line 348 ARCHS = \
|
Line 355 ARCHS = \
|
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.fs \ |
arch/r8c/asm-test.fs \ |
arch/r8c/mach.fs \ |
arch/r8c/prim.fs \ |
arch/r8c/prim.fs |
arch/r8c/errors.fs \ |
|
arch/r8c/tt.fs \ |
|
arch/r8c/tasker.fs \ |
|
arch/r8c/lauflicht.fs \ |
|
arch/r8c/terminal.fs \ |
|
arch/r8c/mach.fs |
|
|
|
#not included in distribution until distribution terms are included: |
#not included in distribution until distribution terms are included: |
ARCHS_NO_DIST = \ |
ARCHS_NO_DIST = \ |
Line 372 ARCHS_NO_DIST = \
|
Line 373 ARCHS_NO_DIST = \
|
arch/c165/mach.fs \ |
arch/c165/mach.fs \ |
arch/c165/prim.fs \ |
arch/c165/prim.fs \ |
arch/h8/asm.fs \ |
arch/h8/asm.fs \ |
|
arch/r8c/asm-test.fs \ |
|
arch/r8c/errors.fs \ |
|
arch/r8c/lauflicht.fs \ |
|
arch/r8c/tasker.fs \ |
|
arch/r8c/terminal.fs \ |
|
arch/r8c/tt.fs \ |
arch/sharc/unistd.h |
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 \ |
Line 399 ENGINE_SOURCES = engine/Makefile.in engi
|
Line 406 ENGINE_SOURCES = engine/Makefile.in engi
|
|
|
SOURCES = $(CVSDIRS) $(ENGINE_SOURCES) compat Makefile.in Makedist.in \ |
SOURCES = $(CVSDIRS) $(ENGINE_SOURCES) compat Makefile.in Makedist.in \ |
gforthmi.in vmgen.in preforth.in gfgen README.vmgen NEWS.vmgen \ |
gforthmi.in vmgen.in preforth.in gfgen README.vmgen NEWS.vmgen \ |
configure.in configure config.sub config.guess elisp-comp missing \ |
prims2x-0.6.2.fs \ |
stamp-h.in envos.fs.in \ |
autogen.sh configure.in configure config.sub config.guess \ |
|
elisp-comp missing 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.LIB COPYING.DOC AUTHORS ChangeLog Benchres aclocal.m4 \ |
COPYING COPYING.LIB COPYING.DOC AUTHORS ChangeLog Benchres aclocal.m4 \ |
Line 424 ENGINES = gforth$(EC)$(EXE) gforth-ditc$
|
Line 432 ENGINES = gforth$(EC)$(EXE) gforth-ditc$
|
|
|
ENGINES_FAST = gforth-fast$(OPT)$(EC)$(EXE) #gforth-native$(OPT)$(EC)$(EXE) |
ENGINES_FAST = gforth-fast$(OPT)$(EC)$(EXE) #gforth-native$(OPT)$(EC)$(EXE) |
|
|
GEN = $(ENGINES) $(ENGINES_FAST) kernel/version.fs gforth.elc |
GEN = $(ENGINES) $(ENGINES_FAST) gforth.elc |
|
|
# things that need a working forth system to be generated |
# things that need a working forth system to be generated |
FORTH_GEN_ENGINE=engine/prim.i engine/prim_lab.i engine/prim_names.i \ |
FORTH_GEN_ENGINE=engine/prim.i engine/prim_lab.i engine/prim_names.i \ |
Line 610 install: gforth$(EC)$(EXE) $(FORTH_SRC)
|
Line 618 install: gforth$(EC)$(EXE) $(FORTH_SRC)
|
done |
done |
$(INSTALL_DATA) $(kernel_fi) $(DESTDIR)$(datadir)/gforth/$(VERSION) |
$(INSTALL_DATA) $(kernel_fi) $(DESTDIR)$(datadir)/gforth/$(VERSION) |
@if test -d "$(DESTDIR)$(emacssitelispdir)"; then \ |
@if test -d "$(DESTDIR)$(emacssitelispdir)"; then \ |
|
$(INSTALL_DATA) gforth.el $(DESTDIR)$(emacssitelispdir); \ |
$(INSTALL_DATA) gforth.elc $(DESTDIR)$(emacssitelispdir); \ |
$(INSTALL_DATA) gforth.elc $(DESTDIR)$(emacssitelispdir); \ |
else \ |
else \ |
echo ">>>>>Please install gforth.elc in your .../emacs/site-lisp directory"; \ |
echo '>>>>>Please install gforth.{el,elc} in your .../emacs/site-lisp directory'; \ |
fi |
fi |
-$(RM) gforth.fi |
-$(RM) gforth.fi |
GFORTHD="./gforth-ditc -p $(DESTDIR)$(libdir)/gforth/site-forth$(PATHSEP)$(DESTDIR)$(siteforthdir)$(PATHSEP)$(DESTDIR)$(datadir)/gforth/$(VERSION) -i $(kernel_fi)" GFORTH="./gforth-ditc --die-on-signal -i $(kernel_fi) $(STARTUP)" includedir=$(includedir) bindir=$(bindir) libccdir=$(libccdir) GFORTHPATH=.:"$$GFORTHPATH" GFORTHDESTDIR="$(DESTDIR)" ./gforthmi gforth.fi $(FORTHSIZES) $(STARTUP) |
GFORTHD="./gforth-ditc -p $(DESTDIR)$(libdir)/gforth/site-forth$(PATHSEP)$(DESTDIR)$(siteforthdir)$(PATHSEP)$(DESTDIR)$(datadir)/gforth/$(VERSION) -i $(kernel_fi)" GFORTH="./gforth-ditc --die-on-signal -i $(kernel_fi) $(STARTUP)" includedir=$(includedir) bindir=$(bindir) libccdir=$(libccdir) GFORTHPATH=.:"$$GFORTHPATH" GFORTHDESTDIR="$(DESTDIR)" ./gforthmi gforth.fi $(FORTHSIZES) $(STARTUP) |
Line 620 install: gforth$(EC)$(EXE) $(FORTH_SRC)
|
Line 629 install: gforth$(EC)$(EXE) $(FORTH_SRC)
|
$(INSTALL_DATA) install.TAGS $(DESTDIR)$(datadir)/gforth/$(VERSION)/TAGS |
$(INSTALL_DATA) install.TAGS $(DESTDIR)$(datadir)/gforth/$(VERSION)/TAGS |
$(RM) gforth.fi install.TAGS |
$(RM) gforth.fi install.TAGS |
$(INSTALL_DATA) include/gforth/$(VERSION)/* $(DESTDIR)$(includedir)/gforth/$(VERSION) |
$(INSTALL_DATA) include/gforth/$(VERSION)/* $(DESTDIR)$(includedir)/gforth/$(VERSION) |
for i in $(LIBCC_SRC); do $(DESTDIR)$(bindir)/gforth -e "s\" $(DESTDIR)$(libccdir)\" libcc-named-dir-v 2! libcc-path clear-path libcc-named-dir libcc-path also-path" $$i -e bye; done |
for i in $(LIBCC_BUILD_SRC); do @GNU_LIBTOOL@ --silent --mode=install $(INSTALL) lib/gforth/$(VERSION)/libcc-named/`basename $$i .fs`.la $(DESTDIR)$(libccdir)`basename $$i .fs`.la; done |
$(POST_INSTALL) |
$(POST_INSTALL) |
$(INSTALL_INFO) --info-dir=$(DESTDIR)$(infodir) $(DESTDIR)$(infodir)/gforth.info |
$(INSTALL_INFO) --info-dir=$(DESTDIR)$(infodir) $(DESTDIR)$(infodir)/gforth.info |
#$(INSTALL_INFO) --info-dir=$(DESTDIR)$(infodir) $(DESTDIR)$(infodir)/vmgen.info |
#$(INSTALL_INFO) --info-dir=$(DESTDIR)$(infodir) $(DESTDIR)$(infodir)/vmgen.info |
Line 644 uninstall: FORCE
|
Line 653 uninstall: FORCE
|
-$(RM) -rf $(DESTDIR)$(libdir)/gforth/$(VERSION) $(DESTDIR)$(datadir)/gforth/$(VERSION) $(DESTDIR)$(bindir)/gforth-$(VERSION)$(EC)$(EXE) $(DESTDIR)$(bindir)/gforth-fast-$(VERSION)$(EC)$(EXE) $(DESTDIR)$(bindir)/gforth-itc-$(VERSION)$(EC)$(EXE) $(DESTDIR)$(bindir)/gforthmi-$(VERSION) $(DESTDIR)(bindir)/vmgen-$(VERSION) $(DESTDIR)$(includedir)/gforth/$(VERSION) |
-$(RM) -rf $(DESTDIR)$(libdir)/gforth/$(VERSION) $(DESTDIR)$(datadir)/gforth/$(VERSION) $(DESTDIR)$(bindir)/gforth-$(VERSION)$(EC)$(EXE) $(DESTDIR)$(bindir)/gforth-fast-$(VERSION)$(EC)$(EXE) $(DESTDIR)$(bindir)/gforth-itc-$(VERSION)$(EC)$(EXE) $(DESTDIR)$(bindir)/gforthmi-$(VERSION) $(DESTDIR)(bindir)/vmgen-$(VERSION) $(DESTDIR)$(includedir)/gforth/$(VERSION) |
@echo -e "To remove Gforth completely, type\n$(RM) -rf $(DESTDIR)$(bindir)/gforth$(EC)$(EXE) $(DESTDIR)$(bindir)/gforth-fast$(EC)$(EXE) $(DESTDIR)$(bindir)/gforth-itc$(EC)$(EXE) $(DESTDIR)$(bindir)/gforthmi $(DESTDIR)$(bindir)/vmgen $(DESTDIR)$(man1dir)/gforth.1 $(DESTDIR)$(infodir)/gforth.info* $(DESTDIR)$(datadir)/gforth $(DESTDIR)$(libdir)/gforth" |
@echo -e "To remove Gforth completely, type\n$(RM) -rf $(DESTDIR)$(bindir)/gforth$(EC)$(EXE) $(DESTDIR)$(bindir)/gforth-fast$(EC)$(EXE) $(DESTDIR)$(bindir)/gforth-itc$(EC)$(EXE) $(DESTDIR)$(bindir)/gforthmi $(DESTDIR)$(bindir)/vmgen $(DESTDIR)$(man1dir)/gforth.1 $(DESTDIR)$(infodir)/gforth.info* $(DESTDIR)$(datadir)/gforth $(DESTDIR)$(libdir)/gforth" |
|
|
check-libcc-named: $(LIBCC_SRC) |
check-libcc-named: $(LIBCC_BUILD_SRC) |
$(RMTREE) lib/gforth/$(VERSION)/libcc-named/ |
$(RMTREE) lib/gforth/$(VERSION)/libcc-named/ |
$(srcdir)/mkinstalldirs lib/gforth/$(VERSION)/libcc-named/ |
for i in $(LIBCC_BUILD_SRC); do ./gforth -e "s\" `pwd`/lib/gforth/$(VERSION)/libcc-named/\" libcc-named-dir-v 2! libcc-path clear-path libcc-named-dir libcc-path also-path :noname 2drop s\" $(libccdir)\" ; is replace-rpath" $$i -e bye; done |
for i in $(LIBCC_SRC); do ./gforth -e "s\" `pwd`/lib/gforth/$(VERSION)/libcc-named/\" libcc-named-dir-v 2! libcc-path clear-path libcc-named-dir libcc-path also-path" $$i -e bye; done |
|
|
|
check: gforths gforth.fi |
check: gforths gforth.fi |
$(MAKE) checkone check-nofast ENGINE="./gforth --no-dynamic" >/dev/null 2>&1 |
$(MAKE) checkone check-nofast ENGINE="./gforth --no-dynamic" >/dev/null 2>&1 |
Line 806 MAKELINE-noll-reg = OPT=-noll-reg OPTDEF
|
Line 814 MAKELINE-noll-reg = OPT=-noll-reg OPTDEF
|
MAKELINE-ll = OPT=-ll OPTDEFINES=-DFORCE_LL OPTOBJECTS= |
MAKELINE-ll = OPT=-ll OPTDEFINES=-DFORCE_LL OPTOBJECTS= |
MAKELINE-noll = OPT=-noll OPTDEFINES= OPTOBJECTS=dblsub.o |
MAKELINE-noll = OPT=-noll OPTDEFINES= OPTOBJECTS=dblsub.o |
|
|
gforth$(OPT)$(EC)$(EXE): $(ENGINE_SOURCES) $(FORTH_GEN_ENGINE) engine/config.h $(kernel_fi) |
gforth$(OPT)$(EC)$(EXE): $(ENGINE_SOURCES) $(FORTH_GEN_ENGINE) engine/config.h @kernel_anti_dependence@ |
if test -z "$(OPT)"; then \ |
if test -z "$(OPT)"; then \ |
for i in $(OPTS); do $(MAKE) optgforth OPT=$$i && $(CP) gforth$${i}$(EC)$(EXE) $@ && break; done; \ |
for i in $(OPTS); do $(MAKE) optgforth OPT=$$i && $(CP) gforth$${i}$(EC)$(EXE) $@ && break; done; \ |
else \ |
else \ |
( cd engine && $(MAKE) $@ ) && \ |
( cd engine && $(MAKE) $@ ) && \ |
$(CP) gforth$(OPT)$(EC)$(EXE) gforth~; \ |
|
$(CP) engine/$@ $@ && \ |
$(CP) engine/$@ $@ && \ |
$(MASSAGE_EXE) $@; \ |
$(MASSAGE_EXE) $@; \ |
@GFORTH_EXE@; \ |
@GFORTH_EXE@; \ |
Line 858 gforths: $(ENGINES) $(ENGINES_FAST)
|
Line 865 gforths: $(ENGINES) $(ENGINES_FAST)
|
|
|
# ------------- additional C primitives |
# ------------- additional C primitives |
|
|
%.c: %.pri prim2cl.fs |
.SUFFIXES: .c .pri |
|
|
|
.pri.c: $< prim2cl.fs |
$(FORTHK) prim2cl.fs -e "file $< altogether bye" >$@ |
$(FORTHK) prim2cl.fs -e "file $< altogether bye" >$@ |
|
|
%.so: %.c |
.c.so: $< |
$(GCC) -shared $(CFLAGS) $(CPPFLAGS) $< -o $@ |
$(GCC) -shared $(CFLAGS) $(CPPFLAGS) $< -o $@ |
|
|
# ------------- Make Documentation |
# ------------- Make Documentation |
Line 907 kernel.tags:
|
Line 916 kernel.tags:
|
|
|
#elc files |
#elc files |
gforth.elc: gforth.el |
gforth.elc: gforth.el |
emacs -batch -f batch-byte-compile $< |
-$(EMACS) -batch -f batch-byte-compile gforth.el |
|
|
#Documentation |
#Documentation |
|
|
Line 926 doc/gforth.texi: doc/gforth.ds prim.b ds
|
Line 935 doc/gforth.texi: doc/gforth.ds prim.b ds
|
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 |
$(FORTH) ds2texi.fs prims2x.fs -e "s\" $(srcdir)/prim.b\" ' register-doc ' noop process-file" doc/crossdoc.fd doc/doc.fd answords.fs -e bye |
$(FORTH) 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 |
-grep doc- doc/gforth.texi |
-grep doc- doc/gforth.texi| grep -v '^@c' |
|
|
dvi: doc/gforth.dvi doc/vmgen.dvi |
dvi: doc/gforth.dvi doc/vmgen.dvi |
|
|
Line 995 engine/config.h: stamp-h
|
Line 1004 engine/config.h: stamp-h
|
stamp-h: engine/config.h.in config.status stamp-h.in |
stamp-h: engine/config.h.in config.status stamp-h.in |
./config.status |
./config.status |
|
|
Makefile Makedist engine/Makefile gforthmi vmgen preforth machpc.fs doc/version.texi envos.fs build-ec: Makefile.in Makedist.in engine/Makefile.in gforthmi.in vmgen.in preforth.in machpc.fs.in doc/version.texi.in config.status configure.in envos.fs.in build-ec.in |
Makefile Makedist engine/Makefile gforthmi vmgen preforth machpc.fs doc/version.texi envos.fs build-ec: Makefile.in Makedist.in engine/Makefile.in gforthmi.in vmgen.in preforth.in machpc.fs.in doc/version.texi.in config.status configure.in envos.fs.in build-ec.in engine/libcc.h.in |
./config.status |
./config.status |
|
|
config.status: configure |
config.status: configure |