chiark / gitweb /
spec: Generate printable file as pdf via docbook
[userv.git] / Makefile.in
index 6a65d7a9e590583d8c249fc7af8a035362fbf155..ff97e120ab5ff70e9735e32e8d320b117e3aeac7 100644 (file)
@@ -1,9 +1,7 @@
 #  userv - Makefile.in
 #  
-#  userv is
-#  Copyright 1996-2017 Ian Jackson <ian@davenant.greenend.org.uk>.
-#  Copyright 2000      Ben Harris <bjh21@cam.ac.uk>
-#  Copyright 2016-2017 Peter Benie <pjb1008@cam.ac.uk>
+#  userv is copyright Ian Jackson and other contributors.
+#  See README for full authorship information.
 #  
 #  This is free software; you can redistribute it and/or modify it
 #  under the terms of the GNU General Public License as published by
@@ -40,19 +38,22 @@ INSTALL_FLAGS=-o root -g $(INSTALL_GROUP)
 INSTALL=@INSTALL@
 INSTALL_PROGRAM=@INSTALL_PROGRAM@ $(INSTALL_FLAGS)
 INSTALL_DATA=@INSTALL_DATA@ $(INSTALL_FLAGS)
+INSTALL_DIR=$(INSTALL) -d
+INSTALL_DIR_ETC=$(INSTALL_DIR)
 prefix=@prefix@
 exec_prefix=$(prefix)
+share_prefix=$(prefix)/share
 bindir=$(exec_prefix)/bin
-mandir=$(prefix)/man
+mandir=$(share_prefix)/man
 man1dir=$(mandir)/man1
 man8dir=$(mandir)/man8
 sbindir=$(exec_prefix)/sbin
 etcdir=/etc
 etcsubdir=$(etcdir)/userv
-docdir=$(prefix)/userv
+docdir=$(share_prefix)/doc/userv
 
 TARGETS=       daemon client
-TARGETS_DOC_PS=        spec.ps overview.ps
+TARGETS_DOC_PS=        spec.pdf overview.ps
 TARGETS_DOC_RM=        $(TARGETS_DOC_PS) spec.html
 TARGETS_DOC=   $(TARGETS_DOC_PS) spec.html/index.html
 MAN1PAGES=     userv.1
@@ -75,30 +76,38 @@ all:                $(TARGETS)
 docs:          $(TARGETS_DOC)
 
 install:       all
-               $(INSTALL_PROGRAM) -m 755 daemon $(sbindir)/uservd
-               $(INSTALL_PROGRAM) -m 4755 client $(bindir)/userv
-               $(INSTALL) -d -m 2755 $(etcsubdir) \
-       $(etcsubdir)/default.d $(etcsubdir)/services.d $(etcsubdir)/override.d
-               if test ! -f $(etcsubdir)/system.default; then \
-                       $(INSTALL_DATA) system.default $(etcsubdir); fi
-               if test ! -f $(etcsubdir)/system.override; then \
-                       $(INSTALL_DATA) system.override $(etcsubdir); fi
+               $(INSTALL_DIR) $(addprefix $(DESTDIR), $(bindir) $(sbindir))
+               $(INSTALL_PROGRAM) -m 755 daemon $(DESTDIR)$(sbindir)/uservd
+               $(INSTALL_PROGRAM) -m 4755 client $(DESTDIR)$(bindir)/userv
+               set -e; for f in '' /default.d /services.d /override.d; do \
+                       $(INSTALL_DIR_ETC) $(DESTDIR)$(etcsubdir)$$f; \
+               done
+               set -e; for f in system.default system.override; do     \
+                       if test ! -f $(DESTDIR)$(etcsubdir)/$$f; then   \
+                               $(INSTALL_DATA) $$f $(DESTDIR)$(etcsubdir); \
+                       fi;                                             \
+               done
 
 install-strip:
                $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' install
 
-install-doc:   $(TARGETS_DOC)
-               $(INSTALL) -d -m 2755 $(docdir) $(docdir)/spec.html
-               $(INSTALL) -d -m 2755 $(mandir) $(man1dir) $(man8dir)
-               $(INSTALL_DATA) -m 644 $(TARGETS_DOC_PS) $(docdir)/.
-               $(INSTALL_DATA) -m 644 spec.html/*.html $(docdir)/spec.html/.
-               $(INSTALL_DATA) -m 644 $(MAN1PAGES) $(man1dir)
-               $(INSTALL_DATA) -m 644 $(MAN8PAGES) $(man8dir)
+install-doc install-docs:      $(TARGETS_DOC)
+               $(INSTALL_DIR) $(addprefix $(DESTDIR),                  \
+                       $(docdir) $(docdir)/spec.html $(docdir)/examples \
+                       $(mandir) $(man1dir) $(man8dir)                 \
+               )
+               $(INSTALL_DATA) -m 644 $(TARGETS_DOC_PS) $(DESTDIR)$(docdir)/.
+               $(INSTALL_DATA) -m 644 spec.html/*.html \
+                       $(DESTDIR)$(docdir)/spec.html/.
+               $(INSTALL_DATA) -m 644 system.default system.override \
+                       $(DESTDIR)$(docdir)/examples/.
+               $(INSTALL_DATA) -m 644 $(MAN1PAGES) $(DESTDIR)$(man1dir)
+               $(INSTALL_DATA) -m 644 $(MAN8PAGES) $(DESTDIR)$(man8dir)
 
 uninstall:
                rm -f $(bindir)/userv $(sbindir)/uservd
 
-uninstall-doc:
+uninstall-doc uninstall-docs:
                cd $docdir && rm -rf $(TARGETS_DOC_RM)
 
 check:
@@ -186,11 +195,15 @@ dist:                     dist-prep distclean
 linecount:     $(SOURCES)
                wc -l $^
 
+%.dbk:         %.sgml
+               debiandoc2dbk -1 $<
+
 %.html/index.html:     %.sgml
                        debiandoc2html $<
 
-%.ps:          %.sgml
-               debiandoc2ps -1 -O $< >$@.new && mv $@.new $@
+%.pdf:         %.dbk
+               dblatex -b xetex $<
+               mv -f $<.pdf $@
 
 %.ps:          %.fig
                fig2dev -L ps -c -l dummy -P -z A4 $< >$@.new && mv $@.new $@