From 75a3b0823db2b6a54b2ddb3434fa43b65c30d8d2 Mon Sep 17 00:00:00 2001 From: Douglas Araujo <douglas.araujo@ess.eu> Date: Thu, 1 Sep 2022 14:28:32 +0200 Subject: [PATCH] Add flag to keep header sub directories --- App/tools/driver.makefile | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/App/tools/driver.makefile b/App/tools/driver.makefile index e81088d..d9a794b 100644 --- a/App/tools/driver.makefile +++ b/App/tools/driver.makefile @@ -335,6 +335,10 @@ HDRS = ${HEADERS} $(addprefix ${COMMON_DIR}/,$(addsuffix Record.h,${RECORDS})) HDRS += ${HEADERS_${EPICSVERSION}} export HDRS +HDR_SUBDIRS = $(KEEP_HEADER_SUBDIRS) +export HDR_SUBDIRS + + TEMPLS = $(if ${TEMPLATES},$(filter-out -none-,${TEMPLATES}),$(wildcard *.template *.db *.subs)) TEMPLS += ${TEMPLATES_${EPICSVERSION}} TEMPLS += $(wildcard $(COMMON_DIR)/*.db) @@ -648,7 +652,11 @@ ${MODULEDBD}: ${DBDFILES} INSTALL_LIBS = ${MODULELIB:%=${INSTALL_LIB}/%} INSTALL_DEPS = ${DEPFILE:%=${INSTALL_LIB}/%} INSTALL_DBDS = ${MODULEDBD:%=${INSTALL_DBD}/%} -INSTALL_HDRS = $(addprefix ${INSTALL_INCLUDE}/,$(notdir ${HDRS})) +ifneq ($(strip $(HDR_SUBDIRS)),) + INSTALL_HDRS = $(addprefix ${INSTALL_INCLUDE}/,$(notdir $(filter-out $(addsuffix /%,$(HDR_SUBDIRS)),${HDRS}))) +else + INSTALL_HDRS = $(addprefix ${INSTALL_INCLUDE}/,$(notdir ${HDRS})) +endif INSTALL_DBS = $(addprefix ${INSTALL_DB}/,$(notdir ${TEMPLS})) INSTALL_SCRS = $(addprefix ${INSTALL_SCR}/,$(notdir ${SCR})) INSTALL_BINS = $(addprefix ${INSTALL_BIN}/,$(notdir ${BINS})) @@ -670,6 +678,19 @@ debug:: @echo "INSTALL_CFGS = $(INSTALL_CFGS)" @echo "INSTALL_BIN = $(INSTALL_BIN)" @echo "INSTALL_BINS = $(INSTALL_BINS)" + @echo "HDR_SUBDIRS = $(HDR_SUBDIRS)" + +define install_subdirs +$1_HDRS = $$(filter $1/%,$$(HDRS)) +INSTALL_HDRS += $$(addprefix $$(INSTALL_INCLUDE)/,$$($1_HDRS:$1/%=%)) +vpath %.h ../$1 +vpath %.hpp ../$1 +vpath %.hh ../$1 +vpath %.hxx ../$1 +debug:: + @echo "$1_HDRS = $$($1_HDRS)" +endef +$(foreach d,$(HDR_SUBDIRS),$(eval $(call install_subdirs,$d))) INSTALLS += ${INSTALL_CFGS} ${INSTALL_SCRS} ${INSTALL_HDRS} ${INSTALL_DBDS} ${INSTALL_DBS} ${INSTALL_LIBS} ${INSTALL_BINS} ${INSTALL_DEPS} -- GitLab