/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: 2011-12-31 20:07:11 UTC
  • mfrom: (535.1.9 wireless-network-hook)
  • Revision ID: teddy@recompile.se-20111231200711-6dli3r8drftem57r
Merge new wireless network hook.  Fix bridge network hook to use
hardware addresses instead of interface names.  Implement and document
new "CONNECT" environment variable for network hooks.

Show diffs side-by-side

added added

removed removed

Lines of Context:
23
23
OPTIMIZE=-Os
24
24
LANGUAGE=-std=gnu99
25
25
htmldir=man
26
 
version=1.6.3
 
26
version=1.4.1
27
27
SED=sed
28
28
 
29
29
USER=$(firstword $(subst :, ,$(shell getent passwd _mandos || getent passwd nobody || echo 65534)))
36
36
# MANDIR=$(PREFIX)/man
37
37
# INITRAMFSTOOLS=$(DESTDIR)/etc/initramfs-tools
38
38
# STATEDIR=$(DESTDIR)/var/lib/mandos
39
 
# LIBDIR=$(PREFIX)/lib
40
39
##
41
40
 
42
41
## These settings are for a package-type install
46
45
MANDIR=$(PREFIX)/share/man
47
46
INITRAMFSTOOLS=$(DESTDIR)/usr/share/initramfs-tools
48
47
STATEDIR=$(DESTDIR)/var/lib/mandos
49
 
LIBDIR=$(shell \
50
 
        for d in \
51
 
        "/usr/lib/`dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null`" \
52
 
        "`rpm --eval='%{_libdir}' 2>/dev/null`" /usr/lib; do \
53
 
                if [ -d "$$d" -a "$$d" = "$${d%/}" ]; then \
54
 
                        echo "$(DESTDIR)$$d"; \
55
 
                        break; \
56
 
                fi; \
57
 
        done)
58
48
##
59
49
 
60
 
SYSTEMD=$(DESTDIR)$(shell pkg-config systemd --variable=systemdsystemunitdir)
61
 
 
62
50
GNUTLS_CFLAGS=$(shell pkg-config --cflags-only-I gnutls)
63
51
GNUTLS_LIBS=$(shell pkg-config --libs gnutls)
64
52
AVAHI_CFLAGS=$(shell pkg-config --cflags-only-I avahi-core)
68
56
        getconf LFS_LDFLAGS)
69
57
 
70
58
# Do not change these two
71
 
CFLAGS+=$(WARN) $(DEBUG) $(FORTIFY) $(COVERAGE) $(OPTIMIZE) \
 
59
CFLAGS=$(WARN) $(DEBUG) $(FORTIFY) $(COVERAGE) $(OPTIMIZE) \
72
60
        $(LANGUAGE) $(GNUTLS_CFLAGS) $(AVAHI_CFLAGS) $(GPGME_CFLAGS) \
73
61
        -DVERSION='"$(version)"'
74
 
LDFLAGS+=-Xlinker --as-needed $(COVERAGE) $(LINK_FORTIFY) $(foreach flag,$(LINK_FORTIFY_LD),-Xlinker $(flag))
 
62
LDFLAGS=-Xlinker --as-needed $(COVERAGE) $(LINK_FORTIFY) $(foreach flag,$(LINK_FORTIFY_LD),-Xlinker $(flag))
75
63
 
76
64
# Commands to format a DocBook <refentry> document into a manual page
77
65
DOCBOOKTOMAN=$(strip cd $(dir $<); xsltproc --nonet --xinclude \
80
68
        --param make.single.year.ranges         1 \
81
69
        --param man.output.quietly              1 \
82
70
        --param man.authors.section.enabled     0 \
83
 
        /usr/share/xml/docbook/stylesheet/nwalsh/manpages/docbook.xsl \
 
71
         /usr/share/xml/docbook/stylesheet/nwalsh/manpages/docbook.xsl \
84
72
        $(notdir $<); \
85
73
        $(MANPOST) $(notdir $@);\
86
 
        if locale --all 2>/dev/null | grep --regexp='^en_US\.utf8$$' \
87
 
        && type man 2>/dev/null; then LANG=en_US.UTF-8 MANWIDTH=80 \
88
 
        man --warnings --encoding=UTF-8 --local-file $(notdir $@); \
89
 
        fi >/dev/null)
 
74
        LANG=en_US.UTF-8 MANWIDTH=80 man --warnings --encoding=UTF-8 \
 
75
        --local-file $(notdir $@) >/dev/null)
90
76
# DocBook-to-man post-processing to fix a '\n' escape bug
91
77
MANPOST=$(SED) --in-place --expression='s,\\\\en,\\en,g;s,\\n,\\en,g'
92
78
 
253
239
 
254
240
check:  all
255
241
        ./mandos --check
256
 
        ./mandos-ctl --check
257
242
 
258
243
# Run the client with a local config and key
259
244
run-client: all keydir/seckey.txt keydir/pubkey.txt
279
264
        ./mandos-keygen --dir keydir --force
280
265
 
281
266
# Run the server with a local config
282
 
run-server: confdir/mandos.conf confdir/clients.conf statedir
 
267
run-server: confdir/mandos.conf confdir/clients.conf
283
268
        ./mandos --debug --no-dbus --configdir=confdir \
284
269
                --statedir=statedir $(SERVERARGS)
285
270
 
304
289
 
305
290
install-server: doc
306
291
        install --directory $(CONFDIR)
307
 
        if install --directory --mode=u=rwx --owner=$(USER) \
308
 
                --group=$(GROUP) $(STATEDIR); then \
309
 
                :; \
310
 
        elif install --directory --mode=u=rwx $(STATEDIR); then \
311
 
                chown -- $(USER):$(GROUP) $(STATEDIR) || :; \
312
 
        fi
 
292
        install --directory --mode=u=rwx --owner=$(USER) \
 
293
                --group=$(GROUP) $(STATEDIR)
313
294
        install --mode=u=rwx,go=rx mandos $(PREFIX)/sbin/mandos
314
295
        install --mode=u=rwx,go=rx --target-directory=$(PREFIX)/sbin \
315
296
                mandos-ctl
323
304
                $(DESTDIR)/etc/dbus-1/system.d/mandos.conf
324
305
        install --mode=u=rwx,go=rx init.d-mandos \
325
306
                $(DESTDIR)/etc/init.d/mandos
326
 
        if [ "$(SYSTEMD)" != "$(DESTDIR)" -a -d "$(SYSTEMD)" ]; then \
327
 
                install --mode=u=rw,go=r mandos.service $(SYSTEMD); \
328
 
        fi
329
307
        install --mode=u=rw,go=r default-mandos \
330
308
                $(DESTDIR)/etc/default/mandos
331
309
        if [ -z $(DESTDIR) ]; then \
341
319
                > $(MANDIR)/man5/mandos.conf.5.gz
342
320
        gzip --best --to-stdout mandos-clients.conf.5 \
343
321
                > $(MANDIR)/man5/mandos-clients.conf.5.gz
344
 
        gzip --best --to-stdout intro.8mandos \
345
 
                > $(MANDIR)/man8/intro.8mandos.gz
346
322
 
347
323
install-client-nokey: all doc
348
 
        install --directory $(LIBDIR)/mandos $(CONFDIR)
 
324
        install --directory $(PREFIX)/lib/mandos $(CONFDIR)
349
325
        install --directory --mode=u=rwx $(KEYDIR) \
350
 
                $(LIBDIR)/mandos/plugins.d
351
 
        if [ "$(CONFDIR)" != "$(LIBDIR)/mandos" ]; then \
 
326
                $(PREFIX)/lib/mandos/plugins.d
 
327
        if [ "$(CONFDIR)" != "$(PREFIX)/lib/mandos" ]; then \
352
328
                install --mode=u=rwx \
353
329
                        --directory "$(CONFDIR)/plugins.d"; \
354
330
        fi
355
331
        install --mode=u=rwx,go=rx --directory \
356
332
                "$(CONFDIR)/network-hooks.d"
357
333
        install --mode=u=rwx,go=rx \
358
 
                --target-directory=$(LIBDIR)/mandos plugin-runner
 
334
                --target-directory=$(PREFIX)/lib/mandos plugin-runner
359
335
        install --mode=u=rwx,go=rx --target-directory=$(PREFIX)/sbin \
360
336
                mandos-keygen
361
337
        install --mode=u=rwx,go=rx \
362
 
                --target-directory=$(LIBDIR)/mandos/plugins.d \
 
338
                --target-directory=$(PREFIX)/lib/mandos/plugins.d \
363
339
                plugins.d/password-prompt
364
340
        install --mode=u=rwxs,go=rx \
365
 
                --target-directory=$(LIBDIR)/mandos/plugins.d \
 
341
                --target-directory=$(PREFIX)/lib/mandos/plugins.d \
366
342
                plugins.d/mandos-client
367
343
        install --mode=u=rwxs,go=rx \
368
 
                --target-directory=$(LIBDIR)/mandos/plugins.d \
 
344
                --target-directory=$(PREFIX)/lib/mandos/plugins.d \
369
345
                plugins.d/usplash
370
346
        install --mode=u=rwxs,go=rx \
371
 
                --target-directory=$(LIBDIR)/mandos/plugins.d \
 
347
                --target-directory=$(PREFIX)/lib/mandos/plugins.d \
372
348
                plugins.d/splashy
373
349
        install --mode=u=rwxs,go=rx \
374
 
                --target-directory=$(LIBDIR)/mandos/plugins.d \
 
350
                --target-directory=$(PREFIX)/lib/mandos/plugins.d \
375
351
                plugins.d/askpass-fifo
376
352
        install --mode=u=rwxs,go=rx \
377
 
                --target-directory=$(LIBDIR)/mandos/plugins.d \
 
353
                --target-directory=$(PREFIX)/lib/mandos/plugins.d \
378
354
                plugins.d/plymouth
379
355
        install initramfs-tools-hook \
380
356
                $(INITRAMFSTOOLS)/hooks/mandos
426
402
        ! grep --regexp='^ *[^ #].*keyscript=[^,=]*/mandos/' \
427
403
                $(DESTDIR)/etc/crypttab
428
404
        -rm --force $(PREFIX)/sbin/mandos-keygen \
429
 
                $(LIBDIR)/mandos/plugin-runner \
430
 
                $(LIBDIR)/mandos/plugins.d/password-prompt \
431
 
                $(LIBDIR)/mandos/plugins.d/mandos-client \
432
 
                $(LIBDIR)/mandos/plugins.d/usplash \
433
 
                $(LIBDIR)/mandos/plugins.d/splashy \
434
 
                $(LIBDIR)/mandos/plugins.d/askpass-fifo \
435
 
                $(LIBDIR)/mandos/plugins.d/plymouth \
 
405
                $(PREFIX)/lib/mandos/plugin-runner \
 
406
                $(PREFIX)/lib/mandos/plugins.d/password-prompt \
 
407
                $(PREFIX)/lib/mandos/plugins.d/mandos-client \
 
408
                $(PREFIX)/lib/mandos/plugins.d/usplash \
 
409
                $(PREFIX)/lib/mandos/plugins.d/splashy \
 
410
                $(PREFIX)/lib/mandos/plugins.d/askpass-fifo \
 
411
                $(PREFIX)/lib/mandos/plugins.d/plymouth \
436
412
                $(INITRAMFSTOOLS)/hooks/mandos \
437
413
                $(INITRAMFSTOOLS)/conf-hooks.d/mandos \
438
414
                $(INITRAMFSTOOLS)/scripts/init-premount/mandos \
444
420
                $(MANDIR)/man8/splashy.8mandos.gz \
445
421
                $(MANDIR)/man8/askpass-fifo.8mandos.gz \
446
422
                $(MANDIR)/man8/plymouth.8mandos.gz \
447
 
        -rmdir $(LIBDIR)/mandos/plugins.d $(CONFDIR)/plugins.d \
448
 
                 $(LIBDIR)/mandos $(CONFDIR) $(KEYDIR)
 
423
        -rmdir $(PREFIX)/lib/mandos/plugins.d $(CONFDIR)/plugins.d \
 
424
                 $(PREFIX)/lib/mandos $(CONFDIR) $(KEYDIR)
449
425
        update-initramfs -k all -u
450
426
 
451
427
purge: purge-server purge-client
455
431
                $(DESTDIR)/etc/dbus-1/system.d/mandos.conf
456
432
                $(DESTDIR)/etc/default/mandos \
457
433
                $(DESTDIR)/etc/init.d/mandos \
458
 
                $(SYSTEMD)/mandos.service \
459
 
                $(DESTDIR)/run/mandos.pid \
460
434
                $(DESTDIR)/var/run/mandos.pid
461
435
        -rmdir $(CONFDIR)
462
436