From 388e281ef2afdf8699d0b97556d3d88f7e04e220 Mon Sep 17 00:00:00 2001 From: Dmitry Baryshkov Date: Sat, 2 Oct 2021 17:54:21 +0300 Subject: [PATCH] Makefile: change install paths, provide bootrr-run script Install all the tests into separe dir (${prefix}/libexec/bootrr). Provide a generic script to run all the tests on the target board. Signed-off-by: Dmitry Baryshkov --- .gitignore | 2 +- Makefile | 22 ++++++++++++++++------ bin/bootrr.in | 13 +++++++++++++ 3 files changed, 30 insertions(+), 7 deletions(-) create mode 100644 bin/bootrr.in diff --git a/.gitignore b/.gitignore index 93089dc..fa6daf6 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,3 @@ dest/ bootrr.cpio* - +bin/bootrr diff --git a/Makefile b/Makefile index cb234fe..d45abce 100644 --- a/Makefile +++ b/Makefile @@ -11,23 +11,33 @@ HELPERS := $(wildcard helpers/*) BOARDS := $(wildcard boards/*) +BINS := bin/bootrr + +LIBEXEC_DIR ?= $(prefix)/libexec +BOOTRR_DIR = $(LIBEXEC_DIR)/bootrr + define add-scripts -$(DESTDIR)$(prefix)/bin/$(notdir $1): $1 +$(DESTDIR)$1/$2: $2 @echo "INSTALL $$<" @install -D -m 755 $$< $$@ -all-install += $(DESTDIR)$(prefix)/bin/$(notdir $1) +all-install += $(DESTDIR)$1/$2 endef -$(foreach v,${BOARDS},$(eval $(call add-scripts,$v))) -$(foreach v,${HELPERS},$(eval $(call add-scripts,$v))) +$(foreach v,${BOARDS},$(eval $(call add-scripts,$(BOOTRR_DIR),$v))) +$(foreach v,${HELPERS},$(eval $(call add-scripts,$(BOOTRR_DIR),$v))) +$(foreach v,${BINS},$(eval $(call add-scripts,$(prefix),$v))) + +bin/bootrr: bin/bootrr.in Makefile + @sed -e 's!@BOOTRR@!$(BOOTRR_DIR)!g' $< > $@.tmp + @mv $@.tmp $@ install: $(all-install) CPIO := $(PWD)/$(CPIONAME).cpio $(CPIO): $(all-install) - @cd $(DESTDIR) && find ./$(prefix)/bin | cpio -o -H newc > $(CPIO) + @cd $(DESTDIR) && find ./$(prefix) | cpio -o -H newc > $(CPIO) %.cpio.gz: %.cpio @gzip < $< > $@ @@ -37,4 +47,4 @@ cpio: $(CPIO) cpio.gz: $(CPIO).gz clean: - @rm -f $(CPIO) $(CPIO).gz + @rm -f $(CPIO) $(CPIO).gz bin/bootrr diff --git a/bin/bootrr.in b/bin/bootrr.in new file mode 100644 index 0000000..b5bf93e --- /dev/null +++ b/bin/bootrr.in @@ -0,0 +1,13 @@ +#!/bin/sh + +BOOTRR_DIR=@BOOTRR@ + +PATH=${BOOTRR_DIR}/helpers:${PATH} + +bootrr-generic-tests + +for TEST in $(tr "\0" "\n" < /proc/device-tree/compatible); do + if [ -x "${BOOTRR_DIR}/boards/${TEST}" ]; then + ${BOOTRR_DIR}/boards/${TEST} + fi +done