ffcall/ffcall.spec
2017-07-26 08:19:54 +00:00

165 lines
6.0 KiB
RPMSpec

# Only a static library is provided, so no debug information can be extracted.
%global debug_package %{nil}
# This package uses assembly to do its work. This is the entire list of
# supported architectures understood by RPM, even those not currently supported
# by Fedora. RPM hasn't heard about line continuations, hence the mess.
%global ffcall_arches %{ix86} x86_64 amd64 aarch64 %{alpha} %{arm} parisc hppa1.0 hppa1.1 hppa1.2 hppa2.0 ia64 m68k %{mips32} %{mips64} ppc ppc8260 ppc8560 ppc32dy4 ppciseries ppcpseries %{power64} s390 s390x %{sparc}
Name: ffcall
Version: 1.13
Release: 4%{?dist}
Summary: Libraries for foreign function call interfaces
License: GPLv2+
URL: http://www.gnu.org/software/libffcall/
Source0: https://ftp.gnu.org/gnu/libffcall/lib%{name}-%{version}.tar.gz
BuildRequires: gcc
BuildRequires: gnulib-devel
Provides: %{name}-static = %{version}-%{release}
ExclusiveArch: %{ffcall_arches}
%description
This is a collection of four libraries which can be used to build
foreign function call interfaces in embedded interpreters. The four
packages are:
- avcall: calling C functions with variable arguments
- vacall: C functions accepting variable argument prototypes
- trampoline: closures as first-class C functions
- callback: closures with variable arguments as first-class C functions
(a reentrant combination of vacall and trampoline)
%prep
%setup -q -n lib%{name}-%{version}
%build
%configure
# Build the actual library
make # %{?_smp_mflags}
%install
mkdir -p $RPM_BUILD_ROOT%{_libdir}
mkdir -p $RPM_BUILD_ROOT%{_mandir}
make install DESTDIR=$RPM_BUILD_ROOT
rm -fr $RPM_BUILD_ROOT%{_datadir}/html
rm -f $RPM_BUILD_ROOT%{_libdir}/*.la
# Advertise supported architectures
mkdir -p $RPM_BUILD_ROOT%{_rpmconfigdir}/macros.d
cat > $RPM_BUILD_ROOT%{_rpmconfigdir}/macros.d/macros.%{name} << EOF
# arches that ffcall supports
%%ffcall_arches %{ffcall_arches}
EOF
# Fix man pages with overly generic names (bz 800360)
pushd $RPM_BUILD_ROOT%{_mandir}/man3
for page in *; do
mv $page %{name}-$page
done
popd
%files
%license COPYING
%doc README NEWS
%doc avcall/avcall.html
%doc callback/callback.html
%doc callback/trampoline_r/trampoline_r.html
%doc trampoline/trampoline.html
%doc vacall/vacall.html
%{_libdir}/*.a
%{_includedir}/*
%{_mandir}/man*/*
%{_rpmconfigdir}/macros.d/macros.%{name}
%changelog
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.13-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Mon Jul 3 2017 Jerry James <loganjerry@gmail.com> - 1.13-3
- Update to the final 1.13 release
- Drop patches and workarounds for problems fixed upstream
* Fri Feb 24 2017 Jerry James <loganjerry@gmail.com> - 1.13-2
- Fix missing symbols in the i386 build
* Fri Feb 24 2017 Jerry James <loganjerry@gmail.com> - 1.13-1
- New upstream release
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.12-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.12-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Tue Sep 29 2015 Jerry James <loganjerry@gmail.com> - 1.12-1
- New upstream release
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.10-18.20120424cvs
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Fri Feb 13 2015 Jerry James <loganjerry@gmail.com> - 1.10-17.20120424cvs
- Use license macro
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.10-16.20120424cvs
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.10-15.20120424cvs
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Mon Feb 3 2014 Jerry James <loganjerry@gmail.com> - 1.10-14.20120424cvs
- Update location of rpm macro file for rpm >= 4.11
* Fri Sep 6 2013 Jerry James <loganjerry@gmail.com> - 1.10-13.20120424cvs
- Update -arm patch to really use the EABI and hopefully fix clisp
* Wed Sep 4 2013 Jerry James <loganjerry@gmail.com> - 1.10-12.20120424cvs
- Add -arm patch to fix clisp build failure
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.10-11.20120424cvs
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Wed Mar 27 2013 Jerry James <loganjerry@gmail.com> - 1.10-10.20120424cvs
- Update to CVS 20120424
- List all architectures supported by this package (bz 925335)
- Rename man pages to avoid conflicts (bz 800360)
- Add Provides: ffcall-static
* Wed Feb 13 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.10-9.20100903cvs
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.10-8.20100903cvs
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Tue Jan 10 2012 Jerry James <loganjerry@gmail.com> - 1.10-7.20100903cvs
- Clean out prebuilt object files
- Add trampoline patch to force use of mmap() to get executable memory
* Mon Jan 9 2012 Jerry James <loganjerry@gmail.com> - 1.10-6.20100903cvs
- Update to CVS 20100903
- Minor spec file cleanups
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.10-5.20080704cvs.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.10-4.20080704cvs.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
* Tue Feb 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.10-3.20080704cvs.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
* Wed Dec 10 2008 Jochen Schmitt <Jochen herr-schmitt de> - 1.10-2.20080704cvs.1
- Fix -FPIC issue (BZ #475112)
* Fri Jul 4 2008 Gerard Milmeister <gemi@bluewin.ch> - 1.10-2.20080704cvs
- update to cvs 20080704
- support for ppc64
* Mon Feb 25 2008 Gerard Milmeister <gemi@bluewin.ch> - 1.10-1
- first Fedora release