]>
Commit | Line | Data |
---|---|---|
b0e11f7e JB |
1 | # |
2 | # Conditional build: | |
9d04e52a | 3 | %bcond_without altivec # without Altivec support (on ppc) |
b0e11f7e JB |
4 | %bcond_without tests # don't perform "make check" |
5 | # | |
6 | Summary: Library of Optimized Inner Loops | |
a3d7399a | 7 | Summary(pl.UTF-8): Biblioteka zoptymalizowanych wewnętrznych pętli |
b0e11f7e | 8 | Name: liboil |
2c62aef3 JB |
9 | Version: 0.3.11 |
10 | Release: 1 | |
23f681bc | 11 | Epoch: 1 |
bd19569b | 12 | License: BSD |
b0e11f7e | 13 | Group: Libraries |
f8777fcf | 14 | Source0: http://liboil.freedesktop.org/download/%{name}-%{version}.tar.gz |
2c62aef3 | 15 | # Source0-md5: 65ce3266be385d0c7cd9a1157433332f |
5a35debf | 16 | Patch0: %{name}-opt.patch |
d8b8a739 | 17 | Patch1: %{name}-no_altivec.patch |
9e3e2616 | 18 | Patch2: %{name}-no_sse2_on_i386.patch |
f8777fcf | 19 | URL: http://liboil.freedesktop.org/wiki/ |
5a35debf JB |
20 | BuildRequires: autoconf >= 2.58 |
21 | BuildRequires: automake >= 1.6 | |
b0e11f7e | 22 | BuildRequires: glib2-devel >= 2.0 |
f8777fcf | 23 | BuildRequires: gtk-doc-automake |
5a35debf | 24 | BuildRequires: libtool |
b0e11f7e | 25 | BuildRequires: pkgconfig |
f8777fcf | 26 | BuildRequires: rpmbuild(macros) >= 1.98 |
b0e11f7e JB |
27 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
28 | ||
d4d86640 | 29 | %define specflags -fomit-frame-pointer |
a01b53e3 JB |
30 | # CFLAGS_ALTIVEC are set, but not used |
31 | %define specflags_ppc -maltivec | |
d4d86640 | 32 | |
b0e11f7e JB |
33 | %description |
34 | Liboil is a library of simple functions that are optimized for various | |
35 | CPUs. These functions are generally loops implementing simple | |
36 | algorithms, such as converting an array of N integers to | |
37 | floating-poing numbers or multiplying and summing an array of N | |
38 | numbers. Clearly such functions are candidates for significant | |
39 | optimization using various techniques, especially by using extended | |
40 | instructions provided by modern CPUs (Altivec, MMX, SSE, etc.). | |
41 | ||
42 | Many multimedia applications and libraries already do similar things | |
43 | internally. The goal of this project is to consolidate some of the | |
44 | code used by various multimedia projects, and also make optimizations | |
45 | easier to use by a broad range of applications. | |
46 | ||
cc631dc9 JR |
47 | %description -l pl.UTF-8 |
48 | Liboil to biblioteka prostych funkcji zoptymalizowanych dla różnych | |
49 | procesorów. Funkcje te to zwykle pętle implementujące proste | |
50 | algorytmy, takie jak konwersja tablicy N liczb całkowitych na liczby | |
51 | zmiennoprzecinkowe albo mnożenie i dodawanie tablicy N liczb. Takie | |
52 | funkcje są kandydatami do znaczącej optymalizacji przy użyciu różnych | |
53 | technik, szczególnie poprzez użycie rozszerzonych instrukcji | |
54 | udostępnianych przez nowoczesne procesory (Altivec, MMX, SSE itp.). | |
b0e11f7e | 55 | |
cc631dc9 JR |
56 | Wiele aplikacji multimedialnych i bibliotek już robi takie rzeczy |
57 | wewnętrznie. Celem tego projektu jest połączenie części kodu używanego | |
58 | przez różne projekty multimedialne i ułatwienie używania optymalizacji | |
b0e11f7e JB |
59 | w szerszym zakresie aplikacji. |
60 | ||
61 | %package devel | |
62 | Summary: Header files for liboil library | |
a3d7399a | 63 | Summary(pl.UTF-8): Pliki nagłówkowe biblioteki liboil |
b0e11f7e | 64 | Group: Development/Libraries |
23f681bc | 65 | Requires: %{name} = %{epoch}:%{version}-%{release} |
b0e11f7e JB |
66 | |
67 | %description devel | |
68 | Header files for liboil library. | |
69 | ||
cc631dc9 JR |
70 | %description devel -l pl.UTF-8 |
71 | Pliki nagłówkowe biblioteki liboil. | |
b0e11f7e JB |
72 | |
73 | %package static | |
74 | Summary: Static liboil library | |
a3d7399a | 75 | Summary(pl.UTF-8): Statyczna biblioteka liboil |
b0e11f7e | 76 | Group: Development/Libraries |
23f681bc | 77 | Requires: %{name}-devel = %{epoch}:%{version}-%{release} |
b0e11f7e JB |
78 | |
79 | %description static | |
80 | Static liboil library. | |
81 | ||
cc631dc9 | 82 | %description static -l pl.UTF-8 |
b0e11f7e JB |
83 | Statyczna biblioteka liboil. |
84 | ||
85 | %prep | |
86 | %setup -q | |
5a35debf | 87 | %patch0 -p1 |
9d04e52a | 88 | %{!?with_altivec:%patch1 -p1} |
9e3e2616 | 89 | %patch2 -p0 |
b0e11f7e JB |
90 | |
91 | %build | |
5a35debf JB |
92 | %{__libtoolize} |
93 | %{__aclocal} -I m4 | |
94 | %{__autoconf} | |
95 | %{__autoheader} | |
96 | %{__automake} | |
e66e29ef | 97 | |
da90fe7c JB |
98 | %configure \ |
99 | --with-html-dir=%{_gtkdocdir} | |
e66e29ef | 100 | |
b0e11f7e JB |
101 | %{__make} |
102 | ||
103 | %{?with_tests:%{__make} check} | |
104 | ||
105 | %install | |
106 | rm -rf $RPM_BUILD_ROOT | |
107 | install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} | |
108 | ||
109 | %{__make} install \ | |
110 | DESTDIR=$RPM_BUILD_ROOT | |
111 | ||
112 | %{__make} clean -C examples | |
113 | cp -rf examples/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} | |
114 | ||
115 | rm -f $RPM_BUILD_ROOT%{_libdir}/liboiltmp1* | |
116 | ||
117 | %clean | |
118 | rm -rf $RPM_BUILD_ROOT | |
119 | ||
120 | %post -p /sbin/ldconfig | |
121 | %postun -p /sbin/ldconfig | |
122 | ||
123 | %files | |
124 | %defattr(644,root,root,755) | |
bd19569b | 125 | %doc AUTHORS COPYING ChangeLog NEWS README |
b0e11f7e JB |
126 | %attr(755,root,root) %{_libdir}/liboil-*.so.*.*.* |
127 | ||
128 | %files devel | |
129 | %defattr(644,root,root,755) | |
130 | %attr(755,root,root) %{_libdir}/liboil-*.so | |
131 | %{_libdir}/liboil-*.la | |
132 | %{_includedir}/liboil-* | |
133 | %{_pkgconfigdir}/liboil-*.pc | |
da90fe7c | 134 | %{_gtkdocdir}/liboil |
b0e11f7e JB |
135 | %{_examplesdir}/%{name}-%{version} |
136 | ||
137 | %files static | |
138 | %defattr(644,root,root,755) | |
139 | %{_libdir}/liboil-*.a |