/[packages]/cauldron/mesa/current/SPECS/mesa.spec
ViewVC logotype

Annotation of /cauldron/mesa/current/SPECS/mesa.spec

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1041911 - (hide annotations) (download)
Wed Jul 13 16:47:06 2016 UTC (3 years, 7 months ago) by akien
File size: 24201 byte(s)
Enable Vulkan driver (anvil) for intel
1 tv 135155 %if "%distro_section" == "tainted"
2     %global build_plf 1
3     %else
4     %global build_plf 0
5     %endif
6    
7 pterjan 5340 # (cg) Cheater...
8     %define Werror_cflags %nil
9    
10     # (aco) Needed for the dri drivers
11     %define _disable_ld_no_undefined 1
12    
13 cjw 398478 # http://cgit.freedesktop.org/mesa/mesa/commit/?h=9.1&id=38e728498b8ef63bb7dce77c64af11c98ec2efa4
14 tmb 400079 %define git 0
15 tv 634669 %define git_branch 9.2
16 blino 897333 %bcond_without hardware_gallium
17 mikala 112356
18 tmb 1019525 %define opengl_ver 4.3
19 blino 289598
20 tmb 922766 # define version, RC & release
21 tmb 1040746 %define main_version 12.0.1
22 tmb 1039882 %define relc %nil
23 tmb 1040832 %define rel 2
24 pterjan 5340
25     %define release %mkrel %{rel}
26 tv 173693 %define vsuffix %nil
27 pterjan 5340
28 tv 911140 %if 0%{?relc}
29 pterjan 5340 %define vsuffix -rc%{relc}
30     %endif
31    
32     %if %{git}
33     %if %{relc}
34 tv 799294 %define release %mkrel 1~rc%{relc}.1.git%{git}.%{rel}
35 pterjan 5340 %else
36 tv 727234 %define release %mkrel 1.git%{git}.%{rel}
37 pterjan 5340 %endif
38     %endif
39    
40     %define makedepend %{_bindir}/gccmakedep
41    
42 tv 812143 %define d3dname d3d
43 pterjan 5340 %define eglname mesaegl
44     %define glname mesagl
45     %define glwname mesaglw
46 tv 88442 %define glesv1name mesaglesv1
47     %define glesv2name mesaglesv2
48 tv 88445 %define openvgname mesaopenvg
49 mikala 112356 %define glapiname glapi
50 blino 215979 %define gbmname gbm
51     %define waylandeglname wayland-egl
52 tv 634669 %define xaname xatracker
53 akien 1041911 %define vulkanname vulkan
54 tv 88442
55 tv 812143 %define d3dmajor 1
56 pterjan 5340 %define eglmajor 1
57     %define glmajor 1
58     %define glwmajor 1
59 tv 88442 %define glesv1major 1
60     %define glesv2major 2
61 tv 88445 %define openvgmajor 1
62 mikala 112356 %define glapimajor 0
63 blino 215979 %define gbmmajor 1
64     %define waylandeglmajor 1
65 blino 289617 %define osmesamajor 8
66 tv 634669 %define xamajor 2
67 tv 88442
68 tv 812143 %define libd3dname %mklibname %{d3dname} %{d3dmajor}
69 pterjan 5340 %define libeglname %mklibname %{eglname} %{eglmajor}
70     %define libglname %mklibname %{glname} %{glmajor}
71     %define libglwname %mklibname %{glwname} %{glwmajor}
72 tv 88442 %define libglesv1name %mklibname %{glesv1name}_ %{glesv1major}
73     %define libglesv2name %mklibname %{glesv2name}_ %{glesv2major}
74 tv 88445 %define libopenvgname %mklibname %{openvgname} %{openvgmajor}
75 mikala 112356 %define libglapiname %mklibname %{glapiname} %{glapimajor}
76 blino 215979 %define libgbmname %mklibname %{gbmname} %{gbmmajor}
77     %define libwaylandeglname %mklibname %{waylandeglname} %{waylandeglmajor}
78 anssi 278008 %define libosmesaname %mklibname osmesa %{osmesamajor}
79 tv 634669 %define libxaname %mklibname %{xaname} %{xamajor}
80 akien 1041911 %define libvulkanname %mklibname %{vulkanname}
81 pterjan 5340
82     %define dridrivers %mklibname dri-drivers
83    
84 anssi 278008 %define osmesadevel %mklibname osmesa -d
85    
86 pterjan 5340 # Architecture-independent Virtual provides:
87 tv 812143 %define libd3dname_virt lib%{d3dname}
88 pterjan 5340 %define libeglname_virt lib%{eglname}
89     %define libglname_virt lib%{glname}
90     %define libglwname_virt lib%{glwname}
91 tv 88442 %define libglesv1name_virt lib%{glesv1name}
92     %define libglesv2name_virt lib%{glesv2name}
93 tv 88445 %define libopenvgname_virt lib%{openvgname}
94 mikala 112356 %define libglapiname_virt lib%{glapiname}
95 blino 215979 %define libgbmname_virt lib%{gbmname}
96     %define libwaylandeglname_virt lib%{waylandeglname}
97 tv 634669 %define libxaname_virt lib%{xaname}
98 pterjan 5340
99     %define oldlibglname %mklibname MesaGL 1
100    
101     %define mesasrcdir %{_prefix}/src/Mesa/
102     %define driver_dir %{_libdir}/dri
103    
104 tv 88451 %define enable_egl 1
105 neoclust 802010 %define enable_vg 0
106 blino 215979 %define enable_wayland 1
107 pterjan 5340
108 akien 1041911 # (akien) Not adding on arm as it would break the build there
109     %define enable_vulkan 0
110     %ifarch %{ix86} x86_64
111     %define enable_vulkan 1
112     %endif
113    
114 pterjan 5340 #FIXME: (for 386/485) unset SSE, MMX and 3dnow flags
115     #FIXME: (for >=i586) disable sse
116     # SSE seems to have problem on some apps (gtulpas) for probing.
117 tv 207029 %define dri_drivers_i386 "i915,i965,nouveau,r200,radeon,swrast"
118 pterjan 5340 %define dri_drivers_x86_64 %{dri_drivers_i386}
119 rtp 302732 %define dri_drivers_arm "nouveau,r200,radeon,swrast"
120 pterjan 5340 %define dri_drivers %{expand:%{dri_drivers_%{_arch}}}
121    
122 ovitters 645737 Name: mesa
123 tmb 1039883 Version: %{main_version}
124 pterjan 5340 Release: %{release}
125 blino 289598 Summary: OpenGL %{opengl_ver} compatible 3D graphics library
126 pterjan 5340 Group: System/Libraries
127    
128 mikala 127466 BuildRequires: pkgconfig(xfixes) >= 4.0.3
129 tv 585816 BuildRequires: pkgconfig(xshmfence)
130 mikala 127466 BuildRequires: pkgconfig(xt) >= 1.0.5
131     BuildRequires: pkgconfig(xmu) >= 1.0.3
132     BuildRequires: pkgconfig(x11) >= 1.3.3
133     BuildRequires: pkgconfig(xdamage) >= 1.1.1
134 pterjan 5340 BuildRequires: libexpat-devel >= 2.0.1
135     BuildRequires: gccmakedep
136     BuildRequires: x11-proto-devel >= 7.3
137 tmb 837893 BuildRequires: pkgconfig(libdrm) >= 2.4.60
138 tv 585825 BuildRequires: pkgconfig(xcb-dri3)
139 blino 659717 BuildRequires: pkgconfig(xcb-present) >= 1.11
140 mikala 127466 BuildRequires: pkgconfig(xext) >= 1.1.1
141     BuildRequires: pkgconfig(xxf86vm) >= 1.1.0
142     BuildRequires: pkgconfig(xi) >= 1.3
143     BuildRequires: pkgconfig(talloc)
144 tv 88443 BuildRequires: libxml2-python
145 tmb 920659 BuildRequires: python-mako
146 tmb 35532 BuildRequires: makedepend
147 tmb 920659 BuildRequires: bison
148 ovitters 645737 BuildRequires: flex
149 tv 469143 BuildRequires: libelf-devel
150 blino 897333 %if %{with hardware_gallium}
151 tv 989411 BuildRequires: llvm-devel >= 3.8
152 blino 897331 %endif
153 mikala 127466 BuildRequires: pkgconfig(libudev)
154 tv 812142 BuildRequires: pkgconfig(libva)
155 blino 270761 BuildRequires: pkgconfig(vdpau)
156 blino 215979 %if %{enable_wayland}
157     BuildRequires: wayland-devel
158     %endif
159 pterjan 5340
160     URL: http://www.mesa3d.org
161     %if %{git}
162 cjw 336175 Source0: %{name}-%{git}.tar.bz2
163 blino 289278 # (blino) snapshot of 9.0 branch
164 cjw 336175 #Source0: %{name}-%{git_branch}-%{git}.tar.bz2
165 pterjan 5340 %else
166 tv 907448 Source0: ftp://ftp.freedesktop.org/pub/mesa/%{main_version}/mesa-%{main_version}%{vsuffix}.tar.xz
167 pterjan 5340 %endif
168     Source3: make-git-snapshot.sh
169    
170     # Instructions to setup your repository clone
171     # git://git.freedesktop.org/git/mesa/mesa
172     # git checkout mesa_7_5_branch
173     # git branch mdv-cherry-picks
174     # git am ../02??-*.patch
175     # git branch mdv-redhat
176     # git am ../03??-*.patch
177     # git branch mdv-patches
178     # git am ../09??-*.patch
179     # In order to update to the branch via patches, issue this command:
180     # git format-patch --start-number 100 mesa_7_5_1..mesa_7_5_branch | sed 's/^0\([0-9]\+\)-/Patch\1: 0\1-/'
181    
182 tmb 813462 # upstream fixes
183 tmb 1039010 Patch102: 0102-i956-Add-more-Kabylake-PCI-IDs.patch
184     Patch103: 0103-i965-Removing-PCI-IDs-that-are-no-longer-listed-as-K.patch
185 tmb 803109
186 pterjan 5340 # Cherry picks
187     # git format-patch --start-number 200 mesa_7_5_branch..mdv-cherry-picks
188     Patch201: 0201-revert-fix-glxinitializevisualconfigfromtags-handling.patch
189 tmb 411326
190 tv 88247 # Patches "liberated" from Fedora:
191 pterjan 5340 # http://cvs.fedoraproject.org/viewvc/rpms/mesa/devel/
192     # git format-patch --start-number 300 mdv-cherry-picks..mdv-redhat
193    
194 blino 278732 # Patches from ChromiumOS
195     # http://git.chromium.org/gitweb/?p=chromiumos/overlays/chromiumos-overlay.git;a=tree;f=media-libs/mesa/files;hb=HEAD
196    
197 blino 271493 # Mageia/Mandriva patches
198 pterjan 5340 # git format-patch --start-number 900 mdv-redhat..mdv-patches
199 blino 271493 # (blino) llvmpipe test programs link fails when ld --as-needed option is used, reported as fdo #52167
200 cjw 388874 #Patch901: 0901-gallium-only-link-static-archives-between-ld-start-e.patch
201 pterjan 5340
202 tv 88440 #------------------------------------------------------------------------------
203    
204     # package mesa
205 pterjan 5340 License: MIT
206     Requires: %{libglname} = %{version}-%{release}
207     Provides: hackMesa = %{version}
208     Obsoletes: hackMesa <= %{version}
209     Provides: Mesa = %{version}
210     Obsoletes: Mesa < %{version}
211    
212     %package -n %{libglname}
213     Summary: Files for Mesa (GL and GLX libs)
214     Group: System/Libraries
215 tv 88247 Obsoletes: %{oldlibglname} < 6.4
216 pterjan 5340 Provides: %{oldlibglname} = %{version}-%{release}
217     Provides: %{libglname_virt} = %{version}-%{release}
218     Requires: %{dridrivers} >= %{version}-%{release}
219 tv 135172 %if %{build_plf}
220     Requires: %mklibname txc-dxtn
221     %endif
222 pterjan 5340
223     # (anssi) Forces the upgrade of x11-server-common to happen before
224     # alternatives removal, which allows x11-server-common to grab the symlink.
225     Conflicts: x11-server-common < 1.3.0.0-17
226    
227     %package -n %{dridrivers}
228     Summary: Mesa DRI drivers
229     Group: System/Libraries
230 blino 274132 # do not require exact release to avoid conflicts when having
231     # x86_64 dri drivers from tainted and i586 dri drivers from core
232     Requires: mesa = %{version}
233 pterjan 5340 Conflicts: %{_lib}MesaGL1 < 7.7-5
234 anssi 181478 Obsoletes: %{_lib}dri-drivers-experimental < 7.11.2-4
235     Provides: %{_lib}dri-drivers-experimental = %{version}-%{release}
236 pterjan 5340
237 blino 897333 %if %{with hardware_gallium}
238 tv 812143 %package -n %{libd3dname}
239     Summary: Mesa Direct3D9 state tracker
240     Group: System/Libraries
241     Provides: %{libd3dname_virt} = %{version}-%{release}
242    
243     %package -n %{libd3dname}-devel
244     Summary: Development files for Mesa Direct3D9 state tracker
245     Group: Development/C
246     Requires: %{libd3dname} = %{version}-%{release}
247     Provides: lib%{d3dname}-devel
248     Provides: %{d3dname}-devel
249     Provides: libd3d-devel
250 blino 897332 %endif
251 tv 812143
252 pterjan 5340 %package -n %{libglname}-devel
253     Summary: Development files for Mesa (OpenGL compatible 3D lib)
254     Group: Development/C
255 tv 88237 Requires: %{libglname} = %{version}-%{release}
256 pterjan 5340 Provides: lib%{glname}-devel = %{version}-%{release}
257     Provides: %{glname}-devel = %{version}-%{release}
258     Provides: GL-devel
259     Obsoletes: %{oldlibglname}-devel < 6.4
260     Provides: %{oldlibglname}-devel = %{version}-%{release}
261     Provides: libMesaGL-devel = %{version}-%{release}
262     Provides: MesaGL-devel = %{version}-%{release}
263 tv 88438 Provides: libgl-devel
264 pterjan 5340
265 tv 88433 %if %{enable_egl}
266     %package -n %{libeglname}
267     Summary: Files for Mesa (EGL libs)
268     Group: System/Libraries
269     Provides: %{libeglname_virt} = %{version}-%{release}
270    
271     %package -n %{libeglname}-devel
272     Summary: Development files for Mesa (EGL libs)
273     Group: Development/C
274 tv 88439 Requires: %{libeglname} = %{version}-%{release}
275 tv 88433 Provides: EGL-devel
276 tv 88438 Provides: lib%{eglname}-devel
277     Provides: %{eglname}-devel
278     Provides: libegl-devel
279 tv 88433 %endif
280    
281 anssi 278008 %package -n %{libosmesaname}
282     Summary: Mesa offscreen rendering library
283     Group: System/Libraries
284    
285     %package -n %{osmesadevel}
286     Summary: Development files for libosmesa
287     Group: Development/C
288     Requires: %{libosmesaname} = %{version}-%{release}
289     Provides: osmesa-devel = %{version}-%{release}
290     Conflicts: MesaGL-devel < 8.1.0-0.git20120727.3
291    
292 mikala 112356 %package -n %{libglapiname}
293     Summary: Files for mesa (glapi libs)
294     Group: System/Libraries
295     Provides: %{libglapiname_virt} = %{version}-%{release}
296 tv 88442
297 mikala 112356 %package -n %{libglapiname}-devel
298     Summary: Development files for glapi libs
299     Group: Development/C
300     Requires: %{libglapiname_virt} = %{version}-%{release}
301     Provides: lib%{glapiname}-devel
302     Provides: %{libglapiname}-devel
303    
304 tv 88442 %package -n %{libglesv1name}
305     Summary: Files for Mesa (glesv1 libs)
306     Group: System/Libraries
307     Provides: %{libglesv1name_virt} = %{version}-%{release}
308    
309     %package -n %{libglesv1name}-devel
310     Summary: Development files for glesv1 libs
311     Group: Development/C
312     Requires: %{libglesv1name} = %{version}-%{release}
313     Provides: lib%{glesv1name}-devel
314     Provides: %{glesv1name}-devel
315     Provides: libglesv1-devel
316    
317     %package -n %{libglesv2name}
318     Summary: Files for Mesa (glesv2 libs)
319     Group: System/Libraries
320     Provides: %{libglesv2name_virt} = %{version}-%{release}
321    
322     %package -n %{libglesv2name}-devel
323     Summary: Development files for glesv2 libs
324     Group: Development/C
325     Requires: %{libglesv2name} = %{version}-%{release}
326 blino 216556 Requires: %{libeglname}-devel = %{version}-%{release}
327 tv 88442 Provides: lib%{glesv2name}-devel
328     Provides: %{glesv2name}-devel
329     Provides: libglesv2-devel
330    
331 tv 799259 %if %{enable_vg}
332 tv 88445 %package -n %{libopenvgname}
333     Summary: Files for MESA (OpenVG libs)
334     Group: System/Libraries
335     Provides: %{libopenvgname_virt} = %{version}-%{release}
336    
337     %package -n %{libopenvgname}-devel
338     Summary: Development files vor OpenVG libs
339     Group: Development/C
340     Requires: %{libopenvgname} = %{version}-%{release}
341     Provides: lib%{openvgname}-devel
342     Provides: %{openvgname}-devel
343     Provides: libopenvg-devel
344 tv 799259 %endif
345 tv 88445
346 blino 215979 %if %{enable_wayland}
347     %package -n %{libgbmname}
348     Summary: Files for Mesa (gbm libs)
349     Group: System/Libraries
350     Provides: %{libgbmname_virt} = %{version}-%{release}
351    
352     %package -n %{libgbmname}-devel
353     Summary: Development files for Mesa (gbm libs)
354     Group: Development/C
355     Requires: %{libgbmname} = %{version}-%{release}
356     Provides: lib%{gbmname}-devel
357     Provides: %{gbmname}-devel
358    
359     %package -n %{libwaylandeglname}
360     Summary: Files for Mesa (Wayland EGL libs)
361     Group: System/Libraries
362     Provides: %{libwaylandeglname_virt} = %{version}-%{release}
363    
364     %package -n %{libwaylandeglname}-devel
365     Summary: Development files for Mesa (Wayland EGL libs)
366     Group: Development/C
367     Requires: %{libwaylandeglname} = %{version}-%{release}
368     Provides: lib%{waylandeglname}-devel
369     Provides: %{waylandeglname}-devel
370     %endif
371    
372 blino 897333 %if %{with hardware_gallium}
373 tv 301233 %package -n %{_lib}vdpau-driver-nouveau
374 blino 270761 Summary: VDPAU plugin for nouveau driver
375 blino 300616 Group: System/Libraries
376 tv 302568 # temporary:
377     %rename vdpau-driver-nouveau
378 blino 270761
379 tv 799259 %package -n %{_lib}vdpau-driver-r300
380     Summary: VDPAU plugin for r300 driver
381     Group: System/Libraries
382     # temporary:
383     %rename vdpau-driver-r300
384    
385 tv 301233 %package -n %{_lib}vdpau-driver-r600
386 blino 270761 Summary: VDPAU plugin for r600 driver
387 blino 300616 Group: System/Libraries
388 tv 302568 # temporary:
389     %rename vdpau-driver-r600
390 blino 270761
391 tv 301233 %package -n %{_lib}vdpau-driver-radeonsi
392 blino 289282 Summary: VDPAU plugin for radeonsi driver
393     Group: System/Libraries
394 tv 302568 # temporary:
395     %rename vdpau-driver-radeonsi
396 blino 289282
397 tv 634669 %package -n %{libxaname}
398     Summary: Files for Mesa XA state tracker
399     Group: System/Libraries
400     Provides: %{libxaname_virt} = %{version}-%{release}
401    
402     %package -n %{libxaname}-devel
403     Summary: Development files for XA libs
404     Group: Development/C
405     Requires: %{libxaname_virt} = %{version}-%{release}
406     Provides: lib%{xaname}-devel
407     Provides: %{libxaname}-devel
408 blino 897332 %endif
409 tv 634669
410 akien 1041911 %if %{enable_vulkan}
411     %package -n %{libvulkanname}_intel
412     Summary: Mesa vulkan driver for Intel GPU
413     Group: System/Libraries
414    
415     %package -n %{libvulkanname}-devel
416     Summary: Mesa's Vulkan development files
417     Group: Development/C
418     Requires: %{libvulkanname}_intel = %{version}-%{release}
419     Provides: libvulkan-devel
420     Provides: libvulkan_intel-devel
421     %endif
422    
423 pterjan 5340 %package common-devel
424     Summary: Meta package for mesa devel
425     Group: Development/C
426 tv 88247 Provides: Mesa-common-devel = %{version}-%{release}
427 pterjan 5340 Provides: hackMesa-common-devel = %{version}
428 tv 88247 Obsoletes: Mesa-common-devel < %{version}
429 pterjan 5340 Obsoletes: hackMesa-common-devel < %{version}
430     Requires: %{libglname}-devel = %{version}
431 blino 289355 Requires: mesaglu-devel
432 tv 135156 Requires: freeglut-devel
433 tv 88442 Requires: %{libeglname}-devel = %{version}
434     Requires: %{libglesv1name}-devel = %{version}
435     Requires: %{libglesv2name}-devel = %{version}
436 pterjan 5340
437 tv 88440 #------------------------------------------------------------------------------
438 pterjan 5340
439     %description
440 blino 289598 Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library.
441 tv 135173 %if %{build_plf}
442 pterjan 5340
443 tv 135173 This package is in the "tainted" section because it enables some
444     OpenGL extentions that are covered by software patents.
445     %endif
446    
447 pterjan 5340 %description common-devel
448     Mesa common metapackage devel
449    
450     %if %{enable_egl}
451     %description -n %{libeglname}
452 blino 289598 Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library.
453 pterjan 5340 EGL parts.
454    
455     %description -n %{libeglname}-devel
456 blino 289598 Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library.
457 pterjan 5340 EGL development parts.
458     %endif
459    
460     %description -n %{libglname}
461 blino 289598 Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library.
462 pterjan 5340 GL and GLX parts.
463    
464 tv 135155 %if %{build_plf}
465     This package is in the "tainted" section because it enables some
466     OpenGL extentions that are covered by software patents.
467     %endif
468    
469 pterjan 5340 %description -n %{dridrivers}
470 blino 289598 Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library.
471 pterjan 5340 DRI drivers.
472    
473     %description -n %{libglname}-devel
474 blino 289598 Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library.
475 pterjan 5340
476     This package contains the headers needed to compile Mesa programs.
477    
478 tv 88442 %description -n %{libglesv1name}
479     OpenGL ES is a low-level, lightweight API for advanced embedded graphics using
480     well-defined subset profiles of OpenGL.
481    
482     This package provides the OpenGL ES library version 1.
483    
484 anssi 278008 %description -n %{libosmesaname}
485     Mesa offscreen rendering libraries for rendering OpenGL into
486     application-allocated blocks of memory.
487    
488     %description -n %{osmesadevel}
489     This package contains the headers needed to compile programs against
490     the Mesa offscreen rendering library.
491    
492 mikala 112356 %description -n %{libglapiname}
493     This packages provides the glapi shared library used by gallium.
494    
495     %description -n %{libglapiname}-devel
496     This package contains the headers needed to compile programes against glapi shared library.
497    
498 tv 88442 %description -n %{libglesv1name}-devel
499     This package contains the headers needed to compile OpenGL ES 1 programs.
500    
501 blino 897333 %if %{with hardware_gallium}
502 tv 812143 %description -n %{libd3dname}
503     Mesa Direct3D9 state tracker.
504    
505     %description -n %{libd3dname}-devel
506     Mesa Direct3D9 state tracker development package.
507 blino 897332 %endif
508 tv 812143
509 tv 88442 %description -n %{libglesv2name}
510     OpenGL ES is a low-level, lightweight API for advanced embedded graphics using
511     well-defined subset profiles of OpenGL.
512    
513     This package provides the OpenGL ES library version 2.
514    
515     %description -n %{libglesv2name}-devel
516     This package contains the headers needed to compile OpenGL ES 2 programs.
517    
518 tv 799259 %if %{enable_vg}
519 tv 88445 %description -n %{libopenvgname}
520     OpenVG is a royalty-free, cross-platform API that provides a low-level hardware
521     acceleration interface for vector graphics libraries such as Flash and SVG.
522    
523     %description -n %{libopenvgname}-devel
524     Development files for OpenVG library.
525 tv 799259 %endif
526 tv 88445
527 blino 215979 %if %{enable_wayland}
528     %description -n %{libgbmname}
529 blino 289598 Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library.
530 blino 215979 GBM (Graphics Buffer Manager) parts.
531    
532     %description -n %{libgbmname}-devel
533 blino 289598 Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library.
534 blino 215979 GBM (Graphics Buffer Manager) development parts.
535    
536     %description -n %{libwaylandeglname}
537 blino 289598 Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library.
538 blino 215979 Wayland EGL platform parts.
539    
540     %description -n %{libwaylandeglname}-devel
541 blino 289598 Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library.
542 blino 215979 Wayland EGL platform development parts.
543     %endif
544    
545 blino 897333 %if %{with hardware_gallium}
546 tv 634669 %description -n %{libxaname}
547     This packages provides the xa shared library used by gallium.
548    
549     %description -n %{libxaname}-devel
550     This package contains the headers needed to compile programes against xa shared library.
551    
552 tv 301233 %description -n %{_lib}vdpau-driver-nouveau
553 blino 270761 This packages provides a VPDAU plugin to enable video acceleration
554     with the nouveau driver.
555    
556 tv 799259 %description -n %{_lib}vdpau-driver-r300
557     This packages provides a VPDAU plugin to enable video acceleration
558     with the r300 driver.
559    
560 tv 301233 %description -n %{_lib}vdpau-driver-r600
561 blino 270761 This packages provides a VPDAU plugin to enable video acceleration
562     with the r600 driver.
563    
564 tv 301233 %description -n %{_lib}vdpau-driver-radeonsi
565 blino 289282 This packages provides a VPDAU plugin to enable video acceleration
566     with the radeonsi driver.
567 blino 897332 %endif
568 blino 289282
569 akien 1041911 %if %{enable_vulkan}
570     %description -n %{libvulkanname}_intel
571     This package contains the Vulkan parts for Mesa's Intel driver.
572    
573     %description -n %{libvulkanname}-devel
574     This package contains the development files for Mesa's Vulkan implementation.
575     %endif
576    
577 tv 88440 #------------------------------------------------------------------------------
578    
579 pterjan 5340 %prep
580     %if %{git}
581 cjw 336175 %setup -q -n mesa-%{git}
582     #setup -q -n mesa-%{git_branch}-%{git}
583 pterjan 5340 %else
584 tv 904957 %setup -q -n mesa-%{main_version}%{vsuffix}
585 pterjan 5340 %endif
586    
587 ovitters 877635 %autopatch -p1
588 pterjan 5340
589 anssi 332631 # Duplicate source tree for OSMesa, since building both versions out-of-tree
590     # would break build. - Anssi 12/2012
591 cjw 336233 all=$(ls)
592     mkdir -p build-osmesa
593     cp -al $all build-osmesa
594 anssi 332631
595 pterjan 5340 %build
596 cjw 336175 # (re)generate auto* generated files using our autotools and libtoolize
597     autoreconf -vfi
598    
599 tv 551068 # for bin/test-driver:
600     automake --add-missing
601    
602 anssi 278008 %configure2_5x --enable-dri \
603     --enable-glx \
604 luigiwalser 650314 --enable-glx-tls \
605 pterjan 5340 --with-dri-driverdir=%{driver_dir} \
606     --with-dri-drivers="%{dri_drivers}" \
607 akien 1041911 %if %{enable_vulkan}
608     --with-vulkan-drivers=intel \
609     %endif
610 tv 812142 --enable-va \
611 pterjan 5340 %if %{enable_egl}
612     --enable-egl \
613     %else
614     --disable-egl \
615     %endif
616 blino 215979 %if %{enable_wayland}
617     --with-egl-platforms=x11,wayland,drm \
618     --enable-gbm \
619     --enable-shared-glapi \
620     %endif
621 tv 88442 --enable-gles1 \
622     --enable-gles2 \
623 tv 799259 %if %{enable_vg}
624 tv 88445 --enable-openvg \
625 tv 799259 %endif
626 mikala 112356 --enable-gallium-egl \
627 blino 270761 --disable-xvmc \
628     --enable-vdpau \
629 blino 897333 %if %{with hardware_gallium}
630 tv 913413 --with-gallium-drivers=r300,r600,radeonsi,nouveau,svga,swrast,virgl \
631 mikala 112356 --enable-gallium-llvm \
632 tv 634669 --enable-xa \
633 blino 897332 --enable-nine \
634 mikala 112356 %else
635     --disable-gallium-llvm \
636     --with-gallium-drivers=swrast \
637     %endif
638 tv 135155 %if %{build_plf}
639     --enable-texture-float \
640     %endif
641 blino 270723 # end of configure options
642 pterjan 5340
643 anssi 332631
644     # Build OSMesa separately, since we want to build OSMesa without shared-glapi,
645     # since doing that causes OSMesa to miss the OpenGL symbols.
646     # See e.g. https://bugs.launchpad.net/ubuntu/+source/mesa/+bug/1066599
647     # -Anssi 12/2012
648    
649 cjw 336233 pushd build-osmesa
650     autoreconf -vfi
651     %configure2_5x \
652     --enable-osmesa \
653     --disable-dri \
654     --disable-glx \
655     --disable-egl \
656 tv 881766 --enable-shared-glapi \
657 cjw 336233 --without-gallium-drivers
658     popd
659 anssi 332631
660 anssi 165988 %make
661 cjw 388874 %make -C build-osmesa || ( %make -C build-osmesa/src/mesa/program libprogram.la && %make -C build-osmesa )
662 pterjan 5340
663     %install
664 cjw 336233 %makeinstall_std -C build-osmesa
665 tv 88249 %makeinstall_std
666 pterjan 5340
667 blino 216556 # FIXME: strip will likely break the hardlink
668 pterjan 5340 # (blino) hardlink libGL files in %{_libdir}/mesa
669     # to prevent proprietary driver installers from removing them
670     mkdir -p $RPM_BUILD_ROOT%{_libdir}/mesa
671     pushd $RPM_BUILD_ROOT%{_libdir}/mesa
672     for l in ../libGL.so.*; do cp -a $l .; done
673     popd
674    
675     %ifarch %{x86_64}
676     mkdir -p $RPM_BUILD_ROOT%{_prefix}/lib/dri
677     %endif
678    
679 blino 270761 # .so files are not needed by vdpau
680     rm -f %{buildroot}%{_libdir}/vdpau/libvdpau_*.so
681    
682 blino 271144 # .la files are not needed by mesa
683 tv 881746 find %{buildroot} -name '*.la' -delete
684 blino 271144
685 anssi 181478 # use swrastg if built (Anssi 12/2011)
686     [ -e %{buildroot}%{_libdir}/dri/swrastg_dri.so ] && mv %{buildroot}%{_libdir}/dri/swrast{g,}_dri.so
687    
688 tv 88440 #------------------------------------------------------------------------------
689    
690 pterjan 5340 %files
691 tmb 1019525 #doc docs/COPYING
692 blino 271500 %config(noreplace) %{_sysconfdir}/drirc
693 pterjan 5340
694     %files -n %{dridrivers}
695 tmb 1019525 #doc docs/COPYING
696 pterjan 5340 %dir %{_libdir}/dri
697     %{_libdir}/dri/*_dri.so
698 tv 812142 %{_libdir}/dri/*_drv*.so
699 pterjan 5340
700 tv 88433 %files -n %{libglname}
701 tmb 1019525 #doc docs/COPYING
702 tv 88433 %{_libdir}/libGL.so.*
703     %dir %{_libdir}/mesa
704 ovitters 877635 %{_libdir}/mesa/libGL.so.%{glmajor}{,.*}
705 tv 88433
706     %if %{enable_egl}
707     %files -n %{libeglname}
708 tmb 1019525 #doc docs/COPYING
709 ovitters 877635 %{_libdir}/libEGL.so.%{eglmajor}{,.*}
710 blino 215979 %if !%{enable_wayland}
711     # st_GL, built only when shared glapi is not enabled
712 mikala 112356 %{_libdir}/egl/st_GL.so
713 blino 215979 %endif
714 tv 88441 %endif
715 tv 88433
716 anssi 278008 %files -n %{libosmesaname}
717 ovitters 877635 %{_libdir}/libOSMesa.so.%{osmesamajor}{,.*}
718 anssi 278008
719 mikala 112356 %files -n %{libglapiname}
720 ovitters 877635 %{_libdir}/libglapi.so.%{glapimajor}{,.*}
721 mikala 112356
722 tv 88442 %files -n %{libglesv1name}
723 tmb 1019525 #doc docs/COPYING
724 ovitters 877635 %{_libdir}/libGLESv1_CM.so.%{glesv1major}{,.*}
725 tv 88442
726 blino 897333 %if %{with hardware_gallium}
727 tv 812143 %files -n %{libd3dname}
728 tmb 1019525 #doc docs/COPYING
729 tv 812143 %{_libdir}/d3d/*.so.*
730 blino 897332 %endif
731 tv 812143
732 tv 88442 %files -n %{libglesv2name}
733 tmb 1019525 #doc docs/COPYING
734 ovitters 877635 %{_libdir}/libGLESv2.so.%{glesv2major}{,.*}
735 tv 88442
736 tv 799259 %if %{enable_vg}
737 tv 88445 %files -n %{libopenvgname}
738 tmb 1019525 #doc docs/COPYING
739 ovitters 877635 %{_libdir}/libOpenVG.so.%{openvgmajor}{,.*}
740 tv 799259 %endif
741 tv 88445
742 blino 215979 %if %{enable_wayland}
743     %files -n %{libgbmname}
744     %{_libdir}/libgbm.so.%{gbmmajor}
745 ovitters 878590 %{_libdir}/libgbm.so.%{gbmmajor}.*
746 tv 88445
747 blino 215979 %files -n %{libwaylandeglname}
748     %{_libdir}/libwayland-egl.so.%{waylandeglmajor}
749 ovitters 878590 %{_libdir}/libwayland-egl.so.%{waylandeglmajor}.*
750 blino 215979 %endif
751    
752 blino 897333 %if %{with hardware_gallium}
753 tv 634669 %files -n %{libxaname}
754 ovitters 877635 %{_libdir}/libxatracker.so.%{xamajor}{,.*}
755 blino 897332 %endif
756 blino 215979
757 pterjan 5340 %files -n %{libglname}-devel
758 tmb 1019525 #doc docs/COPYING
759 anssi 278008 %dir %{_includedir}/GL
760 pterjan 5340 %{_includedir}/GL/gl.h
761 tv 667295 %{_includedir}/GL/glcorearb.h
762 pterjan 5340 %{_includedir}/GL/glext.h
763     %{_includedir}/GL/gl_mangle.h
764     %{_includedir}/GL/glx.h
765     %{_includedir}/GL/glxext.h
766     %{_includedir}/GL/glx_mangle.h
767 tmb 1019525 %{_includedir}/GL/mesa_glinterop.h
768     %{_includedir}/GL/wglext.h
769 pterjan 5340 %{_libdir}/libGL.so
770 tv 88436 %{_libdir}/pkgconfig/gl.pc
771     %{_libdir}/pkgconfig/dri.pc
772 pterjan 5340
773     %dir %{_includedir}/GL/internal
774     %{_includedir}/GL/internal/dri_interface.h
775    
776     %files common-devel
777 tv 88441 %if %{enable_egl}
778 tv 88433 %files -n %{libeglname}-devel
779 tmb 1019525 #doc docs/COPYING
780 tv 88442 %{_includedir}/EGL
781     %{_includedir}/KHR
782 tv 88433 %{_libdir}/libEGL.so
783 tv 88436 %{_libdir}/pkgconfig/egl.pc
784 tv 88433 %endif
785 pterjan 5340
786 anssi 278008 %files -n %{osmesadevel}
787     %dir %{_includedir}/GL
788     %{_includedir}/GL/osmesa.h
789     %{_libdir}/libOSMesa.so
790     %{_libdir}/pkgconfig/osmesa.pc
791    
792 mikala 112356 %files -n %{libglapiname}-devel
793     %{_libdir}/libglapi.so
794 pterjan 5340
795 tv 88442 %files -n %{libglesv1name}-devel
796     %{_includedir}/GLES
797     %{_libdir}/libGLESv1_CM.so
798     %{_libdir}/pkgconfig/glesv1_cm.pc
799 tv 88433
800 tv 88442 %files -n %{libglesv2name}-devel
801     %{_includedir}/GLES2
802 cjw 336175 %{_includedir}/GLES3
803 tv 88442 %{_libdir}/libGLESv2.so
804     %{_libdir}/pkgconfig/glesv2.pc
805 tv 88445
806 blino 897333 %if %{with hardware_gallium}
807 tv 812143 %files -n %{libd3dname}-devel
808     %{_includedir}/d3dadapter
809     %{_libdir}/d3d/*.so
810     %{_libdir}/pkgconfig/d3d.pc
811 blino 897332 %endif
812 tv 812143
813 tv 799259 %if %{enable_vg}
814 tv 88445 %files -n %{libopenvgname}-devel
815     %{_includedir}/VG
816     %{_libdir}/libOpenVG.so
817     %{_libdir}/pkgconfig/vg.pc
818 tv 799259 %endif
819 blino 215979
820     %if %{enable_wayland}
821     %files -n %{libgbmname}-devel
822     %{_includedir}/gbm.h
823     %{_libdir}/libgbm.so
824     %{_libdir}/pkgconfig/gbm.pc
825    
826     %files -n %{libwaylandeglname}-devel
827     %{_libdir}/libwayland-egl.so
828     %{_libdir}/pkgconfig/wayland-egl.pc
829     %endif
830 blino 270761
831 blino 897333 %if %{with hardware_gallium}
832 tv 634669 %files -n %{libxaname}-devel
833     %{_libdir}/libxatracker.so
834     %{_includedir}/xa_tracker.h
835     %{_includedir}/xa_composite.h
836     %{_includedir}/xa_context.h
837     %{_libdir}/pkgconfig/xatracker.pc
838    
839 tv 301233 %files -n %{_lib}vdpau-driver-nouveau
840 blino 270761 %{_libdir}/vdpau/libvdpau_nouveau.so.*
841    
842 tv 799259 %files -n %{_lib}vdpau-driver-r300
843     %{_libdir}/vdpau/libvdpau_r300.so.*
844    
845 tv 301233 %files -n %{_lib}vdpau-driver-r600
846 blino 270761 %{_libdir}/vdpau/libvdpau_r600.so.*
847    
848 tv 301233 %files -n %{_lib}vdpau-driver-radeonsi
849 blino 289282 %{_libdir}/vdpau/libvdpau_radeonsi.so.*
850 blino 897332 %endif
851 akien 1041911
852     %if %{enable_vulkan}
853     %files -n %{libvulkanname}_intel
854     %dir %{_datadir}/vulkan
855     %dir %{_datadir}/vulkan/icd.d
856     %{_datadir}/vulkan/icd.d/intel_icd.json
857     # (akien) No lib major?
858     %{_libdir}/libvulkan_intel.so
859    
860     %files -n %{libvulkanname}-devel
861     %{_includedir}/vulkan/
862     %endif

  ViewVC Help
Powered by ViewVC 1.1.26