diff --git a/CHANGELOG.md b/CHANGELOG.md index 7ca8dc55e9cbbf898e7c4cc1d77ce44df5b40764..24c73410e9cc676b773c27305b7efd56c055bb10 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -24,6 +24,7 @@ in the wrapper would cause all of the module `make` commands to fail. * Stop require from looking in legacy locations for various files * Rewrite internal linked list to have better memory safety * Removed enabling of core dump generation and max file size limit to allow developers more flexibility (enable and set limit by calling `ulimit -S -c x` where x is max size in blocks before IOC startup) +* Remove `ARCH_FILTER` support; from now on, only `EXCLUDE_ARCHS` is used. ## [5.0.0] diff --git a/require-ess/tools/driver.makefile b/require-ess/tools/driver.makefile index b025a71a7059f3b788587e00e198b76516cc07ff..4ee212ffc5591213832ded010f8b002e8f06e02b 100644 --- a/require-ess/tools/driver.makefile +++ b/require-ess/tools/driver.makefile @@ -50,8 +50,9 @@ # HEADERS # Header files to install (e.g. to be included by other drivers) # If not defined, all headers are for local use only. -# ARCH_FILTER -# Sub set of architectures to build for, e.g. %-ppc604 +# EXCLUDE_ARCH +# Sub set of architectures to exclude for, e.g. ppc604; note that these will be wildcarded +# as %ppc604 and ppc604%. # Get the location of this file. MAKEHOME:=$(dir $(lastword ${MAKEFILE_LIST})) @@ -264,10 +265,10 @@ LICENSES = $(shell find -not -path '*/.*' -type f -iname LICENSE) LICENSES += $(shell find -not -path '*/.*' -type f -iname Copyright) export LICENSES -# Filter architectures to build using EXCLUDE_ARCHS and ARCH_FILTER. +# Filter architectures to build using EXCLUDE_ARCHS. ALL_ARCHS = ${EPICS_HOST_ARCH} ${CROSS_COMPILER_TARGET_ARCHS} -BUILD_ARCHS = $(filter-out $(addprefix %,${EXCLUDE_ARCHS}),$(filter-out $(addsuffix %,${EXCLUDE_ARCHS}),\ - $(if ${ARCH_FILTER},$(filter ${ARCH_FILTER},${ALL_ARCHS}),${ALL_ARCHS}))) +BUILD_ARCHS = $(filter-out $(addprefix %,${EXCLUDE_ARCHS}),\ + $(filter-out $(addsuffix %,${EXCLUDE_ARCHS}),${ALL_ARCHS})) SRCS_Linux = ${SOURCES_Linux} export SRCS_Linux @@ -310,7 +311,6 @@ debug:: @echo "PRJ = ${PRJ}" @echo "EPICS_BASE = ${EPICS_BASE}" @echo "BUILD_ARCHS = ${BUILD_ARCHS}" - @echo "ARCH_FILTER = ${ARCH_FILTER}" @echo "EXCLUDE_ARCHS = ${EXCLUDE_ARCHS}" @echo "LIBVERSION = ${LIBVERSION}" @echo "E3_SITEMODS_PATH = ${E3_SITEMODS_PATH}" @@ -348,7 +348,7 @@ db_internal: $$(addprefix $(COMMON_DIR)/,$$(notdir $$(patsubst %.template,%.db,$ db_internal: $$(addprefix $(COMMON_DIR)/,$$(notdir $$(patsubst %.substitutions,%.db,$$(SUBS)))) # This has to be after .SECONDEXPANSION since BUILD_ARCHS will be modified based on EXCLUDE_ARCHS -# and ARCH_FILTER, which are defined _after_ driver.makefile. +# which is defined _after_ driver.makefile. $(foreach target,install build debug,$(eval $(target):: $$$$(foreach arch,$$$${BUILD_ARCHS},$(target)-$$$${arch}))) # Create and install the metadata file as the very last step diff --git a/tests/test_build.py b/tests/test_build.py index 595760d698d5a8a33a6b8ac0c1eda96af73b1f0e..b3ef0aca2cdc87f97812e7b2c8292027706998c3 100644 --- a/tests/test_build.py +++ b/tests/test_build.py @@ -615,7 +615,6 @@ def test_substitution_template_priority(wrapper: Wrapper): @pytest.mark.parametrize( "installed_archs, param, expected", [ - ("foo bar baz foo-bar", "ARCH_FILTER=foo", ["foo"]), ("foo", "EXCLUDE_ARCHS=foo", []), ("foo-bar foo-baz baz baz-qux", "EXCLUDE_ARCHS=foo", ["baz", "baz-qux"]), ],