build: Rewrite the build system to be nicer.
[fwd] / Makefile.am
CommitLineData
5d9fd22a
MW
1### -*-makefile-*-
2###
3### Makefile for fw
4###
5### (c) 1999 Mark Wooding
6###
8cf7c7c2 7
5d9fd22a
MW
8###----- Licensing notice ---------------------------------------------------
9###
10### This file is part of the `fw' port forwarder.
11###
12### `fw' is free software; you can redistribute it and/or modify
13### it under the terms of the GNU General Public License as published by
14### the Free Software Foundation; either version 2 of the License, or
15### (at your option) any later version.
16###
17### `fw' is distributed in the hope that it will be useful,
18### but WITHOUT ANY WARRANTY; without even the implied warranty of
19### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20### GNU General Public License for more details.
21###
22### You should have received a copy of the GNU General Public License
23### along with `fw'; if not, write to the Free Software Foundation,
24### Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
25
26bin_PROGRAMS =
27man_MANS =
28
29EXTRA_DIST =
30BUILT_SOURCES =
31CLEANFILES =
32MAINTAINERCLEANFILES =
33
34AM_CFLAGS = $(mLib_CFLAGS)
35
36###--------------------------------------------------------------------------
37### Documentation.
38
39make_manpage = perl $(srcdir)/make-manpage <$(srcdir)/fw.1.in
40EXTRA_DIST += fw.1.in make-manpage
41
42## The manual page.
43man_MANS += fw.1
44CLEANFILES += fw.1
8cf7c7c2
MW
45
46fw.1: fw.1.in make-manpage
5d9fd22a
MW
47 $(make_manpage) man >$@.new && mv $@.new $@
48
49## The grammar summary.
50MAINTAINERCLEANFILES += $(srcdir)/GRAMMAR
51EXTRA_DIST += GRAMMAR
52
53$(srcdir)/GRAMMAR: fw.1.in make-manpage
54 $(make_manpage) text >$@.new && mv $@.new $@
55
56###--------------------------------------------------------------------------
57### The main port forwarder.
58
59bin_PROGRAMS += fw
60fw_SOURCES =
61fw_LDADD = $(mLib_LIBS)
62
63## Main program.
64fw_SOURCES += fw.c fw.h
65
66fw_SOURCES += chan.c chan.h
67fw_SOURCES += endpt.c endpt.h
68fw_SOURCES += source.c source.h
69fw_SOURCES += target.h
70
71fw_SOURCES += conf.c conf.h
72fw_SOURCES += scan.c scan.h
73fw_SOURCES += fattr.c fattr.h
74
75fw_SOURCES += reffd.c reffd.h
76
77## Sockets.
78fw_SOURCES += socket.c socket.h
79fw_SOURCES += addr.h
80
81fw_SOURCES += un.c un.h
82
83fw_SOURCES += inet.c inet.h
84fw_SOURCES += acl.c acl.h
85fw_SOURCES += identify.c identify.h
86fw_SOURCES += privconn.c privconn.h
87
88## Files.
89fw_SOURCES += file.c file.h
90
91## Executables.
92fw_SOURCES += exec.c exec.h
93fw_SOURCES += rlimits.h
94
95## Documentation.
96fw_SOURCES += mantext.c mantext.h
97CLEANFILES += mantext.c
98BUILT_SOURCES += mantext.c
8cf7c7c2
MW
99
100mantext.c: fw.1.in make-manpage
5d9fd22a
MW
101 $(make_manpage) c >$@.new && mv $@.new $@
102
103###--------------------------------------------------------------------------
104### Other infrastructure.
105
106## Set the release number.
107dist-hook:
108 echo "$(VERSION)" >$(distdir)/RELEASE
109
110###--------------------------------------------------------------------------
111### Debian.
112
113EXTRA_DIST += debian/rules
114EXTRA_DIST += debian/changelog
115EXTRA_DIST += debian/control
116EXTRA_DIST += debian/copyright
117
118###----- That's all, folks --------------------------------------------------