|
|
15e5a28 |
Name: libffi
|
|
|
8ab5dae |
Version: 3.0.5
|
|
|
15e5a28 |
Release: 1%{?dist}
|
|
|
15e5a28 |
Summary: A portable foreign function interface library
|
|
|
15e5a28 |
|
|
|
15e5a28 |
Group: System Environment/Libraries
|
|
|
15e5a28 |
License: BSD
|
|
|
15e5a28 |
URL: http://sourceware.org/libffi
|
|
|
15e5a28 |
Source0: http://sourceware.org/libffi/libffi-%{version}.tar.gz
|
|
|
15e5a28 |
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
|
|
15e5a28 |
|
|
|
15e5a28 |
%description
|
|
|
15e5a28 |
Compilers for high level languages generate code that follow certain
|
|
|
15e5a28 |
conventions. These conventions are necessary, in part, for separate
|
|
|
15e5a28 |
compilation to work. One such convention is the "calling convention".
|
|
|
15e5a28 |
The calling convention is a set of assumptions made by the compiler
|
|
|
15e5a28 |
about where function arguments will be found on entry to a function. A
|
|
|
15e5a28 |
calling convention also specifies where the return value for a function
|
|
|
15e5a28 |
is found.
|
|
|
15e5a28 |
|
|
|
15e5a28 |
Some programs may not know at the time of compilation what arguments
|
|
|
15e5a28 |
are to be passed to a function. For instance, an interpreter may be
|
|
|
15e5a28 |
told at run-time about the number and types of arguments used to call a
|
|
|
15e5a28 |
given function. `Libffi' can be used in such programs to provide a
|
|
|
15e5a28 |
bridge from the interpreter program to compiled code.
|
|
|
15e5a28 |
|
|
|
15e5a28 |
The `libffi' library provides a portable, high level programming
|
|
|
15e5a28 |
interface to various calling conventions. This allows a programmer to
|
|
|
15e5a28 |
call any function specified by a call interface description at run time.
|
|
|
15e5a28 |
|
|
|
15e5a28 |
FFI stands for Foreign Function Interface. A foreign function
|
|
|
15e5a28 |
interface is the popular name for the interface that allows code
|
|
|
15e5a28 |
written in one language to call code written in another language. The
|
|
|
15e5a28 |
`libffi' library really only provides the lowest, machine dependent
|
|
|
15e5a28 |
layer of a fully featured foreign function interface. A layer must
|
|
|
15e5a28 |
exist above `libffi' that handles type conversions for values passed
|
|
|
15e5a28 |
between the two languages.
|
|
|
15e5a28 |
|
|
|
15e5a28 |
|
|
|
15e5a28 |
%package devel
|
|
|
15e5a28 |
Summary: Development files for %{name}
|
|
|
15e5a28 |
Group: Development/Libraries
|
|
|
15e5a28 |
Requires: %{name} = %{version}-%{release}
|
|
|
15e5a28 |
Requires: pkgconfig
|
|
|
15e5a28 |
Requires(post): /sbin/install-info
|
|
|
15e5a28 |
Requires(preun): /sbin/install-info
|
|
|
15e5a28 |
|
|
|
15e5a28 |
%description devel
|
|
|
15e5a28 |
The %{name}-devel package contains libraries and header files for
|
|
|
15e5a28 |
developing applications that use %{name}.
|
|
|
15e5a28 |
|
|
|
15e5a28 |
|
|
|
15e5a28 |
%prep
|
|
|
15e5a28 |
%setup -q
|
|
|
15e5a28 |
|
|
|
15e5a28 |
|
|
|
15e5a28 |
%build
|
|
|
15e5a28 |
%configure --disable-static
|
|
|
15e5a28 |
make %{?_smp_mflags}
|
|
|
15e5a28 |
|
|
|
15e5a28 |
|
|
|
15e5a28 |
%install
|
|
|
15e5a28 |
rm -rf $RPM_BUILD_ROOT
|
|
|
15e5a28 |
make install DESTDIR=$RPM_BUILD_ROOT
|
|
|
15e5a28 |
find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';'
|
|
|
15e5a28 |
rm -f $RPM_BUILD_ROOT%{_infodir}/dir
|
|
|
15e5a28 |
|
|
|
15e5a28 |
|
|
|
15e5a28 |
%clean
|
|
|
15e5a28 |
rm -rf $RPM_BUILD_ROOT
|
|
|
15e5a28 |
|
|
|
15e5a28 |
|
|
|
15e5a28 |
%post -p /sbin/ldconfig
|
|
|
15e5a28 |
|
|
|
15e5a28 |
%post devel
|
|
|
15e5a28 |
/sbin/install-info --info-dir=%{_infodir} %{_infodir}/libffi.info.gz
|
|
|
15e5a28 |
|
|
|
15e5a28 |
%preun devel
|
|
|
15e5a28 |
if [ $1 = 0 ] ;then
|
|
|
15e5a28 |
/sbin/install-info --delete --info-dir=%{_infodir} %{_infodir}/libffi.info.gz
|
|
|
15e5a28 |
fi
|
|
|
15e5a28 |
|
|
|
15e5a28 |
%postun -p /sbin/ldconfig
|
|
|
15e5a28 |
|
|
|
15e5a28 |
|
|
|
15e5a28 |
%files
|
|
|
15e5a28 |
%defattr(-,root,root,-)
|
|
|
15e5a28 |
%doc LICENSE README
|
|
|
15e5a28 |
%{_libdir}/*.so.*
|
|
|
15e5a28 |
|
|
|
15e5a28 |
%files devel
|
|
|
15e5a28 |
%defattr(-,root,root,-)
|
|
|
15e5a28 |
%{_libdir}/pkgconfig/*.pc
|
|
|
15e5a28 |
%{_libdir}/%{name}-%{version}
|
|
|
15e5a28 |
%{_libdir}/*.so
|
|
|
15e5a28 |
%{_mandir}/man3/*.gz
|
|
|
15e5a28 |
%{_infodir}/libffi.info.gz
|
|
|
15e5a28 |
|
|
|
15e5a28 |
%changelog
|
|
|
8ab5dae |
* Tue Jul 08 2008 Anthony Green <green@redhat.com> 3.0.5-1
|
|
|
8ab5dae |
- Upgrade to 3.0.5
|
|
|
8ab5dae |
|
|
|
15e5a28 |
* Fri Feb 15 2008 Anthony Green <green@redhat.com> 3.0.1-1
|
|
|
15e5a28 |
- Upgrade to 3.0.1
|
|
|
15e5a28 |
|
|
|
15e5a28 |
* Fri Feb 15 2008 Anthony Green <green@redhat.com> 2.99.9-1
|
|
|
15e5a28 |
- Upgrade to 2.99.9
|
|
|
15e5a28 |
- Require pkgconfig for the devel package.
|
|
|
15e5a28 |
- Update summary.
|
|
|
15e5a28 |
|
|
|
15e5a28 |
* Fri Feb 15 2008 Anthony Green <green@redhat.com> 2.99.8-1
|
|
|
15e5a28 |
- Upgrade to 2.99.8
|
|
|
15e5a28 |
|
|
|
15e5a28 |
* Thu Feb 14 2008 Anthony Green <green@redhat.com> 2.99.7-1
|
|
|
15e5a28 |
- Upgrade to 2.99.7
|
|
|
15e5a28 |
|
|
|
15e5a28 |
* Thu Feb 14 2008 Anthony Green <green@redhat.com> 2.99.6-1
|
|
|
15e5a28 |
- Upgrade to 2.99.6
|
|
|
15e5a28 |
|
|
|
15e5a28 |
* Thu Feb 14 2008 Anthony Green <green@redhat.com> 2.99.4-1
|
|
|
15e5a28 |
- Upgrade to 2.99.4
|
|
|
15e5a28 |
|
|
|
15e5a28 |
* Thu Feb 14 2008 Anthony Green <green@redhat.com> 2.99.3-1
|
|
|
15e5a28 |
- Upgrade to 2.99.3
|
|
|
15e5a28 |
|
|
|
15e5a28 |
* Thu Feb 14 2008 Anthony Green <green@redhat.com> 2.99.2-1
|
|
|
15e5a28 |
- Created.
|