# buildforkernels macro hint: when you build a new version or a new release # that contains bugfixes or other improvements then you must disable the # "buildforkernels newest" macro for just that build; immediately after # queuing that build enable the macro again for subsequent builds; that way # a new akmod package will only get build when a new one is actually needed %global buildforkernels akmod #FIXME xtables-kmod doesn't use the appropriate cflags %global debug_package %{nil} %define name xtables-addons-kmod %define name_src xtables-addons %define version 2.14 %define release 03 Summary: %{name} is a set of additional extensions for the Xtables packet filter (modules kmod ONLY). Name: %{name} Version: %{version} Release: %{release}%{?dist} Distribution: SME Server License: GNU GPL version 2 Group: SME Server/addon Source: %{name_src}-%{version}.tar.xz URL: http://xtables-addons.sourceforge.net Patch0: %{name_src}-2.14-init.patch Packager: Michel Begue Requires: smeserver-release >= 10.0 Requires: xtables-addons >= 2.14 BuildRequires: e-smith-devtools BuildRequires: iptables-devel BuildRequires: %{_bindir}/kmodtool ExclusiveArch: x86_64 Requires(post): /sbin/weak-modules Requires(postun): /sbin/weak-modules %{!?kernels:BuildRequires: buildsys-build-rpmfusion-kerneldevpkgs-%{?buildforkernels:%{buildforkernels}}%{!?buildforkernels:current}-%{_target_cpu} } # kmodtool does its magic here %{expand:%(kmodtool --target %{_target_cpu} --repo rpmfusion --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) } %description %{name} is a set of additional extensions for the Xtables packet filter that is present in the Linux kernel (modules kmod ONLY). It is just a "kernel update" release. %changelog * Tue Jul 21 2020 Michel Begue 2.14-02.sme - change in install workaround. copy /usr/lib to /lib * Wed Apr 15 2020 Michel Begue 2.14-01.sme - initial release 2.14 for sme10 - changes for using GeoIP2 databases (download and build (-g2) + fetch) - dependency : perl-IO-Socket-INET6 (bug sa-update) - set XT_GEOIP_MAX from 15 to 50 - comment out "print STDERR" counters in xt_geoip-build - add license_key in download script of bases - comment out build_TARPIT (Centos 7 compatibility pbm) %prep # error out if there was something wrong with kmodtool %{?kmodtool_check} # print kmodtool output for debugging purposes: kmodtool --target %{_target_cpu} --repo rpmfusion --kmodname %{name} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null %setup -q -c -T -a 0 %patch0 for kernel_version in %{?kernel_versions} ; do cp -a xtables-addons-%{version} _kmod_build_${kernel_version%%___*} done %build for kernel_version in %{?kernel_versions} ; do export XA_ABSTOPSRCDIR=${PWD}/_kmod_build_${kernel_version%%___*} make %{?_smp_mflags} V=1 -C "${kernel_version##*___}" M=${PWD}/_kmod_build_${kernel_version%%___*}/extensions modules done %install %{__rm} -rf %{buildroot} for kernel_version in %{?kernel_versions} ; do export XA_ABSTOPSRCDIR=${PWD}/_kmod_build_${kernel_version%%___*} make %{?_smp_mflags} V=1 -C "${kernel_version##*___}" M=${PWD}/_kmod_build_${kernel_version%%___*}/extensions _emodinst_ INSTALL_MOD_PATH=%{buildroot}%{_prefix} ext-mod-dir=%{kmodinstdir_postfix} # workaround to avoid error at file stage, it seems that we are installing it in /usr/lib and files script is waiting it in /lib... #mv %{buildroot}%{_prefix}/lib %{buildroot}%{_prefix}/../lib cp -R %{buildroot}%{_prefix}/lib %{buildroot}%{_prefix}/../lib done %{?akmod_install} %clean %{__rm} -rf %{buildroot} %pre %post -n %{name} /sbin/weak-modules --add-kernel %preun %postun -n %{name} /sbin/weak-modules --add-kernel %files %defattr(-, root, root, 0755) /lib/modules/*