diff options
author | Luca Boccassi <luca.boccassi@gmail.com> | 2016-09-21 16:10:02 +0100 |
---|---|---|
committer | Luca Boccassi <luca.boccassi@gmail.com> | 2016-09-22 10:57:37 +0100 |
commit | c154d808612e977e2dc6fcd198889fbb66865d13 (patch) | |
tree | ba22927032ee43b652c09716949b702e971ba803 | |
parent | 103ddb445e7ffef5f565783f67c67b0390774180 (diff) |
Allow DPDK_CONFIG, RTE_MACHINE, RTE_TARGET overrides
Parse DEB_BUILD_OPTIONS and let users override the defaults.
If DPDK_CONFIG is overridden, allow users to store it in the debian/
directory, to avoid modifying the upstream tree, and also avoid
modifying it during dh_auto_configure.
Change-Id: I6b4f449a36ab079fab271b5930b020fbafc24905
Signed-off-by: Luca Boccassi <luca.boccassi@gmail.com>
-rwxr-xr-x | debian/rules | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/debian/rules b/debian/rules index 768203f5..064ffc3b 100755 --- a/debian/rules +++ b/debian/rules @@ -33,7 +33,17 @@ export EXTRA_HOST_LDFLAGS=$(LDFLAGS) export RTE_DEVEL_BUILD=n # People rebuilding this package can overwrite DPDK_CONFIG, RTE_MACHINE and -# RTE_TARGET via environment variables if they like +# RTE_TARGET via DEB_BUILD_OPTIONS if they like +ifneq (,$(filter dpdk_config=%,$(DEB_BUILD_OPTIONS))) + DPDK_CONFIG ?= $(patsubst dpdk_config=%,%,$(filter dpdk_config=%,$(DEB_BUILD_OPTIONS))) +endif +ifneq (,$(filter rte_machine=%,$(DEB_BUILD_OPTIONS))) + RTE_MACHINE ?= $(patsubst rte_machine=%,%,$(filter rte_machine=%,$(DEB_BUILD_OPTIONS))) +endif +ifneq (,$(filter rte_target=%,$(DEB_BUILD_OPTIONS))) + RTE_TARGET ?= $(patsubst rte_target=%,%,$(filter rte_target=%,$(DEB_BUILD_OPTIONS))) +endif + ifneq (,$(filter $(DEB_HOST_ARCH), arm64)) DPDK_CONFIG ?= "arm64-armv8a-linuxapp-gcc" RTE_MACHINE ?= "armv8a" @@ -100,13 +110,19 @@ override_dh_auto_clean: rm -rf debian/build debian/tmp debian/dpdk-modules-* \ debian/control.modules debian/VERSION sed -i '/Package: dpdk-modules-/,/`tail -n1 debian/control.modules.in`/d' debian/control + test -L config/defconfig_$(DPDK_CONFIG) && rm -f config/defconfig_$(DPDK_CONFIG) || true override_dh_auto_configure: + # Add support for a custom defconfig file in the debian directory. +ifneq (,$(filter dpdk_config=%,$(DEB_BUILD_OPTIONS))) + test -e config/defconfig_$(DPDK_CONFIG) || ln -fs ../debian/defconfig_$(DPDK_CONFIG) config/defconfig_$(DPDK_CONFIG) +endif # report dpkg-buildflags status to build log dpkg-buildflags --status echo EXTRA_CFLAGS $$EXTRA_CFLAGS echo EXTRA_LDFLAGS: $$EXTRA_LDFLAGS $(MAKE) V=$(DH_VERBOSE) O=$(DPDK_STATIC_DIR) T=$(DPDK_CONFIG) config +ifeq (,$(filter dpdk_config=%,$(DEB_BUILD_OPTIONS))) sed -ri -e 's,(RTE_MACHINE=).*,\1$(RTE_MACHINE),' \ -e 's,(RTE_NEXT_ABI=).*,\1n,' \ -e 's,(CONFIG_RTE_EAL_IGB_UIO=).*,\1$(DPDK_CONFIG_BUILD_KMOD),' \ @@ -118,6 +134,7 @@ override_dh_auto_configure: ifneq (,$(filter $(DEB_HOST_ARCH), ppc64el)) sed -ri -e 's,(LIBRTE_PMD_XENVIRT=).*,\1n,' $(DPDK_STATIC_DIR)/.config endif +endif dh_auto_configure override_dh_auto_build-indep: |