]>
Commit | Line | Data |
---|---|---|
47cf54c9 | 1 | # |
c645cb66 | 2 | # Conditional build: |
3 | %bcond_without static_libs # don't build static library | |
4 | # | |
e2b3d64a | 5 | Summary: Foreign Function Interface library |
31107309 | 6 | Summary(pl.UTF-8): Biblioteka Foreign Function Interface |
e2b3d64a | 7 | Name: libffi |
e4531639 | 8 | Version: 3.0.6 |
73a73a22 JB |
9 | Release: 1 |
10 | Epoch: 7 | |
11 | License: MIT-like | |
e2b3d64a | 12 | Group: Libraries |
73a73a22 | 13 | Source0: ftp://sourceware.org/pub/libffi/%{name}-%{version}.tar.gz |
e4531639 | 14 | # Source0-md5: 8994a7e0e8baeedf63e3d0d94d75ac68 |
73a73a22 | 15 | Patch0: %{name}-info.patch |
e2b3d64a | 16 | URL: http://sources.redhat.com/libffi/ |
73a73a22 | 17 | BuildRequires: autoconf >= 2.59 |
168543c2 JB |
18 | BuildRequires: automake |
19 | BuildRequires: libtool | |
e2b3d64a MM |
20 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
21 | ||
22 | %description | |
02288106 JB |
23 | The libffi library provides a portable, high level programming |
24 | interface to various calling conventions. This allows a programmer to | |
25 | call any function specified by a call interface description at | |
26 | run-time. | |
27 | ||
28 | Ffi stands for Foreign Function Interface. A foreign function | |
29 | interface is the popular name for the interface that allows code | |
30 | written in one language to call code written in another language. The | |
31 | libffi library really only provides the lowest, machine dependent | |
32 | layer of a fully featured foreign function interface. A layer must | |
33 | exist above libffi that handles type conversions for values passed | |
05d32588 | 34 | between the two languages. |
e2b3d64a | 35 | |
4916b9d6 JR |
36 | %description -l pl.UTF-8 |
37 | Biblioteka libffi dostarcza przenośny, wysokopoziomowy interfejs do | |
38 | różnych konwencji wywołań funkcji. Pozwala to programiście wywołać | |
39 | dowolną funkcję podaną przez opis interfejsu wywołania w czasie | |
40 | działania programu. | |
02288106 | 41 | |
4916b9d6 JR |
42 | FFI to skrót od Foreign Function Interface, czyli interfejsu do obcych |
43 | funkcji. Jest to potoczna nazwa interfejsu pozwalającego programowi | |
44 | napisanemu w jednym języku wywoływać kod napisany w innym języku. | |
45 | Biblioteka libffi daje tylko najniższą, zależną od maszyny warstwę | |
46 | pełnego interfejsu. Potrzebne są wyższe warstwy do obsługi konwersji | |
47 | typów dla wartości przekazywanych pomiędzy różnymi językami. | |
e2b3d64a MM |
48 | |
49 | %package devel | |
02288106 | 50 | Summary: libffi development package |
31107309 | 51 | Summary(pl.UTF-8): libffi - część dla programistów |
02288106 | 52 | Group: Development/Libraries |
73a73a22 | 53 | Requires: %{name} = %{epoch}:%{version}-%{release} |
e2b3d64a MM |
54 | |
55 | %description devel | |
56 | Header files for libffi. | |
57 | ||
4916b9d6 JR |
58 | %description devel -l pl.UTF-8 |
59 | Pliki nagłówkowe do biblioteki libffi. | |
e2b3d64a MM |
60 | |
61 | %package static | |
02288106 | 62 | Summary: libffi static library |
31107309 | 63 | Summary(pl.UTF-8): Statyczna biblioteka libffi |
02288106 | 64 | Group: Development/Libraries |
73a73a22 | 65 | Requires: %{name}-devel = %{epoch}:%{version}-%{release} |
e2b3d64a MM |
66 | |
67 | %description static | |
68 | Static version of libffi. | |
69 | ||
4916b9d6 | 70 | %description static -l pl.UTF-8 |
e2b3d64a MM |
71 | Statyczna wersja biblioteki libffi. |
72 | ||
73 | %prep | |
74 | %setup -q | |
168543c2 | 75 | %patch0 -p1 |
e2b3d64a MM |
76 | |
77 | %build | |
168543c2 JB |
78 | %{__libtoolize} |
79 | %{__aclocal} | |
80 | %{__autoconf} | |
73a73a22 | 81 | %{__autoheader} |
168543c2 | 82 | %{__automake} |
c645cb66 | 83 | %configure \ |
84 | %{!?with_static_libs:--disable-static} | |
168543c2 | 85 | |
e2b3d64a MM |
86 | %{__make} |
87 | ||
88 | %install | |
89 | rm -rf $RPM_BUILD_ROOT | |
e2b3d64a | 90 | |
73a73a22 JB |
91 | %{__make} install \ |
92 | DESTDIR=$RPM_BUILD_ROOT | |
e2b3d64a | 93 | |
e2b3d64a MM |
94 | %clean |
95 | rm -rf $RPM_BUILD_ROOT | |
96 | ||
97 | %post -p /sbin/ldconfig | |
98 | %postun -p /sbin/ldconfig | |
99 | ||
73a73a22 JB |
100 | %post devel -p /sbin/postshell |
101 | -/usr/sbin/fix-info-dir -c %{_infodir} | |
102 | ||
103 | %postun devel -p /sbin/postshell | |
104 | -/usr/sbin/fix-info-dir -c %{_infodir} | |
105 | ||
e2b3d64a MM |
106 | %files |
107 | %defattr(644,root,root,755) | |
73a73a22 JB |
108 | %doc ChangeLog* LICENSE README |
109 | %attr(755,root,root) %{_libdir}/libffi.so.*.*.* | |
110 | %attr(755,root,root) %ghost %{_libdir}/libffi.so.5 | |
e2b3d64a MM |
111 | |
112 | %files devel | |
113 | %defattr(644,root,root,755) | |
114 | %attr(755,root,root) %{_libdir}/libffi.so | |
73a73a22 JB |
115 | %{_libdir}/libffi.la |
116 | %{_libdir}/libffi-%{version} | |
117 | %{_pkgconfigdir}/libffi.pc | |
118 | %{_mandir}/man3/ffi*.3* | |
119 | %{_infodir}/libffi.info* | |
e2b3d64a | 120 | |
c645cb66 | 121 | %if %{with static_libs} |
e2b3d64a MM |
122 | %files static |
123 | %defattr(644,root,root,755) | |
73a73a22 | 124 | %{_libdir}/libffi.a |
c645cb66 | 125 | %endif |