#!/usr/bin/make include make.env DIRS=etc bin INSTALL_DIRS=`find $(DIRS) -type d 2>/dev/null` INSTALL_FILES=`find $(DIRS) -type f 2>/dev/null` DOC_FILES=*.md PKG_DIR=pkg PKG_NAME=$(NAME)-$(VERSION) PKG=$(PKG_DIR)/$(PKG_NAME).tar.gz #SIG=$(PKG_DIR)/$(PKG_NAME).asc PREFIX?=/usr/local DOC_DIR=$(PREFIX)/share/doc/$(NAME) pkg: @mkdir -p $(PKG_DIR) $(PKG): pkg @echo "Create Package $(PKG)" @tar -zcf $(PKG) $(DIRS) $(DOC_FILES) build: $(PKG) #$(SIG): $(PKG) # gpg --sign --detach-sign --armor $(PKG) #sign: $(SIG) clean: # rm -f $(PKG) $(SIG) @echo "Remove $(PKG)" @rm -f $(PKG) #all: $(PKG) $(SIG) all: $(PKG) tag: @echo "Set Git Tag to v$(VERSION)" @git tag v$(VERSION) @git push --tags #release: $(PKG) $(SIG) tag release: $(PKG) tag install: @echo "Install all files into $(PREFIX)/" @for dir in $(INSTALL_DIRS); do sudo mkdir -p $(PREFIX)/$$dir; done @for file in $(INSTALL_FILES); do sudo cp $$file $(PREFIX)/$$file; done @sudo mkdir -p $(DOC_DIR)-$(VERSION) @sudo cp -r README.md $(DOC_DIR)-$(VERSION)/ @echo -e "\nCongrats! Now you should be able to run '$(PKG_NAME)' from your PATH\n" upgrade: @echo "Upgrade $(NAME) from $(version) to $(VERSION)" @$(uninstall) version=$(version) @$(install) uninstall: @echo "Uninstall all files from $(NAME)-$(version)" @for file in $(INSTALL_FILES); do sudo rm -f $(PREFIX)/$$file; done @sudo rm -r $(DOC_DIR)-$(version) .PHONY: build clean test tag release install uninstall all