6 %bcond_without dist_kernel # without distribution kernel
7 %bcond_without kernel # don't build kernel modules
8 %bcond_without userspace # # don't build userspace tools
9 %bcond_with verbose # verbose build (V=1)
12 %undefine with_dist_kernel
14 %if "%{_alt_kernel}" != "%{nil}"
15 %undefine with_userspace
17 %if %{without userspace}
18 # nothing to be placed to debuginfo package
19 %define _enable_debug_packages 0
23 Summary: Extensible packet filtering system && extensible NAT system
24 Summary(pl.UTF-8): System filtrowania pakietów oraz system translacji adresów (NAT)
25 Summary(pt_BR.UTF-8): Ferramenta para controlar a filtragem de pacotes no kernel-2.6.x
26 Summary(ru.UTF-8): Утилиты для управления пакетными фильтрами ядра Linux
27 Summary(uk.UTF-8): Утиліти для керування пакетними фільтрами ядра Linux
28 Summary(zh_CN.UTF-8): Linux内核包过滤管理工具
33 Group: Networking/Admin
34 Source0: http://dl.sourceforge.net/xtables-addons/%{name}-%{version}.tar.bz2
35 # Source0-md5: 5a8d2edbf5a3470bba58d6a60c350805
36 URL: http://xtables-addons.sourceforge.net/
37 Patch0: %{name}-libs.patch
38 Patch1: %{name}-geoip-dbpath.patch
39 Patch2: kernelrelease.patch
40 BuildRequires: autoconf
41 BuildRequires: automake
42 BuildRequires: iptables-devel >= 1.4.3
43 %{?with_dist_kernel:BuildRequires: kernel%{_alt_kernel}-module-build >= 3:2.6.25}
44 BuildRequires: libtool
45 BuildRequires: pkgconfig
46 BuildRequires: rpmbuild(macros) >= 1.379
47 Requires: iptables >= 1.4.3
48 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
50 # use macro, so adapter won't try to wrap
51 %define kpackage kernel%{_alt_kernel}-net-xtables-addons = %{rel}@%{_kernel_ver_str}
54 An extensible NAT system, and an extensible packet filtering system.
55 Replacement of ipchains in 2.6 and higher kernels.
57 You need %{kpackage} installed for the tools to work.
59 %description -l pl.UTF-8
60 Wydajny system translacji adresów (NAT) oraz system filtrowania
61 pakietów. Zamiennik ipchains w jądrach 2.6 i nowszych.
63 %description -l pt_BR.UTF-8
64 Esta é a ferramenta que controla o código de filtragem de pacotes do
65 kernel 2.6, obsoletando ipchains. Com esta ferramenta você pode
66 configurar filtros de pacotes, NAT, mascaramento (masquerading),
67 regras dinâmicas (stateful inspection), etc.
69 %description -l ru.UTF-8
70 xtables-addons управляют кодом фильтрации сетевых пакетов в ядре
71 Linux. Они позволяют вам устанавливать межсетевые экраны (firewalls) и
72 IP маскарадинг, и т.п.
74 %description -l uk.UTF-8
75 xtables-addons управляють кодом фільтрації пакетів мережі в ядрі
76 Linux. Вони дозволяють вам встановлювати міжмережеві екрани
77 (firewalls) та IP маскарадинг, тощо.
79 %package -n kernel%{_alt_kernel}-net-xtables-addons
80 Summary: Kernel modules for xtables addons
81 Summary(pl.UTF-8): Moudły jądra dla xtables addons
82 Release: %{rel}@%{_kernel_ver_str}
84 # VERSION only dependency is intentional, for allowing multiple kernel pkgs and
85 # single userspace package installs.
86 Requires: %{name} = %{version}
87 %{?with_dist_kernel:%requires_releq_kernel}
88 Requires(post,postun): /sbin/depmod
90 %description -n kernel%{_alt_kernel}-net-xtables-addons
91 Kernel modules for xtables addons.
93 %description -n kernel%{_alt_kernel}-net-xtables-addons -l pl.UTF-8
94 Moduły jądra dla xtables addons.
102 %{__sed} -i -e 's#build_ipset=m#build_ipset=n#' mconfig
110 --with-kbuild=%{_kernelsrcdir} \
111 --with-ksource=%{_kernelsrcdir}
113 export XA_TOPSRCDIR=$PWD
116 %build_kernel_modules -C extensions -m compat_xtables
119 %if %{with userspace}
120 %{__make} -C extensions
124 rm -rf $RPM_BUILD_ROOT
125 install -d $RPM_BUILD_ROOT{/etc/rc.d/init.d,/lib/modules/%{_kernel_ver}/kernel/net/ipv4/netfilter,%{_mandir}/man8}
129 %install_kernel_modules -m compat_xtables -d kernel/net/netfilter
130 install -p xt_*ko $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/kernel/net/netfilter
134 %if %{with userspace}
135 %{__make} -C extensions install \
136 DESTDIR=$RPM_BUILD_ROOT
139 for m in $(cat .manpages.lst); do
140 cp -a libxt_$m.man $RPM_BUILD_ROOT%{_mandir}/man8/libxt_$m.8
146 rm -rf $RPM_BUILD_ROOT
148 %post -n kernel%{_alt_kernel}-net-xtables-addons
149 %depmod %{_kernel_ver}
151 %postun -n kernel%{_alt_kernel}-net-xtables-addons
152 %depmod %{_kernel_ver}
154 %if %{with userspace}
156 %defattr(644,root,root,755)
157 %attr(755,root,root) %{_libdir}/xtables/libxt_*.so
158 %{_mandir}/man8/libxt_*.*
162 %files -n kernel%{_alt_kernel}-net-xtables-addons
163 %defattr(644,root,root,755)
164 /lib/modules/%{_kernel_ver}/kernel/net/netfilter/compat_xtables.ko.gz
165 /lib/modules/%{_kernel_ver}/kernel/net/netfilter/xt_*.ko.gz