diff options
author | Peter Kjellerstedt <peter.kjellerstedt@axis.com> | 2018-07-19 20:19:38 +0200 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2018-07-30 12:44:35 +0100 |
commit | 4fb55aaaf70bb4911342e5ace7fb978f7e298233 (patch) | |
tree | 9f6fed5fbaac41262623aff7313a59cc1b9ad8ed /meta/recipes-extended | |
parent | a5f2b5c4c39bea0673fe14dbec9d3e7537bef4b9 (diff) | |
download | poky-4fb55aaaf70bb4911342e5ace7fb978f7e298233.tar.gz |
iptables: Split the iptables modules into separate packages
By splitting the iptables modules into separate packages it is
possible to pick and choose the modules to install and thereby reduce
the total size of the installed modules.
Backwards compatibility is maintained by adding a recommendation of
iptables-modules, which is a meta package that depends on all the
generated packages.
(From OE-Core rev: 2e99caca64704d1ec51f4f65048d945e5ff1384f)
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-extended')
-rw-r--r-- | meta/recipes-extended/iptables/iptables_1.6.2.bb | 43 |
1 files changed, 30 insertions, 13 deletions
diff --git a/meta/recipes-extended/iptables/iptables_1.6.2.bb b/meta/recipes-extended/iptables/iptables_1.6.2.bb index 38a83d2b32..e00824f763 100644 --- a/meta/recipes-extended/iptables/iptables_1.6.2.bb +++ b/meta/recipes-extended/iptables/iptables_1.6.2.bb | |||
@@ -7,17 +7,6 @@ LICENSE = "GPLv2+" | |||
7 | LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263\ | 7 | LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263\ |
8 | file://iptables/iptables.c;beginline=13;endline=25;md5=c5cffd09974558cf27d0f763df2a12dc" | 8 | file://iptables/iptables.c;beginline=13;endline=25;md5=c5cffd09974558cf27d0f763df2a12dc" |
9 | 9 | ||
10 | RRECOMMENDS_${PN} = "kernel-module-x-tables \ | ||
11 | kernel-module-ip-tables \ | ||
12 | kernel-module-iptable-filter \ | ||
13 | kernel-module-iptable-nat \ | ||
14 | kernel-module-nf-defrag-ipv4 \ | ||
15 | kernel-module-nf-conntrack \ | ||
16 | kernel-module-nf-conntrack-ipv4 \ | ||
17 | kernel-module-nf-nat \ | ||
18 | kernel-module-ipt-masquerade" | ||
19 | FILES_${PN} =+ "${libdir}/xtables/ ${datadir}/xtables" | ||
20 | |||
21 | SRC_URI = "http://netfilter.org/projects/iptables/files/iptables-${PV}.tar.bz2 \ | 10 | SRC_URI = "http://netfilter.org/projects/iptables/files/iptables-${PV}.tar.bz2 \ |
22 | file://0001-configure-Add-option-to-enable-disable-libnfnetlink.patch \ | 11 | file://0001-configure-Add-option-to-enable-disable-libnfnetlink.patch \ |
23 | file://0002-configure.ac-only-check-conntrack-when-libnfnetlink-enabled.patch \ | 12 | file://0002-configure.ac-only-check-conntrack-when-libnfnetlink-enabled.patch \ |
@@ -28,8 +17,8 @@ SRC_URI[sha256sum] = "55d02dfa46263343a401f297d44190f2a3e5113c8933946f094ed40237 | |||
28 | 17 | ||
29 | inherit autotools pkgconfig | 18 | inherit autotools pkgconfig |
30 | 19 | ||
31 | EXTRA_OECONF = "--with-kernel=${STAGING_INCDIR} \ | 20 | EXTRA_OECONF = "--with-kernel=${STAGING_INCDIR}" |
32 | " | 21 | |
33 | PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}" | 22 | PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}" |
34 | 23 | ||
35 | PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," | 24 | PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," |
@@ -45,3 +34,31 @@ do_configure_prepend() { | |||
45 | # Keep ax_check_linker_flags.m4 which belongs to autoconf-archive. | 34 | # Keep ax_check_linker_flags.m4 which belongs to autoconf-archive. |
46 | rm -f libtool.m4 lt~obsolete.m4 ltoptions.m4 ltsugar.m4 ltversion.m4 | 35 | rm -f libtool.m4 lt~obsolete.m4 ltoptions.m4 ltsugar.m4 ltversion.m4 |
47 | } | 36 | } |
37 | |||
38 | PACKAGES += "${PN}-modules" | ||
39 | PACKAGES_DYNAMIC += "^${PN}-module-.*" | ||
40 | |||
41 | python populate_packages_prepend() { | ||
42 | modules = do_split_packages(d, '${libdir}/xtables', 'lib(.*)\.so$', '${PN}-module-%s', '${PN} module %s', extra_depends='') | ||
43 | if modules: | ||
44 | metapkg = d.getVar('PN') + '-modules' | ||
45 | d.appendVar('RDEPENDS_' + metapkg, ' ' + ' '.join(modules)) | ||
46 | } | ||
47 | |||
48 | FILES_${PN} += "${datadir}/xtables" | ||
49 | |||
50 | ALLOW_EMPTY_${PN}-modules = "1" | ||
51 | |||
52 | RDEPENDS_${PN} = "${PN}-module-xt-standard" | ||
53 | RRECOMMENDS_${PN} = " \ | ||
54 | ${PN}-modules \ | ||
55 | kernel-module-x-tables \ | ||
56 | kernel-module-ip-tables \ | ||
57 | kernel-module-iptable-filter \ | ||
58 | kernel-module-iptable-nat \ | ||
59 | kernel-module-nf-defrag-ipv4 \ | ||
60 | kernel-module-nf-conntrack \ | ||
61 | kernel-module-nf-conntrack-ipv4 \ | ||
62 | kernel-module-nf-nat \ | ||
63 | kernel-module-ipt-masquerade \ | ||
64 | " | ||