-## -*-makefile-*-
-##
-## Makefile for fw
-##
-## (c) 1999 Mark Wooding
-##
-
-##----- Licensing notice ----------------------------------------------------
-##
-## This file is part of the `fw' port forwarder.
-##
-## `fw' is free software; you can redistribute it and/or modify
-## it under the terms of the GNU General Public License as published by
-## the Free Software Foundation; either version 2 of the License, or
-## (at your option) any later version.
-##
-## `fw' is distributed in the hope that it will be useful,
-## but WITHOUT ANY WARRANTY; without even the implied warranty of
-## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-## GNU General Public License for more details.
-##
-## You should have received a copy of the GNU General Public License
-## along with `fw'; if not, write to the Free Software Foundation,
-## Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-
-AUTOMAKE_OPTIONS = foreign
-
-bin_PROGRAMS = fw
-man_MANS = fw.1
-
-EXTRA_DIST = \
- fw.1.in GRAMMAR \
- make-manpage \
- debian/changelog debian/copyright debian/control debian/rules
-
-BUILT_SOURCES = mantext.c
+### -*-makefile-*-
+###
+### Makefile for fw
+###
+### (c) 1999 Mark Wooding
+###
-$(srcdir)/GRAMMAR: fw.1.in make-manpage
- perl $(srcdir)/make-manpage text <$(srcdir)/fw.1.in >$@.new
- mv $@.new $@
+###----- Licensing notice ---------------------------------------------------
+###
+### This file is part of the `fw' port forwarder.
+###
+### `fw' is free software; you can redistribute it and/or modify
+### it under the terms of the GNU General Public License as published by
+### the Free Software Foundation; either version 2 of the License, or
+### (at your option) any later version.
+###
+### `fw' is distributed in the hope that it will be useful,
+### but WITHOUT ANY WARRANTY; without even the implied warranty of
+### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+### GNU General Public License for more details.
+###
+### You should have received a copy of the GNU General Public License
+### along with `fw'; if not, write to the Free Software Foundation,
+### Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+bin_PROGRAMS =
+man_MANS =
+
+EXTRA_DIST =
+BUILT_SOURCES =
+CLEANFILES =
+MAINTAINERCLEANFILES =
+
+AM_CFLAGS = $(mLib_CFLAGS)
+
+###--------------------------------------------------------------------------
+### Documentation.
+
+make_manpage = perl $(srcdir)/make-manpage <$(srcdir)/fw.1.in
+EXTRA_DIST += fw.1.in make-manpage
+
+## The manual page.
+man_MANS += fw.1
+CLEANFILES += fw.1
fw.1: fw.1.in make-manpage
- perl $(srcdir)/make-manpage man <$(srcdir)/fw.1.in >$@.new
- mv $@.new $@
+ $(make_manpage) man >$@.new && mv $@.new $@
+
+## The grammar summary.
+MAINTAINERCLEANFILES += $(srcdir)/GRAMMAR
+EXTRA_DIST += GRAMMAR
+
+$(srcdir)/GRAMMAR: fw.1.in make-manpage
+ $(make_manpage) text >$@.new && mv $@.new $@
+
+###--------------------------------------------------------------------------
+### The main port forwarder.
+
+bin_PROGRAMS += fw
+fw_SOURCES =
+fw_LDADD = $(mLib_LIBS)
+
+## Main program.
+fw_SOURCES += fw.c fw.h
+
+fw_SOURCES += chan.c
+fw_SOURCES += endpt.c
+fw_SOURCES += source.c
+
+fw_SOURCES += conf.c
+fw_SOURCES += scan.c
+fw_SOURCES += fattr.c
+
+fw_SOURCES += reffd.c
+
+## Sockets.
+fw_SOURCES += socket.c
+
+fw_SOURCES += un.c
+
+fw_SOURCES += inet.c
+fw_SOURCES += acl.c
+fw_SOURCES += identify.c
+fw_SOURCES += privconn.c
+
+## Files.
+fw_SOURCES += file.c
+
+## Executables.
+fw_SOURCES += exec.c
+fw_SOURCES += rlimits.h
+
+## Documentation.
+fw_SOURCES += mantext.c
+CLEANFILES += mantext.c
+BUILT_SOURCES += mantext.c
mantext.c: fw.1.in make-manpage
- perl $(srcdir)/make-manpage c <$(srcdir)/fw.1.in >$@.new
- mv $@.new $@
-
-fw_SOURCES = \
- chan.c conf.c endpt.c fw.c mantext.c reffd.c scan.c \
- chan.h conf.h endpt.h fw.h mantext.h reffd.h scan.h \
- \
- source.c source.h target.h \
- exec.c file.c socket.c \
- exec.h file.h socket.h \
- \
- addr.h \
- inet.c un.c \
- inet.h un.h \
- \
- acl.c fattr.c identify.c privconn.c \
- acl.h fattr.h identify.h privconn.h rlimits.h
-
-CLEANFILES = $(BUILT_SOURCES) fw.1
-MAINTAINERCLEANFILES = $(srcdir)/GRAMMAR
-
-##----- That's all, folks ---------------------------------------------------
+ $(make_manpage) c >$@.new && mv $@.new $@
+
+###--------------------------------------------------------------------------
+### Other infrastructure.
+
+## Set the release number.
+dist-hook:
+ echo "$(VERSION)" >$(distdir)/RELEASE
+
+###--------------------------------------------------------------------------
+### Debian.
+
+## Main Debian files.
+EXTRA_DIST += debian/rules
+EXTRA_DIST += debian/changelog
+EXTRA_DIST += debian/control
+EXTRA_DIST += debian/copyright
+
+## Run the daemon automatically.
+EXTRA_DIST += debian/fw.init
+EXTRA_DIST += debian/fw.postinst
+
+###----- That's all, folks --------------------------------------------------