X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~mdw/git/distorted-keys/blobdiff_plain/0a155096e0d101cb30fbeccdfb630e0f14c0aaf9..015c302c208a6267050cc8b6db31bfb09dfbffd5:/Makefile.am diff --git a/Makefile.am b/Makefile.am index ba7fdff..ce04560 100644 --- a/Makefile.am +++ b/Makefile.am @@ -23,13 +23,19 @@ ### along with distorted-keys; if not, write to the Free Software Foundation, ### Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +pkgconfdir = $(sysconfdir)/$(PACKAGE) +profiledir = $(pkgconfdir)/profile.d + bin_SCRIPTS = sbin_SCRIPTS = -dist_pkglib_SCRIPTS = -dist_pkglib_DATA = +dist_pkgdata_SCRIPTS = +dist_pkgdata_DATA = +pkgdata_DATA = +dist_profile_DATA = noinst_DATA = -pkglib_DATA = -noinst_SCRIPTS = +USERV_CONFIG = +KEYS_CONFIG = +TOPLEVEL_CONFIG = EXTRA_DIST = CLEANFILES = @@ -42,15 +48,19 @@ confsubst = $(top_srcdir)/config/confsubst EXTRA_DIST += config/confsubst SUBSTVARS = \ - PACKAGE="$(PACKAGE)" VERSION="$(VERSION)" \ + PACKAGE="$(PACKAGE)" VERSION="$(VERSION)" \ PYTHON="$(PYTHON)" \ bindir="$(bindir)" sbindir="$(sbindir)" \ - pkgconfdir="$(sysconfdir)/$(PACKAGE)" \ - pkgstatedir="$(localstatedir)/$(PACKAGE)" \ - pkglibdir="$(pkglibdir)" \ + sysconfdir="$(sysconfdir)" pkgconfdir="$(pkgconfdir)" \ + pkgstatedir="$(localstatedir)/lib/$(PACKAGE)" \ + pkgdatadir="$(pkgdatadir)" \ user="$(user)" -SUBST = $(AM_V_GEN)$(confsubst) +V_SUBST = $(V_SUBST_$V) +V_SUBST_= $(V_SUBST_$(AM_DEFAULT_VERBOSITY)) +V_SUBST_0 = @printf " SUBST %s\n" $@; + +SUBST = $(V_SUBST)$(confsubst) ###-------------------------------------------------------------------------- ### Utility programs. @@ -77,7 +87,7 @@ extract-profile: extract-profile.in Makefile ### Main driver program and commands. ## Main driver. -bin_SCRIPTS += keys +sbin_SCRIPTS += keys EXTRA_DIST += keys.in CLEANFILES += keys keys: keys.in Makefile @@ -85,7 +95,7 @@ keys: keys.in Makefile chmod +x keys.new && mv keys.new keys ## Utilities library. -pkglib_DATA += keyfunc.sh +pkgdata_DATA += keyfunc.sh EXTRA_DIST += keyfunc.sh.in CLEANFILES += keyfunc.sh keyfunc.sh: keyfunc.sh.in Makefile @@ -93,20 +103,37 @@ keyfunc.sh: keyfunc.sh.in Makefile mv keyfunc.sh.new keyfunc.sh ## Commands. -dist_pkglib_SCRIPTS += keys.archive -dist_pkglib_SCRIPTS += keys.conceal -dist_pkglib_SCRIPTS += keys.keeper-cards -dist_pkglib_SCRIPTS += keys.new-keeper -dist_pkglib_SCRIPTS += keys.new-recov -dist_pkglib_SCRIPTS += keys.recover -dist_pkglib_SCRIPTS += keys.reveal -dist_pkglib_SCRIPTS += keys.stash +dist_pkgdata_SCRIPTS += keys.conceal +dist_pkgdata_SCRIPTS += keys.delete-keeper +dist_pkgdata_SCRIPTS += keys.keeper-cards +dist_pkgdata_SCRIPTS += keys.keeper-nub +dist_pkgdata_SCRIPTS += keys.list-keepers +dist_pkgdata_SCRIPTS += keys.list-recov +dist_pkgdata_SCRIPTS += keys.new-keeper +dist_pkgdata_SCRIPTS += keys.new-recov +dist_pkgdata_SCRIPTS += keys.recover +dist_pkgdata_SCRIPTS += keys.reveal +dist_pkgdata_SCRIPTS += keys.stash + +## Common profiles. +dist_profile_DATA += profile.d/00base +dist_profile_DATA += profile.d/02infra + +## Other configuration. +KEYS_CONFIG += keys.conf +EXTRA_DIST += keys.conf + +KEYS_CONFIG += admin.users admin.groups +EXTRA_DIST += admin.users admin.groups + +KEYS_CONFIG += keeper-cards.tex +EXTRA_DIST += keeper-cards.tex ###-------------------------------------------------------------------------- ### Crypto operations. ## Main driver program. -sbin_SCRIPTS += cryptop +bin_SCRIPTS += cryptop EXTRA_DIST += cryptop.in CLEANFILES += cryptop cryptop: cryptop.in Makefile @@ -114,27 +141,142 @@ cryptop: cryptop.in Makefile chmod +x cryptop.new && mv cryptop.new cryptop ## Key type libraries. -dist_pkglib_DATA += ktype.gnupg -dist_pkglib_DATA += ktype.seccure +dist_pkgdata_DATA += ktype.gnupg +dist_profile_DATA += profile.d/01gnupg + +dist_pkgdata_DATA += ktype.seccure +dist_profile_DATA += profile.d/01seccure ## Commands. -dist_pkglib_SCRIPTS += cryptop.genkey -dist_pkglib_SCRIPTS += cryptop.delkey -dist_pkglib_SCRIPTS += cryptop.recover -dist_pkglib_SCRIPTS += cryptop.info -dist_pkglib_SCRIPTS += cryptop.public -dist_pkglib_SCRIPTS += cryptop.encrypt -dist_pkglib_SCRIPTS += cryptop.decrypt -dist_pkglib_SCRIPTS += cryptop.sign -dist_pkglib_SCRIPTS += cryptop.verify +dist_pkgdata_SCRIPTS += cryptop.archive +dist_pkgdata_SCRIPTS += cryptop.genkey +dist_pkgdata_SCRIPTS += cryptop.list +dist_pkgdata_SCRIPTS += cryptop.delkey +dist_pkgdata_SCRIPTS += cryptop.recover +dist_pkgdata_SCRIPTS += cryptop.info +dist_pkgdata_SCRIPTS += cryptop.public +dist_pkgdata_SCRIPTS += cryptop.encrypt +dist_pkgdata_SCRIPTS += cryptop.decrypt +dist_pkgdata_SCRIPTS += cryptop.sign +dist_pkgdata_SCRIPTS += cryptop.verify ## Userv services configuration. -noinst_DATA += distorted-keys.userv -EXTRA_DIST += distorted-keys.userv.in -CLEANFILES += distorted-keys.userv -distorted-keys.userv: distorted-keys.userv.in Makefile - $(SUBST) $(srcdir)/distorted-keys.userv.in $(SUBSTVARS) \ - >distorted-keys.userv.new && \ - mv distorted-keys.userv.new distorted-keys.userv +USERV_CONFIG += userv/distorted-keys +EXTRA_DIST += userv/distorted-keys.in +CLEANFILES += userv/distorted-keys +userv/distorted-keys: userv/distorted-keys.in Makefile + $(AM_V_at)mkdir -p userv/ + $(SUBST) $(srcdir)/userv/distorted-keys.in $(SUBSTVARS) \ + >userv/distorted-keys.new && \ + mv userv/distorted-keys.new userv/distorted-keys + +###-------------------------------------------------------------------------- +### Standalone operations on public keys. + +bin_SCRIPTS += pubkeyop +EXTRA_DIST += pubkeyop.in +CLEANFILES += pubkeyop +pubkeyop: pubkeyop.in Makefile + $(SUBST) $(srcdir)/pubkeyop.in $(SUBSTVARS) >pubkeyop.new && \ + chmod +x pubkeyop.new && mv pubkeyop.new pubkeyop + +###-------------------------------------------------------------------------- +### Secure storage management. + +## Ephemeral filesystem construction. +sbin_SCRIPTS += mount-ephemeral +EXTRA_DIST += mount-ephemeral + +## Directory claiming service. +USERV_CONFIG += userv/claim-dir +EXTRA_DIST += userv/claim-dir.in +CLEANFILES += userv/claim-dir +userv/claim-dir: userv/claim-dir.in Makefile + $(AM_V_at)mkdir -p userv/ + $(SUBST) $(srcdir)/userv/claim-dir.in $(SUBSTVARS) \ + >userv/claim-dir.new && \ + mv userv/claim-dir.new userv/claim-dir + +## Configuration file. +TOPLEVEL_CONFIG += claim-dir.tab +EXTRA_DIST += claim-dir.tab + +###-------------------------------------------------------------------------- +### Installing configuration. + +## Install userv configuration. +noinst_DATA += $(USERV_CONFIG) +install-data-local:: + $(MKDIR_P) $(DESTDIR)$(uservconfdir) + @for i in $(USERV_CONFIG); do \ + b=$$(expr /$$i : '.*/\([^/]*\)$$'); \ + if [ -f $(DESTDIR)$(uservconfdir)/$$b ]; then continue; fi; \ + if [ -f $$i ]; then s=$$i; else s=$(srcdir)/$$i; fi; \ + echo $(INSTALL_DATA) $$s $(DESTDIR)$(uservconfdir); \ + $(INSTALL_DATA) $$s $(DESTDIR)$(uservconfdir) || exit 1; \ + done +uninstall-local:: + @for i in $(USERV_CONFIG); do \ + b=$$(expr /$$i : '.*/\([^/]*\)$$'); \ + echo rm -f $(DESTDIR)$(uservconfdir)/$$b; \ + rm -f $(DESTDIR)$(uservconfdir)/$$b; \ + done + +## Install keys configuration. +noinst_DATA += $(KEYS_CONFIG) +install-data-local:: + $(MKDIR_P) $(DESTDIR)$(pkgconfdir) + @for i in $(KEYS_CONFIG); do \ + b=$$(expr /$$i : '.*/\([^/]*\)$$'); \ + if [ -f $(DESTDIR)$(pkgconfdir)/$$b ]; then continue; fi; \ + if [ -f $$i ]; then s=$$i; else s=$(srcdir)/$$i; fi; \ + echo $(INSTALL_DATA) $$s $(DESTDIR)$(pkgconfdir); \ + $(INSTALL_DATA) $$s $(DESTDIR)$(pkgconfdir) || exit 1; \ + done +uninstall-local:: + @for i in $(KEYS_CONFIG); do \ + b=$$(expr /$$i : '.*/\([^/]*\)$$'); \ + echo rm -f $(DESTDIR)$(pkgconfdir)/$$b; \ + rm -f $(DESTDIR)$(pkgconfdir)/$$b; \ + done + +## Install toplevel configuration. +noinst_DATA += $(TOPLEVEL_CONFIG) +install-data-local:: + $(MKDIR_P) $(DESTDIR)$(sysconfdir) + @for i in $(TOPLEVEL_CONFIG); do \ + b=$$(expr /$$i : '.*/\([^/]*\)$$'); \ + if [ -f $(DESTDIR)$(sysconfdir)/$$b ]; then continue; fi; \ + if [ -f $$i ]; then s=$$i; else s=$(srcdir)/$$i; fi; \ + echo $(INSTALL_DATA) $$s $(DESTDIR)$(sysconfdir); \ + $(INSTALL_DATA) $$s $(DESTDIR)$(sysconfdir) || exit 1; \ + done +uninstall-local:: + @for i in $(TOPLEVEL_CONFIG); do \ + b=$$(expr /$$i : '.*/\([^/]*\)$$'); \ + echo rm -f $(DESTDIR)$(sysconfdir)/$$b; \ + rm -f $(DESTDIR)$(sysconfdir)/$$b; \ + done + +###-------------------------------------------------------------------------- +### Release setup. + +dist-hook:: + echo $(VERSION) >$(distdir)/RELEASE + +EXTRA_DIST += config/auto-version + +###-------------------------------------------------------------------------- +### Debian packaging. + +EXTRA_DIST += debian/changelog debian/control debian/copyright +EXTRA_DIST += debian/rules debian/compat + +EXTRA_DIST += debian/distorted-keys-base.install + +EXTRA_DIST += debian/distorted-keys.install +EXTRA_DIST += debian/distorted-keys.postinst + +EXTRA_DIST += debian/claim-dir.install ###----- That's all, folks --------------------------------------------------