2d8e2ca
Name:           ffcall
b6ce996
Version:        2.2
38004ed
Release:        4%{?dist}
2d8e2ca
Summary:        Libraries for foreign function call interfaces
2d8e2ca
2d8e2ca
License:        GPLv2+
173d1eb
URL:            http://www.gnu.org/software/libffcall/
964835f
Source0:        https://ftp.gnu.org/gnu/libffcall/lib%{name}-%{version}.tar.gz
fe11b54
Patch0:         configure.patch
Jerry James dcc9b78
daaeacc
BuildRequires:  gcc
943ac78
BuildRequires:  gnulib-devel
8ce7e0e
BuildRequires:  make
daaeacc
2d8e2ca
%description
2d8e2ca
This is a collection of four libraries which can be used to build
173d1eb
foreign function call interfaces in embedded interpreters.  The four
173d1eb
packages are:
173d1eb
 - avcall: calling C functions with variable arguments
173d1eb
 - vacall: C functions accepting variable argument prototypes
173d1eb
 - trampoline: closures as first-class C functions
173d1eb
 - callback: closures with variable arguments as first-class C functions
173d1eb
   (a reentrant combination of vacall and trampoline)
2d8e2ca
60e21c3
%package devel
60e21c3
Summary:        Files needed to develop programs with %{name}
60e21c3
Requires:       %{name}%{?_isa} = %{version}-%{release}
60e21c3
60e21c3
%description devel
60e21c3
Files needed to develop programs with %{name}.
60e21c3
60e21c3
%package static
60e21c3
Summary:        Static libraries for foreign function call interfaces
60e21c3
Requires:       %{name}-devel%{?_isa} = %{version}-%{release}
60e21c3
60e21c3
%description static
60e21c3
Static libraries for foreign function call interfaces.
60e21c3
2d8e2ca
2d8e2ca
%prep
964835f
%setup -q -n lib%{name}-%{version}
fe11b54
%patch0 -p1
2d8e2ca
2d8e2ca
%build
63dba4b
%configure CFLAGS="%{optflags} -fno-strict-aliasing"
943ac78
943ac78
# Build the actual library
2d8e2ca
make # %{?_smp_mflags}
2d8e2ca
2d8e2ca
%install
2d8e2ca
mkdir -p $RPM_BUILD_ROOT%{_libdir}
2d8e2ca
mkdir -p $RPM_BUILD_ROOT%{_mandir}
8ce7e0e
%make_install
2d8e2ca
rm -fr $RPM_BUILD_ROOT%{_datadir}/html
2d8e2ca
rm -f $RPM_BUILD_ROOT%{_libdir}/*.la
Jerry James dcc9b78
60e21c3
# Fix permissions
60e21c3
chmod a+x $RPM_BUILD_ROOT%{_libdir}/lib*.so.*
60e21c3
Jerry James dcc9b78
# Advertise supported architectures
Jerry James 0a62d78
mkdir -p $RPM_BUILD_ROOT%{_rpmconfigdir}/macros.d
Jerry James 0a62d78
cat > $RPM_BUILD_ROOT%{_rpmconfigdir}/macros.d/macros.%{name} << EOF
Jerry James dcc9b78
# arches that ffcall supports
Jerry James dcc9b78
%%ffcall_arches %{ffcall_arches}
Jerry James dcc9b78
EOF
Jerry James dcc9b78
Jerry James dcc9b78
# Fix man pages with overly generic names (bz 800360)
964835f
pushd $RPM_BUILD_ROOT%{_mandir}/man3
Jerry James dcc9b78
for page in *; do
Jerry James dcc9b78
  mv $page %{name}-$page
Jerry James dcc9b78
done
964835f
popd
2d8e2ca
60e21c3
2d8e2ca
%files
Jerry James 03f330a
%license COPYING
Jerry James 03f330a
%doc README NEWS
60e21c3
%{_libdir}/lib*.so.*
60e21c3
60e21c3
%files devel
2d8e2ca
%doc avcall/avcall.html
2d8e2ca
%doc callback/callback.html
2d8e2ca
%doc callback/trampoline_r/trampoline_r.html
2d8e2ca
%doc trampoline/trampoline.html
2d8e2ca
%doc vacall/vacall.html
2d8e2ca
%{_includedir}/*
60e21c3
%{_libdir}/lib*.so
2d8e2ca
%{_mandir}/man*/*
Jerry James 0a62d78
%{_rpmconfigdir}/macros.d/macros.%{name}
2d8e2ca
60e21c3
%files static
60e21c3
%{_libdir}/*.a
60e21c3
2d8e2ca
2d8e2ca
%changelog
38004ed
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.2-4
38004ed
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
38004ed
ffd0e1e
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.2-3
ffd0e1e
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
ffd0e1e
fe11b54
* Fri Jan 17 2020 Jeff Law <law@redhat.com> - 2.2-2
fe11b54
- Fix autoconf generated configure tests that are compromised
fe11b54
  by LTO.
fe11b54
b6ce996
* Mon Aug 26 2019 Jerry James <loganjerry@gmail.com> - 2.2-1
b6ce996
- New upstream release
b6ce996
f820755
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.1-4
f820755
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
f820755
d9684e8
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.1-3
d9684e8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
d9684e8
7745656
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.1-2
7745656
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
7745656
63dba4b
* Mon Feb 19 2018 Jerry James <loganjerry@gmail.com> - 2.1-1
63dba4b
- New upstream release
63dba4b
- Drop ExclusiveArch; all Fedora arches supported
63dba4b
69fcf39
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.0-2
69fcf39
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
69fcf39
60e21c3
* Tue Sep 12 2017 Jerry James <loganjerry@gmail.com> - 2.0-1
60e21c3
- New upstream release
60e21c3
- Make -devel and -static subpackages
60e21c3
039c235
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.13-5
039c235
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
039c235
6f56004
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.13-4
6f56004
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
6f56004
964835f
* Mon Jul  3 2017 Jerry James <loganjerry@gmail.com> - 1.13-3
964835f
- Update to the final 1.13 release
964835f
- Drop patches and workarounds for problems fixed upstream
964835f
4733f16
* Fri Feb 24 2017 Jerry James <loganjerry@gmail.com> - 1.13-2
4733f16
- Fix missing symbols in the i386 build
4733f16
943ac78
* Fri Feb 24 2017 Jerry James <loganjerry@gmail.com> - 1.13-1
943ac78
- New upstream release
943ac78
2f111ef
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.12-3
2f111ef
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
2f111ef
dcbf92f
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.12-2
dcbf92f
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
dcbf92f
3bd81cd
* Tue Sep 29 2015 Jerry James <loganjerry@gmail.com> - 1.12-1
3bd81cd
- New upstream release
3bd81cd
012f745
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.10-18.20120424cvs
012f745
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
012f745
Jerry James 03f330a
* Fri Feb 13 2015 Jerry James <loganjerry@gmail.com> - 1.10-17.20120424cvs
Jerry James 03f330a
- Use license macro
Jerry James 03f330a
31fff07
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.10-16.20120424cvs
31fff07
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
31fff07
f58b6e2
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.10-15.20120424cvs
f58b6e2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
f58b6e2
Jerry James 0a62d78
* Mon Feb  3 2014 Jerry James <loganjerry@gmail.com> - 1.10-14.20120424cvs
Jerry James 0a62d78
- Update location of rpm macro file for rpm >= 4.11
Jerry James 0a62d78
Jerry James cbbc846
* Fri Sep  6 2013 Jerry James <loganjerry@gmail.com> - 1.10-13.20120424cvs
Jerry James cbbc846
- Update -arm patch to really use the EABI and hopefully fix clisp
Jerry James cbbc846
Jerry James dd17361
* Wed Sep  4 2013 Jerry James <loganjerry@gmail.com> - 1.10-12.20120424cvs
Jerry James dd17361
- Add -arm patch to fix clisp build failure
Jerry James dd17361
80cc160
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.10-11.20120424cvs
80cc160
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
80cc160
Jerry James dcc9b78
* Wed Mar 27 2013 Jerry James <loganjerry@gmail.com> - 1.10-10.20120424cvs
Jerry James dcc9b78
- Update to CVS 20120424
Jerry James dcc9b78
- List all architectures supported by this package (bz 925335)
Jerry James dcc9b78
- Rename man pages to avoid conflicts (bz 800360)
Jerry James dcc9b78
- Add Provides: ffcall-static
Jerry James dcc9b78
7c6a64b
* Wed Feb 13 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.10-9.20100903cvs
7c6a64b
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
7c6a64b
a9153ae
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.10-8.20100903cvs
a9153ae
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
a9153ae
978f9ba
* Tue Jan 10 2012 Jerry James <loganjerry@gmail.com> - 1.10-7.20100903cvs
978f9ba
- Clean out prebuilt object files
978f9ba
- Add trampoline patch to force use of mmap() to get executable memory
978f9ba
978f9ba
* Mon Jan  9 2012 Jerry James <loganjerry@gmail.com> - 1.10-6.20100903cvs
173d1eb
- Update to CVS 20100903
173d1eb
- Minor spec file cleanups
173d1eb
ab62980
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.10-5.20080704cvs.1
ab62980
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
ab62980
e2e8764
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.10-4.20080704cvs.1
e2e8764
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
e2e8764
bcb6675
* Tue Feb 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.10-3.20080704cvs.1
bcb6675
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
bcb6675
608d45d
* Wed Dec 10 2008 Jochen Schmitt <Jochen herr-schmitt de> - 1.10-2.20080704cvs.1
608d45d
- Fix -FPIC issue (BZ #475112)
608d45d
5d87966
* Fri Jul  4 2008 Gerard Milmeister <gemi@bluewin.ch> - 1.10-2.20080704cvs
5d87966
- update to cvs 20080704
5d87966
- support for ppc64
5d87966
2d8e2ca
* Mon Feb 25 2008 Gerard Milmeister <gemi@bluewin.ch> - 1.10-1
2d8e2ca
- first Fedora release