X-Git-Url: https://git.distorted.org.uk/~mdw/catacomb/blobdiff_plain/1759269dbdd93d6ab1d074035bc32c420ae50825..d2679863cf27b0812a4b88397be1ebf0b1319305:/Makefile.am diff --git a/Makefile.am b/Makefile.am index 0e830d75..7ffaa53c 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,169 +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') +### This file is part of Catacomb. ### -### `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. +### 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. ### -### `Common' is distributed in the hope that it will be useful, +### 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. +### GNU Library 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. +### 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 = -dist_pkgdata_SCRIPTS = -pkgdata_DATA = -dist_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 - -V_SUBST = $(V_SUBST_$(V)) -V_SUBST_ = $(V_SUBST_$(AM_DEFAULT_VERBOSITY)) -V_SUBST_0 = @echo " SUBST $@"; -SUBST = $(V_SUBST)$(confsubst) - -###-------------------------------------------------------------------------- -### Main scripts. - -## mklinks -bin_SCRIPTS += mklinks -CLEANFILES += mklinks -EXTRA_DIST += mklinks.in - -mklinks: mklinks.in Makefile - $(SUBST) $(srcdir)/mklinks.in >$@.new \ - pkgdatadir=$(pkgdatadir) VERSION=$(VERSION) - $(AM_V_at)chmod +x $@.new - $(AM_V_at)mv $@.new $@ - -## findlinks -bin_SCRIPTS += findlinks -CLEANFILES += findlinks -EXTRA_DIST += findlinks.in - -findlinks: findlinks.in Makefile - $(SUBST) $(srcdir)/findlinks.in >$@.new \ - pkgdatadir=$(pkgdatadir) VERSION=$(VERSION) - $(AM_V_at)chmod +x $@.new - $(AM_V_at)mv $@.new $@ - -## mdw-setup -bin_SCRIPTS += mdw-setup -EXTRA_DIST += mdw-setup +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) ###-------------------------------------------------------------------------- -### Files to install. - -## Licences. -dist_pkgdata_DATA += GPL-1 GPL-2 GPL-3 -dist_pkgdata_DATA += LGPL-2 LGPL-2.1 LGPL-3 -dist_pkgdata_DATA += AGPL-3 -dist_pkgdata_DATA += gpl.tex lgpl.tex gpl.texi lgpl.texi - -install-data-hook:: - cd $(DESTDIR)$(pkgdatadir) && $(LN_S) -f GPL-2 COPYING - cd $(DESTDIR)$(pkgdatadir) && $(LN_S) -f LGPL-2 COPYING.LIB - -uninstall-hook:: - cd $(DESTDIR)$(pkgdatadir) && rm -f COPYING COPYING.LIB +### Package-configuration file. -## Documentation. -dist_pkgdata_DATA += INSTALL -dist_pkgdata_DATA += texinice.tex +pkgconfigdir = $(libdir)/pkgconfig +pkgconfig_DATA = catacomb.pc +EXTRA_DIST += catacomb.pc.in +CLEANFILES += catacomb.pc -## Useful code. -dist_pkgdata_DATA += mdwopt.c mdwopt.h -dist_pkgdata_DATA += getdate.y getdate.h +catacomb.pc: catacomb.pc.in Makefile + $(SUBST) $(srcdir)/catacomb.pc.in >$@.new $(SUBSTITUTIONS) && \ + mv $@.new $@ -## Scripts. -dist_pkgdata_SCRIPTS += install-ac -dist_pkgdata_SCRIPTS += maninst - -## Python support stuff. -dist_pkgdata_DATA += mdwsetup.py -dist_pkgdata_DATA += pysetup.mk +###-------------------------------------------------------------------------- +### Subdirectories. +### +### Note: There are implicit dependencies between the subdirectories. Be +### careful about reordering them. -## confsubst -pkgdata_SCRIPTS += confsubst -CLEANFILES += confsubst -EXTRA_DIST += confsubst.in +## Basic utilities. +SUBDIRS += base +libcatacomb_la_LIBADD += base/libbase.la -confsubst: confsubst.in Makefile - $(SUBST) $(srcdir)/confsubst.in >$@.new VERSION=$(VERSION) - $(AM_V_at)chmod +x $@.new - $(AM_V_at)mv $@.new $@ +## Mathematical infrastructure. +SUBDIRS += math +libcatacomb_la_LIBADD += math/libmath.la -## auto-version -pkgdata_SCRIPTS += auto-version -CLEANFILES += auto-version -EXTRA_DIST += auto-version.in +## Symmetric cryptography. +SUBDIRS += symm +libcatacomb_la_LIBADD += symm/libsymm.la -auto-version: auto-version.in Makefile - $(SUBST) $(srcdir)/auto-version.in >$@.new VERSION=$(VERSION) - $(AM_V_at)chmod +x $@.new - $(AM_V_at)mv $@.new $@ +## Key management. +SUBDIRS += key +libcatacomb_la_LIBADD += key/libkey.la -## Testsuites. -dist_pkgdata_DATA += autotest.am -dist_pkgdata_DATA += testsuite.at +## 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. +### Distribution. -## Make `make distcheck' work. -DISTCHECK_CONFIGURE_FLAGS = \ - --with-aclocaldir='$${prefix}/share/aclocal' - -## 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/compat -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 --------------------------------------------------