--- rpms/xtables-addons-kmod/contribs9/xtables-addons-kmod.spec 2019/02/07 05:05:46 1.2 +++ rpms/xtables-addons-kmod/contribs9/xtables-addons-kmod.spec 2019/02/18 04:50:26 1.10 @@ -1,7 +1,17 @@ +# 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 current + +#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 1.47.1 -%define release 5 +%define release 9 Summary: %{name} is a set of additional extensions for the Xtables packet filter (modules kmod ONLY). Name: %{name} Version: %{version} @@ -14,24 +24,39 @@ Source: %{name_src}-%{version}.tar.xz URL: http://xtables-addons.sourceforge.net Patch0: xtables-addons-1.47.1-v6.patch Packager: Michel Begue -BuildRoot: %RPM_BUILD_ROOT #Requires: smeserver-release >= 9.0 Requires: xtables-addons >= 1.47.1-4 #Requires: kernel = 2.6.32-696 -Requires: kernel = 2.6.32-696.28.1.el6 +#Requires: kernel = 2.6.32-696.28.1.el6 BuildRequires: e-smith-devtools BuildRequires: iptables-devel BuildRequires: %{_bindir}/kmodtool -AutoReqProv: no +ExclusiveArch: x86_64 + +%{!?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 -* Wed Feb 06 2019 Jean-Philipe Pialasse 1.47.1-5.sme +* Sun Feb 17 2019 Jean-Philipe Pialasse 1.47.1-9.sme +- fix Requires: xtables-addons-kmod-common [SME: 10734] +- revert change from -8 for -9 + +* Wed Feb 06 2019 Jean-Philipe Pialasse 1.47.1-7.sme - first import to SME buildsys [SME: 10734] - add buildrequires iptables-devel +- update spec files according to rpmfusion way, + add buildsys-build-rpmfusion-kerneldevpkgs requirement from rpmfusion +- workaround for install dir lib while script send it to usr/lib +- set current +- set archs x86_6, as no i386 buildsys-build-rpmfusion-kerneldevpkgs available to build +- TODO: try to build i386 using i686 buildsys-build-rpmfusion-kerneldevpkgs * Thu Mar 15 2018 Mab974 - compiled for kernel version 2.6.32-696.23.1.el6.x86_64 @@ -45,39 +70,38 @@ It is just a "kernel update" release. - patch disable WITH_IPV6 in extra/*c (-v6) %prep - -#%setup -n %{name_src}-%{version} -#%patch0 -p1 - -#./configure --prefix=/usr --with-kbuild= - # 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 -p1 +%patch0 for kernel_version in %{?kernel_versions} ; do cp -a xtables-addons-%{version} _kmod_build_${kernel_version%%___*} done - %build +#ls -l /usr/src/kernels/2.6.32-754.el6.x86_64/include/config/auto.conf >&2 for kernel_version in %{?kernel_versions} ; do + if ! grep -q 'XT_TARGET_TEE=m' %{_usrsrc}/kernels/${kernel_version%%___*}/.config; then + sed -i 's/build_TEE=/build_TEE=m/' _kmod_build_${kernel_version%%___*}/mconfig + fi + if ! grep -q 'XT_TARGET_CHECKSUM=m' %{_usrsrc}/kernels/${kernel_version%%___*}/.config; then + sed -i 's/build_CHECKSUM=/build_CHECKSUM=m/' _kmod_build_${kernel_version%%___*}/mconfig + fi 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 - -#%build -#%{__make} - %install -%{__rm} -rf %{buildroot} -%{__make} install DESTDIR="%{buildroot}" -%{__rm} -rf %{buildroot}/lib64/ -%{__rm} -rf %{buildroot}/usr/ +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 +done +%{?akmod_install} %clean %{__rm} -rf %{buildroot}