--- gforth/Makefile.in 2008/12/14 18:35:13 1.441 +++ gforth/Makefile.in 2011/11/17 18:45:52 1.464 @@ -1,6 +1,6 @@ #Makefile for Gforth -#Copyright (C) 1995,1996,1997,1998,2000,2003,2004,2005,2006,2007,2008 Free Software Foundation, Inc. +#Copyright (C) 1995,1996,1997,1998,2000,2003,2004,2005,2006,2007,2008,2009,2010 Free Software Foundation, Inc. #This file is part of Gforth. @@ -47,6 +47,29 @@ PATHSEP = @PATHSEP@ EC = @EC@ +# ------------ Install Directories + +VPATH = @srcdir@ +prefix = @prefix@ +exec_prefix = @exec_prefix@ +srcdir = @srcdir@ +bindir = @bindir@ +#read-only architecture-independent files +datarootdir = @datarootdir@ +datadir = @datadir@ +#read-only architecture-dependent non-ascii files +libdir = @libdir@ +libccdir = $(subst $(DESTDIR),,$(libdir)/gforth/$(VERSION)/libcc-named/) +includedir = @includedir@ +infodir = @infodir@ +htmldir = @htmldir@ +mandir = @mandir@ +man1dir= $(mandir)/man1 +man1ext= .1 +#older emacses have their site-lisp in $(libdir)/emacs/ +emacssitelispdir=@lispdir@ +siteforthdir=$(datadir)/gforth/site-forth + # ------------- Utility programs SHELL = /bin/sh @@ -64,7 +87,7 @@ INSTALL_INFO = @INSTALL_INFO@ LN_S = @LN_S@ M4 = @M4@ GCC = @CC@ -EMACS = emacs +EMACS = @EMACS@ LIBTOOL = @GNU_LIBTOOL@ PREFORTH = ./preforth -p ".$(PATHSEP)~+$(PATHSEP)$(srcdir)" CC = $(GCC) @@ -82,11 +105,11 @@ BUILDFORTH = $(ENGINE) --die-on-signal - # the forth system plus flags we use to build FORTHB = $(BUILDFORTH) exboot.fs -e 'fpath= .|~+|$(srcdir)' # the Forth system for running prims2x.fs -FORTHP = $(FORTH) +#FORTHP = $(FORTH) ENGINE_FAST = ./gforth-fast FORTH_FAST = $(ENGINE_FAST) $(FORTH_ARGS) FORTHKFLAGS= --die-on-signal -p ".$(PATHSEP)~+$(PATHSEP)$(srcdir)" -i $(kernel_fi) -FORTHK = $(ENGINE) $(FORTHKFLAGS) +FORTHK = ./gforthker -p ".$(PATHSEP)~+$(PATHSEP)$(srcdir)" #FORTHP = $(ENGINE) --die-on-signal -i ./$(kernel_fi) #the "-2 image-included-files +!" undoes the change to image-included-files # in exboot.fs @@ -117,40 +140,17 @@ LDLIBS = @LIBS@ STACK_CACHE_REGS = @STACK_CACHE_REGS@ STACK_CACHE_DEFAULT_FAST = @STACK_CACHE_DEFAULT_FAST@ -# ------------ Install Directories - -VPATH = @srcdir@ -prefix = @prefix@ -exec_prefix = @exec_prefix@ -srcdir = @srcdir@ -bindir = @bindir@ -#read-only architecture-independent files -datarootdir = @datarootdir@ -datadir = @datadir@ -#read-only architecture-dependent non-ascii files -libdir = @libdir@ -libccdir = $(libdir)/gforth/$(VERSION)/libcc-named/ -includedir = @includedir@ -infodir = @infodir@ -htmldir = @htmldir@ -mandir = @mandir@ -man1dir= $(mandir)/man1 -man1ext= .1 -#older emacses have their site-lisp in $(libdir)/emacs/ -emacssitelispdir=@lispdir@ -siteforthdir=$(datadir)/gforth/site-forth - PROFOBJS = @PROFOBJS@ PROFEXES = @PROFEXES@ -CVSDIRS = CVS engine/CVS kernel/CVS doc/CVS asm/CVS ec/CVS test/CVS \ - compat/CVS unix/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/alpha/CVS arch/4stack/CVS arch/misc/CVS arch/6502/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/arm/CVS arch/r8c/CVS +INSTALLDIRS = kernel doc asm ec test \ + compat unix \ + arch arch/generic arch/m68k arch/mips \ + arch/386 arch/hppa arch/sparc arch/power \ + arch/alpha arch/4stack arch/misc arch/6502 \ + arch/8086 arch/avr arch/c165 arch/h8 \ + arch/shboom arch/sharc arch/ia64 arch/amd64 \ + arch/arm arch/r8c INCLUDES = engine/forth.h engine/threaded.h engine/io.h engine/longlong.h @@ -181,6 +181,7 @@ KERN_SRC = \ kernel/basics.fs \ kernel/int.fs \ kernel/comp.fs \ + kernel/recognizer.fs \ kernel/io.fs \ kernel/input.fs \ kernel/license.fs \ @@ -189,7 +190,8 @@ KERN_SRC = \ kernel/doers.fs \ kernel/getdoers.fs \ kernel/pass.fs \ - kernel/xchars.fs + kernel/xchars.fs \ + string.fs EC_SRC = \ asm/README \ @@ -207,7 +209,7 @@ EC_SRC = \ ec/nesting.fs \ build-ec.in -GFORTH_FI_SRC = \ +GFORTH_FI_SRC1=\ assert.fs \ backtrac.fs \ blocked.fb \ @@ -218,7 +220,8 @@ GFORTH_FI_SRC = \ debugs.fs \ dis-gdb.fs \ ekey.fs \ - envos.fs \ + +GFORTH_FI_SRC2=\ savesys.fs \ environ.fs \ errors.fs \ @@ -235,6 +238,7 @@ GFORTH_FI_SRC = \ locals.fs \ look.fs \ mkdir.fs \ + prelude.fs \ quotes.fs \ search.fs \ see.fs \ @@ -242,6 +246,7 @@ GFORTH_FI_SRC = \ simp-see.fs \ source.fs \ startup.fs \ + str-exec.fs \ struct.fs \ struct0x.fs \ stuff.fs \ @@ -254,17 +259,30 @@ GFORTH_FI_SRC = \ arch/386/asm.fs arch/386/disasm.fs \ arch/amd64/asm.fs arch/amd64/disasm.fs \ arch/alpha/asm.fs arch/alpha/disasm.fs arch/alpha/testasm.fs\ + arch/arm/asm.fs arch/arm/disasm.fs \ + arch/arm/testdisasm.fs arch/arm/testdisasm.out arch/arm/Makefile \ arch/mips/asm.fs arch/mips/disasm.fs arch/mips/insts.fs \ arch/mips/testasm.fs arch/mips/testdisasm.fs \ arch/power/asm.fs arch/power/disasm.fs arch/power/inst.fs +# execlude envos.fs into list of distributed sources +GFORTH_FI_DIST_SRC = \ + $(GFORTH_FI_SRC1) \ + $(GFORTH_FI_SRC2) + +GFORTH_FI_SRC = \ + $(GFORTH_FI_SRC1) \ + envos.fs \ + $(GFORTH_FI_SRC2) + LIBCC_SRC = cstr.fs unix/socket.fs 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) \ + +FORTH_SRC = $(KERN_SRC) $(GFORTH_FI_DIST_SRC) $(EC_SRC) $(LIBCC_DIST_SRC) \ ans-report.fs ansi.fs answords.fs \ colorize.fs comp-i.fs complex.fs \ depth-changes.fs dosekey.fs doskey.fs ds2texi.fs \ @@ -281,6 +299,7 @@ FORTH_SRC = $(KERN_SRC) $(GFORTH_FI_SRC) test/other.fs test/signals.fs test/checkans.fs \ test/primtest.fs test/coreext.fs test/deferred.fs \ test/coremore.fs test/gforth-nofast.fs test/libcc.fs \ + test/macros.fs \ bubble.fs siev.fs matrix.fs fib.fs \ oof.fs oofsampl.fs objects.fs objexamp.fs mini-oof.fs moof-exm.fs \ moofglos.fs fixpath.fs \ @@ -295,6 +314,7 @@ COMPAT = compat/README \ compat/exception.fs \ compat/execute-parsing.fs \ compat/loops.fs \ + compat/macros.fs \ compat/required.fs \ compat/strcomp.fs \ compat/struct.fs \ @@ -310,6 +330,7 @@ ARCHS = \ arch/generic/machine.h \ arch/m68k/machine.h \ arch/mips/machine.h \ + arch/mips/check_prim.c \ arch/386/machine.h \ arch/hppa/machine.h \ arch/hppa/cache.c \ @@ -362,7 +383,6 @@ ARCHS = \ arch/r8c/lauflicht.fs \ arch/r8c/tasker.fs \ arch/r8c/terminal.fs \ - arch/r8c/tt.fs \ arch/sharc/unistd.h #not included in distribution until distribution terms are included: @@ -379,9 +399,10 @@ ARCHS_NO_DIST = \ arch/c165/asm.fs \ arch/c165/mach.fs \ arch/c165/prim.fs \ - arch/h8/asm.fs + arch/h8/asm.fs \ + arch/r8c/tt.fs -VMGEN_EX = vmgen-ex/CVS vmgen-ex/Makefile vmgen-ex/README vmgen-ex/disasm.c \ +VMGEN_EX = vmgen-ex/Makefile vmgen-ex/README vmgen-ex/disasm.c \ vmgen-ex/engine.c vmgen-ex/fib.mini \ vmgen-ex/mini-inst.vmg vmgen-ex/mini-super.vmg vmgen-ex/mini.h \ vmgen-ex/mini.l vmgen-ex/mini.y vmgen-ex/peephole-blacklist \ @@ -404,8 +425,8 @@ ENGINE_SOURCES = engine/Makefile.in engi engine/fnmatch.h engine/fnmatch.c \ engine/makefile.dos engine/makefile.os2 -SOURCES = $(CVSDIRS) $(ENGINE_SOURCES) compat Makefile.in Makedist.in \ - gforthmi.in vmgen.in preforth.in gfgen README.vmgen NEWS.vmgen \ +SOURCES = $(ENGINE_SOURCES) compat Makefile.in Makedist.in \ + gforthmi.in vmgen.in preforth.in gforthker.in gfgen README.vmgen NEWS.vmgen \ 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 \ @@ -427,11 +448,11 @@ SOURCES = $(CVSDIRS) $(ENGINE_SOURCES) c RCS_FILES = ToDo model high-level -ENGINES = gforth$(EC)$(EXE) gforth-ditc$(EC)$(EXE) gforth-itc$(EC)$(EXE) $(PROFEXES) +ENGINES = gforth$(EC)$(EXE) @NO_EC@ gforth-ditc$(EC)$(EXE) gforth-itc$(EC)$(EXE) $(PROFEXES) -ENGINES_FAST = gforth-fast$(OPT)$(EC)$(EXE) #gforth-native$(OPT)$(EC)$(EXE) +ENGINES_FAST = @NO_EC@ gforth-fast$(OPT)$(EC)$(EXE) #gforth-native$(OPT)$(EC)$(EXE) -GEN = $(ENGINES) $(ENGINES_FAST) gforth.elc +GEN = $(ENGINES) $(ENGINES_FAST) @gforth_elc@ # things that need a working forth system to be generated FORTH_GEN_ENGINE=engine/prim.i engine/prim_lab.i engine/prim_names.i \ @@ -445,7 +466,7 @@ FORTH_GEN_ENGINE_FAST= \ engine/costs-fast.i engine/super2-fast.i 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@ @NO_CROSS@ gforth.fi # this is used for antidependences, FORTH_GEN1 = $(FORTH_GEN0) @kernel_fi@ build-ec @@ -474,7 +495,7 @@ GEN_PRECIOUS = $(FORTH_GEN) $(KERNLS) \ .SUFFIXES: .SUFFIXES: .c .o -all: kernel/version.fs more check +all: kernel/version.fs more @NO_CROSS@ check # use this dependency for phony targets just as mostlyclean,... FORCE: ; @@ -613,13 +634,14 @@ install: gforth$(EC)$(EXE) $(FORTH_SRC) (cd $(DESTDIR)$(bindir) && $(LN_S) vmgen-$(VERSION) vmgen) -$(INSTALL_DATA) $(srcdir)/doc/gforth.1 $(DESTDIR)$(man1dir) -for i in $(srcdir)/doc/gforth.info* $(srcdir)/doc/vmgen.info*; do $(INSTALL_DATA) $$i $(DESTDIR)$(infodir); done - for i in $(FORTH_SRC) $(COMPAT) prim; do \ + for i in $(FORTH_SRC) $(COMPAT) envos.fs prim; do \ $(INSTALL_DATA) $(srcdir)/$$i $(DESTDIR)$(datadir)/gforth/$(VERSION)/$$i; \ done $(INSTALL_DATA) $(kernel_fi) $(DESTDIR)$(datadir)/gforth/$(VERSION) @if test -d "$(DESTDIR)$(emacssitelispdir)"; then \ - $(INSTALL_DATA) gforth.el $(DESTDIR)$(emacssitelispdir); \ - $(INSTALL_DATA) gforth.elc $(DESTDIR)$(emacssitelispdir); \ + for i in gforth.el @gforth_elc@; do \ + $(INSTALL_DATA) $$i $(DESTDIR)$(emacssitelispdir); \ + done; \ else \ echo '>>>>>Please install gforth.{el,elc} in your .../emacs/site-lisp directory'; \ fi @@ -643,10 +665,10 @@ installdirs: mkinstalldirs for i in $(bindir) $(man1dir) $(infodir) $(libdir)/gforth/$(VERSION) $(datadir)/gforth/$(VERSION) $(libdir)/gforth/site-forth $(siteforthdir) $(includedir)/gforth/$(VERSION) $(libccdir); do \ $(srcdir)/mkinstalldirs $(DESTDIR)$$i; \ done - for i in $(CVSDIRS); do \ - $(srcdir)/mkinstalldirs $(DESTDIR)$(datadir)/gforth/$(VERSION)/`dirname $$i`; \ + # + for i in $(INSTALLDIRS); do \ + $(srcdir)/mkinstalldirs $(DESTDIR)$(datadir)/gforth/$(VERSION)/$$i; \ done - $(RM) -rf $(DESTDIR)$(datadir)/gforth/$(VERSION)/engine #deinstall all files specific to this version of gforth #to uninstall version foo, type `make uninstall VERSION=foo' @@ -657,7 +679,7 @@ uninstall: FORCE build-libcc-named: $(LIBCC_BUILD_SRC) $(FORTH_GEN) $(GEN) FORCE $(RMTREE) 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" $(srcdir)/$$i -e bye; done + 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\" $(DESTDIR)$(libccdir)\" ; is replace-rpath" $(srcdir)/$$i -e bye; done check: gforths gforth.fi $(MAKE) checkone check-nofast ENGINE="./gforth --no-dynamic" >/dev/null 2>&1 @@ -670,10 +692,10 @@ check: gforths gforth.fi ./gforth-fast --diag -e bye checkone test: gforth.fi engine/prim-s.i - $(FORTH) test/tester.fs test/coretest.fs test/postpone.fs test/dbltest.fs test/string.fs test/float.fs test/deferred.fs test/coreext.fs test/search.fs -e bye 2>&1 | 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/deferred.fs test/coreext.fs test/search.fs -e bye 2>/dev/null | tr -d '\015' | diff -c - $(srcdir)/test/coretest.out $(FORTH) test/other.fs -e bye $(FORTHS) test/signals.fs -e bye - $(FORTHS) test/coremore.fs test/gforth.fs -e bye 2>&1 | tr -d '\015' | diff -c - $(srcdir)/test/gforth.out + $(FORTHS) test/coremore.fs test/gforth.fs test/macros.fs -e bye 2>&1 | tr -d '\015' | diff -c - $(srcdir)/test/gforth.out $(FORTH) code.fs test/checkans.fs -e bye | tr -d '\015' | diff -c - $(srcdir)/test/checkans.out $(FORTH) prims2x.fs -e \ "c-flag on s\" prim.i\" out-filename 2! s\" $(srcdir)/prim.b\" ' output-c ' output-c-combined process-file bye"| \ @@ -823,7 +845,7 @@ gforth$(OPT)$(EC)$(EXE): $(ENGINE_SOURCE $(CP) engine/$@ $@ && \ $(MASSAGE_EXE) $@; \ @GFORTH_EXE@; \ - $(MAKE) checkone check-nofast ENGINE=./engine/$@; \ + @NO_CROSS@ $(MAKE) checkone check-nofast ENGINE=./engine/$@; \ fi optgforth: @@ -837,7 +859,7 @@ gforth-fast$(OPT)$(EC)$(EXE): $(ENGINE_S $(CP) engine/$@ $@ && \ $(MASSAGE_EXE) $@; \ @GFORTHFAST_EXE@; \ - $(MAKE) checkone ENGINE=./engine/$@; \ + @NO_CROSS@ $(MAKE) checkone ENGINE=./engine/$@; \ fi optgforth-fast: