02e9b426436b2d2c16fc61728ba329c8041f92bd
[runlisp] / Makefile.am
1 ### -*-makefile-*-
2 ###
3 ### Build script for `runlisp'
4 ###
5 ### (c) 2020 Mark Wooding
6 ###
7
8 ###----- Licensing notice ---------------------------------------------------
9 ###
10 ### This file is part of Runlisp, a tool for invoking Common Lisp scripts.
11 ###
12 ### Runlisp is free software: you can redistribute it and/or modify it
13 ### under the terms of the GNU General Public License as published by the
14 ### Free Software Foundation; either version 3 of the License, or (at your
15 ### option) any later version.
16 ###
17 ### Runlisp is distributed in the hope that it will be useful, but WITHOUT
18 ### ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
19 ### FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
20 ### for more details.
21 ###
22 ### You should have received a copy of the GNU General Public License
23 ### along with Runlisp. If not, see <https://www.gnu.org/licenses/>.
24
25 include $(top_srcdir)/vars.am
26
27 SUBDIRS =
28
29 pkgdata_DATA =
30 image_DATA =
31 image_SCRIPTS =
32
33 SUBDIRS += .
34
35 ACLOCAL_AMFLAGS = -Im4
36
37 ###--------------------------------------------------------------------------
38 ### The main driver program.
39
40 bin_PROGRAMS += runlisp
41 runlisp_SOURCES = runlisp.c
42 man_MANS += runlisp.1
43
44 ###--------------------------------------------------------------------------
45 ### Additional machinery.
46
47 pkgdata_DATA += eval.lisp
48 EXTRA_DIST += eval.lisp
49
50 ###--------------------------------------------------------------------------
51 ### Image dumping.
52
53 nodist_bin_SCRIPTS += dump-runlisp-image
54 man_MANS += dump-runlisp-image.1
55
56 v_dump = $(v_dump_@AM_V@)
57 v_dump_ = $(v_dump_@AM_DEFAULT_V@)
58 v_dump_0 = @echo " DUMP $@";
59
60 EXTRA_DIST += dump-runlisp-image.in
61 CLEANFILES += dump-runlisp-image
62 dump-runlisp-image: dump-runlisp-image.in
63 $(SUBST) $(srcdir)/dump-runlisp-image.in >$@.new \
64 $(SUBSTITUTIONS) && \
65 chmod +x $@.new && mv $@.new $@
66
67 if DUMP_SBCL
68 image_DATA += sbcl+asdf.core
69 CLEANFILES += sbcl+asdf.core
70 sbcl+asdf.core: dump-runlisp-image
71 $(v_dump)./dump-runlisp-image -o$@ sbcl
72 endif
73
74 if DUMP_CCL
75 image_DATA += ccl+asdf.image
76 CLEANFILES += ccl+asdf.image
77 ccl+asdf.image: dump-runlisp-image
78 $(v_dump)./dump-runlisp-image -o$@ ccl
79 endif
80
81 if DUMP_CLISP
82 image_DATA += clisp+asdf.mem
83 CLEANFILES += clisp+asdf.mem
84 clisp+asdf.mem: dump-runlisp-image
85 $(v_dump)./dump-runlisp-image -o$@ clisp
86 endif
87
88 if DUMP_ECL
89 image_SCRIPTS += ecl+asdf
90 CLEANFILES += ecl+asdf
91 ecl+asdf: dump-runlisp-image
92 $(v_dump)./dump-runlisp-image -o$@ ecl
93 endif
94
95 if DUMP_CMUCL
96 image_DATA += cmucl+asdf.core
97 CLEANFILES += cmucl+asdf.core
98 cmucl+asdf.core: dump-runlisp-image
99 $(v_dump)./dump-runlisp-image -o$@ cmucl
100 endif
101
102 ###--------------------------------------------------------------------------
103 ### Benchmarking and testing.
104
105 if BENCHMARK
106 SUBDIRS += bench
107 endif
108
109 SUBDIRS += t
110
111 ###--------------------------------------------------------------------------
112 ### Distribution.
113
114 ## Release number.
115 dist-hook::
116 echo $(VERSION) >$(distdir)/RELEASE
117
118 ## Additional build tools.
119 EXTRA_DIST += config/auto-version
120
121 ###----- That's all, folks --------------------------------------------------