/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-11-26 22:22:20 UTC
  • mto: (518.1.8 mandos-persistent)
  • mto: This revision was merged to the branch mainline in revision 524.
  • Revision ID: teddy@recompile.se-20111126222220-1ubwjpb5ugqnrhec
Directory with persistent state can now be changed with the "statedir"
option.  The state directory /var/lib/mandos now gets created on
installation.  Added documentation about "restore" and "statedir"
options.

* Makefile (USER, GROUP, STATEDIR): New.
  (maintainer-clean): Also remove "statedir".
  (run-server): Replaced "--no-restore" with "--statedir=statedir".
  (statedir): New.
  (install-server): Make $(STATEDIR) directory.
* debian/mandos.dirs (var/lib/mandos): Added.
* debian/mandos.postinst: Fix ownership of /var/lib/mandos.
* mandos: New --statedir option.
  (stored_state_path): Not global anymore.
  (stored_state_file): New global.
* mandos.conf: Fix whitespace.
  (restore, statedir): Added.
* mandos.conf.xml (OPTIONS, EXAMPLE): Added "restore" and "statedir".
  mandos.xml (SYNOPSIS, OPTIONS): Added "--statedir".
  (FILES): Added "/var/lib/mandos".

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.3.1
 
26
version=1.4.1
27
27
SED=sed
28
28
 
 
29
USER=$(firstword $(subst :, ,$(shell getent passwd _mandos || getent passwd nobody || echo 65534)))
 
30
GROUP=$(firstword $(subst :, ,$(shell getent group _mandos || getent group nobody || echo 65534)))
 
31
 
29
32
## Use these settings for a traditional /usr/local install
30
33
# PREFIX=$(DESTDIR)/usr/local
31
34
# CONFDIR=$(DESTDIR)/etc/mandos
32
35
# KEYDIR=$(DESTDIR)/etc/mandos/keys
33
36
# MANDIR=$(PREFIX)/man
34
37
# INITRAMFSTOOLS=$(DESTDIR)/etc/initramfs-tools
 
38
# STATEDIR=$(DESTDIR)/var/lib/mandos
35
39
##
36
40
 
37
41
## These settings are for a package-type install
40
44
KEYDIR=$(DESTDIR)/etc/keys/mandos
41
45
MANDIR=$(PREFIX)/share/man
42
46
INITRAMFSTOOLS=$(DESTDIR)/usr/share/initramfs-tools
 
47
STATEDIR=$(DESTDIR)/var/lib/mandos
43
48
##
44
49
 
45
50
GNUTLS_CFLAGS=$(shell pkg-config --cflags-only-I gnutls)
65
70
        --param man.authors.section.enabled     0 \
66
71
         /usr/share/xml/docbook/stylesheet/nwalsh/manpages/docbook.xsl \
67
72
        $(notdir $<); \
68
 
        $(MANPOST) $(notdir $@))
 
73
        $(MANPOST) $(notdir $@);\
 
74
        LANG=en_US.UTF-8 MANWIDTH=80 man --warnings --encoding=UTF-8 \
 
75
        --local-file $(notdir $@) >/dev/null)
69
76
# DocBook-to-man post-processing to fix a '\n' escape bug
70
77
MANPOST=$(SED) --in-place --expression='s,\\\\en,\\en,g;s,\\n,\\en,g'
71
78
 
228
235
distclean: clean
229
236
mostlyclean: clean
230
237
maintainer-clean: clean
231
 
        -rm --force --recursive keydir confdir
 
238
        -rm --force --recursive keydir confdir statedir
232
239
 
233
240
check:  all
234
241
        ./mandos --check
258
265
 
259
266
# Run the server with a local config
260
267
run-server: confdir/mandos.conf confdir/clients.conf
261
 
        @echo "#################################################################"
262
 
        @echo "# NOTE: Please IGNORE the error about \"Could not open file      #"
263
 
        @echo "# u'/var/run/mandos.pid'\" -  it is harmless and is caused by    #"
264
 
        @echo "# the server not running as root.  Do NOT run \"make run-server\" #"
265
 
        @echo "# server as root if you didn't also unpack and compile it thus. #"
266
 
        @echo "#################################################################"
267
 
        ./mandos --debug --no-dbus --configdir=confdir $(SERVERARGS)
 
268
        ./mandos --debug --no-dbus --configdir=confdir \
 
269
                --statedir=statedir $(SERVERARGS)
268
270
 
269
271
# Used by run-server
270
272
confdir/mandos.conf: mandos.conf
275
277
        install --mode=u=rw $< $@
276
278
# Add a client password
277
279
        ./mandos-keygen --dir keydir --password >> $@
 
280
statedir:
 
281
        install --directory statedir
278
282
 
279
283
install: install-server install-client-nokey
280
284
 
285
289
 
286
290
install-server: doc
287
291
        install --directory $(CONFDIR)
 
292
        install --directory --mode=u=rwx --owner=$(USER) \
 
293
                --group=$(GROUP) $(STATEDIR)
288
294
        install --mode=u=rwx,go=rx mandos $(PREFIX)/sbin/mandos
289
295
        install --mode=u=rwx,go=rx --target-directory=$(PREFIX)/sbin \
290
296
                mandos-ctl