X-Git-Url: http://git.pld-linux.org/?p=packages%2Fxtables-addons.git;a=blobdiff_plain;f=xtables-addons.spec;h=bb2dcf0d64e5d64e64007bc599f940bbad372e54;hp=2333cd97deaf3b60279736469fd2f08ae7b6889a;hb=8af0bca68b14a95b97e7467fe97fd6cc9071900b;hpb=2659fab665a0c7e98f07b218c61cc5182206582c diff --git a/xtables-addons.spec b/xtables-addons.spec index 2333cd9..bb2dcf0 100644 --- a/xtables-addons.spec +++ b/xtables-addons.spec @@ -1,11 +1,32 @@ +# TODO +# - descriptions +# - package referenec implementation iptaccount(8) and userspace lib +# /usr/lib64/libxt_ACCOUNT_cl.la +# /usr/lib64/libxt_ACCOUNT_cl.so +# /usr/lib64/libxt_ACCOUNT_cl.so.0 +# /usr/lib64/libxt_ACCOUNT_cl.so.0.0.0 +# /usr/sbin/iptaccount +# and if packaged can remove debuginfo package omit +# - subpackage for geoip due extra deps # # Conditional build: %bcond_without dist_kernel # without distribution kernel -# -%define netfilter_snap 20070806 -%define llh_version 7:2.6.22.1 -# -%define rel 0.1 +%bcond_without kernel # don't build kernel modules +%bcond_without userspace # # don't build userspace tools +%bcond_with verbose # verbose build (V=1) + +%if %{without kernel} +%undefine with_dist_kernel +%endif +%if "%{_alt_kernel}" != "%{nil}" +%undefine with_userspace +%endif +%if %{without userspace} +# nothing to be placed to debuginfo package +%define _enable_debug_packages 0 +%endif + +%define rel 0.1 Summary: Extensible packet filtering system && extensible NAT system Summary(pl.UTF-8): System filtrowania pakietów oraz system translacji adresów (NAT) Summary(pt_BR.UTF-8): Ferramenta para controlar a filtragem de pacotes no kernel-2.6.x @@ -13,25 +34,33 @@ Summary(ru.UTF-8): Утилиты для управления пакетными Summary(uk.UTF-8): Утиліти для керування пакетними фільтрами ядра Linux Summary(zh_CN.UTF-8): Linux内核包过滤管理工具 Name: xtables-addons -Version: 1.5.2 +Version: 1.25 Release: %{rel} License: GPL -Group: Networking/Daemons -Source0: http://dev.computergmbh.de/files/xtables/%{name}-%{version}.tar.bz2 -# Source0-md5: 742ecdf7f40d5b24031cfe50f38be530 -BuildRequires: xtables-devel >= 1.5.2 -%if %{with dist_kernel} && %{netfilter_snap} != 0 -BuildRequires: kernel%{_alt_kernel}-headers(netfilter) >= %{netfilter_snap} -BuildRequires: kernel%{_alt_kernel}-source -%endif -BuildConflicts: kernel-headers < 2.3.0 -Provides: firewall-userspace-tool +Group: Networking/Admin +Source0: http://downloads.sourceforge.net/xtables-addons/%{name}-%{version}.tar.bz2 +# Source0-md5: d2765d1e6be6194b2c24efa6684a6874 +URL: http://xtables-addons.sourceforge.net/ +Patch0: kernelrelease.patch +BuildRequires: autoconf +BuildRequires: automake +BuildRequires: iptables-devel >= 1.4.3 +%{?with_dist_kernel:BuildRequires: kernel%{_alt_kernel}-module-build >= 3:2.6.25} +BuildRequires: libtool +BuildRequires: pkgconfig +BuildRequires: rpmbuild(macros) >= 1.379 +Requires: iptables >= 1.4.3 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) +# use macro, so adapter won't try to wrap +%define kpackage kernel%{_alt_kernel}-net-xtables-addons = %{rel}@%{_kernel_ver_str} + %description An extensible NAT system, and an extensible packet filtering system. Replacement of ipchains in 2.6 and higher kernels. +You need %{kpackage} installed for the tools to work. + %description -l pl.UTF-8 Wydajny system translacji adresów (NAT) oraz system filtrowania pakietów. Zamiennik ipchains w jądrach 2.6 i nowszych. @@ -52,25 +81,85 @@ xtables-addons управляють кодом фільтрації пакеті Linux. Вони дозволяють вам встановлювати міжмережеві екрани (firewalls) та IP маскарадинг, тощо. +%package -n kernel%{_alt_kernel}-net-xtables-addons +Summary: Kernel modules for xtables addons +Summary(pl.UTF-8): Moudły jądra dla xtables addons +Release: %{rel}@%{_kernel_ver_str} +Group: Base/Kernel +Conflicts: xtables-geoip < 20090901-2 +# VERSION only dependency is intentional, for allowing multiple kernel pkgs and +# single userspace package installs. +Requires: %{name} = %{version} +%{?with_dist_kernel:%requires_releq_kernel} +Requires(post,postun): /sbin/depmod + +%description -n kernel%{_alt_kernel}-net-xtables-addons +Kernel modules for xtables addons. + +%description -n kernel%{_alt_kernel}-net-xtables-addons -l pl.UTF-8 +Moduły jądra dla xtables addons. + %prep %setup -q +%patch0 -p1 + +%{__sed} -i -e 's#build_ipset=m#build_ipset=n#' mconfig %build +%{__libtoolize} +%{__aclocal} +%{__autoconf} +%{__automake} %configure \ - --with-kbuild=%{_kernelsrcdir} \ - --with-ksource=%{_kernelsrcdir} + --with-kbuild=no + +%if %{with kernel} +srcdir=${PWD:-$(pwd)} +%build_kernel_modules XA_ABSTOPSRCDIR=$srcdir -C extensions -m compat_xtables +%endif + +%if %{with userspace} %{__make} +%endif %install rm -rf $RPM_BUILD_ROOT +install -d $RPM_BUILD_ROOT{/etc/rc.d/init.d,/lib/modules/%{_kernel_ver}/kernel/net/ipv4/netfilter,%{_mandir}/man8} -%{__make} install \ +%if %{with kernel} +cd extensions +%install_kernel_modules -m compat_xtables -d kernel/net/netfilter +install -p xt_*ko $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/kernel/net/netfilter +cd .. +%endif + +%if %{with userspace} +%{__make} -C extensions install \ DESTDIR=$RPM_BUILD_ROOT +install -d $RPM_BUILD_ROOT%{_mandir}/man8 +cp -a xtables-addons.8 $RPM_BUILD_ROOT%{_mandir}/man8 +%endif + %clean rm -rf $RPM_BUILD_ROOT +%post -n kernel%{_alt_kernel}-net-xtables-addons +%depmod %{_kernel_ver} + +%postun -n kernel%{_alt_kernel}-net-xtables-addons +%depmod %{_kernel_ver} + +%if %{with userspace} %files %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/xtables/*.so -%{_mandir}/man8/* +%attr(755,root,root) %{_libdir}/xtables/libxt_*.so +%{_mandir}/man8/xtables-addons.8* +%endif + +%if %{with kernel} +%files -n kernel%{_alt_kernel}-net-xtables-addons +%defattr(644,root,root,755) +/lib/modules/%{_kernel_ver}/kernel/net/netfilter/compat_xtables.ko.gz +/lib/modules/%{_kernel_ver}/kernel/net/netfilter/xt_*.ko.gz +%endif