Allow installing to DESTDIR
authorIvy Foster <ivy.foster@gmail.com>
Sat, 23 Apr 2016 02:36:33 +0000 (21:36 -0500)
committerIvy Foster <ivy.foster@gmail.com>
Sat, 23 Apr 2016 02:36:33 +0000 (21:36 -0500)
It's pretty standard to allow builders to pass DESTDIR=/some/dir to make
in order to (a) build the program without modifying $PREFIX and (b) still
install somewhere other than $PREFIX. This makes packaging a lot easier.

Makefile

index b3599fff5d901e4ac7e465d84842ddf8757bbff6..fad05b1aa0aa02712eb42b48188feb04612b0594 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -290,27 +290,23 @@ soundcard.h:
 
 install: $(NAME)
        strip $(BINNAME)$(EXTENSION)
-       install -d $(PREFIX)/bin
-       install -d $(MAN_PREFIX)/man/man6
-       install -c -m 755 $(BINNAME)$(EXTENSION) $(PREFIX)/bin
-       install -c -m 644 doc/$(NAME).6 $(MAN_PREFIX)/man/man6
+       @install -D -m 755 $(BINNAME)$(EXTENSION) "$(DESTDIR)$(PREFIX)/bin/$(BINNAME)$(EXTENSION)"
+       @install -D -m 644 doc/$(NAME).6 "$(DESTDIR)$(MAN_PREFIX)/man/man6/$(NAME).6"
 
 uninstall:
-       rm -f $(PREFIX)/bin/$(NAME)
-       rm -f $(MAN_PREFIX)/man/man6/$(NAME).6
+       @rm -f "$(DESTDIR)$(PREFIX)/bin/$(NAME)"
+       @rm -f "$(DESTDIR)$(MAN_PREFIX)/man/man6/$(NAME).6"
 
 deinstall: uninstall
 
 install_dumb: d$(NAME)
        strip d$(BINNAME)$(EXTENSION)
-       install -d $(PREFIX)/bin
-       install -d $(MAN_PREFIX)/man/man6
-       install -c -m 755 d$(BINNAME)$(EXTENSION) $(PREFIX)/bin
-       install -c -m 644 doc/d$(NAME).6 $(MAN_PREFIX)/man/man6
+       @install -D -m 755 d$(BINNAME)$(EXTENSION) "$(DESTDIR)$(PREFIX)/bin/d$(BINNAME)$(EXTENSION)"
+       @install -D -m 644 doc/d$(NAME).6 "$(DESTDIR)$(MAN_PREFIX)/man/man6/d$(NAME).6"
 
 uninstall_dumb:
-       rm -f $(PREFIX)/bin/d$(NAME)
-       rm -f $(MAN_PREFIX)/man/man6/d$(NAME).6
+       @rm -f "$(DESTDIR)$(PREFIX)/bin/d$(NAME)"
+       @rm -f "$(DESTDIR)$(MAN_PREFIX)/man/man6/d$(NAME).6"
 
 deinstall_dumb: uninstall_dumb