4 # --enable-shared-dricore
5 # - subpackage with non-dri libGL for use with X-servers with missing GLX extension?
6 # - resurrect static if it's useful
9 %bcond_without egl # EGL libraries
10 %bcond_without gallium # gallium drivers
11 %bcond_with gallium_intel # gallium i915 driver (but doesn't work with AIGLX)
12 %bcond_without gallium_nouveau # gallium nouveau driver
13 %bcond_without osmesa # OSMesa libraries
14 %bcond_without gbm # with Graphics Buffer Manager
15 %bcond_with static_libs # static libraries
17 # minimal supported xserver version
18 %define xserver_ver 1.5.0
19 # glapi version (glapi tables in dri drivers and libglx must be in sync);
20 # set to current Mesa version on ABI break, when xserver tables get regenerated
21 # (until they start to be somehow versioned themselves)
22 %define glapi_ver 7.1.0
24 %define libdrm_ver 2.4.30
25 %define dri2proto_ver 2.6
26 %define glproto_ver 1.4.14
28 Summary: Free OpenGL implementation
29 Summary(pl.UTF-8): Wolnodostępna implementacja standardu OpenGL
33 License: MIT (core), SGI (GLU) and others - see license.html file
35 Source0: ftp://ftp.freedesktop.org/pub/mesa/%{version}/%{name}Lib-%{version}.tar.bz2
36 # Source0-md5: 24eeebf66971809d8f40775a379b36c9
37 Patch0: %{name}-realclean.patch
38 URL: http://www.mesa3d.org/
39 BuildRequires: autoconf >= 2.59
40 BuildRequires: automake
41 BuildRequires: expat-devel
42 BuildRequires: gcc >= 5:3.3
43 BuildRequires: libdrm-devel >= %{libdrm_ver}
44 BuildRequires: libselinux-devel
45 BuildRequires: libstdc++-devel >= 5:3.3.0
46 BuildRequires: libtalloc-devel >= 2:2.0.1
47 BuildRequires: libtool >= 2:1.4d
48 BuildRequires: libvdpau-devel >= 0.4.1
49 BuildRequires: llvm-devel >= 2.9
50 BuildRequires: pixman-devel
51 BuildRequires: pkgconfig
52 BuildRequires: pkgconfig(talloc) >= 2.0.1
54 BuildRequires: python-libxml2
55 BuildRequires: python-modules
56 BuildRequires: rpmbuild(macros) >= 1.470
57 BuildRequires: sed >= 4.0
58 BuildRequires: xorg-lib-libXdamage-devel
59 BuildRequires: xorg-lib-libXext-devel >= 1.0.5
60 BuildRequires: xorg-lib-libXt-devel
61 BuildRequires: xorg-lib-libXvMC-devel >= 1.0.6
62 BuildRequires: xorg-lib-libXxf86vm-devel
63 BuildRequires: xorg-proto-dri2proto-devel >= %{dri2proto_ver}
64 BuildRequires: xorg-proto-glproto-devel >= %{glproto_ver}
65 BuildRequires: xorg-util-makedepend
66 BuildRequires: xorg-xserver-server-devel
68 BuildRequires: libxcb-devel
69 BuildRequires: udev-devel >= 1:150
72 BuildRequires: xorg-proto-xextproto-devel >= 7.0.99.1
73 BuildRequires: xorg-xserver-server-devel >= 1.6.0
75 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
77 %if %{without gallium}
78 %undefine with_gallium_intel
79 %undefine with_gallium_nouveau
86 # _glapi_tls_Dispatch is defined in libglapi, but it's some kind of symbol ldd -r doesn't notice(?)
87 %define skip_post_check_so libGLESv1_CM.so.1.* libGLESv2.so.2.* libGL.so.1.* libXvMCnouveau.so.1.* libXvMCr300.so.1.* libXvMCr600.so.1.* libXvMCsoftpipe.so.1.* libvdpau_nouveau.so.1.*
90 Mesa is a 3-D graphics library with an API which is very similar to
91 that of OpenGL(R). To the extent that Mesa utilizes the OpenGL command
92 syntax or state machine, it is being used with authorization from
93 Silicon Graphics, Inc. However, the author does not possess an OpenGL
94 license from SGI, and makes no claim that Mesa is in any way a
95 compatible replacement for OpenGL or associated with SGI.
97 %description -l pl.UTF-8
98 Mesa jest biblioteką grafiki 3D z API bardzo podobnym do OpenGL(R). Do
99 tego stopnia, że Mesa używa składni i automatu OpenGL jest używana z
100 autoryzacją Silicon Graphics, Inc. Jednak autor nie posiada licencji
101 OpenGL od SGI i nie twierdzi, że Mesa jest kompatybilnym zamiennikiem
102 OpenGL ani powiązana z SGI.
105 Summary: Mesa implementation of EGL Native Platform Graphics Interface library
106 Summary(pl.UTF-8): Implementacja Mesa biblioteki interfejsu EGL
109 # glx driver in libEGL dlopens libGL.so
110 Requires: OpenGL >= 1.2
111 Requires: libdrm >= %{libdrm_ver}
114 Requires: Mesa-libOpenVG = %{version}-%{release}
115 Requires: udev-libs >= 1:150
120 This package contains shared libEGL - Mesa implementation of EGL
121 Native Platform Graphics Interface as specified by Khronos Group:
122 <http://www.khronos.org/egl/>.
124 %description libEGL -l pl.UTF-8
125 Ten pakiet zawiera bibliotekę współdzieloną libEGL - implementację
126 Mesa standardu EGL Native Platform Graphics Interface (interfejsu
127 graficznego platformy natywnej) wg specyfikacji Khronos Group:
128 <http://www.khronos.org/egl/>.
130 %package libEGL-devel
131 Summary: Header files for Mesa implementation of EGL library
132 Summary(pl.UTF-8): Pliki nagłówkowe implementacji Mesa biblioteki EGL
134 Group: Development/Libraries
135 Requires: %{name}-libEGL = %{version}-%{release}
136 Requires: libdrm-devel >= %{libdrm_ver}
137 Requires: xorg-lib-libX11-devel
138 Requires: xorg-lib-libXdamage-devel
139 Requires: xorg-lib-libXext-devel
140 Requires: xorg-lib-libXfixes-devel
141 Requires: xorg-lib-libXxf86vm-devel
142 Requires: xorg-proto-dri2proto-devel >= %{dri2proto_ver}
143 Requires: xorg-proto-glproto-devel >= %{glproto_ver}
144 Provides: EGL-devel = 1.4
146 %description libEGL-devel
147 Header files for Mesa implementation of EGL library.
149 %description libEGL-devel -l pl.UTF-8
150 Pliki nagłówkowe implementacji Mesa biblioteki EGL.
152 %package libEGL-static
153 Summary: Static Mesa EGL library
154 Summary(pl.UTF-8): Statyczna biblioteka Mesa EGL
156 Group: Development/Libraries
157 Requires: %{name}-libEGL-devel = %{version}-%{release}
158 Provides: EGL-static = 1.4
160 %description libEGL-static
161 Static Mesa EGL library.
163 %description libEGL-static -l pl.UTF-8
164 Statyczna biblioteka Mesa EGL.
167 Summary: Free Mesa3D implementation of libGL OpenGL library
168 Summary(pl.UTF-8): Wolnodostępna implementacja Mesa3D biblioteki libGL ze standardu OpenGL
171 Requires: libdrm >= %{libdrm_ver}
172 Provides: OpenGL = 2.1
173 Provides: OpenGL-GLX = 1.4
176 Obsoletes: X11-OpenGL-libGL < 1:7.0.0
177 Obsoletes: XFree86-OpenGL-libGL < 1:7.0.0
180 Mesa is a 3-D graphics library with an API which is very similar to
181 that of OpenGL(R). To the extent that Mesa utilizes the OpenGL command
182 syntax or state machine, it is being used with authorization from
183 Silicon Graphics, Inc. However, the author does not possess an OpenGL
184 license from SGI, and makes no claim that Mesa is in any way a
185 compatible replacement for OpenGL or associated with SGI.
187 This package contains libGL which implements OpenGL 1.5 and GLX 1.4
188 specifications. It uses DRI for rendering.
190 %description libGL -l pl.UTF-8
191 Mesa jest biblioteką grafiki 3D z API bardzo podobnym do OpenGL(R). Do
192 tego stopnia, że Mesa używa składni i automatu OpenGL jest używana z
193 autoryzacją Silicon Graphics, Inc. Jednak autor nie posiada licencji
194 OpenGL od SGI i nie twierdzi, że Mesa jest kompatybilnym zamiennikiem
195 OpenGL ani powiązana z SGI.
197 Ten pakiet zawiera libGL implementującą specyfikacje OpenGL 1.5 oraz
198 GLX 1.4. Używa DRI do renderowania.
201 Summary: Header files for Mesa3D libGL library
202 Summary(pl.UTF-8): Pliki nagłówkowe biblioteki libGL z projektu Mesa3D
204 Group: X11/Development/Libraries
205 # loose dependency on libGL to use with other libGL binaries
206 Requires: OpenGL >= 1.5
207 Requires: libdrm-devel >= %{libdrm_ver}
208 Requires: xorg-lib-libX11-devel
209 Requires: xorg-lib-libXdamage-devel
210 Requires: xorg-lib-libXext-devel
211 Requires: xorg-lib-libXxf86vm-devel
212 Requires: xorg-proto-dri2proto-devel >= %{dri2proto_ver}
213 Requires: xorg-proto-glproto-devel >= %{glproto_ver}
214 Suggests: OpenGL-doc-man
215 Provides: OpenGL-GLX-devel = 1.4
216 Provides: OpenGL-devel = 2.1
217 Obsoletes: Mesa-devel
218 Obsoletes: X11-OpenGL-devel < 1:7.0.0
219 Obsoletes: X11-OpenGL-devel-base < 1:7.0.0
220 Obsoletes: XFree86-OpenGL-devel < 1:7.0.0
221 Obsoletes: XFree86-OpenGL-devel-base < 1:7.0.0
223 %description libGL-devel
224 Header files for Mesa3D libGL library.
226 %description libGL-devel -l pl.UTF-8
227 Pliki nagłówkowe biblioteki libGL z projektu Mesa3D.
229 %package libGL-static
230 Summary: Static Mesa3D libGL library
231 Summary(pl.UTF-8): Statyczna biblioteka libGL z projektu Mesa3D
233 Group: X11/Development/Libraries
234 Requires: %{name}-libGL-devel = %{version}-%{release}
235 Provides: OpenGL-static = 2.1
236 Obsoletes: Mesa-static
237 Obsoletes: X11-OpenGL-static < 1:7.0.0
238 Obsoletes: XFree86-OpenGL-static < 1:7.0.0
240 %description libGL-static
241 Static Mesa3D libGL library. It uses software renderer.
243 %description libGL-static -l pl.UTF-8
244 Statyczna biblioteka libGL z projektu Mesa3D. Używa programowego
248 Summary: Mesa implementation of GLES (OpenGL ES) libraries
249 Summary(pl.UTF-8): Implementacja Mesa bibliotek GLES (OpenGL ES)
251 # only for libglapi.so.0
252 Requires: %{name}-libEGL = %{version}-%{release}
255 This package contains shared libraries of Mesa implementation of GLES
256 (OpenGL ES) - cross-platform API for full-function 2D and 3D graphics
257 on embedded systems. OpenGL ES specification can be found on Khronos
258 Group site: <http://www.khronos.org/opengles/>. Mesa implements OpenGL
261 %description libGLES -l pl.UTF-8
262 Ten pakiet zawiera biblioteki współdzielone implementacji Mesa
263 standardu GLES (OpenGL ES) - wieloplatformowego API do w pełni
264 funkcjonalnej grafiki 2D i 3D na systemach wbudowanych. Specyfikację
265 OpenGL ES można znaleźć na stronie Khronos Group:
266 <http://www.khronos.org/opengles/>. Mesa zawiera implementacją OpenGL
269 %package libGLES-devel
270 Summary: Header files for Mesa GLES libraries
271 Summary(pl.UTF-8): Pliki nagłówkowe bibliotek Mesa GLES
272 Group: Development/Libraries
273 # EGL for libglapi.so, <KHR/khrplatform.h> always required, <EGL/egl.h> for <GLES/egl.h>
274 Requires: %{name}-libEGL-devel = %{version}-%{release}
275 Requires: %{name}-libGLES = %{version}-%{release}
277 %description libGLES-devel
278 Header files for Mesa GLES libraries.
280 %description libGLES-devel -l pl.UTF-8
281 Pliki nagłówkowe bibliotek Mesa GLES.
284 Summary: SGI implementation of libGLU OpenGL library
285 Summary(pl.UTF-8): Implementacja SGI biblioteki libGLU ze standardu OpenGL
286 License: SGI Free Software License B v2.0 (MIT-like)
288 # loose dependency on libGL.so.1 to use with other libGL binaries
289 Requires: OpenGL >= 1.2
290 Provides: OpenGL-GLU = 1.3
291 Obsoletes: Mesa-devel
292 Obsoletes: X11-OpenGL-libs < 1:7.0.0
293 Obsoletes: XFree86-OpenGL-libs < 1:7.0.0
296 SGI implementation of libGLU OpenGL library. It implements OpenGL GLU
299 %description libGLU -l pl.UTF-8
300 Implementacja SGI biblioteki libGLU ze standardu OpenGL. Implementuje
301 specyfikację OpenGL GLU 1.3.
303 %package libGLU-devel
304 Summary: Header files for SGI libGLU library
305 Summary(pl.UTF-8): Pliki nagłówkowe biblioteki SGI libGLU
306 License: SGI Free Software License B v2.0 (MIT-like)
307 Group: Development/Libraries
308 Requires: %{name}-libGLU = %{version}-%{release}
309 Requires: OpenGL-devel >= 1.2
310 Requires: libstdc++-devel
311 Provides: OpenGL-GLU-devel = 1.3
313 %description libGLU-devel
314 Header files for SGI libGLU library.
316 %description libGLU-devel -l pl.UTF-8
317 Pliki nagłówkowe biblioteki SGI libGLU.
319 %package libGLU-static
320 Summary: Static SGI libGLU library
321 Summary(pl.UTF-8): Statyczna biblioteka SGI libGLU
322 License: SGI Free Software License B v2.0 (MIT-like)
323 Group: Development/Libraries
324 Requires: %{name}-libGLU-devel = %{version}-%{release}
325 Provides: OpenGL-GLU-static = 1.3
327 %description libGLU-static
328 Static SGI libGLU library.
330 %description libGLU-static -l pl.UTF-8
331 Statyczna biblioteka SGI libGLU.
334 Summary: OSMesa (off-screen renderer) library
335 Summary(pl.UTF-8): Biblioteka OSMesa (renderująca bitmapy w pamięci)
338 # doesn't require base
340 %description libOSMesa
341 OSMesa (off-screen renderer) library.
343 %description libOSMesa -l pl.UTF-8
344 Biblioteka OSMesa (renderująca bitmapy w pamięci).
346 %package libOSMesa-devel
347 Summary: Header file for OSMesa (off-screen renderer) library
348 Summary(pl.UTF-8): Plik nagłówkowy biblioteki OSMesa (renderującej bitmapy w pamięci)
350 Group: Development/Libraries
351 Requires: %{name}-libOSMesa = %{version}-%{release}
353 Requires: OpenGL-devel
354 Requires: libselinux-devel
356 %description libOSMesa-devel
357 Header file for OSMesa (off-screen renderer) library.
359 %description libOSMesa-devel -l pl.UTF-8
360 Plik nagłówkowy biblioteki OSMesa (renderującej bitmapy w pamięci).
362 %package libOSMesa-static
363 Summary: Static OSMesa (off-screen renderer) library
364 Summary(pl.UTF-8): Biblioteka statyczna OSMesa (renderująca bitmapy w pamięci)
366 Group: Development/Libraries
367 Requires: %{name}-libOSMesa-devel = %{version}-%{release}
368 # this static build of OSMesa needs static non-dri Mesa implementation
369 Requires: %{name}-libGL-static = %{version}-%{release}
371 %description libOSMesa-static
372 Static OSMesa (off-screen renderer) library.
374 %description libOSMesa-static -l pl.UTF-8
375 Biblioteka statyczna OSMesa (renderująca bitmapy w pamięci).
378 Summary: Mesa implementation of OpenVG (Vector Graphics Accelleration) API
379 Summary(pl.UTF-8): Implementacja Mesa API OpenVG (akceleracji grafiki wektorowej)
382 # doesn't require base
384 %description libOpenVG
385 This package contains Mesa implementation of OpenVG - cross-platform
386 API that provides a low-level hardware acceleration interface for
387 vector graphics libraries such as Flash and SVG. OpenVG specification
388 can be found on Khronos Group site: <http://www.khronos.org/openvg/>.
389 Mesa implements OpenVG 1.1.
391 %description libOpenVG -l pl.UTF-8
392 Ten pakiet zawiera implementację Mesa standardu OpenVG -
393 wieloplatfomowego API zapewniającego niskopoziomowy interfejs
394 akceleracji sprzętowej dla bibliotek grafiki wektorowej, takiej jak
395 Flash czy SVG. Specyfikację OpenVG można znaleźć na stronie Khronos
396 Group: <http://www.khronos.org/openvg/>. Mesa zawiera implementację
399 %package libOpenVG-devel
400 Summary: Header file for Mesa OpenVG library
401 Summary(pl.UTF-8): Plik nagłówkowy biblioteki Mesa OpenVG
403 Group: Development/Libraries
404 # EGL headers for <KHR/khrplatform.h>
405 Requires: %{name}-libEGL-devel = %{version}-%{release}
406 Requires: %{name}-libOpenVG = %{version}-%{release}
408 %description libOpenVG-devel
409 Header file for Mesa OpenVG library.
411 %description libOpenVG-devel -l pl.UTF-8
412 Plik nagłówkowy biblioteki Mesa OpenVG.
415 Summary: Mesa implementations of XvMC API
416 Summary(pl.UTF-8): Implementacje Mesa API XvMC
419 Requires: libdrm >= %{libdrm_ver}
420 # doesn't require base
423 Mesa implementations of XvMC API.
425 %description libXvMC -l pl.UTF-8
426 Implementacje Mesa API XvMC.
428 %package dri-driver-ati-radeon-R100
429 Summary: X.org DRI driver for ATI R100 card family
430 Summary(pl.UTF-8): Sterownik X.org DRI dla rodziny kart ATI R100
433 Requires: xorg-driver-video-ati
434 Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
435 Requires: xorg-xserver-server >= %{xserver_ver}
436 Obsoletes: X11-driver-radeon-dri < 1:7.0.0
438 %description dri-driver-ati-radeon-R100
439 X.org DRI driver for ATI R100 card family (Radeon 7000-7500).
441 %description dri-driver-ati-radeon-R100 -l pl.UTF-8
442 Sterownik X.org DRI dla rodziny kart ATI R100 (Radeon 7000-7500).
444 %package dri-driver-ati-radeon-R200
445 Summary: X.org DRI driver for ATI R200 card family
446 Summary(pl.UTF-8): Sterownik X.org DRI dla rodziny kart ATI R200
449 Requires: xorg-driver-video-ati
450 Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
451 Requires: xorg-xserver-server >= %{xserver_ver}
452 Obsoletes: X11-driver-radeon-dri < 1:7.0.0
454 %description dri-driver-ati-radeon-R200
455 X.org DRI driver for ATI R200 card family (Radeon 8500-92xx)
457 %description dri-driver-ati-radeon-R200 -l pl.UTF-8
458 Sterownik X.org DRI dla rodziny kart ATI R200 (Radeon 8500-92xx).
460 %package dri-driver-ati-radeon-R300
461 Summary: X.org DRI driver for ATI R300 card family
462 Summary(pl.UTF-8): Sterownik X.org DRI dla rodziny kart ATI R300
465 Requires: xorg-driver-video-ati
466 Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
467 Requires: xorg-xserver-server >= %{xserver_ver}
468 Obsoletes: X11-driver-radeon-dri < 1:7.0.0
470 %description dri-driver-ati-radeon-R300
471 X.org DRI driver for ATI R300 card family.
473 %description dri-driver-ati-radeon-R300 -l pl.UTF-8
474 Sterownik X.org DRI dla rodziny kart ATI R300.
476 %package dri-driver-ati-radeon-R600
477 Summary: X.org DRI driver for ATI R600 card family
478 Summary(pl.UTF-8): Sterownik X.org DRI dla rodziny kart ATI R600
481 Requires: radeon-ucode
482 Requires: xorg-driver-video-ati
483 Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
484 Requires: xorg-xserver-server >= %{xserver_ver}
486 %description dri-driver-ati-radeon-R600
487 X.org DRI driver for ATI R600 card family.
489 %description dri-driver-ati-radeon-R600 -l pl.UTF-8
490 Sterownik X.org DRI dla rodziny kart ATI R600.
492 %package dri-driver-intel-i915
493 Summary: X.org DRI driver for Intel i915 card family
494 Summary(pl.UTF-8): Sterownik X.org DRI dla rodziny kart Intel i915
497 Requires: xorg-driver-video-intel
498 Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
499 Requires: xorg-xserver-server >= %{xserver_ver}
500 Obsoletes: Mesa-dri-driver-intel-i830
501 Obsoletes: X11-driver-i810-dri < 1:7.0.0
503 %description dri-driver-intel-i915
504 X.org DRI driver for Intel i915 card family.
506 %description dri-driver-intel-i915 -l pl.UTF-8
507 Sterownik X.org DRI dla rodziny kart Intel i915.
509 %package dri-driver-intel-i965
510 Summary: X.org DRI driver for Intel i965 card family
511 Summary(pl.UTF-8): Sterownik X.org DRI dla rodziny kart Intel i965
514 Requires: xorg-driver-video-intel
515 Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
516 Requires: xorg-xserver-server >= %{xserver_ver}
517 Obsoletes: Mesa-dri-driver-intel-i830
518 Obsoletes: X11-driver-i810-dri < 1:7.0.0
520 %description dri-driver-intel-i965
521 X.org DRI driver for Intel i965 card family.
523 %description dri-driver-intel-i965 -l pl.UTF-8
524 Sterownik X.org DRI dla rodziny kart Intel i965.
526 %package dri-driver-nouveau
527 Summary: X.org DRI driver for NVIDIA card family
528 Summary(pl.UTF-8): Sterownik X.org DRI dla rodziny kart NVIDIA
531 Requires: xorg-driver-video-nouveau
532 Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
533 Requires: xorg-xserver-server >= %{xserver_ver}
535 %description dri-driver-nouveau
536 X.org DRI drivers for NVIDIA card family.
538 %description dri-driver-nouveau -l pl.UTF-8
539 Sterowniki X.org DRI dla rodziny kart NVIDIA.
541 %package dri-driver-swrast
542 Summary: X.org DRI software rasterizer driver
543 Summary(pl.UTF-8): Sterownik X.org DRI obsługujący rysowanie programowe
546 Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
547 Requires: xorg-xserver-server >= %{xserver_ver}
549 %description dri-driver-swrast
550 X.org DRI software rasterizer driver.
552 %description dri-driver-swrast -l pl.UTF-8
553 Sterownik X.org DRI obsługujący rysowanie programowe.
555 %package dri-driver-vmwgfx
556 Summary: X.org DRI driver for VMware
557 Summary(pl.UTF-8): Sterownik X.org DRI dla VMware
560 Requires: xorg-driver-video-vmware
561 Requires: xorg-xserver-libglx(glapi) = %{glapi_ver}
562 Requires: xorg-xserver-server >= %{xserver_ver}
564 %description dri-driver-vmwgfx
565 X.org DRI driver for VMWare.
567 %description dri-driver-vmwgfx -l pl.UTF-8
568 Sterownik X.org DRI dla VMware.
570 %package -n libvdpau-driver-mesa
571 Summary: Mesa drivers for the vdpau API
572 Summary(pl.UTF-8): Sterowniki Mesa dla API vdpau
575 Requires: libdrm >= %{libdrm_ver}
576 Requires: libvdpau >= 0.4.1
578 %description -n libvdpau-driver-mesa
579 Mesa drivers for the vdpau API.
581 %description -n libvdpau-driver-mesa -l pl.UTF-8
582 Sterowniki Mesa dla API vdpau.
585 %define filterout_ld -Wl,--as-needed
595 dri_drivers="r200 radeon \
596 %if %{without gallium_intel}
599 %ifarch sparc sparcv9 sparc64
604 dri_drivers=$(echo $dri_drivers | xargs | tr ' ' ',')
606 gallium_drivers="svga swrast \
607 %if %{with gallium_intel}
612 %if %{with gallium_nouveau}
617 gallium_drivers=$(echo $gallium_drivers | xargs | tr ' ' ',')
624 %{?with_static_libs:--enable-static} \
627 osmesa_common_flags="\
628 --with-driver=osmesa \
634 %configure $common_flags $osmesa_common_flags \
637 %{__make} -C src/mesa osmesa.pc
639 cp -p src/mesa/osmesa.pc osmesa8
643 %configure $common_flags \
645 --enable-shared-glapi \
652 --enable-gallium-llvm \
653 %{__enable egl gallium-egl} \
654 %{__enable gbm gallium-gbm} \
658 --with-gallium-drivers=${gallium_drivers} \
660 --without-gallium-drivers \
663 --with-dri-drivers=${dri_drivers} \
664 --with-dri-driverdir=%{_libdir}/xorg/modules/dri
669 rm -rf $RPM_BUILD_ROOT
672 DESTDIR=$RPM_BUILD_ROOT
675 cp -dp osmesa8/libOSMesa* $RPM_BUILD_ROOT%{_libdir}
676 cp -p osmesa8/osmesa.pc $RPM_BUILD_ROOT%{_pkgconfigdir}
679 # strip out undesirable headers
680 %{__rm} $RPM_BUILD_ROOT%{_includedir}/GL/{vms_x_fix,wglext,wmesa}.h
682 # remove "OS ABI: Linux 2.4.20" tag, so private copies (nvidia or fglrx),
683 # set up via /etc/ld.so.conf.d/*.conf will be preferred over this
684 strip -R .note.ABI-tag $RPM_BUILD_ROOT%{_libdir}/libGL.so.*.*
687 rm -rf $RPM_BUILD_ROOT
689 %post libEGL -p /sbin/ldconfig
690 %postun libEGL -p /sbin/ldconfig
692 %post libGL -p /sbin/ldconfig
693 %postun libGL -p /sbin/ldconfig
695 %post libGLES -p /sbin/ldconfig
696 %postun libGLES -p /sbin/ldconfig
698 %post libGLU -p /sbin/ldconfig
699 %postun libGLU -p /sbin/ldconfig
701 %post libOSMesa -p /sbin/ldconfig
702 %postun libOSMesa -p /sbin/ldconfig
704 %post libOpenVG -p /sbin/ldconfig
705 %postun libOpenVG -p /sbin/ldconfig
707 %post libXvMC -p /sbin/ldconfig
708 %postun libXvMC -p /sbin/ldconfig
712 %defattr(644,root,root,755)
713 %attr(755,root,root) %{_libdir}/libEGL.so.*.*
714 %attr(755,root,root) %ghost %{_libdir}/libEGL.so.1
715 %attr(755,root,root) %{_libdir}/libglapi.so.*.*
716 %attr(755,root,root) %ghost %{_libdir}/libglapi.so.0
718 %attr(755,root,root) %{_libdir}/libgbm.so.*.*
719 %attr(755,root,root) %ghost %{_libdir}/libgbm.so.1
724 %attr(755,root,root) %{_libdir}/egl/egl_gallium.so
726 %attr(755,root,root) %{_libdir}/gbm/gbm_gallium_drm.so
727 %attr(755,root,root) %{_libdir}/gbm/pipe_r300.so
728 %attr(755,root,root) %{_libdir}/gbm/pipe_r600.so
729 %attr(755,root,root) %{_libdir}/gbm/pipe_vmwgfx.so
730 %if %{with gallium_intel}
731 %attr(755,root,root) %{_libdir}/gbm/pipe_i915.so
733 %if %{with gallium_nouveau}
734 %attr(755,root,root) %{_libdir}/gbm/pipe_nouveau.so
740 %defattr(644,root,root,755)
741 %attr(755,root,root) %{_libdir}/libEGL.so
742 %attr(755,root,root) %{_libdir}/libglapi.so
743 %dir %{_includedir}/EGL
744 %{_includedir}/EGL/egl.h
745 %{_includedir}/EGL/eglext.h
746 %{_includedir}/EGL/eglmesaext.h
747 %{_includedir}/EGL/eglplatform.h
748 %dir %{_includedir}/KHR
749 %{_includedir}/KHR/khrplatform.h
750 %{_pkgconfigdir}/egl.pc
752 %attr(755,root,root) %{_libdir}/libgbm.so
754 %{_pkgconfigdir}/gbm.pc
757 %if %{with static_libs}
759 %defattr(644,root,root,755)
765 %defattr(644,root,root,755)
766 %doc docs/{*.html,README.{MITS,QUAKE,THREADS},RELNOTES*}
767 %attr(755,root,root) %{_libdir}/libGL.so.*.*
768 %attr(755,root,root) %ghost %{_libdir}/libGL.so.1
769 # symlink for binary apps which fail to conform Linux OpenGL ABI
770 # (and dlopen libGL.so instead of libGL.so.1; the same does Mesa libEGL)
771 %attr(755,root,root) %{_libdir}/libGL.so
774 %defattr(644,root,root,755)
776 %dir %{_includedir}/GL
777 %{_includedir}/GL/gl.h
778 %{_includedir}/GL/glext.h
779 %{_includedir}/GL/gl_mangle.h
780 %{_includedir}/GL/glx.h
781 %{_includedir}/GL/glxext.h
782 %{_includedir}/GL/glx_mangle.h
783 %dir %{_includedir}/GL/internal
784 %{_includedir}/GL/internal/dri_interface.h
785 %{_pkgconfigdir}/dri.pc
786 %{_pkgconfigdir}/gl.pc
788 %if %{with static_libs}
790 %defattr(644,root,root,755)
795 %defattr(644,root,root,755)
796 %attr(755,root,root) %{_libdir}/libGLESv1_CM.so.*.*.*
797 %attr(755,root,root) %ghost %{_libdir}/libGLESv1_CM.so.1
798 %attr(755,root,root) %{_libdir}/libGLESv2.so.*.*
799 %attr(755,root,root) %ghost %{_libdir}/libGLESv2.so.2
802 %defattr(644,root,root,755)
803 %attr(755,root,root) %{_libdir}/libGLESv1_CM.so
804 %attr(755,root,root) %{_libdir}/libGLESv2.so
807 %{_pkgconfigdir}/glesv1_cm.pc
808 %{_pkgconfigdir}/glesv2.pc
811 %defattr(644,root,root,755)
812 %attr(755,root,root) %{_libdir}/libGLU.so.*.*
813 %attr(755,root,root) %ghost %{_libdir}/libGLU.so.1
816 %defattr(644,root,root,755)
817 %attr(755,root,root) %{_libdir}/libGLU.so
818 %{_includedir}/GL/glu.h
819 %{_includedir}/GL/glu_mangle.h
820 %{_pkgconfigdir}/glu.pc
822 %if %{with static_libs}
824 %defattr(644,root,root,755)
830 %defattr(644,root,root,755)
831 %attr(755,root,root) %{_libdir}/libOSMesa.so.*.*
832 %attr(755,root,root) %ghost %{_libdir}/libOSMesa.so.8
834 %files libOSMesa-devel
835 %defattr(644,root,root,755)
836 %attr(755,root,root) %{_libdir}/libOSMesa.so
837 %{_includedir}/GL/osmesa.h
838 %{_pkgconfigdir}/osmesa.pc
840 %if %{with static_libs}
841 %files libOSMesa-static
842 %defattr(644,root,root,755)
843 %{_libdir}/libOSMesa.a
849 %defattr(644,root,root,755)
850 %attr(755,root,root) %{_libdir}/libOpenVG.so.*.*.*
851 %attr(755,root,root) %ghost %{_libdir}/libOpenVG.so.1
853 %files libOpenVG-devel
854 %defattr(644,root,root,755)
855 %attr(755,root,root) %{_libdir}/libOpenVG.so
857 %{_pkgconfigdir}/vg.pc
861 %defattr(644,root,root,755)
862 %attr(755,root,root) %ghost %{_libdir}/libXvMCnouveau.so.1
863 %attr(755,root,root) %{_libdir}/libXvMCnouveau.so.1.0
864 %attr(755,root,root) %ghost %{_libdir}/libXvMCr300.so.1
865 %attr(755,root,root) %{_libdir}/libXvMCr300.so.1.0
866 %attr(755,root,root) %ghost %{_libdir}/libXvMCr600.so.1
867 %attr(755,root,root) %{_libdir}/libXvMCr600.so.1.0
868 %attr(755,root,root) %ghost %{_libdir}/libXvMCsoftpipe.so.1
869 %attr(755,root,root) %{_libdir}/libXvMCsoftpipe.so.1.0
871 %files dri-driver-ati-radeon-R100
872 %defattr(644,root,root,755)
873 %attr(755,root,root) %{_libdir}/xorg/modules/dri/radeon_dri.so
875 %files dri-driver-ati-radeon-R200
876 %defattr(644,root,root,755)
877 %attr(755,root,root) %{_libdir}/xorg/modules/dri/r200_dri.so
879 %files dri-driver-ati-radeon-R300
880 %defattr(644,root,root,755)
881 %attr(755,root,root) %{_libdir}/xorg/modules/dri/r300_dri.so
883 %files dri-driver-ati-radeon-R600
884 %defattr(644,root,root,755)
885 %attr(755,root,root) %{_libdir}/xorg/modules/dri/r600_dri.so
887 %files dri-driver-intel-i915
888 %defattr(644,root,root,755)
889 %attr(755,root,root) %{_libdir}/xorg/modules/dri/i915_dri.so
891 %files dri-driver-intel-i965
892 %defattr(644,root,root,755)
893 %attr(755,root,root) %{_libdir}/xorg/modules/dri/i965_dri.so
895 %if %{with gallium_nouveau}
896 %files dri-driver-nouveau
897 %defattr(644,root,root,755)
898 %attr(755,root,root) %{_libdir}/xorg/modules/dri/nouveau_dri.so
901 %files dri-driver-swrast
902 %defattr(644,root,root,755)
903 %attr(755,root,root) %{_libdir}/xorg/modules/dri/swrast_dri.so
906 %files dri-driver-vmwgfx
907 %defattr(644,root,root,755)
908 %attr(755,root,root) %{_libdir}/xorg/modules/dri/vmwgfx_dri.so
911 %files -n libvdpau-driver-mesa
912 %defattr(644,root,root,755)
913 # there is no ldconfig here, so package all symlinks
914 %attr(755,root,root) %{_libdir}/vdpau/libvdpau_softpipe.so.1.0
915 %attr(755,root,root) %{_libdir}/vdpau/libvdpau_softpipe.so.1
916 %attr(755,root,root) %{_libdir}/vdpau/libvdpau_softpipe.so
917 %attr(755,root,root) %{_libdir}/vdpau/libvdpau_r300.so.1.0
918 %attr(755,root,root) %{_libdir}/vdpau/libvdpau_r300.so.1
919 %attr(755,root,root) %{_libdir}/vdpau/libvdpau_r300.so
920 %attr(755,root,root) %{_libdir}/vdpau/libvdpau_r600.so.1.0
921 %attr(755,root,root) %{_libdir}/vdpau/libvdpau_r600.so.1
922 %attr(755,root,root) %{_libdir}/vdpau/libvdpau_r600.so
923 %attr(755,root,root) %{_libdir}/vdpau/libvdpau_nouveau.so.1.0
924 %attr(755,root,root) %{_libdir}/vdpau/libvdpau_nouveau.so.1
925 %attr(755,root,root) %{_libdir}/vdpau/libvdpau_nouveau.so