aboutsummaryrefslogtreecommitdiffstats
path: root/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile184
1 files changed, 12 insertions, 172 deletions
diff --git a/Makefile b/Makefile
index 350ba09..96fd134 100644
--- a/Makefile
+++ b/Makefile
@@ -1,20 +1,7 @@
-# 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.
-
VERSION = 1.5
PREFIX = /usr
-BIN = /bin
-DATA = /share
-BINDIR = $(PREFIX)$(BIN)
-DATADIR = $(PREFIX)$(DATA)
-DOCDIR = $(DATADIR)/doc
-INFODIR = $(DATADIR)/info
-MANDIR = $(DATADIR)/man
-MAN1DIR = $(MANDIR)/man1
-LICENSEDIR = $(DATADIR)/licenses
+MANPREFIX = $(PREFIX)/share/man
PKGNAME = gpp
COMMAND = gpp
@@ -23,169 +10,22 @@ PY = python
SHEBANG = /usr$(BIN)/env $(PY)
-.PHONY: default
-default: cmd info shell
-
-.PHONY: all
-all: cmd doc shell
-
-.PHONY: cmd
-cmd: bin/gpp
+all: gpp
-bin/gpp: src/gpp.py
- @mkdir -p bin
+gpp: gpp.py
env VERSION='$(VERSION)' SHEBANG='$(SHEBANG)' $(PY) "$<" < "$<" > "$@"
-.PHONY: doc
-doc: info pdf dvi ps
-
-.PHONY: info
-info: bin/gpp.info
-bin/%.info: obj/%.texinfo obj/fdl.texinfo
- @mkdir -p bin
- $(MAKEINFO) $<
- mv $*.info $@
-
-.PHONY: pdf
-pdf: bin/gpp.pdf
-bin/%.pdf: obj/%.texinfo obj/fdl.texinfo
- @! test -d obj/pdf || rm -rf obj/pdf
- @mkdir -p bin obj/pdf
- cd obj/pdf && texi2pdf ../../"$<" < /dev/null
- mv obj/pdf/$*.pdf $@
-
-.PHONY: dvi
-dvi: bin/gpp.dvi
-bin/%.dvi: obj/%.texinfo obj/fdl.texinfo
- @! test -d obj/dvi || rm -rf obj/dvi
- @mkdir -p bin obj/dvi
- cd obj/dvi && $(TEXI2DVI) ../../"$<" < /dev/null
- mv obj/dvi/$*.dvi $@
-
-.PHONY: ps
-ps: bin/gpp.ps
-bin/%.ps: obj/%.texinfo obj/fdl.texinfo
- @! test -d obj/ps || rm -rf obj/ps
- @mkdir -p bin obj/ps
- cd obj/ps && texi2pdf --ps ../../"$<" < /dev/null
- mv obj/ps/$*.ps $@
-
-obj/gpp.texinfo: doc/info/gpp.texinfo bin/gpp
- @mkdir -p obj
- $(PY) bin/gpp -s '?' -D GPP=$(COMMAND) < "$<" > "$@"
-
-obj/fdl.texinfo: doc/info/fdl.texinfo
- @mkdir -p obj
- cp "$<" "$@"
-
-.PHONY: shell
-shell: bash fish zsh
-
-.PHONY: bash
-bash: bin/gpp.bash-completion
-
-.PHONY: fish
-fish: bin/gpp.fish-completion
-
-.PHONY: zsh
-zsh: bin/gpp.zsh-completion
-
-obj/gpp.auto-completion: src/gpp.auto-completion bin/gpp
- @mkdir -p obj
- cp $< $@
- $(PY) bin/gpp -s '#' -D GPP=$(COMMAND) < "$<" > "$@"
-
-bin/gpp.%sh-completion: obj/gpp.auto-completion
- @mkdir -p bin
- auto-auto-complete $*sh --output $@ --source $<
-
-
-
-.PHONY: install
-install: install-core install-info install-man install-shell
+install: gpp
+ install -dm755 -- "$(DESTDIR)$(PREFIX)/bin"
+ install -m755 -- gpp "$(DESTDIR)$(PREFIX)/bin/$(COMMAND)"
+ install -dm755 -- "$(DESTDIR)$(MANPREFIX)/man"
+ install -m644 -- gpp.1 "$(DESTDIR)$(MANPREFIX)/man/$(COMMAND).1"
-.PHONY: install
-install-all: install-core install-doc install-shell
-
-.PHONY: install-core
-install-core: install-cmd install-license
-
-.PHONY: install-cmd
-install-cmd: bin/gpp
- install -dm755 -- "$(DESTDIR)$(BINDIR)"
- install -m755 $< -- "$(DESTDIR)$(BINDIR)/$(COMMAND)"
-
-.PHONY: install-license
-install-license:
- install -dm755 -- "$(DESTDIR)$(LICENSEDIR)/$(PKGNAME)"
- install -m644 COPYING LICENSE -- "$(DESTDIR)$(LICENSEDIR)/$(PKGNAME)"
-
-.PHONY: install-doc
-install-doc: install-info install-pdf install-dvi install-ps install-man
-
-.PHONY: install-info
-install-info: bin/gpp.info
- install -dm755 -- "$(DESTDIR)$(INFODIR)"
- install -m644 $< -- "$(DESTDIR)$(INFODIR)/$(PKGNAME).info"
-
-.PHONY: install-pdf
-install-pdf: bin/gpp.pdf
- install -dm755 -- "$(DESTDIR)$(DOCDIR)"
- install -m644 $< -- "$(DESTDIR)$(DOCDIR)/$(PKGNAME).pdf"
-
-.PHONY: install-dvi
-install-dvi: bin/gpp.dvi
- install -dm755 -- "$(DESTDIR)$(DOCDIR)"
- install -m644 $< -- "$(DESTDIR)$(DOCDIR)/$(PKGNAME).dvi"
-
-.PHONY: install-ps
-install-ps: bin/gpp.ps
- install -dm755 -- "$(DESTDIR)$(DOCDIR)"
- install -m644 $< -- "$(DESTDIR)$(DOCDIR)/$(PKGNAME).ps"
-
-.PHONY: install-man
-install-man: doc/man/gpp.1
- install -dm755 -- "$(DESTDIR)$(MAN1DIR)"
- install -m644 $< -- "$(DESTDIR)$(MAN1DIR)/$(COMMAND).1"
-
-.PHONY: install-shell
-install-shell: install-bash install-fish install-zsh
-
-.PHONY: install-bash
-install-bash: bin/gpp.bash-completion
- install -dm755 -- "$(DESTDIR)$(DATADIR)/bash-completion/completions"
- install -m644 $< -- "$(DESTDIR)$(DATADIR)/bash-completion/completions/$(COMMAND)"
-
-.PHONY: install-fish
-install-fish: bin/gpp.fish-completion
- install -dm755 -- "$(DESTDIR)$(DATADIR)/fish/completions"
- install -m644 $< -- "$(DESTDIR)$(DATADIR)/fish/completions/$(COMMAND).fish"
-
-.PHONY: install-zsh
-install-zsh: bin/gpp.zsh-completion
- install -dm755 -- "$(DESTDIR)$(DATADIR)/zsh/site-functions"
- install -m644 $< -- "$(DESTDIR)$(DATADIR)/zsh/site-functions/_$(COMMAND)"
-
-
-
-.PHONY: uninstall
uninstall:
- -rm -- "$(DESTDIR)$(BINDIR)/$(COMMAND)"
- -rm -- "$(DESTDIR)$(LICENSEDIR)/$(PKGNAME)/COPYING"
- -rm -- "$(DESTDIR)$(LICENSEDIR)/$(PKGNAME)/LICENSE"
- -rmdir -- "$(DESTDIR)$(LICENSEDIR)/$(PKGNAME)"
- -rm -- "$(DESTDIR)$(INFODIR)/$(PKGNAME).info"
- -rm -- "$(DESTDIR)$(DOCDIR)/$(PKGNAME).pdf"
- -rm -- "$(DESTDIR)$(DOCDIR)/$(PKGNAME).dvi"
- -rm -- "$(DESTDIR)$(DOCDIR)/$(PKGNAME).ps"
- -rm -- "$(DESTDIR)$(MAN1DIR)/$(COMMAND).1"
- -rm -- "$(DESTDIR)$(DATADIR)/bash-completion/completions/$(COMMAND)"
- -rm -- "$(DESTDIR)$(DATADIR)/fish/completions/$(COMMAND).fish"
- -rm -- "$(DESTDIR)$(DATADIR)/zsh/site-functions/_$(COMMAND)"
-
-
+ -rm -- "$(DESTDIR)$(PREFIX)/bin/$(COMMAND)"
+ -rm -- "$(DESTDIR)$(MANPREFIX)/man/$(COMMAND).1"
-.PHONY: clean
clean:
- -rm -r bin obj
+ -rm -rf -- gpp bin obj
+.PHONY: all install uninstall clean