/mandos/trunk

To get this branch, use:
bzr branch http://bzr.recompile.se/loggerhead/mandos/trunk

« back to all changes in this revision

Viewing changes to Makefile

  • Committer: Teddy Hogeborn
  • Date: 2015-01-25 00:02:51 UTC
  • Revision ID: teddy@recompile.se-20150125000251-j2bw50gfq9smqyxe
mandos.xml (SEE ALSO): Update links.

Update link to GnuPG home page, change reference from TLS 1.1 to TLS
1.2, and change to latest RFC for using OpenPGP keys with TLS (and use
its correct title).

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
WARN=-O -Wall -Wformat=2 -Winit-self -Wmissing-include-dirs \
2
 
        -Wswitch-default -Wswitch-enum -Wunused-parameter \
3
 
        -Wstrict-aliasing=1 -Wextra -Wfloat-equal -Wundef -Wshadow \
 
1
WARN=-O -Wall -Wextra -Wdouble-promotion -Wformat=2 -Winit-self \
 
2
        -Wmissing-include-dirs -Wswitch-default -Wswitch-enum \
 
3
        -Wunused -Wuninitialized -Wstrict-overflow=5 \
 
4
        -Wsuggest-attribute=pure -Wsuggest-attribute=const \
 
5
        -Wsuggest-attribute=noreturn -Wfloat-equal -Wundef -Wshadow \
4
6
        -Wunsafe-loop-optimizations -Wpointer-arith \
5
7
        -Wbad-function-cast -Wcast-qual -Wcast-align -Wwrite-strings \
6
 
        -Wconversion -Wstrict-prototypes -Wold-style-definition \
7
 
        -Wpacked -Wnested-externs -Winline -Wvolatile-register-var
8
 
#       -Wunreachable-code 
 
8
        -Wconversion -Wlogical-op -Waggregate-return \
 
9
        -Wstrict-prototypes -Wold-style-definition \
 
10
        -Wmissing-format-attribute -Wnormalized=nfc -Wpacked \
 
11
        -Wredundant-decls -Wnested-externs -Winline -Wvla \
 
12
        -Wvolatile-register-var -Woverlength-strings
9
13
#DEBUG=-ggdb3
10
 
# For info about _FORTIFY_SOURCE, see
11
 
# <http://www.kernel.org/doc/man-pages/online/pages/man7/feature_test_macros.7.html>
 
14
# For info about _FORTIFY_SOURCE, see feature_test_macros(7)
12
15
# and <http://gcc.gnu.org/ml/gcc-patches/2004-09/msg02055.html>.
13
16
FORTIFY=-D_FORTIFY_SOURCE=2 -fstack-protector-all -fPIC
14
17
LINK_FORTIFY_LD=-z relro -z now
15
18
LINK_FORTIFY=
 
19
 
 
20
# If BROKEN_PIE is set, do not build with -pie
16
21
ifndef BROKEN_PIE
17
22
FORTIFY += -fPIE
18
 
LINK_FORTIFY_LD += -fPIE
19
23
LINK_FORTIFY += -pie
20
24
endif
21
25
#COVERAGE=--coverage
22
 
OPTIMIZE=-Os
 
26
OPTIMIZE=-Os -fno-strict-aliasing
23
27
LANGUAGE=-std=gnu99
24
28
htmldir=man
25
 
version=1.0.14
 
29
version=1.6.9
26
30
SED=sed
27
31
 
 
32
USER=$(firstword $(subst :, ,$(shell getent passwd _mandos || getent passwd nobody || echo 65534)))
 
33
GROUP=$(firstword $(subst :, ,$(shell getent group _mandos || getent group nobody || echo 65534)))
 
34
 
28
35
## Use these settings for a traditional /usr/local install
29
36
# PREFIX=$(DESTDIR)/usr/local
30
37
# CONFDIR=$(DESTDIR)/etc/mandos
31
38
# KEYDIR=$(DESTDIR)/etc/mandos/keys
32
39
# MANDIR=$(PREFIX)/man
33
40
# INITRAMFSTOOLS=$(DESTDIR)/etc/initramfs-tools
 
41
# STATEDIR=$(DESTDIR)/var/lib/mandos
 
42
# LIBDIR=$(PREFIX)/lib
34
43
##
35
44
 
36
45
## These settings are for a package-type install
39
48
KEYDIR=$(DESTDIR)/etc/keys/mandos
40
49
MANDIR=$(PREFIX)/share/man
41
50
INITRAMFSTOOLS=$(DESTDIR)/usr/share/initramfs-tools
 
51
STATEDIR=$(DESTDIR)/var/lib/mandos
 
52
LIBDIR=$(shell \
 
53
        for d in \
 
54
        "/usr/lib/`dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null`" \
 
55
        "`rpm --eval='%{_libdir}' 2>/dev/null`" /usr/lib; do \
 
56
                if [ -d "$$d" -a "$$d" = "$${d%/}" ]; then \
 
57
                        echo "$(DESTDIR)$$d"; \
 
58
                        break; \
 
59
                fi; \
 
60
        done)
42
61
##
43
62
 
 
63
SYSTEMD=$(DESTDIR)$(shell pkg-config systemd --variable=systemdsystemunitdir)
 
64
 
44
65
GNUTLS_CFLAGS=$(shell pkg-config --cflags-only-I gnutls)
45
66
GNUTLS_LIBS=$(shell pkg-config --libs gnutls)
46
67
AVAHI_CFLAGS=$(shell pkg-config --cflags-only-I avahi-core)
50
71
        getconf LFS_LDFLAGS)
51
72
 
52
73
# Do not change these two
53
 
CFLAGS=$(WARN) $(DEBUG) $(FORTIFY) $(COVERAGE) $(OPTIMIZE) \
 
74
CFLAGS+=$(WARN) $(DEBUG) $(FORTIFY) $(COVERAGE) $(OPTIMIZE) \
54
75
        $(LANGUAGE) $(GNUTLS_CFLAGS) $(AVAHI_CFLAGS) $(GPGME_CFLAGS) \
55
76
        -DVERSION='"$(version)"'
56
 
LDFLAGS=$(COVERAGE) $(LINK_FORTIFY) $(foreach flag,$(LINK_FORTIFY_LD),-Xlinker $(flag))
 
77
LDFLAGS+=-Xlinker --as-needed $(COVERAGE) $(LINK_FORTIFY) $(foreach flag,$(LINK_FORTIFY_LD),-Xlinker $(flag))
57
78
 
58
79
# Commands to format a DocBook <refentry> document into a manual page
59
 
DOCBOOKTOMAN=cd $(dir $<); xsltproc --nonet --xinclude \
 
80
DOCBOOKTOMAN=$(strip cd $(dir $<); xsltproc --nonet --xinclude \
60
81
        --param man.charmap.use.subset          0 \
61
82
        --param make.year.ranges                1 \
62
83
        --param make.single.year.ranges         1 \
63
84
        --param man.output.quietly              1 \
64
85
        --param man.authors.section.enabled     0 \
65
 
         /usr/share/xml/docbook/stylesheet/nwalsh/manpages/docbook.xsl \
 
86
        /usr/share/xml/docbook/stylesheet/nwalsh/manpages/docbook.xsl \
66
87
        $(notdir $<); \
67
 
        $(MANPOST) $(notdir $@)
68
 
# DocBook-to-man post-processing to fix a '\n' escape bug
69
 
MANPOST=$(SED) --in-place --expression='s,\\\\en,\\en,g;s,\\n,\\en,g'
 
88
        if locale --all 2>/dev/null | grep --regexp='^en_US\.utf8$$' \
 
89
        && type man 2>/dev/null; then LANG=en_US.UTF-8 MANWIDTH=80 \
 
90
        man --warnings --encoding=UTF-8 --local-file $(notdir $@); \
 
91
        fi >/dev/null)
70
92
 
71
 
DOCBOOKTOHTML=xsltproc --nonet --xinclude \
 
93
DOCBOOKTOHTML=$(strip xsltproc --nonet --xinclude \
72
94
        --param make.year.ranges                1 \
73
95
        --param make.single.year.ranges         1 \
74
96
        --param man.output.quietly              1 \
76
98
        --param citerefentry.link               1 \
77
99
        --output $@ \
78
100
        /usr/share/xml/docbook/stylesheet/nwalsh/xhtml/docbook.xsl \
79
 
        $<; $(HTMLPOST) $@
 
101
        $<; $(HTMLPOST) $@)
80
102
# Fix citerefentry links
81
103
HTMLPOST=$(SED) --in-place \
82
104
        --expression='s/\(<a class="citerefentry" href="\)\("><span class="citerefentry"><span class="refentrytitle">\)\([^<]*\)\(<\/span>(\)\([^)]*\)\()<\/span><\/a>\)/\1\3.\5\2\3\4\5\6/g'
83
105
 
84
106
PLUGINS=plugins.d/password-prompt plugins.d/mandos-client \
85
 
        plugins.d/usplash plugins.d/splashy plugins.d/askpass-fifo
 
107
        plugins.d/usplash plugins.d/splashy plugins.d/askpass-fifo \
 
108
        plugins.d/plymouth
86
109
CPROGS=plugin-runner $(PLUGINS)
87
 
PROGS=mandos mandos-keygen mandos-ctl $(CPROGS)
88
 
DOCS=mandos.8 plugin-runner.8mandos mandos-keygen.8 \
 
110
PROGS=mandos mandos-keygen mandos-ctl mandos-monitor $(CPROGS)
 
111
DOCS=mandos.8 mandos-keygen.8 mandos-monitor.8 mandos-ctl.8 \
 
112
        mandos.conf.5 mandos-clients.conf.5 plugin-runner.8mandos \
89
113
        plugins.d/mandos-client.8mandos \
90
 
        plugins.d/password-prompt.8mandos mandos.conf.5 \
91
 
        plugins.d/usplash.8mandos plugins.d/splashy.8mandos \
92
 
        plugins.d/askpass-fifo.8mandos mandos-clients.conf.5
 
114
        plugins.d/password-prompt.8mandos plugins.d/usplash.8mandos \
 
115
        plugins.d/splashy.8mandos plugins.d/askpass-fifo.8mandos \
 
116
        plugins.d/plymouth.8mandos intro.8mandos
93
117
 
94
118
htmldocs=$(addsuffix .xhtml,$(DOCS))
95
119
 
116
140
%.8mandos.xhtml: %.xml common.ent legalnotice.xml
117
141
        $(DOCBOOKTOHTML)
118
142
 
 
143
intro.8mandos: intro.xml common.ent legalnotice.xml
 
144
        $(DOCBOOKTOMAN)
 
145
intro.8mandos.xhtml: intro.xml common.ent legalnotice.xml
 
146
        $(DOCBOOKTOHTML)
 
147
 
119
148
mandos.8: mandos.xml common.ent mandos-options.xml overview.xml \
120
149
                legalnotice.xml
121
150
        $(DOCBOOKTOMAN)
130
159
                 legalnotice.xml
131
160
        $(DOCBOOKTOHTML)
132
161
 
 
162
mandos-monitor.8: mandos-monitor.xml common.ent overview.xml \
 
163
                legalnotice.xml
 
164
        $(DOCBOOKTOMAN)
 
165
mandos-monitor.8.xhtml: mandos-monitor.xml common.ent overview.xml \
 
166
                 legalnotice.xml
 
167
        $(DOCBOOKTOHTML)
 
168
 
 
169
mandos-ctl.8: mandos-ctl.xml common.ent overview.xml \
 
170
                legalnotice.xml
 
171
        $(DOCBOOKTOMAN)
 
172
mandos-ctl.8.xhtml: mandos-ctl.xml common.ent overview.xml \
 
173
                 legalnotice.xml
 
174
        $(DOCBOOKTOHTML)
 
175
 
133
176
mandos.conf.5: mandos.conf.xml common.ent mandos-options.xml \
134
177
                legalnotice.xml
135
178
        $(DOCBOOKTOMAN)
157
200
 
158
201
# Update all these files with version number $(version)
159
202
common.ent: Makefile
160
 
        $(SED) --in-place \
 
203
        $(strip $(SED) --in-place \
161
204
                --expression='s/^\(<!ENTITY version "\)[^"]*">$$/\1$(version)">/' \
162
 
                $@
 
205
                $@)
163
206
 
164
207
mandos: Makefile
165
 
        $(SED) --in-place \
 
208
        $(strip $(SED) --in-place \
166
209
                --expression='s/^\(version = "\)[^"]*"$$/\1$(version)"/' \
167
 
                $@
 
210
                $@)
168
211
 
169
212
mandos-keygen: Makefile
170
 
        $(SED) --in-place \
 
213
        $(strip $(SED) --in-place \
171
214
                --expression='s/^\(VERSION="\)[^"]*"$$/\1$(version)"/' \
172
 
                $@
 
215
                $@)
173
216
 
174
217
mandos-ctl: Makefile
175
 
        $(SED) --in-place \
176
 
                --expression='s/^\(version = "\)[^"]*"$$/\1$(version)"/' \
177
 
                $@
 
218
        $(strip $(SED) --in-place \
 
219
                --expression='s/^\(version = "\)[^"]*"$$/\1$(version)"/' \
 
220
                $@)
 
221
 
 
222
mandos-monitor: Makefile
 
223
        $(strip $(SED) --in-place \
 
224
                --expression='s/^\(version = "\)[^"]*"$$/\1$(version)"/' \
 
225
                $@)
178
226
 
179
227
mandos.lsm: Makefile
180
 
        $(SED) --in-place \
 
228
        $(strip $(SED) --in-place \
181
229
                --expression='s/^\(Version:\).*/\1\t$(version)/' \
182
 
                $@
183
 
        $(SED) --in-place \
 
230
                $@)
 
231
        $(strip $(SED) --in-place \
184
232
                --expression='s/^\(Entered-date:\).*/\1\t$(shell date --rfc-3339=date --reference=Makefile)/' \
185
 
                $@
186
 
        $(SED) --in-place \
 
233
                $@)
 
234
        $(strip $(SED) --in-place \
187
235
                --expression='s/\(mandos_\)[0-9.]\+\(\.orig\.tar\.gz\)/\1$(version)\2/' \
188
 
                $@
189
 
 
190
 
plugins.d/mandos-client: plugins.d/mandos-client.o
191
 
        $(LINK.o) $(GNUTLS_LIBS) $(AVAHI_LIBS) $(GPGME_LIBS) \
192
 
                $(COMMON) $^ $(LOADLIBES) $(LDLIBS) -o $@
193
 
 
194
 
.PHONY : all doc html clean distclean run-client run-server install \
195
 
        install-server install-client uninstall uninstall-server \
196
 
        uninstall-client purge purge-server purge-client
 
236
                $@)
 
237
 
 
238
plugins.d/mandos-client: plugins.d/mandos-client.c
 
239
        $(LINK.c) $^ -lrt $(GNUTLS_LIBS) $(AVAHI_LIBS) $(strip\
 
240
                ) $(GPGME_LIBS) $(LOADLIBES) $(LDLIBS) -o $@
 
241
 
 
242
.PHONY : all doc html clean distclean mostlyclean maintainer-clean \
 
243
        check run-client run-server install install-html \
 
244
        install-server install-client-nokey install-client uninstall \
 
245
        uninstall-server uninstall-client purge purge-server \
 
246
        purge-client
197
247
 
198
248
clean:
199
249
        -rm --force $(CPROGS) $(objects) $(htmldocs) $(DOCS) core
201
251
distclean: clean
202
252
mostlyclean: clean
203
253
maintainer-clean: clean
204
 
        -rm --force --recursive keydir confdir
 
254
        -rm --force --recursive keydir confdir statedir
205
255
 
206
256
check:  all
207
257
        ./mandos --check
 
258
        ./mandos-ctl --check
208
259
 
209
260
# Run the client with a local config and key
210
261
run-client: all keydir/seckey.txt keydir/pubkey.txt
 
262
        @echo "###################################################################"
 
263
        @echo "# The following error messages are harmless and can be safely     #"
 
264
        @echo "# ignored.  The messages are caused by not running as root, but   #"
 
265
        @echo "# you should NOT run \"make run-client\" as root unless you also    #"
 
266
        @echo "# unpacked and compiled Mandos as root, which is NOT recommended. #"
 
267
        @echo "# From plugin-runner: setgid: Operation not permitted             #"
 
268
        @echo "#                     setuid: Operation not permitted             #"
 
269
        @echo "# From askpass-fifo:  mkfifo: Permission denied                   #"
 
270
        @echo "# From mandos-client:                                             #"
 
271
        @echo "#             Failed to raise privileges: Operation not permitted #"
 
272
        @echo "#             Warning: network hook \"*\" exited with status *      #"
 
273
        @echo "###################################################################"
 
274
# We set GNOME_KEYRING_CONTROL to block pam_gnome_keyring
211
275
        ./plugin-runner --plugin-dir=plugins.d \
212
276
                --config-file=plugin-runner.conf \
213
 
                --options-for=mandos-client:--seckey=keydir/seckey.txt,--pubkey=keydir/pubkey.txt \
 
277
                --options-for=mandos-client:--seckey=keydir/seckey.txt,--pubkey=keydir/pubkey.txt,--network-hook-dir=network-hooks.d \
 
278
                --env-for=mandos-client:GNOME_KEYRING_CONTROL= \
214
279
                $(CLIENTARGS)
215
280
 
216
281
# Used by run-client
219
284
        ./mandos-keygen --dir keydir --force
220
285
 
221
286
# Run the server with a local config
222
 
run-server: confdir/mandos.conf confdir/clients.conf
223
 
        ./mandos --debug --no-dbus --configdir=confdir $(SERVERARGS)
 
287
run-server: confdir/mandos.conf confdir/clients.conf statedir
 
288
        ./mandos --debug --no-dbus --configdir=confdir \
 
289
                --statedir=statedir $(SERVERARGS)
224
290
 
225
291
# Used by run-server
226
292
confdir/mandos.conf: mandos.conf
230
296
        install --directory confdir
231
297
        install --mode=u=rw $< $@
232
298
# Add a client password
233
 
        ./mandos-keygen --dir keydir --password >> $@
 
299
        ./mandos-keygen --dir keydir --password --no-ssh >> $@
 
300
statedir:
 
301
        install --directory statedir
234
302
 
235
303
install: install-server install-client-nokey
236
304
 
241
309
 
242
310
install-server: doc
243
311
        install --directory $(CONFDIR)
 
312
        if install --directory --mode=u=rwx --owner=$(USER) \
 
313
                --group=$(GROUP) $(STATEDIR); then \
 
314
                :; \
 
315
        elif install --directory --mode=u=rwx $(STATEDIR); then \
 
316
                chown -- $(USER):$(GROUP) $(STATEDIR) || :; \
 
317
        fi
244
318
        install --mode=u=rwx,go=rx mandos $(PREFIX)/sbin/mandos
 
319
        install --mode=u=rwx,go=rx --target-directory=$(PREFIX)/sbin \
 
320
                mandos-ctl
 
321
        install --mode=u=rwx,go=rx --target-directory=$(PREFIX)/sbin \
 
322
                mandos-monitor
245
323
        install --mode=u=rw,go=r --target-directory=$(CONFDIR) \
246
324
                mandos.conf
247
325
        install --mode=u=rw --target-directory=$(CONFDIR) \
248
326
                clients.conf
 
327
        install --mode=u=rw,go=r dbus-mandos.conf \
 
328
                $(DESTDIR)/etc/dbus-1/system.d/mandos.conf
249
329
        install --mode=u=rwx,go=rx init.d-mandos \
250
330
                $(DESTDIR)/etc/init.d/mandos
 
331
        if [ "$(SYSTEMD)" != "$(DESTDIR)" -a -d "$(SYSTEMD)" ]; then \
 
332
                install --mode=u=rw,go=r mandos.service $(SYSTEMD); \
 
333
        fi
251
334
        install --mode=u=rw,go=r default-mandos \
252
335
                $(DESTDIR)/etc/default/mandos
253
336
        if [ -z $(DESTDIR) ]; then \
255
338
        fi
256
339
        gzip --best --to-stdout mandos.8 \
257
340
                > $(MANDIR)/man8/mandos.8.gz
 
341
        gzip --best --to-stdout mandos-monitor.8 \
 
342
                > $(MANDIR)/man8/mandos-monitor.8.gz
 
343
        gzip --best --to-stdout mandos-ctl.8 \
 
344
                > $(MANDIR)/man8/mandos-ctl.8.gz
258
345
        gzip --best --to-stdout mandos.conf.5 \
259
346
                > $(MANDIR)/man5/mandos.conf.5.gz
260
347
        gzip --best --to-stdout mandos-clients.conf.5 \
261
348
                > $(MANDIR)/man5/mandos-clients.conf.5.gz
 
349
        gzip --best --to-stdout intro.8mandos \
 
350
                > $(MANDIR)/man8/intro.8mandos.gz
262
351
 
263
352
install-client-nokey: all doc
264
 
        install --directory $(PREFIX)/lib/mandos $(CONFDIR)
 
353
        install --directory $(LIBDIR)/mandos $(CONFDIR)
265
354
        install --directory --mode=u=rwx $(KEYDIR) \
266
 
                $(PREFIX)/lib/mandos/plugins.d
267
 
        if [ "$(CONFDIR)" != "$(PREFIX)/lib/mandos" ]; then \
 
355
                $(LIBDIR)/mandos/plugins.d
 
356
        if [ "$(CONFDIR)" != "$(LIBDIR)/mandos" ]; then \
268
357
                install --mode=u=rwx \
269
358
                        --directory "$(CONFDIR)/plugins.d"; \
270
359
        fi
 
360
        install --mode=u=rwx,go=rx --directory \
 
361
                "$(CONFDIR)/network-hooks.d"
271
362
        install --mode=u=rwx,go=rx \
272
 
                --target-directory=$(PREFIX)/lib/mandos plugin-runner
 
363
                --target-directory=$(LIBDIR)/mandos plugin-runner
273
364
        install --mode=u=rwx,go=rx --target-directory=$(PREFIX)/sbin \
274
365
                mandos-keygen
275
366
        install --mode=u=rwx,go=rx \
276
 
                --target-directory=$(PREFIX)/lib/mandos/plugins.d \
 
367
                --target-directory=$(LIBDIR)/mandos/plugins.d \
277
368
                plugins.d/password-prompt
278
369
        install --mode=u=rwxs,go=rx \
279
 
                --target-directory=$(PREFIX)/lib/mandos/plugins.d \
 
370
                --target-directory=$(LIBDIR)/mandos/plugins.d \
280
371
                plugins.d/mandos-client
281
372
        install --mode=u=rwxs,go=rx \
282
 
                --target-directory=$(PREFIX)/lib/mandos/plugins.d \
 
373
                --target-directory=$(LIBDIR)/mandos/plugins.d \
283
374
                plugins.d/usplash
284
375
        install --mode=u=rwxs,go=rx \
285
 
                --target-directory=$(PREFIX)/lib/mandos/plugins.d \
 
376
                --target-directory=$(LIBDIR)/mandos/plugins.d \
286
377
                plugins.d/splashy
287
378
        install --mode=u=rwxs,go=rx \
288
 
                --target-directory=$(PREFIX)/lib/mandos/plugins.d \
 
379
                --target-directory=$(LIBDIR)/mandos/plugins.d \
289
380
                plugins.d/askpass-fifo
 
381
        install --mode=u=rwxs,go=rx \
 
382
                --target-directory=$(LIBDIR)/mandos/plugins.d \
 
383
                plugins.d/plymouth
290
384
        install initramfs-tools-hook \
291
385
                $(INITRAMFSTOOLS)/hooks/mandos
292
386
        install --mode=u=rw,go=r initramfs-tools-hook-conf \
298
392
                > $(MANDIR)/man8/mandos-keygen.8.gz
299
393
        gzip --best --to-stdout plugin-runner.8mandos \
300
394
                > $(MANDIR)/man8/plugin-runner.8mandos.gz
 
395
        gzip --best --to-stdout plugins.d/mandos-client.8mandos \
 
396
                > $(MANDIR)/man8/mandos-client.8mandos.gz
301
397
        gzip --best --to-stdout plugins.d/password-prompt.8mandos \
302
398
                > $(MANDIR)/man8/password-prompt.8mandos.gz
303
 
        gzip --best --to-stdout plugins.d/mandos-client.8mandos \
304
 
                > $(MANDIR)/man8/mandos-client.8mandos.gz
305
399
        gzip --best --to-stdout plugins.d/usplash.8mandos \
306
400
                > $(MANDIR)/man8/usplash.8mandos.gz
307
401
        gzip --best --to-stdout plugins.d/splashy.8mandos \
308
402
                > $(MANDIR)/man8/splashy.8mandos.gz
309
403
        gzip --best --to-stdout plugins.d/askpass-fifo.8mandos \
310
404
                > $(MANDIR)/man8/askpass-fifo.8mandos.gz
 
405
        gzip --best --to-stdout plugins.d/plymouth.8mandos \
 
406
                > $(MANDIR)/man8/plymouth.8mandos.gz
311
407
 
312
408
install-client: install-client-nokey
313
409
# Post-installation stuff
319
415
 
320
416
uninstall-server:
321
417
        -rm --force $(PREFIX)/sbin/mandos \
 
418
                $(PREFIX)/sbin/mandos-ctl \
 
419
                $(PREFIX)/sbin/mandos-monitor \
322
420
                $(MANDIR)/man8/mandos.8.gz \
 
421
                $(MANDIR)/man8/mandos-monitor.8.gz \
 
422
                $(MANDIR)/man8/mandos-ctl.8.gz \
323
423
                $(MANDIR)/man5/mandos.conf.5.gz \
324
424
                $(MANDIR)/man5/mandos-clients.conf.5.gz
325
425
        update-rc.d -f mandos remove
331
431
        ! grep --regexp='^ *[^ #].*keyscript=[^,=]*/mandos/' \
332
432
                $(DESTDIR)/etc/crypttab
333
433
        -rm --force $(PREFIX)/sbin/mandos-keygen \
334
 
                $(PREFIX)/lib/mandos/plugin-runner \
335
 
                $(PREFIX)/lib/mandos/plugins.d/password-prompt \
336
 
                $(PREFIX)/lib/mandos/plugins.d/mandos-client \
337
 
                $(PREFIX)/lib/mandos/plugins.d/usplash \
338
 
                $(PREFIX)/lib/mandos/plugins.d/splashy \
339
 
                $(PREFIX)/lib/mandos/plugins.d/askpass-fifo \
 
434
                $(LIBDIR)/mandos/plugin-runner \
 
435
                $(LIBDIR)/mandos/plugins.d/password-prompt \
 
436
                $(LIBDIR)/mandos/plugins.d/mandos-client \
 
437
                $(LIBDIR)/mandos/plugins.d/usplash \
 
438
                $(LIBDIR)/mandos/plugins.d/splashy \
 
439
                $(LIBDIR)/mandos/plugins.d/askpass-fifo \
 
440
                $(LIBDIR)/mandos/plugins.d/plymouth \
340
441
                $(INITRAMFSTOOLS)/hooks/mandos \
341
442
                $(INITRAMFSTOOLS)/conf-hooks.d/mandos \
342
443
                $(INITRAMFSTOOLS)/scripts/init-premount/mandos \
 
444
                $(MANDIR)/man8/mandos-keygen.8.gz \
343
445
                $(MANDIR)/man8/plugin-runner.8mandos.gz \
344
 
                $(MANDIR)/man8/mandos-keygen.8.gz \
 
446
                $(MANDIR)/man8/mandos-client.8mandos.gz
345
447
                $(MANDIR)/man8/password-prompt.8mandos.gz \
346
448
                $(MANDIR)/man8/usplash.8mandos.gz \
347
449
                $(MANDIR)/man8/splashy.8mandos.gz \
348
450
                $(MANDIR)/man8/askpass-fifo.8mandos.gz \
349
 
                $(MANDIR)/man8/mandos-client.8mandos.gz
350
 
        -rmdir $(PREFIX)/lib/mandos/plugins.d $(CONFDIR)/plugins.d \
351
 
                 $(PREFIX)/lib/mandos $(CONFDIR) $(KEYDIR)
 
451
                $(MANDIR)/man8/plymouth.8mandos.gz \
 
452
        -rmdir $(LIBDIR)/mandos/plugins.d $(CONFDIR)/plugins.d \
 
453
                 $(LIBDIR)/mandos $(CONFDIR) $(KEYDIR)
352
454
        update-initramfs -k all -u
353
455
 
354
456
purge: purge-server purge-client
355
457
 
356
458
purge-server: uninstall-server
357
459
        -rm --force $(CONFDIR)/mandos.conf $(CONFDIR)/clients.conf \
 
460
                $(DESTDIR)/etc/dbus-1/system.d/mandos.conf
358
461
                $(DESTDIR)/etc/default/mandos \
359
462
                $(DESTDIR)/etc/init.d/mandos \
 
463
                $(SYSTEMD)/mandos.service \
 
464
                $(DESTDIR)/run/mandos.pid \
360
465
                $(DESTDIR)/var/run/mandos.pid
361
466
        -rmdir $(CONFDIR)
362
467