[gforth] / gforth / Attic / Makefile  

gforth: gforth/Attic/Makefile


1 : anton 1.1 #Copyright 1992 by the ANSI figForth Development Group
2 :    
3 :     RM = echo 'Trying to remove'
4 :     GCC = gcc
5 : anton 1.11 FORTH = gforth
6 : anton 1.1 CC = gcc
7 : pazsan 1.14 SWITCHES = \
8 : anton 1.15 -fno-defer-pop -fcaller-saves -m486 \
9 :     -D_POSIX_VERSION -DUSE_FTOS \
10 :     #-DDIRECT_THREADED #-DFORCE_REG #-DNDEBUG #turn off assertions
11 : anton 1.1 CFLAGS = -O4 -Wall -g $(SWITCHES)
12 :    
13 :     #-Xlinker -n puts text and data into the same 256M region
14 :     #John Wavrik should use -Xlinker -N to get a writable text (executable)
15 : pazsan 1.8 LDFLAGS = -g -Xlinker -N
16 : anton 1.3 LDLIBS = -lm
17 : anton 1.1
18 :     EMACS = emacs
19 :    
20 :     INCLUDES = forth.h io.h
21 :    
22 :     FORTH_SRC = cross.fs debug.fs environ.fs errore.fs extend.fs \
23 : pazsan 1.13 filedump.fs glosgen.fs kernal.fs look.fs mach32b.fs \
24 :     mach32l.fs main.fs other.fs search-order.fs see.fs sieve.fs \
25 : anton 1.1 struct.fs tools.fs toolsext.fs vars.fs wordinfo.fs
26 :    
27 :     SOURCES = Makefile primitives primitives2c.el engine.c main.c io.c \
28 :     apollo68k.h decstation.h 386.h hppa.h sparc.h \
29 :     $(INCLUDES) $(FORTH_SRC)
30 :    
31 :     RCS_FILES = $(SOURCES) INSTALL ToDo model high-level
32 :    
33 : anton 1.11 GEN = gforth
34 : anton 1.1
35 : anton 1.3 GEN_PRECIOUS = primitives.i prim_labels.i primitives.b prim_alias.4th aliases.fs
36 : anton 1.1
37 :     OBJECTS = engine.o io.o main.o
38 :    
39 : anton 1.3 # things that need a working forth system to be generated
40 :     # this is used for antidependences,
41 : anton 1.12 FORTH_GEN = primitives.i prim_labels.i prim_alias.4th kernl32l.fi kernl32b.fi
42 : anton 1.3
43 : anton 1.11 all: gforth aliases.fs
44 : anton 1.1
45 :     #from the gcc Makefile:
46 :     #"Deletion of files made during compilation.
47 :     # There are four levels of this:
48 :     # `mostlyclean', `clean', `distclean' and `realclean'.
49 :     # `mostlyclean' is useful while working on a particular type of machine.
50 :     # It deletes most, but not all, of the files made by compilation.
51 :     # It does not delete libgcc.a or its parts, so it won't have to be recompiled.
52 :     # `clean' deletes everything made by running `make all'.
53 :     # `distclean' also deletes the files made by config.
54 :     # `realclean' also deletes everything that could be regenerated automatically."
55 :    
56 :     clean:
57 :     -rm $(GEN)
58 :    
59 :     distclean: clean
60 :     -rm machine.h
61 :    
62 :     realclean: distclean
63 :     -rm $(GEN_PRECIOUS)
64 :    
65 :     current: $(RCS_FILES)
66 :    
67 : anton 1.11 gforth: $(OBJECTS) $(FORTH_GEN)
68 : pazsan 1.14 -cp gforth gforth~
69 : anton 1.1 $(GCC) $(LDFLAGS) $(OBJECTS) $(LDLIBS) -o $@
70 :    
71 : anton 1.12 kernl32l.fi: main.fs search-order.fs cross.fs aliases.fs vars.fs add.fs \
72 : anton 1.9 errore.fs kernal.fs extend.fs tools.fs toolsext.fs \
73 : pazsan 1.13 mach32l.fs $(FORTH_GEN)
74 : pazsan 1.14 -cp kernl32l.fi kernl32l.fi~
75 : pazsan 1.13 $(FORTH) -e 's" mach32l.fs" r/o open-file throw' main.fs
76 : anton 1.3
77 : anton 1.12 kernl32b.fi: main.fs search-order.fs cross.fs aliases.fs vars.fs add.fs \
78 :     errore.fs kernal.fs extend.fs tools.fs toolsext.fs \
79 : pazsan 1.13 mach32b.fs $(FORTH_GEN)
80 : pazsan 1.14 -cp kernl32b.fi kernl32b.fi~
81 : pazsan 1.13 $(FORTH) -e 's" mach32b.fs" r/o open-file throw' main.fs
82 : anton 1.3
83 : anton 1.1 engine.s: engine.c primitives.i prim_labels.i machine.h $(INCLUDES)
84 :     $(GCC) $(CFLAGS) -S engine.c
85 :    
86 :     engine.o: engine.c primitives.i prim_labels.i machine.h $(INCLUDES)
87 :    
88 :     primitives.b: primitives
89 :     m4 primitives >$@
90 :    
91 : anton 1.3 primitives.i : primitives.b prims2x.fs
92 : pazsan 1.8 $(FORTH) prims2x.fs -e "s\" primitives.b\" ' output-c process-file bye" >$@
93 : anton 1.1
94 : anton 1.3 prim_labels.i : primitives.b prims2x.fs
95 : pazsan 1.8 $(FORTH) prims2x.fs -e "s\" primitives.b\" ' output-label process-file bye" >$@
96 : anton 1.1
97 : pazsan 1.8 aliases.fs: primitives.b prims2x.fs
98 :     $(FORTH) prims2x.fs -e "s\" primitives.b\" ' output-alias process-file bye" >$@
99 : anton 1.1
100 : anton 1.3 #primitives.4th: primitives.b primitives2c.el
101 :     # $(EMACS) -batch -load primitives2c.el -funcall make-forth
102 : anton 1.1
103 :     #GNU make default rules
104 : anton 1.12 #% :: RCS/%,v
105 :     # co $@
106 :     #%.o : %.c $(INCLUDES)
107 :     # $(CC) $(CFLAGS) -c $< -o $@
108 :    

CVS Admin

Powered by ViewCVS 1.0-dev
(Powered by ViewCVS)

ViewCVS and CVS Help