aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMattias Andrée <maandree@operamail.com>2014-04-07 19:24:08 +0200
committerMattias Andrée <maandree@operamail.com>2014-04-07 19:24:08 +0200
commit00fa2f19a9780aabcf4483d81ca27d2e4385b267 (patch)
tree687adcb41a0b7bcc31a2eea803fdd6a8004bd2f7
parentno need for libpassphrase of auth=none (diff)
downloadcerberus-00fa2f19a9780aabcf4483d81ca27d2e4385b267.tar.gz
cerberus-00fa2f19a9780aabcf4483d81ca27d2e4385b267.tar.bz2
cerberus-00fa2f19a9780aabcf4483d81ca27d2e4385b267.tar.xz
improve makefile
Signed-off-by: Mattias Andrée <maandree@operamail.com>
-rw-r--r--.gitignore3
-rw-r--r--Makefile85
2 files changed, 78 insertions, 10 deletions
diff --git a/.gitignore b/.gitignore
index d4da9fb..331e90c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -12,6 +12,9 @@ obj/
*.out
*.gch
*.info
+*.pdf
+*.ps
+*.dvi
*.gz
*.bz2
*.xz
diff --git a/Makefile b/Makefile
index 53883dd..babed5f 100644
--- a/Makefile
+++ b/Makefile
@@ -1,3 +1,9 @@
+# Copying and distribution of this file, with or without modification,
+# are permitted in any medium without royalty provided the copyright
+# notice and this notice are preserved. This file is offered as-is,
+# without any warranty.
+
+
PREFIX = /usr
USR_PREFIX = /usr
LOCAL_PREFIX = $(USR_PREFIX)/local
@@ -69,8 +75,14 @@ endif
OBJ = $(foreach S, $(SRC), obj/$(S).o)
+.PHONY: default
+default: command info
+
.PHONY: all
-all: cerberus doc
+all: command doc
+
+.PHONY: command
+command: cerberus
.PHONY: cerberus
@@ -87,26 +99,76 @@ obj/%.o: src/%.c src/%.h src/config.h
.PHONY: doc
-doc: info
+doc: info pdf ps dvi
.PHONY: info
-info: cerberus.info.gz
-
+info: cerberus.info
%.info: info/%.texinfo
makeinfo "$<"
-%.gz: %
- gzip -9 < "$<" > "$@"
+.PHONY: pdf
+pdf: cerberus.pdf
+%.pdf: info/%.texinfo info/fdl.texinfo
+ mkdir -p obj
+ cd obj ; yes X | texi2pdf ../$<
+ mv obj/$@ $@
+
+.PHONY: dvi
+dvi: cerberus.dvi
+%.dvi: info/%.texinfo info/fdl.texinfo
+ mkdir -p obj
+ cd obj ; yes X | $(TEXI2DVI) ../$<
+ mv obj/$@ $@
+
+.PHONY: ps
+ps: cerberus.ps
+%.ps: info/%.texinfo info/fdl.texinfo
+ mkdir -p obj
+ cd obj ; yes X | texi2pdf --ps ../$<
+ mv obj/$@ $@
.PHONY: install
-install: bin/cerberus cerberus.info.gz
+install: install-base install-info
+
+.PHONY: install-all
+install-all: install-base install-doc
+
+.PHONY: install-base
+install-base: install-command install-license
+
+.PHONY: install-command
+install-command: bin/cerberus
install -dm755 -- "$(DESTDIR)$(PREFIX)$(INSTALL_BIN)"
install -m755 -- bin/cerberus "$(DESTDIR)$(PREFIX)$(INSTALL_BIN)/$(COMMAND)"
+
+.PHONY: install-license
+install-license:
install -dm755 -- "$(DESTDIR)$(PREFIX)$(LICENSES)/$(PKGNAME)"
install -m644 -- COPYING LICENSE "$(DESTDIR)$(PREFIX)$(LICENSES)/$(PKGNAME)"
+
+.PHONY: install-doc
+install-doc: install-info install-pdf install-ps install-dvi
+
+.PHONY: install-info
+install-info: cerberus.info
install -dm755 -- "$(DESTDIR)$(PREFIX)$(DATA)/info"
- install -m644 -- cerberus.info.gz "$(DESTDIR)$(PREFIX)$(DATA)/info/$(PKGNAME).info.gz"
+ install -m644 -- "$<" "$(DESTDIR)$(PREFIX)$(DATA)/info/$(PKGNAME).info"
+
+.PHONY: install-pdf
+install-pdf: cerberus.pdf
+ install -dm755 -- "$(DESTDIR)$(PREFIX)$(DATA)/doc"
+ install -m644 -- "$<" "$(DESTDIR)$(PREFIX)$(DATA)/doc/$(PKGNAME).pdf"
+
+.PHONY: install-ps
+install-ps: cerberus.ps
+ install -dm755 -- "$(DESTDIR)$(PREFIX)$(DATA)/doc"
+ install -m644 -- "$<" "$(DESTDIR)$(PREFIX)$(DATA)/doc/$(PKGNAME).ps"
+
+.PHONY: install-dvi
+install-dvi: cerberus.dvi
+ install -dm755 -- "$(DESTDIR)$(PREFIX)$(DATA)/doc"
+ install -m644 -- "$<" "$(DESTDIR)$(PREFIX)$(DATA)/doc/$(PKGNAME).dvi"
.PHONY: uninstall
@@ -115,11 +177,14 @@ uninstall:
-rm -- "$(DESTDIR)$(PREFIX)$(LICENSES)/$(PKGNAME)/COPYING"
-rm -- "$(DESTDIR)$(PREFIX)$(LICENSES)/$(PKGNAME)/LICENSE"
-rmdir -- "$(DESTDIR)$(PREFIX)$(LICENSES)/$(PKGNAME)"
- -rm -- "$(DESTDIR)$(PREFIX)$(DATA)/info/$(PKGNAME).info.gz"
+ -rm -- "$(DESTDIR)$(PREFIX)$(DATA)/info/$(PKGNAME).info"
+ -rm -- "$(DESTDIR)$(PREFIX)$(DATA)/doc/$(PKGNAME).pdf"
+ -rm -- "$(DESTDIR)$(PREFIX)$(DATA)/doc/$(PKGNAME).ps"
+ -rm -- "$(DESTDIR)$(PREFIX)$(DATA)/doc/$(PKGNAME).dvi"
.PHONY: clean
clean:
- -rm -r bin obj cerberus.info.gz
+ -rm -r bin obj cerberus.{info,pdf,ps,dvi}