X-Git-Url: https://git.distorted.org.uk/~mdw/catacomb/blobdiff_plain/a6bb85c11b83e759dd74a58a1003fb16ab151d70..d2679863cf27b0812a4b88397be1ebf0b1319305:/Makefile.am diff --git a/Makefile.am b/Makefile.am index 862491dc..7ffaa53c 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,155 +1,142 @@ ### -*-makefile-*- ### -### Building the distribution +### Build script for Catacomb ### -### (c) 1997 Mark Wooding +### (c) 2013 Straylight/Edgeware ### ###----- Licensing notice --------------------------------------------------- ### -### This file is part of the Common Files Distribution (`common') -### -### `Common' 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. -### -### `Common' is distributed in the hope that it will be useful, +### This file is part of Catacomb. +### +### Catacomb is free software; you can redistribute it and/or modify +### it under the terms of the GNU Library General Public License as +### published by the Free Software Foundation; either version 2 of the +### License, or (at your option) any later version. +### +### Catacomb 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 `common'; if not, write to the Free Software Foundation, -### Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +### GNU Library General Public License for more details. +### +### You should have received a copy of the GNU Library General Public +### License along with Catacomb; if not, write to the Free +### Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +### MA 02111-1307, USA. -bin_SCRIPTS = -pkgdata_SCRIPTS = -pkgdata_DATA = +include $(top_srcdir)/vars.am +ACLOCAL_AMFLAGS = -Im4 -EXTRA_DIST = -CLEANFILES = +SUBDIRS = ###-------------------------------------------------------------------------- -### Handy variables. +### Top-level library. -confsubst = $(srcdir)/confsubst.in -mkdir_p = $(srcdir)/config/install-sh -d +lib_LTLIBRARIES = libcatacomb.la +libcatacomb_la_LDFLAGS = -version-info $(LIBTOOL_VERSION_INFO) \ + -no-undefined +libcatacomb_la_SOURCES = +libcatacomb_la_LIBADD = $(MATHLIBS) $(PIXIE_LIBS) $(CATACOMB_LIBS) \ + $(mLib_LIBS) ###-------------------------------------------------------------------------- -### Main scripts. - -## mklinks -bin_SCRIPTS += mklinks -CLEANFILES += mklinks -EXTRA_DIST += mklinks.in - -mklinks: mklinks.in Makefile - $(confsubst) $(srcdir)/mklinks.in >$@.new \ - pkgdatadir=$(pkgdatadir) VERSION=$(VERSION) - chmod +x $@.new - mv $@.new $@ - -## findlinks -bin_SCRIPTS += findlinks -CLEANFILES += findlinks -EXTRA_DIST += findlinks.in - -findlinks: findlinks.in Makefile - $(confsubst) $(srcdir)/findlinks.in >$@.new \ - pkgdatadir=$(pkgdatadir) VERSION=$(VERSION) - chmod +x $@.new - mv $@.new $@ - -## mdw-setup -bin_SCRIPTS += mdw-setup -EXTRA_DIST += mdw-setup - -###-------------------------------------------------------------------------- -### Files to install. - -## Licences. -pkgdata_DATA += COPYING COPYING.LIB -pkgdata_DATA += gpl.tex lgpl.tex gpl.texi lgpl.texi +### Package-configuration file. -## Documentation. -pkgdata_DATA += INSTALL -pkgdata_DATA += texinice.tex +pkgconfigdir = $(libdir)/pkgconfig +pkgconfig_DATA = catacomb.pc +EXTRA_DIST += catacomb.pc.in +CLEANFILES += catacomb.pc -## Useful code. -pkgdata_DATA += mdwopt.c mdwopt.h -pkgdata_DATA += getdate.y getdate.h +catacomb.pc: catacomb.pc.in Makefile + $(SUBST) $(srcdir)/catacomb.pc.in >$@.new $(SUBSTITUTIONS) && \ + mv $@.new $@ -## Scripts. -pkgdata_SCRIPTS += install-ac -pkgdata_SCRIPTS += maninst - -## Python support stuff. -pkgdata_SCRIPTS += mdwsetup.py - -## confsubst -pkgdata_SCRIPTS += confsubst -CLEANFILES += confsubst -EXTRA_DIST += confsubst.in +###-------------------------------------------------------------------------- +### Subdirectories. +### +### Note: There are implicit dependencies between the subdirectories. Be +### careful about reordering them. -confsubst: confsubst.in Makefile - $(confsubst) $(srcdir)/confsubst.in >$@.new \ - VERSION=$(VERSION) - chmod +x $@.new - mv $@.new $@ +## Basic utilities. +SUBDIRS += base +libcatacomb_la_LIBADD += base/libbase.la -## auto-version -pkgdata_SCRIPTS += auto-version -CLEANFILES += auto-version -EXTRA_DIST += auto-version.in +## Mathematical infrastructure. +SUBDIRS += math +libcatacomb_la_LIBADD += math/libmath.la -auto-version: auto-version.in Makefile - $(confsubst) $(srcdir)/auto-version.in >$@.new \ - VERSION=$(VERSION) - chmod +x $@.new - mv $@.new $@ +## Symmetric cryptography. +SUBDIRS += symm +libcatacomb_la_LIBADD += symm/libsymm.la -## Testsuites. -pkgdata_DATA += autotest.am -pkgdata_DATA += testsuite.at +## Key management. +SUBDIRS += key +libcatacomb_la_LIBADD += key/libkey.la -EXTRA_DIST += $(pkgdata_DATA) -EXTRA_DIST += $(pkgdata_SCRIPTS) +## Miscellaneous cryptography. +SUBDIRS += misc +libcatacomb_la_LIBADD += misc/libmisc.la -## Autoconf snippets. -EXTRA_DIST += aclocal.glob +## Public-key cryptography. +SUBDIRS += pub +libcatacomb_la_LIBADD += pub/libpub.la -install-data-hook:: - $(mkdir_p) $(DESTDIR)$(aclocaldir) - $(srcdir)/install-ac install \ - $(srcdir)/aclocal.glob $(DESTDIR)$(aclocaldir) +## Random number generators and related functionality. +SUBDIRS += rand +libcatacomb_la_LIBADD += rand/librand.la -uninstall-hook:: - $(srcdir)/install-ac rm \ - $(srcdir)/aclocal.glob $(DESTDIR)$(aclocaldir) +## At this point, we should construct the library. +SUBDIRS += . ###-------------------------------------------------------------------------- -### Documentation. +### Ancillary programs. -info_TEXINFOS = common.texi +SUBDIRS += progs ###-------------------------------------------------------------------------- -### Other special tweaks. - -## Make `make distcheck' work. -DISTCHECK_CONFIGURE_FLAGS = \ - --with-aclocaldir='$${prefix}/share/aclocal' +### Distribution. -## Distribute the release number. +## Release number. dist-hook:: echo $(VERSION) >$(distdir)/RELEASE +## Additional build tools. +EXTRA_DIST += build-setup +EXTRA_DIST += config/auto-version +EXTRA_DIST += config/confsubst + +## Documentation files. +EXTRA_DIST += README.cipher +EXTRA_DIST += README.hash +EXTRA_DIST += README.mp +EXTRA_DIST += README.random + ###-------------------------------------------------------------------------- ### Debian. -EXTRA_DIST += debian/control -EXTRA_DIST += debian/copyright +## General stuff. EXTRA_DIST += debian/rules +EXTRA_DIST += debian/control EXTRA_DIST += debian/changelog +EXTRA_DIST += debian/copyright +EXTRA_DIST += debian/compat +EXTRA_DIST += debian/source/format + +## catacomb2 +EXTRA_DIST += debian/catacomb2.install +EXTRA_DIST += debian/catacomb2.symbols + +## catacomb-bin +EXTRA_DIST += debian/catacomb-bin.install +EXTRA_DIST += debian/catacomb-bin.prerm +EXTRA_DIST += debian/catacomb-bin.postinst +EXTRA_DIST += debian/catacomb-bin.config +EXTRA_DIST += debian/catacomb-bin.templates + +## catacomb-data +EXTRA_DIST += debian/catacomb-data.install + +## catacomb-dev +EXTRA_DIST += debian/catacomb-dev.install ###----- That's all, folks --------------------------------------------------