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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 837893 - (show annotations) (download)
Sun Jun 21 12:46:25 2015 UTC (4 years, 8 months ago) by tmb
File size: 23635 byte(s)
- update to 10.6.0
  * drop merged patches


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

  ViewVC Help
Powered by ViewVC 1.1.26