[gforth] / gforth / Makefile.in  

gforth: gforth/Makefile.in


1 : pazsan 1.1 #Copyright 1992 by the ANSI figForth Development Group
2 : anton 1.9 # To change the values of `make' variables: instead of editing Makefiles,
3 :     # (1) if the variable is set in `config.status', edit `config.status'
4 :     # (which will cause the Makefiles to be regenerated when you run `make');
5 :     # (2) otherwise, pass the desired values on the `make' command line.
6 : pazsan 1.1
7 : anton 1.9 #To do:
8 :     #use $(srcdir) to make compilation in a non-srcdir possible
9 :    
10 : pazsan 1.30 VERSION =0.1#gforth version
11 : anton 1.9 SHELL = /bin/sh
12 : pazsan 1.4 RM = rm
13 :     CP = cp
14 : anton 1.9 INSTALL = @INSTALL@
15 :     INSTALL_PROGRAM = @INSTALL_PROGRAM@
16 :     INSTALL_DATA = @INSTALL_DATA@
17 :     LN_S = @LN_S@
18 : pazsan 1.1 GCC = gcc
19 : anton 1.23 CC = $(GCC)
20 : anton 1.9 FORTH = ./gforth
21 : anton 1.22 STRIP = strip
22 : anton 1.9 TEXI2DVI = tex
23 :     DVI2PS = dvips
24 : anton 1.15 #you can get texi2html from http://asis01.cern.ch/infohtml/texi2html.html
25 :     TEXI2HTML = texi2html
26 : anton 1.11 MAKEINFO = makeinfo
27 : anton 1.9 XCFLAGS = @CFLAGS@
28 :     XDEFINES = @DEFS@
29 : anton 1.12 SWITCHES = $(XCFLAGS) $(XDEFINES) #-DNDEBUG #turn off assertions
30 : pazsan 1.17 ENGINE_FLAGS = -fno-defer-pop -fcaller-saves
31 : pazsan 1.30 DEBUGFLAG = @DEBUGFLAG@
32 :     CFLAGS = -pipe -O4 -Wall $(SWITCHES) -DDEFAULTPATH=\"$(datadir)/gforth/$(VERSION):$(libdir)/gforth/$(VERSION):.\"
33 : pazsan 1.1
34 :     #John Wavrik should use -Xlinker -N to get a writable text (executable)
35 : pazsan 1.30 XLDFLAGS = @LDFLAGS@
36 :     GCCLDFLAGS = @GCCLDFLAGS@
37 :     LDFLAGS = $(DEBUGFLAG) $(XLDFLAGS) $(GCCLDFLAGS)
38 : anton 1.9 LDLIBS = @LIBS@
39 :    
40 :     prefix = @prefix@
41 :     exec_prefix = @exec_prefix@
42 :     srcdir = @srcdir@
43 :     bindir = $(exec_prefix)/bin
44 :     #read-only architecture-independent files
45 :     datadir = $(prefix)/share
46 :     #read-only architecture-dependent non-ascii files
47 :     libdir = $(prefix)/lib
48 :     infodir = $(prefix)/info
49 :     mandir = $(prefix)/man/man1
50 : pazsan 1.1
51 :    
52 :     INCLUDES = forth.h io.h
53 :    
54 : pazsan 1.30 KERN_SRC = main.fs search-order.fs cross.fs aliases.fs vars.fs add.fs \
55 :     errore.fs kernal.fs version.fs extend.fs tools.fs toolsext.fs
56 :    
57 : anton 1.21 FORTH_SRC = anslocal.fs add.fs assert.fs ansi.fs blocks.fs bufio.fs checkans.fs \
58 : pazsan 1.6 colorize.fs cross.fs debug.fs debugging.fs doskey.fs ds2texi.fs \
59 :     dumpimage.fs environ.fs errore.fs etags.fs extend.fs filedump.fs \
60 :     float.fs glocals.fs glosgen.fs gray.fs hash.fs history.fs \
61 : anton 1.21 kernal.fs locals-test.fs look.fs main.fs makedoc.fs \
62 : pazsan 1.13 mach16b.fs mach16l.fs mach32b.fs mach32l.fs mach64b.fs mach64l.fs \
63 : pazsan 1.6 other.fs prims2x.fs random.fs search-order.fs see.fs sieve.fs \
64 :     startup.fs struct.fs tools.fs toolsext.fs tt.fs vars.fs vt100.fs \
65 : anton 1.21 vt100key.fs wordinfo.fs wordsets.fs \
66 :     tester.fs coretest.fs
67 : pazsan 1.1
68 : pazsan 1.17 SOURCES = Makefile.in configure.in configure config.sub config.guess \
69 : anton 1.19 install-sh INSTALL README ToDo BUGS model COPYING \
70 : pazsan 1.28 gforth.ds texinfo.tex gforth.1 gforth.el \
71 : pazsan 1.6 primitives engine.c main.c io.c \
72 : pazsan 1.17 m68k.h mips.h 386.h hppa.h cache.c sparc.h power.h alpha.h 32bit.h \
73 : anton 1.14 getopt.c getopt1.c getopt.h select.c \
74 : anton 1.24 ecvt.c memcmp.c strtol.c strtoul.c ansidecl.h memmove.c pow10.c \
75 : anton 1.25 strerror.c \
76 : pazsan 1.30 makefile.dos mkdosmf.sed configure.bat startup.dos \
77 : pazsan 1.6 glosgen.glo glossaries.doc \
78 : pazsan 1.1 $(INCLUDES) $(FORTH_SRC)
79 :    
80 : anton 1.5 RCS_FILES = ToDo model high-level
81 : pazsan 1.1
82 :     GEN = gforth
83 :    
84 : anton 1.9 OBJECTS = engine.o io.o main.o @LIBOBJS@ @getopt_long@
85 : pazsan 1.1
86 :     # things that need a working forth system to be generated
87 : anton 1.15 FORTH_GEN0 = primitives.b primitives.i prim_labels.i aliases.fs
88 :     FORTH_GEN = $(FORTH_GEN0) @KERNAL@
89 : pazsan 1.1 # this is used for antidependences,
90 : anton 1.15 FORTH_GEN1 = $(FORTH_GEN0) @gforth_fi@
91 : anton 1.5
92 :    
93 : pazsan 1.30 KERNLS = kernl16b.fi+ kernl16l.fi+ \
94 :     kernl32b.fi+ kernl32l.fi+ \
95 :     kernl64b.fi+ kernl64l.fi+
96 :    
97 :     GEN_PRECIOUS = $(FORTH_GEN) $(KERNLS) gforth.texi gforth.dvi gforth.ps Makefile configure
98 : pazsan 1.1
99 : anton 1.9 #standards.info recommends this:
100 :     .SUFFIXES:
101 :     .SUFFIXES: .c .o
102 :    
103 : pazsan 1.2 all:
104 : pazsan 1.7 if [ ! -f gforth ]; then $(MAKE) first; fi
105 : pazsan 1.2 $(MAKE) more
106 : pazsan 1.1
107 : pazsan 1.2 first: gforth
108 :    
109 : pazsan 1.3 more: $(FORTH_GEN) gforth
110 : pazsan 1.2
111 : pazsan 1.1 #from the gcc Makefile:
112 :     #"Deletion of files made during compilation.
113 :     # There are four levels of this:
114 :     # `mostlyclean', `clean', `distclean' and `realclean'.
115 :     # `mostlyclean' is useful while working on a particular type of machine.
116 :     # It deletes most, but not all, of the files made by compilation.
117 :     # It does not delete libgcc.a or its parts, so it won't have to be recompiled.
118 :     # `clean' deletes everything made by running `make all'.
119 :     # `distclean' also deletes the files made by config.
120 :     # `realclean' also deletes everything that could be regenerated automatically."
121 :    
122 :     clean:
123 : pazsan 1.4 -$(RM) $(GEN) *.o *.s
124 : pazsan 1.1
125 :     distclean: clean
126 : anton 1.9 -$(RM) machine.h gforth.fi config.cache config.log
127 : pazsan 1.1
128 :     realclean: distclean
129 : pazsan 1.4 -$(RM) $(GEN_PRECIOUS)
130 : pazsan 1.1
131 : anton 1.9 dist: $(SOURCES) $(FORTH_GEN)
132 : anton 1.21 -rm -rf gforth-$(VERSION)
133 :     mkdir gforth-$(VERSION)
134 : anton 1.22 cp -p $(SOURCES) $(FORTH_GEN) gforth-$(VERSION)
135 : anton 1.21 tar cvf - gforth-$(VERSION)|gzip -9 >gforth-$(VERSION).tar.gz
136 : pazsan 1.30 -rm -rf gforth-$(VERSION)
137 : pazsan 1.1
138 : anton 1.22 #a binary distribution contains the complete source distribution,
139 :     # the objects, the executable and the links. the objects are there for making
140 :     # make happy.
141 :     bindist: $(SOURCES) $(FORTH_GEN) gforth $(OBJECTS) config.status Makefile
142 :     -rm -rf gforth-$(VERSION)
143 :     mkdir gforth-$(VERSION)
144 :     cp -p -d $(SOURCES) config.status Makefile $(FORTH_GEN) gforth $(OBJECTS) machine.h gforth.fi gforth-$(VERSION)
145 :     strip gforth-$(VERSION)/gforth
146 :     tar cvf - gforth-$(VERSION)|gzip -9 >gforth-$(VERSION)-@host@.tar.gz
147 :    
148 :     #makes a package with only the stuff not present in the source
149 :     #package. For installation the source package is still needed!
150 :     #This is useful if you want to distribute many binary versions in
151 :     #little space (e.g., on floppy disk): Put the source package and
152 :     #all the binonly packages you are interested in on the disk. The user
153 :     #then just has to unpack the source and his favourite binonly into the
154 :     #same directory and has a full binary distribution.
155 :     binonlydist: $(SOURCES) $(FORTH_GEN) gforth $(OBJECTS)
156 :     -rm -rf gforth-$(VERSION)
157 :     mkdir gforth-$(VERSION)
158 :     cp -p -d config.status Makefile gforth $(OBJECTS) machine.h gforth.fi gforth-$(VERSION)
159 :     strip gforth-$(VERSION)/gforth
160 :     tar cvf - gforth-$(VERSION)|gzip -9 >gforth-$(VERSION)-binonly-@host@.tar.gz
161 :    
162 :    
163 :    
164 : anton 1.15 #strip gforth, because the debugging stuff is hardly useful once
165 :     # gforth manages to execute more than a few primitives
166 :    
167 : anton 1.9 install: gforth $(FORTH_SRC) gforth.fi gforth.1 gforth.info
168 : anton 1.27 $(INSTALL) -d $(bindir) $(mandir) $(infodir) $(libdir)/gforth/$(VERSION) $(datadir)/gforth/$(VERSION)
169 : anton 1.15 $(INSTALL_PROGRAM) -s gforth $(bindir)
170 : anton 1.9 $(INSTALL_DATA) gforth.1 $(mandir)
171 : anton 1.11 $(INSTALL_DATA) gforth.info* $(infodir)
172 : anton 1.27 $(INSTALL_DATA) gforth.fi $(libdir)/gforth/$(VERSION)
173 : anton 1.9 for i in $(FORTH_SRC); do \
174 : anton 1.27 $(INSTALL_DATA) $$i $(datadir)/gforth/$(VERSION); \
175 : anton 1.9 done
176 : anton 1.26
177 :     check: test
178 : pazsan 1.30 touch test
179 :    
180 : anton 1.21 test: gforth
181 :     @echo 'Expect to see INCORRECT RESULT: { GS1 -> <TRUE> <TRUE> }'
182 :     @echo 'This is a bug of the testing program'
183 :     $(FORTH) tester.fs coretest.fs -e bye
184 :     $(FORTH) startup.fs blocks.fs checkans.fs -e bye
185 :     @echo 'Expect no differences'
186 :     $(FORTH) prims2x.fs -e "s\" primitives.b\" ' output-c process-file bye"| diff -c - primitives.i
187 :    
188 : anton 1.9 dvi: gforth.dvi
189 : anton 1.5
190 : anton 1.21 gforth: $(OBJECTS)
191 : pazsan 1.4 -$(CP) gforth gforth~
192 : pazsan 1.1 $(GCC) $(LDFLAGS) $(OBJECTS) $(LDLIBS) -o $@
193 : anton 1.9 @MAKE_EXE@
194 : pazsan 1.1
195 : pazsan 1.30 kernl16l.fi+: $(KERN_SRC) mach16l.fs $(FORTH_GEN0)
196 : pazsan 1.13 -$(CP) kernl16l.fi kernl16l.fi~
197 :     $(FORTH) -e 's" mach16l.fs"' main.fs
198 :    
199 : pazsan 1.30 kernl16b.fi+: $(KERN_SRC) mach16b.fs $(FORTH_GEN0)
200 : pazsan 1.13 -$(CP) kernl16b.fi kernl16b.fi~
201 :     $(FORTH) -e 's" mach16b.fs"' main.fs
202 :    
203 : pazsan 1.30 kernl32l.fi+: $(KERN_SRC) mach32l.fs $(FORTH_GEN0)
204 : pazsan 1.4 -$(CP) kernl32l.fi kernl32l.fi~
205 : pazsan 1.1 $(FORTH) -e 's" mach32l.fs"' main.fs
206 :    
207 : pazsan 1.30 kernl32b.fi+: $(KERN_SRC) mach32b.fs $(FORTH_GEN0)
208 : pazsan 1.4 -$(CP) kernl32b.fi kernl32b.fi~
209 : pazsan 1.1 $(FORTH) -e 's" mach32b.fs"' main.fs
210 : pazsan 1.13
211 : pazsan 1.30 kernl64l.fi+: $(KERN_SRC) mach64l.fs $(FORTH_GEN0)
212 : pazsan 1.13 -$(CP) kernl64l.fi kernl64l.fi~
213 :     $(FORTH) -e 's" mach64l.fs"' main.fs
214 :    
215 : pazsan 1.30 kernl64b.fi+: $(KERN_SRC) mach64b.fs $(FORTH_GEN0)
216 : pazsan 1.13 -$(CP) kernl64b.fi kernl64b.fi~
217 :     $(FORTH) -e 's" mach64b.fs"' main.fs
218 : pazsan 1.30
219 :     kernl16b.fi: $(KERNLS)
220 :     -$(CP) kernl16b.fi+ kernl16b.fi
221 :     @LINK_KERNL16B@
222 :    
223 :     kernl16l.fi: $(KERNLS)
224 :     -$(CP) kernl16l.fi+ kernl16l.fi
225 :     @LINK_KERNL16L@
226 :    
227 :     kernl32b.fi: $(KERNLS)
228 :     -$(CP) kernl32b.fi+ kernl32b.fi
229 :     @LINK_KERNL32B@
230 :    
231 :     kernl32l.fi: $(KERNLS)
232 :     -$(CP) kernl32l.fi+ kernl32l.fi
233 :     @LINK_KERNL32L@
234 :    
235 :     kernl64b.fi: $(KERNLS)
236 :     -$(CP) kernl64b.fi+ kernl64b.fi
237 : pazsan 1.13 @LINK_KERNL64B@
238 : pazsan 1.1
239 : pazsan 1.30 kernl64l.fi: $(KERNLS)
240 :     -$(CP) kernl64l.fi+ kernl64l.fi
241 :     @LINK_KERNL64L@
242 :    
243 : pazsan 1.1 engine.s: engine.c primitives.i prim_labels.i machine.h $(INCLUDES)
244 : anton 1.9 $(GCC) $(CFLAGS) $(ENGINE_FLAGS) -S engine.c
245 : pazsan 1.1
246 :     engine.o: engine.c primitives.i prim_labels.i machine.h $(INCLUDES)
247 : anton 1.9 $(GCC) $(CFLAGS) $(ENGINE_FLAGS) -c engine.c
248 :    
249 :     strtoul.o: strtoul.c strtol.c
250 : pazsan 1.1
251 :     primitives.b: primitives
252 :     m4 primitives >$@
253 :    
254 :     primitives.i : primitives.b prims2x.fs
255 :     $(FORTH) prims2x.fs -e "s\" primitives.b\" ' output-c process-file bye" >$@
256 :    
257 :     prim_labels.i : primitives.b prims2x.fs
258 :     $(FORTH) prims2x.fs -e "s\" primitives.b\" ' output-label process-file bye" >$@
259 :    
260 :     aliases.fs: primitives.b prims2x.fs
261 :     $(FORTH) prims2x.fs -e "s\" primitives.b\" ' output-alias process-file bye" >$@
262 :    
263 :     primitives.fs: primitives.b prims2x.fs
264 :     $(FORTH) prims2x.fs -e "s\" primitives.b\" ' output-forth process-file bye" >$@
265 : anton 1.27
266 :     version.fs: Makefile.in
267 :     echo ": version-string s\" $(VERSION)\" ;" >$@
268 :    
269 :     version.c: Makefile.in
270 :     echo "char gforth_version[]=\"$(VERSION)\" ;" >$@
271 :    
272 : pazsan 1.1
273 : pazsan 1.28 doc.fd: makedoc.fs float.fs search-order.fs glocals.fs environ.fs \
274 : anton 1.20 toolsext.fs wordinfo.fs \
275 :     vt100.fs colorize.fs see.fs bufio.fs debug.fs history.fs \
276 :     doskey.fs vt100key.fs startup.fs assert.fs debugging.fs
277 : pazsan 1.28 $(FORTH) -e "s\" doc.fd\"" makedoc.fs startup.fs -e bye
278 : anton 1.20
279 : pazsan 1.28 gforth.texi: gforth.ds primitives.b ds2texi.fs prims2x.fs doc.fd crossdoc.fd
280 : pazsan 1.4 $(FORTH) ds2texi.fs >$@
281 : pazsan 1.1
282 :     gforth.dvi: gforth.texi
283 : anton 1.9 $(TEXI2DVI) gforth.texi
284 : anton 1.5
285 :     gforth.ps: gforth.dvi
286 : anton 1.9 $(DVI2PS) gforth.dvi -o $@
287 : anton 1.11
288 :     gforth.info: gforth.texi
289 :     -$(MAKEINFO) gforth.texi
290 : anton 1.15
291 :     html: gforth.texi
292 :     -$(RM) html/*
293 :     -mkdir html
294 :     cd html; $(TEXI2HTML) -menu -split_node ../gforth.texi
295 : pazsan 1.1
296 : anton 1.9 # For an explanation of the following Makefile rules, see node
297 :     # `Automatic Remaking' in GNU Autoconf documentation.
298 :     Makefile: Makefile.in config.status
299 :     CONFIG_FILES=$@ CONFIG_HEADERS= ./config.status
300 :     config.status: configure
301 :     ./config.status --recheck
302 :     configure: configure.in
303 :     cd $(srcdir) && autoconf
304 : pazsan 1.30
305 :     makefile.dos: mkdosmf.sed Makefile.in
306 :     sed -f mkdosmf.sed <Makefile.in >makefile.dos

CVS Admin

Powered by ViewCVS 1.0-dev
(Powered by ViewCVS)

ViewCVS and CVS Help