chiark / gitweb /
keys.conf: New file, suggesting a possible implementation of `$SAFE'.
[distorted-keys] / Makefile.am
1 ### -*-makefile-*-
2 ###
3 ### Build script for distorted.org.uk key management
4 ###
5 ### (c) 2011 Mark Wooding
6 ###
7
8 ###----- Licensing notice ---------------------------------------------------
9 ###
10 ### This file is part of the distorted.org.uk key management suite.
11 ###
12 ### distorted-keys is free software; you can redistribute it and/or modify
13 ### it under the terms of the GNU General Public License as published by
14 ### the Free Software Foundation; either version 2 of the License, or
15 ### (at your option) any later version.
16 ###
17 ### distorted-keys is distributed in the hope that it will be useful,
18 ### but WITHOUT ANY WARRANTY; without even the implied warranty of
19 ### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
20 ### GNU General Public License for more details.
21 ###
22 ### You should have received a copy of the GNU General Public License
23 ### along with distorted-keys; if not, write to the Free Software Foundation,
24 ### Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
25
26 pkgconfdir               = $(sysconfdir)/$(PACKAGE)
27 profiledir               = $(pkgconfdir)/profile.d
28
29 bin_SCRIPTS              =
30 sbin_SCRIPTS             =
31 dist_pkglib_SCRIPTS      =
32 dist_pkglib_DATA         =
33 noinst_DATA              =
34 pkglib_DATA              =
35 noinst_SCRIPTS           =
36 dist_profile_DATA        =
37
38 EXTRA_DIST               =
39 CLEANFILES               =
40 DISTCLEANFILES           =
41
42 ###--------------------------------------------------------------------------
43 ### Substitution of configuration data.
44
45 confsubst = $(top_srcdir)/config/confsubst
46 EXTRA_DIST              += config/confsubst
47
48 SUBSTVARS = \
49         PACKAGE="$(PACKAGE)" VERSION="$(VERSION)" \
50         PYTHON="$(PYTHON)" \
51         bindir="$(bindir)" sbindir="$(sbindir)" \
52         sysconfdir="$(sysconfdir)" pkgconfdir="$(pkgconfdir)" \
53         pkgstatedir="$(localstatedir)/lib/$(PACKAGE)" \
54         pkglibdir="$(pkglibdir)" \
55         user="$(user)"
56
57 V_SUBST = $(V_SUBST_$V)
58 V_SUBST_= $(V_SUBST_$(AM_DEFAULT_VERBOSITY))
59 V_SUBST_0 = @printf "  SUBST  %s\n" $@;
60
61 SUBST = $(V_SUBST)$(confsubst)
62
63 ###--------------------------------------------------------------------------
64 ### Utility programs.
65
66 ## Shamir secret-sharing.
67 bin_SCRIPTS             += shamir
68 EXTRA_DIST              += shamir.in
69 CLEANFILES              += shamir
70 shamir: shamir.in Makefile
71         $(SUBST) $(srcdir)/shamir.in $(SUBSTVARS) >shamir.new && \
72                 chmod +x shamir.new && mv shamir.new shamir
73
74 ## Property expansion.
75 bin_SCRIPTS             += extract-profile
76 EXTRA_DIST              += extract-profile.in
77 CLEANFILES              += extract-profile
78 extract-profile: extract-profile.in Makefile
79         $(SUBST) $(srcdir)/extract-profile.in $(SUBSTVARS) \
80                         >extract-profile.new && \
81                 chmod +x extract-profile.new && \
82                 mv extract-profile.new extract-profile
83
84 ###--------------------------------------------------------------------------
85 ### Main driver program and commands.
86
87 ## Main driver.
88 sbin_SCRIPTS            += keys
89 EXTRA_DIST              += keys.in
90 CLEANFILES              += keys
91 keys: keys.in Makefile
92         $(SUBST) $(srcdir)/keys.in $(SUBSTVARS) >keys.new && \
93                 chmod +x keys.new && mv keys.new keys
94
95 ## Utilities library.
96 pkglib_DATA             += keyfunc.sh
97 EXTRA_DIST              += keyfunc.sh.in
98 CLEANFILES              += keyfunc.sh
99 keyfunc.sh: keyfunc.sh.in Makefile
100         $(SUBST) $(srcdir)/keyfunc.sh.in $(SUBSTVARS) >keyfunc.sh.new && \
101                 mv keyfunc.sh.new keyfunc.sh
102
103 ## Commands.
104 dist_pkglib_SCRIPTS     += keys.archive
105 dist_pkglib_SCRIPTS     += keys.conceal
106 dist_pkglib_SCRIPTS     += keys.keeper-cards
107 dist_pkglib_SCRIPTS     += keys.keeper-nub
108 dist_pkglib_SCRIPTS     += keys.list-keepers
109 dist_pkglib_SCRIPTS     += keys.list-recov
110 dist_pkglib_SCRIPTS     += keys.new-keeper
111 dist_pkglib_SCRIPTS     += keys.new-recov
112 dist_pkglib_SCRIPTS     += keys.recover
113 dist_pkglib_SCRIPTS     += keys.reveal
114 dist_pkglib_SCRIPTS     += keys.stash
115
116 ###--------------------------------------------------------------------------
117 ### Crypto operations.
118
119 ## Main driver program.
120 bin_SCRIPTS             += cryptop
121 EXTRA_DIST              += cryptop.in
122 CLEANFILES              += cryptop
123 cryptop: cryptop.in Makefile
124         $(SUBST) $(srcdir)/cryptop.in $(SUBSTVARS) >cryptop.new && \
125                 chmod +x cryptop.new && mv cryptop.new cryptop
126
127 ## Key type libraries.
128 dist_pkglib_DATA        += ktype.gnupg
129 dist_profile_DATA       += profile.d/01gnupg
130
131 dist_pkglib_DATA        += ktype.seccure
132 dist_profile_DATA       += profile.d/01seccure
133
134 ## Commands.
135 dist_pkglib_SCRIPTS     += cryptop.genkey
136 dist_pkglib_SCRIPTS     += cryptop.list
137 dist_pkglib_SCRIPTS     += cryptop.delkey
138 dist_pkglib_SCRIPTS     += cryptop.recover
139 dist_pkglib_SCRIPTS     += cryptop.info
140 dist_pkglib_SCRIPTS     += cryptop.public
141 dist_pkglib_SCRIPTS     += cryptop.encrypt
142 dist_pkglib_SCRIPTS     += cryptop.decrypt
143 dist_pkglib_SCRIPTS     += cryptop.sign
144 dist_pkglib_SCRIPTS     += cryptop.verify
145
146 ## Userv services configuration.
147 noinst_DATA             += userv/distorted-keys
148 EXTRA_DIST              += userv/distorted-keys.in
149 CLEANFILES              += userv/distorted-keys
150 userv/distorted-keys: userv/distorted-keys.in Makefile
151         $(AM_V_at)mkdir -p userv/
152         $(SUBST) $(srcdir)/userv/distorted-keys.in $(SUBSTVARS) \
153                         >userv/distorted-keys.new && \
154                 mv userv/distorted-keys.new userv/distorted-keys
155
156 ###--------------------------------------------------------------------------
157 ### Secure storage management.
158
159 ## Ephemeral filesystem construction.
160 sbin_SCRIPTS            += mount-ephemeral
161 EXTRA_DIST              += mount-ephemeral
162
163 ## Directory claiming service.
164 noinst_DATA             += userv/claim-dir
165 EXTRA_DIST              += userv/claim-dir.in
166 CLEANFILES              += userv/claim-dir
167 userv/claim-dir: userv/claim-dir.in Makefile
168         $(AM_V_at)mkdir -p userv/
169         $(SUBST) $(srcdir)/userv/claim-dir.in $(SUBSTVARS) \
170                         >userv/claim-dir.new && \
171                 mv userv/claim-dir.new userv/claim-dir
172
173 ## Configuration file.
174 EXTRA_DIST              += claim-dir.tab
175
176 ###--------------------------------------------------------------------------
177 ### Configuration snippets.
178
179 dist_profile_DATA       += profile.d/00base
180 dist_profile_DATA       += profile.d/02infra
181
182 EXTRA_DIST              += keys.conf
183
184 ###--------------------------------------------------------------------------
185 ### Release setup.
186
187 dist-hook::
188         echo $(VERSION) >$(distdir)/RELEASE
189
190 EXTRA_DIST              += config/auto-version
191
192 ###--------------------------------------------------------------------------
193 ### Debian packaging.
194
195 EXTRA_DIST              += debian/changelog debian/control debian/copyright
196 EXTRA_DIST              += debian/rules debian/compat
197
198 EXTRA_DIST              += debian/distorted-keys.install
199 EXTRA_DIST              += debian/distorted-keys.postinst
200
201 EXTRA_DIST              += debian/claim-dir.install
202
203 EXTRA_DIST              += debian/admin.users debian/admin.groups
204
205 ###----- That's all, folks --------------------------------------------------