[arch-projects] [initscripts] [PATCH 1/2] Makefile: Mark phony targets
Most targets used in our Makefile don't refer to files. Use the ".PHONY" special target to mark these. Doing this prevents us from file name conflicts and improves performance a bit. Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de> --- Makefile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Makefile b/Makefile index 3e83e58..1081730 100644 --- a/Makefile +++ b/Makefile @@ -62,3 +62,5 @@ tar: release: tar scp initscripts-$(VER).tar.xz gerolde.archlinux.org:/srv/ftp/other/initscripts/ scp initscripts-$(VER).tar.xz pkgbuild.com:~/svn-packages/initscripts/trunk/ + +.PHONY: all installdirs install doc clean tar release -- 1.7.9.3
* Move the list of man page files to a variable to avoid code duplication. Also, use generic code in the install target and extract man pages from the newly introduced variable. * Use generic (wildcard) rules for man page generation instead of having one rule per source/target file. * Use "$(DESTDIR)" instead of "${DESTDIR}" everywhere. Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de> --- Makefile | 33 ++++++++++++++++----------------- 1 file changed, 16 insertions(+), 17 deletions(-) diff --git a/Makefile b/Makefile index 1081730..a429ddd 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,5 @@ VER := $(shell git describe) + DIRS := \ /etc/rc.d \ /etc/conf.d \ @@ -16,6 +17,13 @@ DIRS := \ /usr/share/man/man5 \ /usr/share/man/man8 +MAN_PAGES := \ + rc.d.8 \ + rc.conf.5 \ + locale.conf.5 \ + vconsole.conf.5 \ + hostname.5 + all: doc installdirs: @@ -29,32 +37,23 @@ install: installdirs doc install -m755 -t $(DESTDIR)/etc/rc.d hwclock network netfs install -m755 -t $(DESTDIR)/etc/profile.d locale.sh install -m755 -t $(DESTDIR)/usr/sbin rc.d - install -m644 -t ${DESTDIR}/usr/share/man/man8 rc.d.8 - install -m644 -t ${DESTDIR}/usr/share/man/man5 rc.conf.5 locale.conf.5 vconsole.conf.5 hostname.5 + install -m644 -t $(DESTDIR)/usr/share/man/man5 $(filter %.5, $(MAN_PAGES)) + install -m644 -t $(DESTDIR)/usr/share/man/man8 $(filter %.8, $(MAN_PAGES)) install -m755 -t $(DESTDIR)/usr/lib/initscripts arch-tmpfiles arch-sysctl install -m644 tmpfiles.conf $(DESTDIR)/usr/lib/tmpfiles.d/arch.conf install -m644 -T bash-completion $(DESTDIR)/etc/bash_completion.d/rc.d install -m644 -T zsh-completion $(DESTDIR)/usr/share/zsh/site-functions/_rc.d -rc.d.8: rc.d.8.txt - a2x -d manpage -f manpage rc.d.8.txt - -rc.conf.5: rc.conf.5.txt - a2x -d manpage -f manpage rc.conf.5.txt - -locale.conf.5: locale.conf.5.txt - a2x -d manpage -f manpage locale.conf.5.txt - -vconsole.conf.5: vconsole.conf.5.txt - a2x -d manpage -f manpage vconsole.conf.5.txt +%.5: %.5.txt + a2x -d manpage -f manpage $< -hostname.5: hostname.5.txt - a2x -d manpage -f manpage hostname.5.txt +%.8: %.8.txt + a2x -d manpage -f manpage $< -doc: rc.d.8 rc.conf.5 locale.conf.5 vconsole.conf.5 hostname.5 +doc: $(MAN_PAGES) clean: - rm -f rc.d.8 rc.conf.5 locale.conf.5 vconsole.conf.5 hostname.5 + rm -f $(MAN_PAGES) tar: git archive HEAD --prefix=initscripts-$(VER)/ | xz > initscripts-$(VER).tar.xz -- 1.7.9.3
participants (1)
-
Lukas Fleischer