Remove compat-libffi3.1 subpackage to complete SONAME transition.

Related: #1891914
This commit is contained in:
Carlos O'Donell 2021-08-26 00:24:11 -04:00
parent c8b4154da1
commit 0b2669f26f
1 changed files with 5 additions and 66 deletions

View File

@ -1,12 +1,10 @@
%bcond_with bootstrap
# Default: Build compat-libffi3.1.
%bcond_without compat
%global multilib_arches %{ix86} x86_64
Name: libffi
Version: 3.4.2
Release: 6%{?dist}
Release: 7%{?dist}
Summary: A portable foreign function interface library
License: MIT
URL: http://sourceware.org/libffi
@ -15,16 +13,6 @@ Source0: https://github.com/libffi/libffi/releases/download/v3.4.2/libffi-3.4.2.
Source1: ffi-multilib.h
Source2: ffitarget-multilib.h
%if %{with compat}
# Sources and patches required for compat-libffi3.1:
Source3: ftp://sourceware.org/pub/libffi/libffi-3.1.tar.gz
Patch0: libffi-3.1-fix-include-path.patch
Patch1: libffi-3.1-fix-exec-stack.patch
Patch2: libffi-aarch64-rhbz1174037.patch
Patch3: libffi-3.1-aarch64-fix-exec-stack.patch
Patch4: libffi-3.1-libffi_tmpdir.patch
%endif
BuildRequires: make
BuildRequires: gcc
%if %{without bootstrap}
@ -59,16 +47,6 @@ layer of a fully featured foreign function interface. A layer must
exist above `libffi' that handles type conversions for values passed
between the two languages.
%if %{with compat}
%package -n compat-libffi3.1
Summary: Compatibility package for libffi transition from 3.1 to 3.4.2.
%description -n compat-libffi3.1
The compat-libffi3.1 package contains the libffi 3.1 runtime library
to support the library SONAME transition from 3.1 to 3.4.2. This pacakge
will eventually be removed once the transition is complete.
%endif
%package devel
Summary: Development files for %{name}
Requires: %{name} = %{version}-%{release}
@ -86,15 +64,6 @@ developing applications that use %{name}.
%setup -q -b 3
%endif
%if %{with compat}
cd %{_builddir}/libffi-3.1
%patch0 -p1 -b .fixpath
%patch1 -p1 -b .execstack
%patch2 -p1 -b .aarch64
%patch3 -p1 -b .aarch64execstack
%patch4 -p1 -b .libffitmpdir
%endif
%build
# For now we disable the static templates to avoid ghc and
# gobject-introspection failures:
@ -104,40 +73,14 @@ cd %{_builddir}/libffi-3.1
%configure --disable-static --disable-exec-static-tramp
%make_build
%if %{with compat}
cd %{_builddir}/libffi-3.1
%configure --disable-static --includedir=%{_includedir}/libffi3.1
%make_build
%endif
%check
%if %{without bootstrap}
%make_build check
%if %{with compat}
cd %{_builddir}/libffi-3.1
%make_build check
%endif
%endif
%install
%make_install
%if %{with compat}
# Install compat-libffi-3.1 files.
rm -rf $RPM_BUILD_ROOT/libffi-3.1
mkdir -p $RPM_BUILD_ROOT/libffi-3.1
cd %{_builddir}/libffi-3.1
make install DESTDIR=$RPM_BUILD_ROOT/libffi-3.1
# We only need the shared libraries, license, and README.md.
mv $RPM_BUILD_ROOT/libffi-3.1/%{_libdir}/libffi.so.6 $RPM_BUILD_ROOT/%{_libdir}
mv $RPM_BUILD_ROOT/libffi-3.1/%{_libdir}/libffi.so.6.0.2 $RPM_BUILD_ROOT/%{_libdir}
mkdir -p $RPM_BUILD_ROOT/%{_docdir}/libffi-3.1
cp %{_builddir}/libffi-3.1/README $RPM_BUILD_ROOT/%{_docdir}/libffi-3.1/README
mkdir -p $RPM_BUILD_ROOT/%{_datadir}/licenses/libffi-3.1
cp %{_builddir}/libffi-3.1/LICENSE $RPM_BUILD_ROOT/%{_datadir}/licenses/libffi-3.1/LICENSE
rm -rf $RPM_BUILD_ROOT/libffi-3.1
%endif
find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';'
rm -f $RPM_BUILD_ROOT%{_infodir}/dir
@ -167,14 +110,6 @@ install -m644 %{SOURCE2} $RPM_BUILD_ROOT%{_includedir}/ffitarget.h
%{_libdir}/libffi.so.8
%{_libdir}/libffi.so.8.1.0
%if %{with compat}
%files -n compat-libffi3.1
%license %{_datadir}/licenses/libffi-3.1/LICENSE
%doc %{_docdir}/libffi-3.1/README
%{_libdir}/libffi.so.6
%{_libdir}/libffi.so.6.0.2
%endif
%files devel
%{_libdir}/pkgconfig/*.pc
%{_includedir}/ffi*.h
@ -183,6 +118,10 @@ install -m644 %{SOURCE2} $RPM_BUILD_ROOT%{_includedir}/ffitarget.h
%{_infodir}/libffi.info.*
%changelog
* Thu Aug 26 2021 Carlos O'Donell <codonell@redhat.com> - 3.4.2-7
- Remove compat-libffi3.1 subpackage to complete SONAME transition.
Related: rhbz#1891914
* Wed Aug 18 2021 Carlos O'Donell <carlos@redhat.com> - 3.4.2-6
- Rebuilt for libffi 3.4.2 SONAME transition. Related: rhbz#1891914