Build with compatible for bootstrap

This commit is contained in:
Peter Robinson 2022-01-19 15:19:26 +00:00
parent e3218f0188
commit 0602436823
2 changed files with 64 additions and 3 deletions

View File

@ -1,11 +1,32 @@
%bcond_with compat
# For cases where the soname requires a bump we need to define with_compat,
# update the package into the side-tag, update RPM (rpm-sign) into side-tag,
# _then_ undefine with_compat and rebuild the package into the side-tag. This
# is required to workaround the chiken-egg situation with the rpm-sign update.
# The compat pkg must not make the compose, it's only a buildrequirement for
# rpm-sign in a soname bump.
%if ! %{with compat}
%undefine with_compat
%endif
%if %{with compat}
%global compat_soversion 2
%endif
Name: ima-evm-utils
Version: 1.4
Release: 1%{?dist}
Release: 2%{?dist}
Summary: IMA/EVM support utilities
License: GPLv2
Url: http://linux-ima.sourceforge.net/
Source: http://sourceforge.net/projects/linux-ima/files/ima-evm-utils/%{name}-%{version}.tar.gz
# compat source and patches
Source10: ima-evm-utils-1.3.2.tar.gz
Patch10: 0001-evmctl-fix-memory-leak-in-get_password.patch
Patch11: 0001-libimaevm-make-SHA-256-the-default-hash-algorithm.patch
BuildRequires: asciidoc
BuildRequires: autoconf
BuildRequires: automake
@ -17,7 +38,6 @@ BuildRequires: make
BuildRequires: openssl-devel
BuildRequires: tpm2-tss-devel
%description
The Trusted Computing Group(TCG) run-time Integrity Measurement Architecture
(IMA) maintains a list of hash values of executables and other sensitive
@ -33,18 +53,49 @@ Requires: %{name} = %{version}-%{release}
%description devel
This package provides the header files for %{name}
%if %{with compat}
%package -n %{name}%{compat_soversion}
Summary: Compatibility package of %{name}
%description -n %{name}%{compat_soversion}
This package provides the libimaevm.so.%{compat_soversion} relative to %{name}-1.3
%endif
%prep
%autosetup -p1
%setup -q
%if %{with compat}
mkdir compat/
tar -zxf %{SOURCE10} --strip-components=1 -C compat/
cd compat/
%patch10 -p1
%patch11 -p1
%endif
%build
autoreconf -vif
%configure --disable-static
%make_build
%if %{with compat}
pushd compat/
autoreconf -vif
%configure --disable-static
%make_build
popd
%endif
%install
%make_install
find %{buildroot} -type f -name "*.la" -delete
%if %{with compat}
pushd compat/src/.libs/
install -p libimaevm.so.%{compat_soversion}.0.0 %{buildroot}%{_libdir}/libimaevm.so.%{compat_soversion}.0.0
ln -s -f %{buildroot}%{_libdir}/libimaevm.so.%{compat_soversion}.0.0 %{buildroot}%{_libdir}/libimaevm.so.%{compat_soversion}
popd
%endif
%ldconfig_scriptlets
%files
@ -60,7 +111,16 @@ find %{buildroot} -type f -name "*.la" -delete
%{_includedir}/imaevm.h
%{_libdir}/libimaevm.so
%if %{with compat}
%files -n %{name}%{compat_soversion}
%{_libdir}/libimaevm.so.%{compat_soversion}
%{_libdir}/libimaevm.so.%{compat_soversion}.0.0
%endif
%changelog
* Tue Jan 18 2022 Peter Robinson <pbrobinson@fedoraproject.org> - 1.4-2
- Add compat bootstrap sub package
* Mon Nov 08 2021 Peter Robinson <pbrobinson@fedoraproject.org> - 1.4-1
- Update to 1.4

View File

@ -1 +1,2 @@
SHA512 (ima-evm-utils-1.3.2.tar.gz) = af96935f953fbec8cdd40ba1a24001fae916633df03f9dee1e96775baec0ffea21a7a13798b3e3c3f375fd493a65fe65b5357887890b46cac0c4dcca5a5b79db
SHA512 (ima-evm-utils-1.4.tar.gz) = 2fdf41470d88608162a084c4877ba17d531941b744bcb44dd4913e48ab2c2d131e0af3e3ead74c18748a5d46aced51213ebd7c13a5ee19050c28d54a26c011a3