chiark / gitweb /
keyfunc.sh.in: Make sure we can match the `0' string.
[distorted-keys] / Makefile.am
index e169f41de38437dbf1100b1ddbfd015e58200fa7..48251c855077b581a721c50efc1137d275dfd971 100644 (file)
@@ -30,10 +30,12 @@ bin_SCRIPTS          =
 sbin_SCRIPTS            =
 dist_pkglib_SCRIPTS     =
 dist_pkglib_DATA        =
 sbin_SCRIPTS            =
 dist_pkglib_SCRIPTS     =
 dist_pkglib_DATA        =
-noinst_DATA             =
 pkglib_DATA             =
 pkglib_DATA             =
-noinst_SCRIPTS          =
 dist_profile_DATA       =
 dist_profile_DATA       =
+noinst_DATA             =
+USERV_CONFIG            =
+KEYS_CONFIG             =
+TOPLEVEL_CONFIG                 =
 
 EXTRA_DIST              =
 CLEANFILES              =
 
 EXTRA_DIST              =
 CLEANFILES              =
@@ -101,8 +103,8 @@ keyfunc.sh: keyfunc.sh.in Makefile
                mv keyfunc.sh.new keyfunc.sh
 
 ## Commands.
                mv keyfunc.sh.new keyfunc.sh
 
 ## Commands.
-dist_pkglib_SCRIPTS    += keys.archive
 dist_pkglib_SCRIPTS    += keys.conceal
 dist_pkglib_SCRIPTS    += keys.conceal
+dist_pkglib_SCRIPTS    += keys.delete-keeper
 dist_pkglib_SCRIPTS    += keys.keeper-cards
 dist_pkglib_SCRIPTS    += keys.keeper-nub
 dist_pkglib_SCRIPTS    += keys.list-keepers
 dist_pkglib_SCRIPTS    += keys.keeper-cards
 dist_pkglib_SCRIPTS    += keys.keeper-nub
 dist_pkglib_SCRIPTS    += keys.list-keepers
@@ -113,6 +115,20 @@ dist_pkglib_SCRIPTS        += keys.recover
 dist_pkglib_SCRIPTS    += keys.reveal
 dist_pkglib_SCRIPTS    += keys.stash
 
 dist_pkglib_SCRIPTS    += keys.reveal
 dist_pkglib_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.
 
 ###--------------------------------------------------------------------------
 ### Crypto operations.
 
@@ -132,6 +148,7 @@ dist_pkglib_DATA    += ktype.seccure
 dist_profile_DATA      += profile.d/01seccure
 
 ## Commands.
 dist_profile_DATA      += profile.d/01seccure
 
 ## Commands.
+dist_pkglib_SCRIPTS    += cryptop.archive
 dist_pkglib_SCRIPTS    += cryptop.genkey
 dist_pkglib_SCRIPTS    += cryptop.list
 dist_pkglib_SCRIPTS    += cryptop.delkey
 dist_pkglib_SCRIPTS    += cryptop.genkey
 dist_pkglib_SCRIPTS    += cryptop.list
 dist_pkglib_SCRIPTS    += cryptop.delkey
@@ -144,7 +161,7 @@ dist_pkglib_SCRIPTS += cryptop.sign
 dist_pkglib_SCRIPTS    += cryptop.verify
 
 ## Userv services configuration.
 dist_pkglib_SCRIPTS    += cryptop.verify
 
 ## Userv services configuration.
-noinst_DATA            += userv/distorted-keys
+USERV_CONFIG           += userv/distorted-keys
 EXTRA_DIST             += userv/distorted-keys.in
 CLEANFILES             += userv/distorted-keys
 userv/distorted-keys: userv/distorted-keys.in Makefile
 EXTRA_DIST             += userv/distorted-keys.in
 CLEANFILES             += userv/distorted-keys
 userv/distorted-keys: userv/distorted-keys.in Makefile
@@ -153,6 +170,16 @@ userv/distorted-keys: userv/distorted-keys.in Makefile
                        >userv/distorted-keys.new && \
                mv userv/distorted-keys.new userv/distorted-keys
 
                        >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.
 
 ###--------------------------------------------------------------------------
 ### Secure storage management.
 
@@ -161,7 +188,7 @@ sbin_SCRIPTS                += mount-ephemeral
 EXTRA_DIST             += mount-ephemeral
 
 ## Directory claiming service.
 EXTRA_DIST             += mount-ephemeral
 
 ## Directory claiming service.
-noinst_DATA            += userv/claim-dir
+USERV_CONFIG           += userv/claim-dir
 EXTRA_DIST             += userv/claim-dir.in
 CLEANFILES             += userv/claim-dir
 userv/claim-dir: userv/claim-dir.in Makefile
 EXTRA_DIST             += userv/claim-dir.in
 CLEANFILES             += userv/claim-dir
 userv/claim-dir: userv/claim-dir.in Makefile
@@ -171,15 +198,65 @@ userv/claim-dir: userv/claim-dir.in Makefile
                mv userv/claim-dir.new userv/claim-dir
 
 ## Configuration file.
                mv userv/claim-dir.new userv/claim-dir
 
 ## Configuration file.
+TOPLEVEL_CONFIG                += claim-dir.tab
 EXTRA_DIST             += claim-dir.tab
 
 ###--------------------------------------------------------------------------
 EXTRA_DIST             += claim-dir.tab
 
 ###--------------------------------------------------------------------------
-### Configuration snippets.
-
-dist_profile_DATA      += profile.d/00base
-dist_profile_DATA      += profile.d/02infra
-
-EXTRA_DIST             += keys.conf
+### 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.
 
 ###--------------------------------------------------------------------------
 ### Release setup.
@@ -195,11 +272,11 @@ EXTRA_DIST                += config/auto-version
 EXTRA_DIST             += debian/changelog debian/control debian/copyright
 EXTRA_DIST             += debian/rules debian/compat
 
 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
 
 EXTRA_DIST             += debian/distorted-keys.install
 EXTRA_DIST             += debian/distorted-keys.postinst
 
 EXTRA_DIST             += debian/claim-dir.install
 
-EXTRA_DIST             += debian/admin.users debian/admin.groups
-
 ###----- That's all, folks --------------------------------------------------
 ###----- That's all, folks --------------------------------------------------