diff --git a/package/nftables/Config.in b/package/nftables/Config.in index 8d172b7256..833a3a38a2 100644 --- a/package/nftables/Config.in +++ b/package/nftables/Config.in @@ -13,5 +13,10 @@ config BR2_PACKAGE_NFTABLES http://www.netfilter.org/projects/nftables/index.html +# Legacy: this used to be handled in nftables.mk +if BR2_PACKAGE_NFTABLES +source "package/nftables/nftables-python/Config.in" +endif + comment "nftables needs a toolchain w/ wchar, headers >= 3.12" depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 diff --git a/package/nftables/nftables-python/Config.in b/package/nftables/nftables-python/Config.in new file mode 100644 index 0000000000..b16e2d0ad1 --- /dev/null +++ b/package/nftables/nftables-python/Config.in @@ -0,0 +1,4 @@ +config BR2_PACKAGE_NFTABLES_PYTHON + bool "python bindings" + default y # legacy + depends on BR2_PACKAGE_PYTHON3 diff --git a/package/nftables/nftables-python/nftables-python.hash b/package/nftables/nftables-python/nftables-python.hash new file mode 120000 index 0000000000..9ac74580e7 --- /dev/null +++ b/package/nftables/nftables-python/nftables-python.hash @@ -0,0 +1 @@ +../nftables.hash \ No newline at end of file diff --git a/package/nftables/nftables-python/nftables-python.mk b/package/nftables/nftables-python/nftables-python.mk new file mode 100644 index 0000000000..908bacd99a --- /dev/null +++ b/package/nftables/nftables-python/nftables-python.mk @@ -0,0 +1,22 @@ +################################################################################ +# +# nftables-python +# +################################################################################ + +# The following assignments work only because nftables.mk is included before +# this file is. +NFTABLES_PYTHON_VERSION = $(NFTABLES_VERSION) +NFTABLES_PYTHON_SOURCE = $(NFTABLES_SOURCE) +NFTABLES_PYTHON_SITE = $(NFTABLES_SITE) +NFTABLES_PYTHON_LICENSE = $(NFTABLES_LICENSE) +NFTABLES_PYTHON_LICENSE_FILES = $(NFTABLES_LICENSE_FILES) + +# We share the same source code as nftables +NFTABLES_PYTHON_DL_SUBDIR = nftables + +NFTABLES_PYTHON_SUBDIR = py + +NFTABLES_PYTHON_SETUP_TYPE = setuptools + +$(eval $(python-package)) diff --git a/package/nftables/nftables.mk b/package/nftables/nftables.mk index b0a14bd429..d31df8afa4 100644 --- a/package/nftables/nftables.mk +++ b/package/nftables/nftables.mk @@ -10,9 +10,15 @@ NFTABLES_SITE = https://www.netfilter.org/projects/nftables/files NFTABLES_DEPENDENCIES = libmnl libnftnl host-pkgconf $(TARGET_NLS_DEPENDENCIES) NFTABLES_LICENSE = GPL-2.0 NFTABLES_LICENSE_FILES = COPYING -NFTABLES_CONF_OPTS = --disable-debug --disable-man-doc --disable-pdf-doc NFTABLES_SELINUX_MODULES = iptables +# Python bindings are handled by package nftables-python +NFTABLES_CONF_OPTS = \ + --disable-debug \ + --disable-man-doc \ + --disable-pdf-doc \ + --disable-python + ifeq ($(BR2_PACKAGE_GMP),y) NFTABLES_DEPENDENCIES += gmp NFTABLES_CONF_OPTS += --without-mini-gmp @@ -42,13 +48,6 @@ else NFTABLES_CONF_OPTS += --without-json endif -ifeq ($(BR2_PACKAGE_PYTHON3),y) -NFTABLES_CONF_OPTS += --enable-python -NFTABLES_DEPENDENCIES += python3 -else -NFTABLES_CONF_OPTS += --disable-python -endif - NFTABLES_CONF_ENV = LIBS="$(NFTABLES_LIBS)" define NFTABLES_LINUX_CONFIG_FIXUPS @@ -58,3 +57,6 @@ define NFTABLES_LINUX_CONFIG_FIXUPS endef $(eval $(autotools-package)) + +# Legacy: we used to handle it in this .mk +include package/nftables/nftables-python/nftables-python.mk