From 874166ec7b308d430a34fe21d95b84aa7912722c Mon Sep 17 00:00:00 2001 From: David Runge Date: Sat, 31 Jul 2021 17:27:17 +0200 Subject: Makefile: Remove mkinitcpio-archiso specific targets Makefile: Remove all code specific to mkinitcpio-archiso. Allow overriding PREFIX (defaults to /usr/local). Gather scripts to check more generically. Add abstractions for installation directories. --- Makefile | 53 +++++++++++++++++------------------------------------ 1 file changed, 17 insertions(+), 36 deletions(-) diff --git a/Makefile b/Makefile index 1d82597..c4ceb2f 100644 --- a/Makefile +++ b/Makefile @@ -1,52 +1,33 @@ # # SPDX-License-Identifier: GPL-3.0-or-later -INSTALL_FILES=$(wildcard archiso/initcpio/install/*) -HOOKS_FILES=$(wildcard archiso/initcpio/hooks/*) -SCRIPT_FILES=$(wildcard archiso/initcpio/script/*) - -INSTALL_DIR=$(DESTDIR)/usr/lib/initcpio/install -HOOKS_DIR=$(DESTDIR)/usr/lib/initcpio/hooks -SCRIPT_DIR=$(DESTDIR)/usr/lib/initcpio +PREFIX ?= /usr/local +BIN_DIR=$(DESTDIR)$(PREFIX)/bin +DOC_DIR=$(DESTDIR)$(PREFIX)/share/doc/archiso +PROFILE_DIR=$(DESTDIR)$(PREFIX)/share/archiso DOC_FILES=$(wildcard docs/*) $(wildcard *.rst) - -DOC_DIR=$(DESTDIR)/usr/share/doc/archiso - +SCRIPT_FILES=$(wildcard archiso/*) $(wildcard scripts/*.sh) $(wildcard .gitlab/ci/*.sh) \ + $(wildcard configs/*/profiledef.sh) $(wildcard configs/*/airootfs/usr/local/bin/*) all: -check: lint - -lint: - shellcheck -s bash archiso/mkarchiso \ - $(wildcard scripts/*.sh) \ - $(wildcard .gitlab/ci/*.sh) \ - $(INSTALL_FILES) \ - $(wildcard configs/*/build.sh) \ - $(wildcard configs/*/profiledef.sh) \ - configs/releng/airootfs/root/.automated_script.sh \ - configs/releng/airootfs/usr/local/bin/choose-mirror \ - configs/releng/airootfs/usr/local/bin/livecd-sound - shellcheck -s dash $(HOOKS_FILES) $(SCRIPT_FILES) +check: shellcheck -install: install-program install-examples install-doc +shellcheck: + shellcheck -s bash $(SCRIPT_FILES) -install-program: - install -vDm 755 archiso/mkarchiso -t "$(DESTDIR)/usr/bin/" - install -vDm 755 scripts/run_archiso.sh "$(DESTDIR)/usr/bin/run_archiso" +install: install-scripts install-profiles install-doc -install-initcpio: - install -d $(SCRIPT_DIR) $(HOOKS_DIR) $(INSTALL_DIR) - install -m 755 -t $(SCRIPT_DIR) $(SCRIPT_FILES) - install -m 644 -t $(HOOKS_DIR) $(HOOKS_FILES) - install -m 644 -t $(INSTALL_DIR) $(INSTALL_FILES) +install-scripts: + install -vDm 755 archiso/mkarchiso -t "$(BIN_DIR)/" + install -vDm 755 scripts/run_archiso.sh "$(BIN_DIR)/run_archiso" -install-examples: - install -d -m 755 $(DESTDIR)/usr/share/archiso/ - cp -a --no-preserve=ownership configs $(DESTDIR)/usr/share/archiso/ +install-profiles: + install -d -m 755 $(PROFILE_DIR) + cp -a --no-preserve=ownership configs $(PROFILE_DIR)/ install-doc: install -vDm 644 $(DOC_FILES) -t $(DOC_DIR) -.PHONY: check install install-program install-initcpio install-examples install-doc lint +.PHONY: check install install-doc install-profiles install-scripts shellcheck -- cgit v1.2.3-70-g09d2