Magellan Linux

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

Parent Directory Parent Directory | Revision Log Revision Log


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