]> git.pld-linux.org Git - packages/SDL2.git/blob - SDL2.spec
- allow building without pipewire
[packages/SDL2.git] / SDL2.spec
1 #
2 # Conditional build:
3 %bcond_with     directfb        # DirectFB graphics support
4 %bcond_with     nas             # NAS audio support
5 %bcond_without  alsa            # ALSA audio support
6 %bcond_with     arts            # aRts audio support
7 %bcond_with     esd             # EsounD audio support
8 %bcond_with     jack            # JACK audio support
9 %bcond_without  opengl          # OpenGL (GLX) support
10 %bcond_without  gles            # OpenGL ES (EGL) support
11 %bcond_with     kms             # KMS/DRM graphics support
12 %bcond_without  pipewire        # Pipewire audio support
13 %bcond_without  vulkan          # Vulkan graphics support
14 %bcond_without  wayland         # Wayland graphics support
15 %bcond_without  fcitx           # Fcitx IM support
16 %bcond_without  ibus            # IBus IM support
17 %bcond_without  static_libs     # don't build static libraries
18 %bcond_with     mmx             # MMX instructions
19 %bcond_with     sse             # SSE instructions
20 %bcond_with     sse2            # SSE2 instructions
21 %bcond_with     3dnow           # 3Dnow! instructions
22 %bcond_with     altivec         # Altivec instructions
23 #
24 # NOTE: the following libraries are dlopened by soname detected at build time:
25 # libartsc.so.?                 [if with arts]
26 # libasound.so.2                [if with alsa]
27 # libaudio.so.2                 [if with nas]
28 # libdirectfb-*.so --needs patch (-release not supported by configure)
29 # libdrm.so.2                   [if with kms]
30 # libesd.so.0                   [if with esd]
31 # libfusionsound-*.so --needs patch (-release not supported by configure)
32 # libgbm.so.1                   [if with kms]
33 # libjack.so.0                  [if with jack]
34 # libpipewire-0.3.so.0
35 # libpulse-simple.so.0
36 # libsamplerate.so.0
37 # libwayland-client.so.0        [if with wayland]
38 # libwayland-cursor.so.0        [if with wayland]
39 # libwayland-egl.so.1           [if with wayland]
40 # libxkbcommon.so.0             [if with wayland]
41 # libX11.so.6
42 # libXcursor.so.1
43 # libXext.so.6
44 # libXi.so.6
45 # libXrandr.so.2
46 # libXrender.so.1
47 # libXss.so.1
48 %ifarch k6 athlon
49 %define with_3dnow      1
50 %endif
51 %ifarch %{x8664} x32 pentium2 pentium3 pentium4 athlon
52 %define with_mmx        1
53 %endif
54 %ifarch %{x8664} x32 pentium3 pentium4
55 %define with_sse        1
56 %endif
57 %ifarch %{x8664} x32 pentium4
58 %define with_sse2       1
59 %endif
60 Summary:        SDL (Simple DirectMedia Layer) - Game/Multimedia Library
61 Summary(pl.UTF-8):      SDL (Simple DirectMedia Layer) - Biblioteka do gier/multimediów
62 Summary(zh_CN.UTF-8):   SDL (Simple DirectMedia Layer) Generic APIs - 游戏/多媒体库
63 Name:           SDL2
64 Version:        2.28.1
65 Release:        1
66 License:        Zlib (BSD-like)
67 Group:          Libraries
68 Source0:        http://www.libsdl.org/release/%{name}-%{version}.tar.gz
69 # Source0-md5:  ccd2cd02b2ad4f71c2588747028953c3
70 Patch0:         %{name}-config.patch
71 URL:            http://www.libsdl.org/
72 %{?with_kms:BuildRequires:      Mesa-libgbm-devel >= 11.1.0}
73 %{?with_directfb:BuildRequires: DirectFB-devel >= 1.0.0}
74 %if %{with opengl} || %{with gles}
75 BuildRequires:  EGL-devel
76 %endif
77 %{?with_directfb:BuildRequires: FusionSound-devel >= 1.1.1}
78 %{?with_opengl:BuildRequires:   OpenGL-GLX-devel}
79 %{?with_gles:BuildRequires:     OpenGLES-devel}
80 %{?with_alsa:BuildRequires:     alsa-lib-devel >= 1.0.11}
81 %{?with_arts:BuildRequires:     artsc-devel >= 1.1}
82 BuildRequires:  autoconf >= 2.59-9
83 BuildRequires:  automake
84 BuildRequires:  dbus-devel
85 %{?with_esd:BuildRequires:      esound-devel >= 0.2.8}
86 %{?with_fcitx:BuildRequires:    fcitx-devel}
87 BuildRequires:  gcc >= 5:4.0
88 BuildRequires:  hidapi-devel
89 %{?with_ibus:BuildRequires:     ibus-devel >= 1.0}
90 %{?with_jack:BuildRequires:     jack-audio-connection-kit-devel >= 0.125}
91 %{?with_kms:BuildRequires:      libdrm-devel >= 1.4.82}
92 BuildRequires:  libsamplerate-devel
93 BuildRequires:  libtool >= 2:2.0
94 %{?with_nas:BuildRequires:      nas-devel}
95 BuildRequires:  perl-modules
96 %{?with_pipewire:BuildRequires: pipewire-devel >= 0.3.20}
97 BuildRequires:  pkgconfig >= 1:0.7
98 BuildRequires:  pulseaudio-devel >= 0.9
99 BuildRequires:  rpm-build >= 4.6
100 BuildRequires:  udev-devel
101 # wayland-client, wayland-cursor
102 %{?with_wayland:BuildRequires:  wayland-devel >= 1.18}
103 %{?with_wayland:BuildRequires:  wayland-egl-devel}
104 BuildRequires:  xorg-lib-libX11-devel
105 BuildRequires:  xorg-lib-libXScrnSaver-devel
106 BuildRequires:  xorg-lib-libXcursor-devel
107 BuildRequires:  xorg-lib-libXext-devel
108 BuildRequires:  xorg-lib-libXi-devel
109 BuildRequires:  xorg-lib-libXrandr-devel
110 BuildRequires:  xorg-lib-libXrender-devel
111 %if %{with wayland}
112 BuildRequires:  xorg-lib-libxkbcommon-devel >= 0.5.0
113 %endif
114 BuildRequires:  xorg-proto-xextproto-devel
115 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
116
117 %define         specflags_ppc   -maltivec
118
119 %description
120 SDL (Simple DirectMedia Layer) is a library that allows you portable,
121 low level access to a video framebuffer, audio output, mouse, and
122 keyboard. It can support both windowed and DGA modes of XFree86, and
123 it is designed to be portable - applications linked with SDL can also
124 be built on Win32 and BeOS.
125
126 %description -l pl.UTF-8
127 SDL (Simple DirectMedia Layer) jest biblioteką udostępniającą
128 przenośny, niskopoziomowy dostęp do bufora ramki video, wyjścia audio,
129 myszy oraz klawiatury. Może obsługiwać zarówno okienkowy tryb XFree86
130 jak i DGA. Konstruując ją miano na uwadze przenośność: aplikacje
131 konsolidowane z SDL można również budować w systemach Win32 i BeOS.
132
133 %description -l pt_BR.UTF-8
134 Esse é o Simple DirectMedia Layer, uma API genérica que dá acesso de
135 baixo nível a áudio, teclado, mouse e vídeo em várias plataformas.
136
137 Essa biblioteca é usada por alguns jogos.
138
139 %description -l ru.UTF-8
140 SDL (Simple DirectMedia Layer) это набор функций, предоставляющий
141 низкоуровневый доступ к звуку, клавиатуре, манипулятору мышь и к
142 буферу экрана на множестве различных платформ.
143
144 %package devel
145 Summary:        SDL - Header files
146 Summary(pl.UTF-8):      SDL - Pliki nagłówkowe
147 Summary(pt_BR.UTF-8):   Bibliotecas e arquivos de cabeçalho para aplicações SDL
148 Summary(ru.UTF-8):      Файлы, необходимые для разработки программ, использующих SDL
149 Summary(uk.UTF-8):      Файли, необхідні для розробки програм, що використовують SDL
150 Summary(zh_CN.UTF-8):   SDL (Simple DirectMedia Layer) 开发库
151 Group:          Development/Libraries
152 Requires:       %{name} = %{version}-%{release}
153 %{?with_directfb:Requires:      DirectFB-devel >= 1.0.0}
154 Requires:       xorg-lib-libX11-devel
155 Suggests:       OpenGL-GLU-devel
156
157 %description devel
158 SDL - Header files.
159
160 %description devel -l pl.UTF-8
161 SDL - Pliki nagłówkowe.
162
163 %description devel -l pt_BR.UTF-8
164 Esse pacote contém bibliotecas, arquivos de cabeçalho e outros
165 recursos para o desenvolvimento de aplicativos com SDL.
166
167 %description devel -l ru.UTF-8
168 Этот пакет содержит файлы, необходимые для разработки программ,
169 использующих SDL.
170
171 %description devel -l uk.UTF-8
172 Цей пакет містить файли, необхідні для розробки програм, що
173 використовують SDL.
174
175 %package static
176 Summary:        SDL - static libraries
177 Summary(pl.UTF-8):      SDL - biblioteki statyczne
178 Summary(pt_BR.UTF-8):   Biblioteca estática para desenvolvimento de aplicações com a SDL
179 Summary(ru.UTF-8):      Статические библиотеки для разработки с использованием SDL
180 Summary(uk.UTF-8):      Статичні бібліотеки для розробки з використанням SDL
181 Group:          Development/Libraries
182 Requires:       %{name}-devel = %{version}-%{release}
183
184 %description static
185 SDL - static libraries.
186
187 %description static -l pl.UTF-8
188 SDL - biblioteki statyczne.
189
190 %description static -l pt_BR.UTF-8
191 Biblioteca estática para desenvolvimento de aplicações com a SDL.
192
193 %description static -l ru.UTF-8
194 Этот пакет содержит статические библиотеки для разработки программ,
195 использующих SDL.
196
197 %description static -l uk.UTF-8
198 Цей пакет містить статичні бібліотеки для розробки програм, що
199 використовують SDL.
200
201 %package examples
202 Summary:        SDL - example programs
203 Summary(pl.UTF-8):      SDL - programy przykładowe
204 License:        Public Domain
205 Group:          Development/Libraries
206 Requires:       %{name}-devel = %{version}-%{release}
207 BuildArch:      noarch
208
209 %description examples
210 SDL - example programs.
211
212 %description examples -l pl.UTF-8
213 SDL - przykładowe programy.
214
215 %prep
216 %setup -q
217 %patch0 -p1
218
219 %build
220 %{__libtoolize}
221 %{__aclocal} -I acinclude
222 %{__autoconf}
223 %configure \
224         %{!?with_3dnow:--disable-3dnow} \
225         %{!?with_alsa:--disable-alsa} \
226         %{!?with_altiveca:--disable-altivec} \
227         %{!?with_arts:--disable-arts} \
228         %{!?with_esd:--disable-esd} \
229         %{!?with_fcitx:--disable-fcitx} \
230         %{!?with_ibus:--disable-ibus} \
231         %{!?with_jack:--disable-jack} \
232         %{!?with_mmx:--disable-mmx} \
233         %{!?with_nas:--disable-nas} \
234         %{!?with_pipewire:--disable-pipewire} \
235         --enable-pthreads \
236         --enable-pthread-sem \
237         --disable-rpath \
238         %{!?with_sse:--disable-sse --disable-ssemath} \
239         %{!?with_sse2:--disable-sse2} \
240         %{?with_sse:--enable-ssemath} \
241         %{!?with_static_libs:--disable-static} \
242         %{!?with_directfb:--disable-video-directfb} \
243         %{?with_kms:--enable-video-kmsdrm} \
244         --enable-video-opengl%{!?with_opengl:=no} \
245         --enable-video-opengles%{!?with_gles:=no} \
246         --enable-video-vulkan%{!?with_vulkan:=no} \
247         --enable-video-wayland%{!?with_wayland:=no} \
248         --with-x
249
250 %{__make} \
251         V=1
252
253 %install
254 rm -rf $RPM_BUILD_ROOT
255 install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
256
257 %{__make} install \
258         DESTDIR=$RPM_BUILD_ROOT \
259         m4datadir=%{_aclocaldir}
260
261 cp -pr test/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
262
263 %clean
264 rm -rf $RPM_BUILD_ROOT
265
266 %post   -p /sbin/ldconfig
267 %postun -p /sbin/ldconfig
268
269 %files
270 %defattr(644,root,root,755)
271 # non-Linux READMEs packaged for portability information
272 %doc BUGS.txt CREDITS.txt LICENSE.txt README*.txt TODO.txt WhatsNew.txt
273 %attr(755,root,root) %{_libdir}/libSDL2-2.0.so.*.*.*
274 %attr(755,root,root) %ghost %{_libdir}/libSDL2-2.0.so.0
275
276 %files devel
277 %defattr(644,root,root,755)
278 %attr(755,root,root) %{_bindir}/sdl2-config
279 %attr(755,root,root) %{_libdir}/libSDL2.so
280 %{_libdir}/libSDL2.la
281 %{_libdir}/libSDL2_test.a
282 %{_libdir}/libSDL2_test.la
283 %{_libdir}/libSDL2main.a
284 %{_libdir}/libSDL2main.la
285 %{_includedir}/SDL2
286 %{_aclocaldir}/sdl2.m4
287 %{_pkgconfigdir}/sdl2.pc
288 %{_libdir}/cmake/SDL2
289
290 %if %{with static_libs}
291 %files static
292 %defattr(644,root,root,755)
293 %{_libdir}/libSDL2.a
294 %endif
295
296 %files examples
297 %defattr(644,root,root,755)
298 %{_examplesdir}/%{name}-%{version}
This page took 0.092578 seconds and 4 git commands to generate.