chiark / gitweb /
Makefile.am: Improve `silent-rules' output.
[misc] / Makefile.am
1 ### -*-makefile-*-
2 ###
3 ### Build script for nsict-utils
4 ###
5 ### (c) 2008 Mark Wooding
6 ###
7
8 ###----- Licensing notice ---------------------------------------------------
9 ###
10 ### This program is free software; you can redistribute it and/or modify
11 ### it under the terms of the GNU General Public License as published by
12 ### the Free Software Foundation; either version 2 of the License, or
13 ### (at your option) any later version.
14 ###
15 ### This program is distributed in the hope that it will be useful,
16 ### but WITHOUT ANY WARRANTY; without even the implied warranty of
17 ### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18 ### GNU General Public License for more details.
19 ###
20 ### You should have received a copy of the GNU General Public License
21 ### along with this program; if not, write to the Free Software Foundation,
22 ### Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
23
24 EXTRA_DIST               =
25 CLEANFILES               =
26
27 man_MANS                 =
28 dist_man_MANS            =
29
30 ###--------------------------------------------------------------------------
31 ### Tools in C.
32
33 bin_PROGRAMS             =
34 sbin_PROGRAMS            =
35
36 AM_CFLAGS                = $(mLib_CFLAGS) $(catacomb_CFLAGS)
37
38 ## space
39 bin_PROGRAMS            += space
40 space_SOURCES            = space.c
41 dist_man_MANS           += space.1
42
43 ## not
44 bin_PROGRAMS            += not
45 not_SOURCES              = not.c
46 dist_man_MANS           += not.1
47
48 ## if-mtu
49 bin_PROGRAMS            += if-mtu
50 if_mtu_SOURCES           = if-mtu.c
51 dist_man_MANS           += if-mtu.1
52
53 ## getpass
54 bin_PROGRAMS            += getpass
55 getpass_SOURCES          = getpass.c
56 dist_man_MANS           += getpass.1
57
58 ## xtitle
59 bin_PROGRAMS            += xtitle
60 xtitle_SOURCES           = xtitle.c
61 ## !UNDOCUMENTED
62
63 ## pause
64 if HAVE_MLIB
65 bin_PROGRAMS            += pause
66 pause_SOURCES            = pause.c
67 pause_LDADD              = $(mLib_LIBS) $(MATH_LIBS)
68 dist_man_MANS           += pause.1
69 endif
70
71 ## stamp
72 if HAVE_MLIB
73 bin_PROGRAMS            += stamp
74 stamp_SOURCES            = stamp.c
75 stamp_LDADD              = $(mLib_LIBS)
76 dist_man_MANS           += stamp.1
77 endif
78
79 ## locking
80 if HAVE_MLIB
81 bin_PROGRAMS            += locking
82 locking_SOURCES          = locking.c
83 locking_LDADD            = $(mLib_LIBS)
84 dist_man_MANS           += locking.1
85 endif
86
87 ## gorp
88 if HAVE_CATACOMB
89 bin_PROGRAMS            += gorp
90 gorp_SOURCES             = gorp.c
91 gorp_LDADD               = $(catacomb_LIBS)
92 dist_man_MANS           += gorp.1
93 endif
94
95 ## qmail-checkspam
96 if HAVE_LIBSPAMC
97 sbin_PROGRAMS           += qmail-checkspam
98 qmail_checkspam_SOURCES  = qmail-checkspam.c
99 qmail_checkspam_LDADD    = -lspamc
100 dist_man_MANS           += qmail-checkspam.8
101 endif
102
103 ## cdb tools
104 if HAVE_LIBCDB
105 bin_PROGRAMS            += cdb-probe cdb-check-domain
106 cdb_probe_SOURCES        = cdb-probe.c
107 cdb_probe_LDADD          = -lcdb
108 cdb_check_domain_SOURCES = cdb-check-domain.c
109 cdb_check_domain_LDADD   = -lcdb
110 dist_man_MANS           += cdb-probe.1 cdb-check-domain.1
111 endif
112
113 ## x86 model identification
114 if X86
115 bin_PROGRAMS            += x86-model
116 x86_model_SOURCES        = x86-model.c
117 x86_model_LDADD          = $(mLib_LIBS)
118 dist_man_MANS           += x86-model.1
119 endif
120
121 ###--------------------------------------------------------------------------
122 ### Tools in scripts.
123
124 bin_SCRIPTS              =
125 dist_bin_SCRIPTS         =
126 sbin_SCRIPTS             =
127 dist_sbin_SCRIPTS        =
128
129 ## Making substitutions.
130 confsubst = $(top_srcdir)/config/confsubst
131 V_SUBST = $(V_SUBST_$(V))
132 V_SUBST_ = $(V_SUBST_$(AM_DEFAULT_VERBOSITY))
133 V_SUBST_0 = @echo "  SUBST  $@";
134 SUBST = $(V_SUBST)$(confsubst)
135 SUBSTITUTIONS = \
136         PACKAGE=$(PACKAGE) VERSION=$(VERSION) \
137         PYTHON=$(PYTHON) \
138         PERL=$(PERL) \
139         TCLSH=$(TCLSH) \
140         BASH=$(BASH)
141
142 EXTRA_DIST              += config/confsubst
143
144 ## Shell scripts.
145 dist_bin_SCRIPTS        += check-sender
146 dist_man_MANS           += check-sender.1
147
148 dist_bin_SCRIPTS        += buf
149 dist_man_MANS           += buf.1
150
151 dist_bin_SCRIPTS        += create
152 dist_man_MANS           += create.1
153
154 dist_bin_SCRIPTS        += z
155 dist_man_MANS           += z.1
156
157 ## bash scripts.
158 if HAVE_BASH
159
160 bin_SCRIPTS             += inplace
161 CLEANFILES              += inplace
162 EXTRA_DIST              += inplace.in
163 dist_man_MANS           += inplace.1
164
165 inplace: inplace.in Makefile
166         $(SUBST) $(srcdir)/inplace.in >$@.new $(SUBSTITUTIONS) && \
167                 chmod +x $@.new && mv $@.new $@
168
169 endif
170
171 ## Python scripts.
172 if HAVE_PYTHON
173
174 if HAVE_PYMOD_CDB
175 bin_SCRIPTS             += cdb-assign
176 dist_man_MANS           += cdb-assign.1
177 endif
178
179 CLEANFILES              += cdb-assign
180 EXTRA_DIST              += cdb-assign.in
181
182 cdb-assign: cdb-assign.in Makefile
183         $(SUBST) $(srcdir)/cdb-assign.in >$@.new $(SUBSTITUTIONS) && \
184                 chmod +x $@.new && mv $@.new $@
185
186 if HAVE_PYMOD_CDB
187 bin_SCRIPTS             += cdb-list
188 dist_man_MANS           += cdb-list.1
189 endif
190
191 CLEANFILES              += cdb-list
192 EXTRA_DIST              += cdb-list.in
193
194 cdb-list: cdb-list.in Makefile
195         $(SUBST) $(srcdir)/cdb-list.in >$@.new $(SUBSTITUTIONS) && \
196                 chmod +x $@.new && mv $@.new $@
197
198 if HAVE_PYMOD_CDB
199 bin_SCRIPTS             += cdb-map
200 dist_man_MANS           += cdb-map.1
201 endif
202
203 CLEANFILES              += cdb-map
204 EXTRA_DIST              += cdb-map.in
205
206 cdb-map: cdb-map.in Makefile
207         $(SUBST) $(srcdir)/cdb-map.in >$@.new $(SUBSTITUTIONS) && \
208                 chmod +x $@.new && mv $@.new $@
209
210 endif
211
212 ## Perl scripts.
213 if HAVE_PERL
214
215 sbin_SCRIPTS            += shadowfix
216 CLEANFILES              += shadowfix
217 EXTRA_DIST              += shadowfix.in
218
219 shadowfix: shadowfix.in Makefile
220         $(SUBST) $(srcdir)/shadowfix.in >$@.new $(SUBSTITUTIONS) && \
221                 chmod +x $@.new && mv $@.new $@
222
223 man_MANS                += shadowfix.8
224 CLEANFILES              += shadowfix.8
225
226 shadowfix.8: shadowfix.in
227         $(AM_V_GEN)pod2man --section 8 $(srcdir)/shadowfix.in \
228                 >$@.new && mv $@.new $@
229
230 bin_SCRIPTS             += unfwd
231 CLEANFILES              += unfwd
232 EXTRA_DIST              += unfwd.in
233 dist_man_MANS           += unfwd.1
234
235 unfwd: unfwd.in Makefile
236         $(SUBST) $(srcdir)/unfwd.in >$@.new $(SUBSTITUTIONS) && \
237                 chmod +x $@.new && mv $@.new $@
238
239 endif
240
241 ## Perl modules.
242 if HAVE_PERL
243 dist_perlmod_DATA        = MdwOpt.pm
244 endif
245
246 ## Tcl scripts.
247 if HAVE_TCLSH
248
249 bin_SCRIPTS             += splitconf
250 CLEANFILES              += splitconf
251 EXTRA_DIST              += splitconf.in
252 dist_man_MANS           += splitconf.1
253
254 splitconf: splitconf.in Makefile
255         $(SUBST) $(srcdir)/splitconf.in >$@.new $(SUBSTITUTIONS) && \
256                 chmod +x $@.new && mv $@.new $@
257
258 endif
259
260 ###--------------------------------------------------------------------------
261 ### Other administrivia.
262
263 dist-hook:
264         echo $(VERSION) >$(distdir)/RELEASE
265
266 EXTRA_DIST              += config/auto-version
267
268 ###--------------------------------------------------------------------------
269 ### Debian.
270
271 ## Standard files.
272 EXTRA_DIST              += debian/rules
273 EXTRA_DIST              += debian/copyright
274 EXTRA_DIST              += debian/changelog
275 EXTRA_DIST              += debian/control
276
277 ## What to install where.
278 EXTRA_DIST              += debian/inst
279
280 ###----- That's all, folks --------------------------------------------------