Magellan Linux

Annotation of /smage/trunk/core/mesa/mesa-20.1.2-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


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