|
|
bd9b18 |
%global multilib_arches %{ix86} ppc ppc64 s390 s390x x86_64
|
|
|
bd9b18 |
|
|
|
bd9b18 |
Name: libffi
|
|
|
bd9b18 |
Version: 3.0.13
|
|
|
bd9b18 |
Release: 16%{?dist}
|
|
|
bd9b18 |
Summary: A portable foreign function interface library
|
|
|
bd9b18 |
|
|
|
bd9b18 |
Group: System Environment/Libraries
|
|
|
bd9b18 |
License: MIT and Public Domain
|
|
|
bd9b18 |
URL: http://sourceware.org/libffi
|
|
|
bd9b18 |
Source0: ftp://sourceware.org/pub/libffi/libffi-%{version}.tar.gz
|
|
|
bd9b18 |
# part of upstream commit 5feacad4
|
|
|
bd9b18 |
Source1: ffi-multilib.h
|
|
|
bd9b18 |
Source2: ffitarget-multilib.h
|
|
|
bd9b18 |
Patch0: libffi-3.0.13-fix-include-path.patch
|
|
|
bd9b18 |
Patch1: libffi-fix-ppc-tests.patch
|
|
|
bd9b18 |
# part of upstream commit 5feacad4
|
|
|
bd9b18 |
Patch10: libffi-3.0.13-ppc64le-0.patch
|
|
|
bd9b18 |
Patch11: libffi-3.0.13-ppc64le-1.patch
|
|
|
bd9b18 |
Patch12: libffi-3.0.13-ppc64le-2.patch
|
|
|
bd9b18 |
Patch13: libffi-3.0.13-ppc64le-3.patch
|
|
|
bd9b18 |
%ifarch ppc64le
|
|
|
bd9b18 |
BuildRequires: autoconf automake libtool texinfo
|
|
|
bd9b18 |
%endif
|
|
|
bd9b18 |
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
|
|
bd9b18 |
|
|
|
bd9b18 |
%description
|
|
|
bd9b18 |
Compilers for high level languages generate code that follow certain
|
|
|
bd9b18 |
conventions. These conventions are necessary, in part, for separate
|
|
|
bd9b18 |
compilation to work. One such convention is the "calling convention".
|
|
|
bd9b18 |
The calling convention is a set of assumptions made by the compiler
|
|
|
bd9b18 |
about where function arguments will be found on entry to a function. A
|
|
|
bd9b18 |
calling convention also specifies where the return value for a function
|
|
|
bd9b18 |
is found.
|
|
|
bd9b18 |
|
|
|
bd9b18 |
Some programs may not know at the time of compilation what arguments
|
|
|
bd9b18 |
are to be passed to a function. For instance, an interpreter may be
|
|
|
bd9b18 |
told at run-time about the number and types of arguments used to call a
|
|
|
bd9b18 |
given function. `Libffi' can be used in such programs to provide a
|
|
|
bd9b18 |
bridge from the interpreter program to compiled code.
|
|
|
bd9b18 |
|
|
|
bd9b18 |
The `libffi' library provides a portable, high level programming
|
|
|
bd9b18 |
interface to various calling conventions. This allows a programmer to
|
|
|
bd9b18 |
call any function specified by a call interface description at run time.
|
|
|
bd9b18 |
|
|
|
bd9b18 |
FFI stands for Foreign Function Interface. A foreign function
|
|
|
bd9b18 |
interface is the popular name for the interface that allows code
|
|
|
bd9b18 |
written in one language to call code written in another language. The
|
|
|
bd9b18 |
`libffi' library really only provides the lowest, machine dependent
|
|
|
bd9b18 |
layer of a fully featured foreign function interface. A layer must
|
|
|
bd9b18 |
exist above `libffi' that handles type conversions for values passed
|
|
|
bd9b18 |
between the two languages.
|
|
|
bd9b18 |
|
|
|
bd9b18 |
|
|
|
bd9b18 |
%package devel
|
|
|
bd9b18 |
Summary: Development files for %{name}
|
|
|
bd9b18 |
Group: Development/Libraries
|
|
|
bd9b18 |
Requires: %{name} = %{version}-%{release}
|
|
|
bd9b18 |
Requires: pkgconfig
|
|
|
bd9b18 |
Requires(post): /sbin/install-info
|
|
|
bd9b18 |
Requires(preun): /sbin/install-info
|
|
|
bd9b18 |
|
|
|
bd9b18 |
%description devel
|
|
|
bd9b18 |
The %{name}-devel package contains libraries and header files for
|
|
|
bd9b18 |
developing applications that use %{name}.
|
|
|
bd9b18 |
|
|
|
bd9b18 |
|
|
|
bd9b18 |
%prep
|
|
|
bd9b18 |
%setup -q
|
|
|
bd9b18 |
%patch0 -p1 -b .fixpath
|
|
|
bd9b18 |
%patch1 -p1 -b .fixpath
|
|
|
bd9b18 |
%ifarch ppc64le
|
|
|
bd9b18 |
%patch10 -p1 -b .ppc64le-0
|
|
|
bd9b18 |
%patch11 -p1 -b .ppc64le-1
|
|
|
bd9b18 |
%patch12 -p1 -b .ppc64le-2
|
|
|
bd9b18 |
%patch13 -p1 -b .ppc64le-3
|
|
|
bd9b18 |
|
|
|
bd9b18 |
autoreconf -vif
|
|
|
bd9b18 |
%endif
|
|
|
bd9b18 |
|
|
|
bd9b18 |
|
|
|
bd9b18 |
%build
|
|
|
bd9b18 |
CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing" %configure --disable-static
|
|
|
bd9b18 |
make %{?_smp_mflags}
|
|
|
bd9b18 |
|
|
|
bd9b18 |
|
|
|
bd9b18 |
%install
|
|
|
bd9b18 |
rm -rf $RPM_BUILD_ROOT
|
|
|
bd9b18 |
make install DESTDIR=$RPM_BUILD_ROOT
|
|
|
bd9b18 |
find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';'
|
|
|
bd9b18 |
rm -f $RPM_BUILD_ROOT%{_infodir}/dir
|
|
|
bd9b18 |
|
|
|
bd9b18 |
# Determine generic arch target name for multilib wrapper
|
|
|
bd9b18 |
basearch=%{_arch}
|
|
|
bd9b18 |
%ifarch %{ix86}
|
|
|
bd9b18 |
basearch=i386
|
|
|
bd9b18 |
%endif
|
|
|
bd9b18 |
|
|
|
bd9b18 |
%ifarch %{multilib_arches}
|
|
|
bd9b18 |
# Do header file switcheroo to avoid file conflicts on systems where you
|
|
|
bd9b18 |
# can have both a 32- and 64-bit version of the library, and they each need
|
|
|
bd9b18 |
# their own correct-but-different versions of the headers to be usable.
|
|
|
bd9b18 |
for i in ffi ffitarget; do
|
|
|
bd9b18 |
mv $RPM_BUILD_ROOT%{_includedir}/$i.h $RPM_BUILD_ROOT%{_includedir}/$i-${basearch}.h
|
|
|
bd9b18 |
done
|
|
|
bd9b18 |
install -m644 %{SOURCE1} $RPM_BUILD_ROOT%{_includedir}/ffi.h
|
|
|
bd9b18 |
install -m644 %{SOURCE2} $RPM_BUILD_ROOT%{_includedir}/ffitarget.h
|
|
|
bd9b18 |
%endif
|
|
|
bd9b18 |
|
|
|
bd9b18 |
|
|
|
bd9b18 |
%clean
|
|
|
bd9b18 |
rm -rf $RPM_BUILD_ROOT
|
|
|
bd9b18 |
|
|
|
bd9b18 |
|
|
|
bd9b18 |
%post -p /sbin/ldconfig
|
|
|
bd9b18 |
|
|
|
bd9b18 |
%post devel
|
|
|
bd9b18 |
/sbin/install-info --info-dir=%{_infodir} %{_infodir}/libffi.info.gz
|
|
|
bd9b18 |
|
|
|
bd9b18 |
%preun devel
|
|
|
bd9b18 |
if [ $1 = 0 ] ;then
|
|
|
bd9b18 |
/sbin/install-info --delete --info-dir=%{_infodir} %{_infodir}/libffi.info.gz
|
|
|
bd9b18 |
fi
|
|
|
bd9b18 |
|
|
|
bd9b18 |
%postun -p /sbin/ldconfig
|
|
|
bd9b18 |
|
|
|
bd9b18 |
|
|
|
bd9b18 |
%files
|
|
|
bd9b18 |
%defattr(-,root,root,-)
|
|
|
bd9b18 |
%doc LICENSE README
|
|
|
bd9b18 |
%{_libdir}/*.so.*
|
|
|
bd9b18 |
|
|
|
bd9b18 |
%files devel
|
|
|
bd9b18 |
%defattr(-,root,root,-)
|
|
|
bd9b18 |
%{_libdir}/pkgconfig/*.pc
|
|
|
bd9b18 |
%{_includedir}/ffi*.h
|
|
|
bd9b18 |
%{_libdir}/*.so
|
|
|
bd9b18 |
%{_mandir}/man3/*.gz
|
|
|
bd9b18 |
%{_infodir}/libffi.info.gz
|
|
|
bd9b18 |
|
|
|
bd9b18 |
%changelog
|
|
|
bd9b18 |
* Tue Sep 02 2014 Dan HorĂ¡k <dhorak@redhat.com> - 3.0.13-16
|
|
|
bd9b18 |
- Drop ppc64le from the multilib list
|
|
|
bd9b18 |
- Use additional BR: only in ppc64le build
|
|
|
bd9b18 |
- Resolves: RHBZ1116945
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Tue Aug 26 2014 Andrew Haley <aph@redhat.com> - 3.0.13-15
|
|
|
bd9b18 |
- Add requires for libtool and texinfo
|
|
|
bd9b18 |
- Resolves: RHBZ1116945
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Tue Aug 26 2014 Andrew Haley <aph@redhat.com> - 3.0.13-14
|
|
|
bd9b18 |
- Add requires for automake
|
|
|
bd9b18 |
- Resolves: RHBZ1116945
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Tue Aug 26 2014 Andrew Haley <aph@redhat.com> - 3.0.13-13
|
|
|
bd9b18 |
- Add requires for autoconf
|
|
|
bd9b18 |
- Resolves: RHBZ1116945
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Tue Aug 26 2014 Andrew Haley <aph@redhat.com> - 3.0.13-12
|
|
|
bd9b18 |
- Merge from private-rhel-7.0-ppc64le branch
|
|
|
bd9b18 |
- Resolves: RHBZ1116945
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Fri Jan 24 2014 Daniel Mach <dmach@redhat.com> - 3.0.13-11
|
|
|
bd9b18 |
- Mass rebuild 2014-01-24
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Fri Dec 27 2013 Daniel Mach <dmach@redhat.com> - 3.0.13-10
|
|
|
bd9b18 |
- Mass rebuild 2013-12-27
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Wed Dec 18 2013 Deepak Bhole <dbhole@redhat.com> - 3.0.13-9
|
|
|
bd9b18 |
- Added -fno-strict-aliasing (pointed out by rpmdiff)
|
|
|
bd9b18 |
- Fixes RHBZ 1006261
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Fri Nov 15 2013 Jon VanAlten <jon.vanalten@redhat.com> - 3.0.13-8
|
|
|
bd9b18 |
- Patch test suite to fix errors on ppc64
|
|
|
bd9b18 |
- Fixes RHBZ 1006261
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Thu Aug 22 2013 Deepak Bhole <dbhole@redhat.com> - 3.0.13-7
|
|
|
bd9b18 |
- Removed temporarily introduced compat package for OpenJDk6 bootstrap
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Wed Aug 21 2013 Deepak Bhole <dbhole@redhat.com> - 3.0.13-6
|
|
|
bd9b18 |
- Temporarily build with a .so.5 compat package to allow OpenJDK6 bootstrap
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Mon Jul 15 2013 Jon VanAlten <jon.vanalten@redhat.com> - 3.0.13-5
|
|
|
bd9b18 |
- Correct spec license
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Tue May 28 2013 Tom Callaway <spot@fedoraproject.org> - 3.0.13-4
|
|
|
bd9b18 |
- fix typos in wrapper headers
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Mon May 27 2013 Tom Callaway <spot@fedoraproject.org> - 3.0.13-3
|
|
|
bd9b18 |
- make header files multilib safe
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Sat May 25 2013 Tom Callaway <spot@fedoraproject.org> - 3.0.13-2
|
|
|
bd9b18 |
- fix incorrect header pathing (and .pc file)
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Wed Mar 20 2013 Anthony Green <green@redhat.com> - 3.0.13-1
|
|
|
bd9b18 |
- update to 3.0.13
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.0.11-2
|
|
|
bd9b18 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Mon Jan 14 2013 Dennis Gilmore <dennis@ausil.us> - 3.0.11-1
|
|
|
bd9b18 |
- update to 3.0.11
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Fri Nov 02 2012 Deepak Bhole <dbhole@redhat.com> - 3.0.10-4
|
|
|
bd9b18 |
- Fixed source location
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Fri Aug 10 2012 Dennis Gilmore <dennis@ausil.us> - 3.0.10-3
|
|
|
bd9b18 |
- drop back to 3.0.10, 3.0.11 was never pushed anywhere as the soname bump broke buildroots
|
|
|
bd9b18 |
- as 3.0.11 never went out no epoch needed.
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.0.11-2
|
|
|
bd9b18 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Fri Apr 13 2012 Anthony Green <green@redhat.com> - 3.0.11-1
|
|
|
bd9b18 |
- Upgrade to 3.0.11.
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.0.10-2
|
|
|
bd9b18 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Tue Aug 23 2011 Anthony Green <green@redhat.com> - 3.0.10-1
|
|
|
bd9b18 |
- Upgrade to 3.0.10.
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Fri Mar 18 2011 Dan HorĂ¡k <dan[at]danny.cz> - 3.0.9-3
|
|
|
bd9b18 |
- added patch for being careful when defining relatively generic symbols
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Mon Feb 07 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.0.9-2
|
|
|
bd9b18 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Tue Dec 29 2009 Anthony Green <green@redhat.com> - 3.0.9-1
|
|
|
bd9b18 |
- Upgrade
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.0.5-3
|
|
|
bd9b18 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.0.5-2
|
|
|
bd9b18 |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Tue Jul 08 2008 Anthony Green <green@redhat.com> 3.0.5-1
|
|
|
bd9b18 |
- Upgrade to 3.0.5
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Fri Feb 15 2008 Anthony Green <green@redhat.com> 3.0.1-1
|
|
|
bd9b18 |
- Upgrade to 3.0.1
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Fri Feb 15 2008 Anthony Green <green@redhat.com> 2.99.9-1
|
|
|
bd9b18 |
- Upgrade to 2.99.9
|
|
|
bd9b18 |
- Require pkgconfig for the devel package.
|
|
|
bd9b18 |
- Update summary.
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Fri Feb 15 2008 Anthony Green <green@redhat.com> 2.99.8-1
|
|
|
bd9b18 |
- Upgrade to 2.99.8
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Thu Feb 14 2008 Anthony Green <green@redhat.com> 2.99.7-1
|
|
|
bd9b18 |
- Upgrade to 2.99.7
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Thu Feb 14 2008 Anthony Green <green@redhat.com> 2.99.6-1
|
|
|
bd9b18 |
- Upgrade to 2.99.6
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Thu Feb 14 2008 Anthony Green <green@redhat.com> 2.99.4-1
|
|
|
bd9b18 |
- Upgrade to 2.99.4
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Thu Feb 14 2008 Anthony Green <green@redhat.com> 2.99.3-1
|
|
|
bd9b18 |
- Upgrade to 2.99.3
|
|
|
bd9b18 |
|
|
|
bd9b18 |
* Thu Feb 14 2008 Anthony Green <green@redhat.com> 2.99.2-1
|
|
|
bd9b18 |
- Created.
|