From 4f07988e87c1da1b711abc3907bb1a197dda3f71 Mon Sep 17 00:00:00 2001 From: Abigail G Date: Wed, 24 Feb 2021 18:45:29 -0500 Subject: [PATCH] improve makefile functionality - added help text - allowed output directories to be overridden - streamlined install process - removed unused targets - made all targets PHONY --- Makefile | 37 ++++++++++++++++++++++++++----------- 1 file changed, 26 insertions(+), 11 deletions(-) diff --git a/Makefile b/Makefile index 509c929..9961872 100644 --- a/Makefile +++ b/Makefile @@ -1,17 +1,32 @@ -BIN = $(DESTDIR)/usr/bin -LIB = $(DESTDIR)/usr/share/gridtracker -APP = $(DESTDIR)/usr/share/applications -MAN = $(DESTDIR)/usr/share/man/man1 -DOC = $(DESTDIR)/usr/share/doc/gridtracker +.DEFAULT_GOAL := help -all: +DESTDIR ?= ./build +BIN ?= $(DESTDIR)/usr/bin +LIB ?= $(DESTDIR)/usr/share/gridtracker +APP ?= $(DESTDIR)/usr/share/applications +MAN ?= $(DESTDIR)/usr/share/man/man1 +DOC ?= $(DESTDIR)/usr/share/doc/gridtracker +.PHONY: help +help: + @echo "Specify a target to build:" + @echo " -> make install" + @echo " install gridtracker in DESTDIR (default: ./build)" + @echo " -> make clean" + @echo " remove built files from DESTDIR" + +.PHONY: clean clean: + @echo "Cleaning $(DESTDIR)..." + rm -rf $(DESTDIR)/* +.PHONY: install install: - install -d $(BIN) $(LIB) $(APP) $(MAN) $(DOC) - install -c -m 755 gridtracker.sh $(BIN)/gridtracker - install -c -m 644 gridtracker.desktop $(APP)/gridtracker.desktop - install -c -m 644 gridtracker.1 $(MAN) - install -c -m 644 LICENSE $(DOC) + @echo "Installing gridtracker in $(DESTDIR)..." + install -Dcm 755 gridtracker.sh $(BIN)/gridtracker + install -Dcm 644 gridtracker.desktop $(APP)/gridtracker.desktop + install -Dcm 644 gridtracker.1 $(MAN)/gridtracker.1 + install -Dcm 644 LICENSE $(DOC)/LICENSE + mkdir -p $(LIB) cp -r package.nw/* $(LIB) +