Contents of /smage/trunk/core/mesa/mesa-20.1.2-r1.smage2
Parent Directory | Revision Log
Revision 14175 -
(show annotations)
(download)
Mon Jul 6 10:50:09 2020 UTC (3 years, 11 months ago) by niro
File size: 15933 byte(s)
Mon Jul 6 10:50:09 2020 UTC (3 years, 11 months ago) by niro
File size: 15933 byte(s)
auto added: ver bump to 20.1.2-r1
1 | # $Id$ |
2 | |
3 | PNAME="mesa" |
4 | PVER="20.1.2" |
5 | PBUILD="r1" |
6 | |
7 | PCAT="media-libs" |
8 | |
9 | # 1=enable mesa features |
10 | # 0=disable mesa features |
11 | ENABLE_VDPAU=0 |
12 | ENABLE_VAAPI=0 |
13 | ENABLE_XVMC=0 |
14 | |
15 | # 1=enable dev split packages |
16 | # 0=disable dev split packages |
17 | ENABLE_DEV_PACKAGES=1 |
18 | |
19 | SPLIT_PACKAGES="mesa" |
20 | if [[ ${ENABLE_DEV_PACKAGES} = 1 ]] |
21 | then |
22 | SPLIT_PACKAGES+=" mesa-dev" |
23 | fi |
24 | SPLIT_PACKAGES+=" mesa-xa-tracker" |
25 | # dri |
26 | SPLIT_PACKAGES+=" mesa-dri-i915" |
27 | SPLIT_PACKAGES+=" mesa-dri-i965" |
28 | SPLIT_PACKAGES+=" mesa-dri-nouveau" |
29 | SPLIT_PACKAGES+=" mesa-dri-r100" |
30 | SPLIT_PACKAGES+=" mesa-dri-r200" |
31 | # gallium |
32 | SPLIT_PACKAGES+=" mesa-dri-r300" |
33 | SPLIT_PACKAGES+=" mesa-dri-r600" |
34 | SPLIT_PACKAGES+=" mesa-dri-radeonsi" |
35 | SPLIT_PACKAGES+=" mesa-dri-swrast" |
36 | SPLIT_PACKAGES+=" mesa-dri-svga" |
37 | SPLIT_PACKAGES+=" mesa-dri-virgl" |
38 | SPLIT_PACKAGES+=" mesa-dri-iris" |
39 | # vulkan |
40 | SPLIT_PACKAGES+=" mesa-vulkan-radeon" |
41 | if [[ ${ENABLE_DEV_PACKAGES} = 1 ]] |
42 | then |
43 | SPLIT_PACKAGES+=" mesa-vulkan-radeon-dev" |
44 | fi |
45 | SPLIT_PACKAGES+=" mesa-vulkan-intel" |
46 | if [[ ${ENABLE_DEV_PACKAGES} = 1 ]] |
47 | then |
48 | SPLIT_PACKAGES+=" mesa-vulkan-intel-dev" |
49 | fi |
50 | # vdpau |
51 | if [[ ${ENABLE_VDPAU} = 1 ]] |
52 | then |
53 | SPLIT_PACKAGES+=" mesa-vdpau-nouveau" |
54 | SPLIT_PACKAGES+=" mesa-vdpau-r300" |
55 | SPLIT_PACKAGES+=" mesa-vdpau-r600" |
56 | SPLIT_PACKAGES+=" mesa-vdpau-radeonsi" |
57 | fi |
58 | # vaapi |
59 | if [[ ${ENABLE_VAAPI} = 1 ]] |
60 | then |
61 | SPLIT_PACKAGES+=" mesa-vaapi-nouveau" |
62 | SPLIT_PACKAGES+=" mesa-vaapi-r600" |
63 | SPLIT_PACKAGES+=" mesa-vaapi-radeonsi" |
64 | fi |
65 | |
66 | PCAT="media-libs" |
67 | HOMEPAGE="http://mesa3d.sourceforge.net/" |
68 | |
69 | # hardcoded llvm version for libxatracker |
70 | LLVM_PVER="10.0.0" |
71 | |
72 | MESA_DEPEND=">= dev-libs/expat-2.2 |
73 | >= dev-libs/libffi-3.3 |
74 | >= x11-libs/libX11-1.6 |
75 | >= x11-libs/libXext-1.3 |
76 | >= x11-libs/libXxf86vm-1.1 |
77 | >= x11-libs/libXi-1.7 |
78 | >= x11-libs/libXmu-1.1 |
79 | >= x11-libs/libXrandr-1.5 |
80 | >= x11-libs/libdrm-2.4.102 |
81 | >= x11-libs/libICE-1 |
82 | >= x11-libs/libglvnd-1.3 |
83 | >= x11-libs/libxcb-1.14 |
84 | >= x11-libs/libXfixes-5 |
85 | >= x11-libs/libXdamage-1 |
86 | >= x11-libs/libxshmfence-1.3 |
87 | >= sys-libs/libstdc++-8.3 |
88 | >= sys-fs/libudev-242 |
89 | >= sys-libs/libelf-0.179" |
90 | if [[ ${ENABLE_VDPAU} = 1 ]] |
91 | then |
92 | MESA_DEPEND="${MESA_DEPEND} |
93 | >= x11-libs/libvdpau-1.1" |
94 | fi |
95 | if [[ ${ENABLE_VAAPI} = 1 ]] |
96 | then |
97 | MESA_DEPEND="${MESA_DEPEND} |
98 | >= x11-libs/libva-1.8" |
99 | fi |
100 | if [[ ${ENABLE_XVMC} = 1 ]] |
101 | then |
102 | MESA_DEPEND="${MESA_DEPEND} |
103 | >= x11-libs/libXvMC-1" |
104 | fi |
105 | |
106 | # mesa-dev runtime deps |
107 | MESA_DEV_DEPEND=">= dev-libs/expat-dev-2.2 |
108 | >= dev-libs/libffi-dev-3.3 |
109 | >= x11-libs/libX11-dev-1.6 |
110 | >= x11-libs/libXext-dev-1.3 |
111 | >= x11-libs/libXxf86vm-dev-1.1 |
112 | >= x11-libs/libXi-dev-1.7 |
113 | >= x11-libs/libXmu-dev-1.1 |
114 | >= x11-libs/libXrandr-dev-1.5 |
115 | >= x11-libs/libdrm-dev-2.4.102 |
116 | >= x11-libs/libICE-dev-1 |
117 | >= x11-libs/libglvnd-dev-1.3 |
118 | >= x11-libs/libxcb-dev-1.14 |
119 | >= x11-libs/libXfixes-dev-5 |
120 | >= x11-libs/libXdamage-dev-1 |
121 | >= x11-libs/libxshmfence-dev-1.3 |
122 | >= sys-libs/libstdc++-dev-8.3 |
123 | >= sys-fs/libudev-dev-242 |
124 | >= sys-libs/libelf-dev-0.179" |
125 | if [[ ${ENABLE_VDPAU} = 1 ]] |
126 | then |
127 | MESA_DEPEND="${MESA_DEV_DEPEND} |
128 | >= x11-libs/libvdpau-dev-1.1" |
129 | fi |
130 | if [[ ${ENABLE_VAAPI} = 1 ]] |
131 | then |
132 | MESA_DEPEND="${MESA_DEV_DEPEND} |
133 | >= x11-libs/libva-dev-1.8" |
134 | fi |
135 | if [[ ${ENABLE_XVMC} = 1 ]] |
136 | then |
137 | MESA_DEPEND="${MESA_DEV_DEPEND} |
138 | >= x11-libs/libXvMC-dev-1" |
139 | fi |
140 | |
141 | XA_TRACKER_DEPEND=">= sys-libs/llvm-libs-${LLVM_PVER}" |
142 | |
143 | SDEPEND="${MESA_DEPEND} |
144 | ${XA_TRACKER_DEPEND} |
145 | >= dev-util/pkgconfig-0.25 |
146 | >= x11-libs/libXxf86vm-1.1 |
147 | >= virtual/glproto |
148 | >= virtual/xf86driproto |
149 | >= virtual/dri2proto |
150 | >= virtual/dri3proto |
151 | >= virtual/presentproto |
152 | >= virtual/xf86vidmodeproto |
153 | >= dev-lang/python3-3.7 |
154 | >= dev-python/python3-mako-1 |
155 | >= sys-dev/llvm-${LLVM_PVER}" |
156 | |
157 | if [[ ${ENABLE_DEV_PACKAGES} = 1 ]] |
158 | then |
159 | SDEPEND="${SDEPEND} |
160 | ${MESA_DEV_DEPEND}" |
161 | fi |
162 | |
163 | sminclude multilib xorg mtools meson cleanutils |
164 | msetfeature "!check" |
165 | |
166 | # must be set *after* the include of xorg! |
167 | SRCFILE="${PNAME}-${PVER/_/-}.tar.xz" |
168 | # libs SRCDIR |
169 | SRCDIR="${BUILDDIR}/${PNAME}-${PVER/_/-}" |
170 | |
171 | SRC_URI=( |
172 | ftp://ftp.freedesktop.org/pub/mesa/${PVER%_*}/${SRCFILE} |
173 | ftp://ftp.freedesktop.org/pub/mesa/${SRCFILE} |
174 | mirror://${PNAME}/${SRCFILE} |
175 | ) |
176 | |
177 | UP2DATE="updatecmd ftp://ftp.freedesktop.org/pub/mesa/ | highesttarball xz" |
178 | |
179 | split_info_mesa() |
180 | { |
181 | DESCRIPTION="Mesa3D OpenGL graphics library." |
182 | DEPEND="${MESA_DEPEND}" |
183 | |
184 | PROVIDE="virtual/opengl" |
185 | } |
186 | |
187 | split_info_mesa-dev() |
188 | { |
189 | DESCRIPTION="Dev package for mesa" |
190 | DEPEND="== media-libs/mesa-${PVER} |
191 | ${MESA_DEV_DEPEND}" |
192 | |
193 | PROVIDE="virtual/opengl-dev" |
194 | } |
195 | |
196 | split_info_mesa-xa-tracker() |
197 | { |
198 | DESCRIPTION="Mesa XA state tracker." |
199 | DEPEND="== media-libs/mesa-${PVER} |
200 | ${XA_TRACKER_DEPEND}" |
201 | } |
202 | |
203 | split_info_mesa-dri-i915() |
204 | { |
205 | DESCRIPTION="Mesa Intel i915 DRI driver." |
206 | DEPEND="== ${PCAT}/mesa-${PVER}" |
207 | } |
208 | |
209 | split_info_mesa-dri-i965() |
210 | { |
211 | DESCRIPTION="Mesa Intel i965 DRI driver." |
212 | DEPEND="== ${PCAT}/mesa-${PVER}" |
213 | } |
214 | |
215 | split_info_mesa-dri-r200() |
216 | { |
217 | DESCRIPTION="Mesa AMD Radeon r200 DRI driver." |
218 | DEPEND="== ${PCAT}/mesa-${PVER}" |
219 | } |
220 | |
221 | split_info_mesa-dri-r100() |
222 | { |
223 | DESCRIPTION="Mesa ATI Radeon generic DRI driver." |
224 | DEPEND="== ${PCAT}/mesa-${PVER}" |
225 | } |
226 | |
227 | split_info_mesa-dri-nouveau() |
228 | { |
229 | DESCRIPTION="Mesa Nvidia Nouveau DRI and Gallium driver." |
230 | DEPEND="== ${PCAT}/mesa-${PVER} |
231 | == ${PCAT}/mesa-xa-tracker-${PVER}" |
232 | } |
233 | |
234 | split_info_mesa-dri-r300() |
235 | { |
236 | DESCRIPTION="Mesa Ati Radeon r300 DRI (Gallium) driver." |
237 | DEPEND="== ${PCAT}/mesa-${PVER} |
238 | == ${PCAT}/mesa-xa-tracker-${PVER}" |
239 | } |
240 | |
241 | split_info_mesa-dri-r600() |
242 | { |
243 | DESCRIPTION="Mesa Ati Radeon r600 DRI (Gallium) driver." |
244 | DEPEND="== ${PCAT}/mesa-${PVER} |
245 | == ${PCAT}/mesa-xa-tracker-${PVER}" |
246 | } |
247 | |
248 | split_info_mesa-dri-radeonsi() |
249 | { |
250 | DESCRIPTION="Mesa AMD Radeon radeonsi DRI (Gallium) driver." |
251 | DEPEND="== ${PCAT}/mesa-${PVER} |
252 | == ${PCAT}/mesa-xa-tracker-${PVER}" |
253 | } |
254 | |
255 | split_info_mesa-dri-swrast() |
256 | { |
257 | DESCRIPTION="Mesa Software Raster DRI (Gallium) driver." |
258 | DEPEND="== ${PCAT}/mesa-${PVER} |
259 | == ${PCAT}/mesa-xa-tracker-${PVER}" |
260 | } |
261 | |
262 | split_info_mesa-dri-svga() |
263 | { |
264 | DESCRIPTION="Mesa Vmware svga DRI (Gallium) driver." |
265 | DEPEND="== ${PCAT}/mesa-${PVER} |
266 | == ${PCAT}/mesa-xa-tracker-${PVER}" |
267 | } |
268 | |
269 | split_info_mesa-dri-virgl() |
270 | { |
271 | DESCRIPTION="Mesa VirtualGL DRI (Gallium) driver." |
272 | DEPEND="== ${PCAT}/mesa-${PVER} |
273 | == ${PCAT}/mesa-xa-tracker-${PVER}" |
274 | } |
275 | |
276 | split_info_mesa-dri-iris() |
277 | { |
278 | DESCRIPTION="Mesa Intel Iris DRI (Gallium) driver." |
279 | DEPEND="== ${PCAT}/mesa-${PVER} |
280 | == ${PCAT}/mesa-xa-tracker-${PVER}" |
281 | } |
282 | |
283 | split_info_mesa-vulkan-radeon() |
284 | { |
285 | DESCRIPTION="Mesa AMD Radeon Vulkan driver." |
286 | DEPEND="== ${PCAT}/mesa-${PVER} |
287 | == ${PCAT}/mesa-xa-tracker-${PVER}" |
288 | } |
289 | |
290 | split_info_mesa-vulkan-radeon-dev() |
291 | { |
292 | DESCRIPTION="Dev package for mesa-vulkan-radeon" |
293 | DEPEND="== media-libs/mesa-vulkan-radeon-${PVER}" |
294 | } |
295 | |
296 | split_info_mesa-vulkan-intel() |
297 | { |
298 | DESCRIPTION="Mesa Intel Vulkan driver." |
299 | DEPEND="== ${PCAT}/mesa-${PVER} |
300 | == ${PCAT}/mesa-xa-tracker-${PVER}" |
301 | } |
302 | |
303 | split_info_mesa-vulkan-intel-dev() |
304 | { |
305 | DESCRIPTION="Dev package for mesa-intel-radeon" |
306 | DEPEND="== media-libs/mesa-vulkan-intel-${PVER}" |
307 | } |
308 | |
309 | split_info_mesa-vdpau-nouveau() |
310 | { |
311 | DESCRIPTION="Mesa NVIDIA Nouveau VDPAU driver." |
312 | DEPEND="== ${PCAT}/mesa-${PVER}" |
313 | } |
314 | |
315 | split_info_mesa-vdpau-r300() |
316 | { |
317 | DESCRIPTION="Mesa AMD Radeon r300 VDPAU driver." |
318 | DEPEND="== ${PCAT}/mesa-${PVER}" |
319 | } |
320 | |
321 | split_info_mesa-vdpau-r600() |
322 | { |
323 | DESCRIPTION="Mesa AMD Radeon r600 VDPAU driver." |
324 | DEPEND="== ${PCAT}/mesa-${PVER}" |
325 | } |
326 | |
327 | split_info_mesa-vdpau-radeonsi() |
328 | { |
329 | DESCRIPTION="Mesa AMD Radeon radeonsi VDPAU driver." |
330 | DEPEND="== ${PCAT}/mesa-${PVER}" |
331 | } |
332 | |
333 | split_info_mesa-vaapi-nouveau() |
334 | { |
335 | DESCRIPTION="Mesa NVIDIA Nouveau VAAPI driver." |
336 | DEPEND="== ${PCAT}/mesa-${PVER}" |
337 | } |
338 | |
339 | split_info_mesa-vaapi-r600() |
340 | { |
341 | DESCRIPTION="Mesa AMD Radeon r600 VAAPI driver." |
342 | DEPEND="== ${PCAT}/mesa-${PVER}" |
343 | } |
344 | |
345 | split_info_mesa-vaapi-radeonsi() |
346 | { |
347 | DESCRIPTION="Mesa AMD Radeon radeonsi VAAPI driver." |
348 | DEPEND="== ${PCAT}/mesa-${PVER}" |
349 | } |
350 | |
351 | install_dri_driver() |
352 | { |
353 | local drivers="$@" |
354 | local dri_drivers |
355 | local i |
356 | |
357 | for i in ${drivers} |
358 | do |
359 | case ${driver} in |
360 | *) dri_drivers="${i}_dri.so" ;; |
361 | esac |
362 | done |
363 | |
364 | DESTDIR=${BINDIR} mninja install || die |
365 | zapmost ${BINDIR} \ |
366 | $(for i in ${dri_drivers}; do echo "usr/$(mlibdir)/dri/${i}"; done) \ |
367 | $([[ $(mlibdir) != lib ]] && for i in ${dri_drivers}; do echo "usr/lib/dri/${i}"; done) \ |
368 | || die |
369 | } |
370 | |
371 | install_vulkan_driver() |
372 | { |
373 | local driver="$1" |
374 | local vulkan_drivers |
375 | |
376 | case ${driver} in |
377 | *) vulkan_drivers="libvulkan_${driver}.so" ;; |
378 | esac |
379 | |
380 | DESTDIR=${BINDIR} mninja install || die |
381 | zapmost ${BINDIR} \ |
382 | $(for i in ${vulkan_drivers}; do echo "usr/$(mlibdir)/${i}"; done) \ |
383 | $([[ $(mlibdir) != lib ]] && for i in ${vulkan_drivers}; do echo "usr/lib/${i}"; done) \ |
384 | usr/include/vulkan/vulkan_${driver}.h \ |
385 | usr/share/vulkan/icd.d/${driver}_icd\*.json \ |
386 | || die |
387 | |
388 | if [[ ${ENABLE_DEV_PACKAGES} = 1 ]] |
389 | then |
390 | mdelete -r /usr/include || die |
391 | fi |
392 | } |
393 | |
394 | install_vulkan_driver_dev() |
395 | { |
396 | local driver="$1" |
397 | local vulkan_drivers |
398 | |
399 | DESTDIR=${BINDIR} mninja install || die |
400 | zapmost ${BINDIR} \ |
401 | usr/include/vulkan/vulkan_${driver}.h \ |
402 | || die |
403 | } |
404 | |
405 | install_vdpau_driver() |
406 | { |
407 | local driver="$1" |
408 | |
409 | DESTDIR=${BINDIR} mninja install || die |
410 | zapmost ${BINDIR} usr/$(mlibdir)/vdpau/libvdpau_${driver}.* || die |
411 | if [[ $(mlibdir) != lib ]] |
412 | then |
413 | zapmost ${BINDIR} usr/lib/vdpau/libvdpau_${driver}.* || die |
414 | fi |
415 | } |
416 | |
417 | install_vaapi_driver() |
418 | { |
419 | local driver="$1" |
420 | local vaapi_drivers |
421 | |
422 | case ${driver} in |
423 | *) vaapi_drivers="${driver}_drv_video.so" ;; |
424 | esac |
425 | |
426 | DESTDIR=${BINDIR} mninja install || die |
427 | zapmost ${BINDIR} \ |
428 | $(for i in ${vaapi_drivers}; do echo "usr/$(mlibdir)/dri/${i}"; done) \ |
429 | $([[ $(mlibdir) != lib ]] && for i in ${vaapi_drivers}; do echo "usr/lib/dri/${i}"; done) \ |
430 | || die |
431 | } |
432 | |
433 | src_prepare() |
434 | { |
435 | munpack ${SRCFILE} || die |
436 | |
437 | # get rid of glut includes |
438 | all-abis rm -f include/GL/glut*h || die |
439 | } |
440 | |
441 | src_compile() |
442 | { |
443 | local myconf |
444 | |
445 | MESA_DRI_DRIVERS="i915,i965,r100,r200,nouveau" |
446 | MESA_GALLIUM_DRIVERS+="swrast,nouveau,r300,r600,radeonsi,svga,virgl,iris" |
447 | MESA_VULKAN_DRIVERS+="amd,intel" |
448 | |
449 | if [[ ${ENABLE_VDPAU} = 1 ]] |
450 | then |
451 | myopts=" $(meson_bool_true gallium-vdpau)" |
452 | else |
453 | myopts=" $(meson_bool_false gallium-vdpau)" |
454 | fi |
455 | if [[ ${ENABLE_VAAPI} = 1 ]] |
456 | then |
457 | myopts=" $(meson_bool_true gallium-va)" |
458 | else |
459 | myopts=" $(meson_bool_false gallium-va)" |
460 | fi |
461 | if [[ ${ENABLE_XVMC} = 1 ]] |
462 | then |
463 | myopts=" $(meson_bool_true gallium-xvmc)" |
464 | else |
465 | myopts=" $(meson_bool_false gallium-xvmc)" |
466 | fi |
467 | |
468 | meson_configure \ |
469 | $(meson_opt platforms x11,drm,surfaceless) \ |
470 | $(meson_opt dri-drivers-path /usr/'$(mlibdir)'/dri) \ |
471 | $(meson_opt dri-drivers ${MESA_DRI_DRIVERS}) \ |
472 | $(meson_opt gallium-drivers ${MESA_GALLIUM_DRIVERS}) \ |
473 | $(meson_opt vulkan-drivers ${MESA_VULKAN_DRIVERS}) \ |
474 | $(meson_bool_false vulkan-overlay-layer) \ |
475 | $(meson_bool_true b_ndebug) \ |
476 | $(meson_opt glx dri) \ |
477 | $(meson_bool_true shared-glapi) \ |
478 | $(meson_bool_true dri3) \ |
479 | $(meson_bool_true egl) \ |
480 | $(meson_bool_true gles1) \ |
481 | $(meson_bool_true gles2) \ |
482 | $(meson_bool_true gbm) \ |
483 | $(meson_opt osmesa gallium) \ |
484 | $(meson_opt xa gallium-xa) \ |
485 | $(meson_bool_true llvm) \ |
486 | $(meson_bool_true gallium-nine) \ |
487 | $(meson_bool_true shared-llvm) \ |
488 | $(meson_bool_true glvnd) \ |
489 | ${myopts} \ |
490 | || die |
491 | |
492 | mninja || die |
493 | } |
494 | |
495 | src_install_mesa() |
496 | { |
497 | DESTDIR=${BINDIR} mninja install || die |
498 | |
499 | # remove all la files |
500 | find ${BINDIR} -name \*.la | xargs rm -fv |
501 | |
502 | # export LIBGL_DRIVER_PATH location. |
503 | # we are using '/usr/lib/dri' as hardcoded location. |
504 | # but nvidia and ati are using '/usr/$(mlibdir)/xorg/modules/dri' |
505 | # LIBGL_DRIVER_PATH overwrites the hardcoded location and |
506 | # if nvidia or ati driver are installed |
507 | # the dri modules will never be found by libGL |
508 | # use "LIBGL_DEBUG=verbose glxinfo" to check this issue |
509 | for abi in ${MULTILIB_ABIS} |
510 | do |
511 | [[ ${abi} = m32 ]] && ABI_LIBDIR="lib" |
512 | [[ ${abi} = m64 ]] && ABI_LIBDIR="lib64" |
513 | cd ${SRCDIR}-${abi} |
514 | |
515 | minstalldir /etc/env.d || die |
516 | MCONFIG=/etc/env.d/09mesa-${abi} |
517 | mclearconfig || die |
518 | maddconfig "LIBGL_DRIVERS_PATH=/usr/$(mlibdir)/dri" || die |
519 | done |
520 | |
521 | # remove xa-tracker |
522 | mdelete /usr/$(mlibdir)/libxatracker.\* || die |
523 | if [[ $(mlibdir) != lib ]] |
524 | then |
525 | mdelete /usr/lib/libxatracker.\* || die |
526 | fi |
527 | |
528 | # remove dri-drivers |
529 | mdelete /usr/$(mlibdir)/dri/\*_dri.so || die |
530 | if [[ $(mlibdir) != lib ]] |
531 | then |
532 | mdelete /usr/lib/dri/\*_dri.so || die |
533 | fi |
534 | |
535 | if [[ ${ENABLE_VDPAU} = 1 ]] |
536 | then |
537 | # remove vdpau-drivers, they are in extra packages |
538 | mdelete -r /usr/$(mlibdir)/vdpau || die |
539 | if [[ $(mlibdir) != lib ]] |
540 | then |
541 | mdelete -r /usr/lib/vdpau || die |
542 | fi |
543 | fi |
544 | |
545 | if [[ ${ENABLE_VAAPI} = 1 ]] |
546 | then |
547 | # remove vaapi-drivers, they are in extra packages |
548 | mdelete /usr/$(mlibdir)/dri/\*_drv_video.so || die |
549 | if [[ $(mlibdir) != lib ]] |
550 | then |
551 | mdelete /usr/lib/dri/\*_drv_video.so || die |
552 | fi |
553 | fi |
554 | |
555 | # remove vulkan drivers, headers, configs |
556 | mdelete -r /usr/include/vulkan || die |
557 | mdelete -r /usr/share/vulkan || die |
558 | mdelete /usr/$(mlibdir)/libvulkan_\*.so || die |
559 | |
560 | # support indirect rendering |
561 | mlink libGLX_mesa.so.0 /usr/$(mlibdir)/libGLX_indirect.so.0 || die |
562 | if [[ $(mlibdir) != lib ]] |
563 | then |
564 | mlink libGLX_mesa.so.0 /usr/lib/libGLX_indirect.so.0 || die |
565 | fi |
566 | |
567 | if [[ ${ENABLE_DEV_PACKAGES} = 1 ]] |
568 | then |
569 | mdelete -r /usr/include || die |
570 | mdelete -r /usr/$(mlibdir)/pkgconfig |
571 | if [[ $(mlibdir) != lib ]] |
572 | then |
573 | mdelete -r /usr/lib/pkgconfig |
574 | fi |
575 | fi |
576 | } |
577 | |
578 | src_install_mesa-dev() |
579 | { |
580 | DESTDIR=${BINDIR} mninja install || die |
581 | |
582 | # remove all la files |
583 | find ${BINDIR} -name \*.la | xargs rm -fv |
584 | |
585 | zapmost ${BINDIR} \ |
586 | usr/include \ |
587 | usr/$(mlibdir)/pkgconfig \ |
588 | $([[ $(mlibdir) != lib ]] && echo 'usr/lib/pkgconfig') \ |
589 | || die |
590 | |
591 | # remove vulkan drivers, headers, configs |
592 | mdelete -r /usr/include/vulkan || die |
593 | } |
594 | |
595 | src_install_mesa-xa-tracker() |
596 | { |
597 | DESTDIR=${BINDIR} mninja install || die |
598 | |
599 | zapmost ${BINDIR} \ |
600 | usr/$(mlibdir)/libxatracker.* \ |
601 | $([[ $(mlibdir) != lib ]] && echo 'usr/lib/libxatracker.*') \ |
602 | || die |
603 | } |
604 | |
605 | src_install_mesa-dri-i915() |
606 | { |
607 | install_dri_driver i915 || die |
608 | } |
609 | |
610 | src_install_mesa-dri-i965() |
611 | { |
612 | install_dri_driver i965 || die |
613 | } |
614 | |
615 | src_install_mesa-dri-nouveau() |
616 | { |
617 | install_dri_driver nouveau nouveau_vieux || die |
618 | } |
619 | |
620 | src_install_mesa-dri-r200() |
621 | { |
622 | install_dri_driver r200 || die |
623 | } |
624 | |
625 | src_install_mesa-dri-r100() |
626 | { |
627 | install_dri_driver radeon || die |
628 | } |
629 | |
630 | src_install_mesa-dri-r300() |
631 | { |
632 | install_dri_driver r300 || die |
633 | } |
634 | |
635 | src_install_mesa-dri-r600() |
636 | { |
637 | install_dri_driver r600 || die |
638 | } |
639 | |
640 | src_install_mesa-dri-radeonsi() |
641 | { |
642 | install_dri_driver radeonsi || die |
643 | } |
644 | |
645 | src_install_mesa-dri-swrast() |
646 | { |
647 | install_dri_driver swrast kms_swrast || die |
648 | } |
649 | |
650 | src_install_mesa-dri-svga() |
651 | { |
652 | install_dri_driver vmwgfx || die |
653 | } |
654 | |
655 | src_install_mesa-dri-virgl() |
656 | { |
657 | install_dri_driver virtio_gpu || die |
658 | } |
659 | |
660 | src_install_mesa-dri-iris() |
661 | { |
662 | install_dri_driver iris || die |
663 | } |
664 | |
665 | src_install_mesa-vulkan-radeon() |
666 | { |
667 | install_vulkan_driver radeon || die |
668 | } |
669 | |
670 | src_install_mesa-vulkan-radeon-dev() |
671 | { |
672 | install_vulkan_driver_dev radeon || die |
673 | } |
674 | |
675 | src_install_mesa-vulkan-intel() |
676 | { |
677 | install_vulkan_driver intel || die |
678 | } |
679 | |
680 | src_install_mesa-vulkan-intel-dev() |
681 | { |
682 | install_vulkan_driver_dev intel || die |
683 | } |
684 | |
685 | src_install_mesa-vdpau-nouveau() |
686 | { |
687 | install_vdpau_driver nouveau || die |
688 | } |
689 | |
690 | src_install_mesa-vdpau-r300() |
691 | { |
692 | install_vdpau_driver r300 || die |
693 | } |
694 | |
695 | src_install_mesa-vdpau-r600() |
696 | { |
697 | install_vdpau_driver r600 || die |
698 | } |
699 | |
700 | src_install_mesa-vdpau-radeonsi() |
701 | { |
702 | install_vdpau_driver radeonsi || die |
703 | } |
704 | |
705 | src_install_mesa-vaapi-nouveau() |
706 | { |
707 | install_vaapi_driver nouveau || die |
708 | } |
709 | |
710 | src_install_mesa-vaapi-r600() |
711 | { |
712 | install_vaapi_driver r600 || die |
713 | } |
714 | |
715 | src_install_mesa-vaapi-radeonsi() |
716 | { |
717 | install_vaapi_driver radeonsi || die |
718 | } |
719 | |
720 | preinstall_mesa() |
721 | { |
722 | local i |
723 | |
724 | # clean up deprecated dynamic opengl symlinks in favor of libglvnd |
725 | for i in GL/{gl,glx,glext,glxext}.h \ |
726 | EGL/{eglextchromium,eglext,egl,eglmesaext,eglplatform}.h \ |
727 | GLES/{egl,glextm,gl,glplatform}.h \ |
728 | GLES2/{gl2ext,gl2,gl2platform}.h \ |
729 | GLES3/{gl31,gl3ext,gl3,gl3platform}.h \ |
730 | KHR/khrplatform.h |
731 | do |
732 | if [ -L ${MROOT}/usr/include/${i} ] |
733 | then |
734 | echo "pruning dynamic opengl symlink '${MROOT}/usr/include/${i}'" |
735 | rm ${MROOT}/usr/include/${i} |
736 | fi |
737 | done |
738 | } |
739 | |
740 | postinstall_mesa() |
741 | { |
742 | echo "Searching deprecated package 'opengl-update'..." |
743 | if [[ ! -z $(magequery -n opengl-update) ]] |
744 | then |
745 | echo "Uninstalling deprecated package 'opengl-update'..." |
746 | mage uninstall opengl-update |
747 | fi |
748 | } |