Magellan Linux

Annotation of /trunk/extras/mesa/mesa-17.3.8-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 30810 - (hide annotations) (download)
Mon Apr 9 09:11:45 2018 UTC (6 years ago) by niro
File size: 22782 byte(s)
auto added: ver bump to 17.3.8-r1
1 niro 30810 # $Id$
2    
3     PNAME="mesa"
4     PVER="17.3.8"
5     PBUILD="r1"
6    
7     SPLIT_PACKAGES="mesa mesa-xa-tracker"
8    
9     PCAT="media-libs"
10     HOMEPAGE="http://mesa3d.sourceforge.net/"
11    
12     # hardcoded llvm version for libxatracker
13     LLVM_PVER="6.0.0"
14    
15     MESA_DEPEND=">= dev-libs/expat-2.1
16     >= dev-libs/libffi-3.2
17     >= x11-libs/libX11-1.6
18     >= x11-libs/libXext-1.3
19     >= x11-libs/libXxf86vm-1.1
20     >= x11-libs/libXi-1.7
21     >= x11-libs/libXmu-1.1
22     >= x11-libs/libdrm-2.4.89
23     >= x11-libs/libICE-1
24     >= x11-base/opengl-update-2.3
25     >= x11-libs/libxcb-1.11
26     >= x11-libs/libXfixes-5
27     >= x11-libs/libXdamage-1
28     >= x11-libs/libvdpau-1.1
29     >= x11-libs/libva-1.8
30     >= x11-libs/libXvMC-1
31     >= x11-libs/libxshmfence-1.1
32     >= sys-libs/libstdc++-6.3
33     >= sys-fs/udev-233
34     >= sys-libs/libelf-0.170"
35    
36     XA_TRACKER_DEPEND=">= sys-libs/llvm-libs-${LLVM_PVER}"
37    
38     SDEPEND="${MESA_DEPEND}
39     ${XA_TRACKER_DEPEND}
40     >= dev-util/pkgconfig-0.25
41     >= x11-misc/makedepend-1
42     >= x11-libs/libXxf86vm-1.1
43     >= x11-proto/glproto-1.4.17
44     >= x11-proto/xf86driproto-2.1
45     >= x11-proto/dri2proto-2.8
46     >= x11-proto/dri3proto-1
47     >= x11-proto/presentproto-1.0
48     >= dev-lang/python-2.7
49     >= sys-dev/llvm-${LLVM_PVER}"
50    
51     # must be set before the include of multilib!
52     EMUL_LINUX_32=true
53     sminclude multilib xorg mtools mbuild cleanutils
54     msetfeature "!check"
55    
56     # must be set *after* the include of xorg!
57     SRCFILE="${PNAME}-${PVER/_/-}.tar.xz"
58     # libs SRCDIR
59     SRCDIR="${BUILDDIR}/${PNAME}-${PVER/_/-}"
60    
61     # known drivers:
62     # dri: dri-swrast,dri-i915,dri-i965,dri-r200,dri-radeon,dri-i810,dri-mach64,dri-mga,
63     # dri-r128,dri-r300,dri-r600,dri-savage,dri-sis,dri-tdfx,dri-unichrome
64     # gallium: gallium-i915,gallium-i965,gallium-r300,gallium-r600,gallium-vmwgfx,gallium-swrast,gallium-nouveau, gallium-radeonsi
65     MESA_DRIVERS="dri-swrast,dri-i915,dri-i965,dri-r200,dri-radeon,dri-nouveau"
66     MESA_DRIVERS+=","
67     MESA_DRIVERS+="gallium-i915,gallium-nouveau,gallium-r300,gallium-r600,gallium-radeonsi,gallium-vmwgfx,gallium-swrast"
68    
69     # helper functions
70     driver_enabled()
71     {
72     local driver="$1"
73    
74     if [[ ${MESA_DRIVERS//${driver}} != ${MESA_DRIVERS} ]]
75     then
76     return 0
77     else
78     return 1
79     fi
80     }
81    
82     add_dri_driver()
83     {
84     local driver="$1"
85    
86     if [[ -z ${MESA_DRI_DRIVERS} ]]
87     then
88     MESA_DRI_DRIVERS="${driver}"
89     elif [[ ${MESA_DRI_DRIVERS//${driver}} = ${MESA_DRI_DRIVERS} ]]
90     then
91     MESA_DRI_DRIVERS+=",${driver}"
92     fi
93     }
94    
95     add_gallium_driver()
96     {
97     local driver="$1"
98    
99     if [[ -z ${MESA_GALLIUM_DRIVERS} ]]
100     then
101     MESA_GALLIUM_DRIVERS="${driver}"
102     elif [[ ${MESA_GALLIUM_DRIVERS//${driver}} = ${MESA_GALLIUM_DRIVERS} ]]
103     then
104     MESA_GALLIUM_DRIVERS+=",${driver}"
105     fi
106     }
107    
108     install_dri_driver()
109     {
110     local driver="$1"
111     local dri_drivers
112     local i
113    
114     case ${driver} in
115     nouveau) dri_drivers="nouveau_vieux_dri.so" ;;
116     *) dri_drivers="${driver}_dri.so" ;;
117     esac
118    
119     # glapi install required beforehand
120     mmake -C src/mapi DESTDIR=${BINDIR} install || die
121     mmake -C src/mesa/drivers/dri DESTDIR=${BINDIR} install || die
122     zapmost ${BINDIR} \
123     $(for i in ${dri_drivers}; do echo "usr/$(mlibdir)/dri/${i}"; done) \
124     $([[ $(mlibdir) != lib ]] && for i in ${dri_drivers}; do echo "usr/lib/dri/${i}"; done) \
125     || die
126     }
127    
128     install_gallium_driver()
129     {
130     local driver="$1"
131     local dri_drivers
132    
133     case ${driver} in
134     # honor kms-swrast
135     swrast) dri_drivers="swrast_dri.so kms_swrast_dri.so" ;;
136     *) dri_drivers="${driver}_dri.so" ;;
137     esac
138    
139     # glapi install required beforehand
140     mmake -C src/mapi DESTDIR=${BINDIR} install || die
141     mmake -C src/gallium/targets/dri DESTDIR=${BINDIR} install || die
142     zapmost ${BINDIR} \
143     $(for i in ${dri_drivers}; do echo "usr/$(mlibdir)/dri/${i}"; done) \
144     $([[ $(mlibdir) != lib ]] && for i in ${dri_drivers}; do echo "usr/lib/dri/${i}"; done) \
145     || die
146     }
147    
148     install_gallium_pipe_driver()
149     {
150     local driver="$1"
151    
152     # prereq - libllvmradeon${PVER}.so is needed to link the pipes
153     mmake -C src/gallium/drivers/radeon DESTDIR=${BINDIR} install || die
154    
155     mmake -C src/gallium/targets/pipe-loader DESTDIR=${BINDIR} install || die
156     zapmost ${BINDIR}/usr/$(mlibdir)/gallium-pipe pipe_${driver}.so || die
157     if [[ $(mlibdir) != lib ]]
158     then
159     zapmost ${BINDIR}/usr/lib/gallium-pipe pipe_${driver}.so || die
160     fi
161    
162     # remove prereq libs
163     mmake -C src/gallium/drivers/radeon DESTDIR=${BINDIR} uninstall || die
164     }
165    
166     install_gallium_vdpau_driver()
167     {
168     local driver="$1"
169    
170     mmake -C src/gallium/targets/vdpau DESTDIR=${BINDIR} install || die
171     zapmost ${BINDIR}/usr/$(mlibdir)/vdpau libvdpau_${driver}.* || die
172     if [[ $(mlibdir) != lib ]]
173     then
174     zapmost ${BINDIR}/usr/lib/vdpau libvdpau_${driver}.* || die
175     fi
176     }
177    
178     # setup_dynamic_dri $impl
179     # impl may be classic or gallium atm
180     setup_dynamic_dri()
181     {
182     local impl="$1"
183     local i
184     local abi
185    
186     [[ -z ${impl} ]] && die "missing dri implementation!"
187     case ${impl} in
188     classic|gallium) ;;
189     *) die "unkown dri implementation '${impl}'!" ;;
190     esac
191    
192     echo "settin up dynamic dri for a '${impl} implementation..."
193     if [[ -z ${MULTILIB_ABIS} ]]
194     then
195     minstalldir /usr/$(mlibdir)/mesa/${impl} || die
196     for i in ${BINDIR}/usr/$(mlibdir)/dri/*_dri.so
197     do
198     echo -n " processing ${i}:"
199     if [ -f ${i} -o -L ${i} ]
200     then
201     echo -n " moving"
202     mv -vf ${i} ${BINDIR}/usr/$(mlibdir)/mesa/${impl} || die "moving ${i}"
203     fi
204     done
205     else
206     for abi in ${MULTILIB_ABIS}
207     do
208     [[ ${abi} = m32 ]] && ABI_LIBDIR="lib"
209     [[ ${abi} = m64 ]] && ABI_LIBDIR="lib64"
210    
211     minstalldir /usr/$(mlibdir)/mesa/${impl} || die
212     for i in ${BINDIR}/usr/$(mlibdir)/dri/*_dri.so
213     do
214     echo -n " processing ${i}"
215     if [ -f ${i} -o -L ${i} ]
216     then
217     echo -n " moving"
218     mv -vf ${i} ${BINDIR}/usr/$(mlibdir)/mesa/${impl} || die "moving ${i}"
219     fi
220     echo " done"
221     done
222     done
223     fi
224     }
225    
226     SRC_URI=(
227     ftp://ftp.freedesktop.org/pub/mesa/${PVER%_*}/${SRCFILE}
228     ftp://ftp.freedesktop.org/pub/mesa/${SRCFILE}
229     mirror://${PNAME}/${SRCFILE}
230     )
231    
232     UP2DATE="updatecmd ftp://ftp.freedesktop.org/pub/mesa/ | highesttarball xz"
233     #UP2DATE="updatecmd ftp://ftp.freedesktop.org/pub/mesa/ | grep '/[0-9].*' | sed 's:.*/\(.*\)/:\1:' | upsort_pipe"
234    
235     split_info_mesa()
236     {
237     DESCRIPTION="Mesa3D OpenGL graphics library."
238     DEPEND="${MESA_DEPEND}"
239    
240     PROVIDE="virtual/opengl"
241     }
242    
243     split_info_mesa-xa-tracker()
244     {
245     DESCRIPTION="Mesa XA state tracker."
246     DEPEND="== media-libs/mesa-${PVER}
247     ${XA_TRACKER_DEPEND}"
248     }
249    
250     if driver_enabled dri-swrast
251     then
252     SPLIT_PACKAGES+=" mesa-dri-swrast"
253     add_dri_driver swrast
254    
255     split_info_mesa-dri-swrast()
256     {
257     DESCRIPTION="Mesa Software Raster DRI driver."
258     DEPEND="== ${PCAT}/mesa-${PVER}"
259     }
260     fi
261    
262     if driver_enabled dri-i810
263     then
264     SPLIT_PACKAGES+=" mesa-dri-i810"
265     add_dri_driver i810
266    
267     split_info_mesa-dri-i810()
268     {
269     DESCRIPTION="Mesa Intel i810 DRI driver."
270     DEPEND="== ${PCAT}/mesa-${PVER}"
271     }
272     fi
273    
274     if driver_enabled dri-i915
275     then
276     SPLIT_PACKAGES+=" mesa-dri-i915"
277     add_dri_driver i915
278    
279     split_info_mesa-dri-i915()
280     {
281     DESCRIPTION="Mesa Intel i915 DRI driver."
282     DEPEND="== ${PCAT}/mesa-${PVER}"
283     }
284     fi
285    
286     if driver_enabled dri-i965
287     then
288     SPLIT_PACKAGES+=" mesa-dri-i965"
289     add_dri_driver i965
290    
291     split_info_mesa-dri-i965()
292     {
293     DESCRIPTION="Mesa Intel i965 DRI driver."
294     DEPEND="== ${PCAT}/mesa-${PVER}"
295     }
296     fi
297    
298     if driver_enabled dri-mach64
299     then
300     SPLIT_PACKAGES+=" mesa-dri-mach64"
301     add_dri_driver mach64
302    
303     split_info_mesa-dri-mach64()
304     {
305     DESCRIPTION="Mesa ATI mach64 DRI driver."
306     DEPEND="== ${PCAT}/mesa-${PVER}"
307     }
308     fi
309    
310     if driver_enabled dri-mga
311     then
312     SPLIT_PACKAGES+=" mesa-dri-mga"
313     add_dri_driver mga
314    
315     split_info_mesa-dri-mga()
316     {
317     DESCRIPTION="Mesa Matrox mga DRI driver."
318     DEPEND="== ${PCAT}/mesa-${PVER}"
319     }
320     fi
321    
322     if driver_enabled dri-nouveau
323     then
324     SPLIT_PACKAGES+=" mesa-dri-nouveau"
325     add_dri_driver nouveau
326    
327     split_info_mesa-dri-nouveau()
328     {
329     DESCRIPTION="Mesa Nvidia Nouveau DRI driver."
330     DEPEND="== ${PCAT}/mesa-${PVER}"
331     }
332     fi
333    
334     if driver_enabled dri-r128
335     then
336     SPLIT_PACKAGES+=" mesa-dri-r128"
337     add_dri_driver r128
338    
339     split_info_mesa-dri-r128()
340     {
341     DESCRIPTION="Mesa ATI Rage128 DRI driver."
342     DEPEND="== ${PCAT}/mesa-${PVER}"
343     }
344     fi
345    
346     if driver_enabled dri-r200
347     then
348     SPLIT_PACKAGES+=" mesa-dri-r200"
349     add_dri_driver r200
350    
351     split_info_mesa-dri-r200()
352     {
353     DESCRIPTION="Mesa ATI Radeon r200 DRI driver."
354     DEPEND="== ${PCAT}/mesa-${PVER}"
355     }
356     fi
357    
358     if driver_enabled dri-r300
359     then
360     SPLIT_PACKAGES+=" mesa-dri-r300"
361     add_dri_driver r300
362    
363     split_info_mesa-dri-r300()
364     {
365     DESCRIPTION="Mesa ATI Radeon r300 DRI driver."
366     DEPEND="== ${PCAT}/mesa-${PVER}"
367     }
368     fi
369    
370     if driver_enabled dri-r600
371     then
372     SPLIT_PACKAGES+=" mesa-dri-r600"
373     add_dri_driver r600
374    
375     split_info_mesa-dri-r600()
376     {
377     DESCRIPTION="Mesa ATI Radeon r600 DRI driver."
378     DEPEND="== ${PCAT}/mesa-${PVER}"
379     }
380     fi
381    
382     if driver_enabled dri-radeon
383     then
384     SPLIT_PACKAGES+=" mesa-dri-radeon"
385     add_dri_driver radeon
386    
387     split_info_mesa-dri-radeon()
388     {
389     DESCRIPTION="Mesa ATI Radeon generic DRI driver."
390     DEPEND="== ${PCAT}/mesa-${PVER}"
391     }
392     fi
393    
394     if driver_enabled dri-savage
395     then
396     SPLIT_PACKAGES+=" mesa-dri-savage"
397     add_dri_driver savage
398    
399     split_info_mesa-dri-savage()
400     {
401     DESCRIPTION="Mesa S3 Savage DRI driver."
402     DEPEND="== ${PCAT}/mesa-${PVER}"
403     }
404     fi
405    
406     if driver_enabled dri-sis
407     then
408     SPLIT_PACKAGES+=" mesa-dri-sis"
409     add_dri_driver sis
410    
411     split_info_mesa-dri-sis()
412     {
413     DESCRIPTION="Mesa SIS generic DRI driver."
414     DEPEND="== ${PCAT}/mesa-${PVER}"
415     }
416     fi
417    
418     if driver_enabled dri-tdfx
419     then
420     SPLIT_PACKAGES+=" mesa-dri-tdfx"
421     add_dri_driver tdfx
422    
423     split_info_mesa-dri-tdfx()
424     {
425     DESCRIPTION="Mesa 3DFX Voodoo DRI driver."
426     DEPEND="== ${PCAT}/mesa-${PVER}"
427     }
428     fi
429    
430     if driver_enabled dri-unichrome
431     then
432     SPLIT_PACKAGES+=" mesa-dri-unichrome"
433     add_dri_driver unichrome
434    
435     split_info_mesa-dri-unichrome()
436     {
437     DESCRIPTION="Mesa VIA Chrome DRI driver."
438     DEPEND="== ${PCAT}/mesa-${PVER}"
439     }
440     fi
441    
442     if driver_enabled gallium-i915
443     then
444     SPLIT_PACKAGES+=" mesa-gallium-i915"
445     add_gallium_driver i915
446    
447     split_info_mesa-gallium-i915()
448     {
449     DESCRIPTION="Mesa Intel i915 Gallium driver."
450     DEPEND="== ${PCAT}/mesa-${PVER}
451     == ${PCAT}/mesa-xa-tracker-${PVER}"
452     }
453     fi
454    
455     if driver_enabled gallium-i965
456     then
457     SPLIT_PACKAGES+=" mesa-gallium-i965"
458     add_gallium_driver i965
459    
460     split_info_mesa-gallium-i965()
461     {
462     DESCRIPTION="Mesa Intel i965 Gallium driver."
463     DEPEND="== ${PCAT}/mesa-${PVER}
464     == ${PCAT}/mesa-xa-tracker-${PVER}"
465     }
466     fi
467    
468     if driver_enabled gallium-nouveau
469     then
470     SPLIT_PACKAGES+=" mesa-gallium-nouveau"
471     add_gallium_driver nouveau
472    
473     split_info_mesa-gallium-nouveau()
474     {
475     DESCRIPTION="Mesa Nvidia Nouveau Gallium driver."
476     DEPEND="== ${PCAT}/mesa-${PVER}
477     == ${PCAT}/mesa-xa-tracker-${PVER}"
478     }
479     fi
480    
481     if driver_enabled gallium-r300
482     then
483     SPLIT_PACKAGES+=" mesa-gallium-r300"
484     add_gallium_driver r300
485    
486     split_info_mesa-gallium-r300()
487     {
488     DESCRIPTION="Mesa Ati Radeon r300 Gallium driver."
489     DEPEND="== ${PCAT}/mesa-${PVER}
490     == ${PCAT}/mesa-xa-tracker-${PVER}"
491     }
492     fi
493    
494     if driver_enabled gallium-r600
495     then
496     SPLIT_PACKAGES+=" mesa-gallium-r600"
497     add_gallium_driver r600
498    
499     split_info_mesa-gallium-r600()
500     {
501     DESCRIPTION="Mesa Ati Radeon r600 Gallium driver."
502     DEPEND="== ${PCAT}/mesa-${PVER}
503     == ${PCAT}/mesa-xa-tracker-${PVER}"
504     }
505     fi
506    
507     if driver_enabled gallium-radeonsi
508     then
509     SPLIT_PACKAGES+=" mesa-gallium-radeonsi"
510     add_gallium_driver radeonsi
511    
512     split_info_mesa-gallium-radeonsi()
513     {
514     DESCRIPTION="Mesa Ati Radeon radeonsi Gallium driver."
515     DEPEND="== ${PCAT}/mesa-${PVER}
516     == ${PCAT}/mesa-xa-tracker-${PVER}"
517     }
518     fi
519    
520     if driver_enabled gallium-swrast
521     then
522     SPLIT_PACKAGES+=" mesa-gallium-swrast"
523     add_gallium_driver swrast
524    
525     split_info_mesa-gallium-swrast()
526     {
527     DESCRIPTION="Mesa Software Raster Gallium driver."
528     DEPEND="== ${PCAT}/mesa-${PVER}
529     == ${PCAT}/mesa-xa-tracker-${PVER}"
530     }
531     fi
532    
533     if driver_enabled gallium-vmwgfx
534     then
535     SPLIT_PACKAGES+=" mesa-gallium-vmwgfx"
536     add_gallium_driver svga
537    
538     split_info_mesa-gallium-vmwgfx()
539     {
540     DESCRIPTION="Mesa Vmware generic Gallium driver."
541     DEPEND="== ${PCAT}/mesa-${PVER}
542     == ${PCAT}/mesa-xa-tracker-${PVER}"
543     }
544     fi
545    
546     src_prepare()
547     {
548     munpack ${SRCFILE} || die
549    
550     # no debug code in the drives (gentoo)
551     all-abis 'find src/mesa/drivers/dri -name *.[hc] -exec egrep -l "\#define\W+DO_DEBUG\W+1" {} \; | xargs --no-run-if-empty sed -i -re "s/\#define\W+DO_DEBUG\W+1/\#define DO_DEBUG 0/" ;'
552    
553     # get rid of glut includes
554     all-abis rm -f include/GL/glut*h || die
555    
556     # fix an error in the libva detection
557     # all-abis 'sed -i "s:libva = 0.31.1:libva >= 0.31.1:" configure.ac' || die
558    
559     mautoreconf || die
560     }
561    
562     src_compile()
563     {
564     # build without rtti and exeptions, fixes issues with llvm as well
565     export CXXFLAGS="${CXXFLAGS} -fno-rtti -fno-exceptions -DNDEBUG"
566    
567     # texture-float has patent issues in non european contries
568     # disable this feature if this legal concern is affected
569     local myconf="--enable-texture-float"
570    
571     mconfigure \
572     --with-dri-driverdir=/usr/'$(mlibdir)'/dri \
573     --with-dri-drivers=${MESA_DRI_DRIVERS} \
574     --with-gallium-drivers=${MESA_GALLIUM_DRIVERS} \
575     --with-egl-platforms=x11,drm \
576     --disable-debug \
577     --enable-glx-tls \
578     --enable-asm \
579     --enable-shared-glapi \
580     --enable-egl \
581     --enable-gles1 \
582     --enable-gles2 \
583     --enable-gbm \
584     --enable-osmesa \
585     --enable-xa \
586     --enable-gallium-egl \
587     --enable-gallium-llvm \
588     --enable-vdpau \
589     --enable-llvm-shared-libs \
590     ${myconf} \
591     || die
592     # --enable-va \
593    
594     # # only build software renderer on multilib arches for 32Bit
595     # if [[ ${ARCH} = x86_64 ]]
596     # then
597     # only-m32 "echo 'DRI_DIRS =' >> configs/autoconf" || die
598     # fi
599    
600     mmake -j1 || die
601     }
602    
603     src_install_mesa()
604     {
605     mmake DESTDIR=${BINDIR} install || die
606    
607     # remove all la files
608     find ${BINDIR} -name \*.la | xargs rm -fv
609    
610     # setup included for dynamic opengl
611     # only target arch needed on multilib systems
612     minstalldir /usr/$(mlibdir)/opengl/xorg/include/GL || die
613     for x in ${BINDIR}/usr/include/GL/{gl.h,glx.h,glext.h,glxext.h}
614     do
615     if [ -f ${x} -o -L ${x} ]
616     then
617     mv -fv ${x} ${BINDIR}/usr/$(mlibdir)/opengl/xorg/include/GL || die "${x}"
618     fi
619     done
620     for x in ${BINDIR}/usr/include/{EGL,GLES*,VG,KHR}
621     do
622     if [ -d ${x} ]
623     then
624     mv -fv ${x} ${BINDIR}/usr/$(mlibdir)/opengl/xorg/include || die "${x}"
625     fi
626     done
627    
628     for abi in ${MULTILIB_ABIS}
629     do
630     [[ ${abi} = m32 ]] && ABI_LIBDIR="lib"
631     [[ ${abi} = m64 ]] && ABI_LIBDIR="lib64"
632     cd ${SRCDIR}-${abi}
633    
634     # setup dynamic opengl
635     minstalldir /usr/$(mlibdir)/opengl/xorg/lib || die
636     minstalldir /usr/$(mlibdir)/opengl/xorg/extensions || die
637    
638     local x
639     for x in ${BINDIR}/usr/$(mlibdir)/lib{EGL,GL*,OpenVG}.{la,a,so*}
640     do
641     if [ -f ${x} -o -L ${x} ]
642     then
643     mv -fv ${x} ${BINDIR}/usr/$(mlibdir)/opengl/xorg/lib || die "${x}"
644     fi
645     done
646    
647     # export LIBGL_DRIVER_PATH location.
648     # we are using '/usr/lib/dri' as hardcoded location.
649     # but nvidia and ati are using '/usr/$(mlibdir)/xorg/modules/dri'
650     # LIBGL_DRIVER_PATH overwrites the hardcoded location and
651     # if nvidia or ati driver are installed
652     # the dri modules will never be found by libGL
653     # use "LIBGL_DEBUG=verbose glxinfo" to check this issue
654     minstalldir /etc/env.d || die
655     MCONFIG=/etc/env.d/09mesa-${abi}
656     mclearconfig || die
657     maddconfig "LIBGL_DRIVERS_PATH=/usr/$(mlibdir)/dri" || die
658    
659     # remove dri-drivers, they are in extra packages
660     rm -rv ${BINDIR}/usr/$(mlibdir)/dri/*_dri.so || die
661     # remove vdpau-drivers, they are in extra packages
662     rm -rv ${BINDIR}/usr/$(mlibdir)/vdpau || die
663     # # remove gbm-pipes, they are in extra packages
664     # rm -rv ${BINDIR}/usr/$(mlibdir)/gallium-pipe/pipe_*.so || die
665     done
666    
667     # remove xa-tracker
668     mdelete /usr/$(mlibdir)/libxatracker.\* || die
669     if [[ $(mlibdir) != lib ]]
670     then
671     mdelete /usr/lib/libxatracker.\* || die
672     fi
673     }
674    
675     src_install_mesa-xa-tracker()
676     {
677     mmake DESTDIR=${BINDIR} install || die
678    
679     zapmost ${BINDIR} \
680     usr/$(mlibdir)/libxatracker.* \
681     $([[ $(mlibdir) != lib ]] && echo 'usr/lib/libxatracker.*') \
682     || die
683     }
684    
685     if driver_enabled dri-swrast
686     then
687     src_install_mesa-dri-swrast()
688     {
689     install_dri_driver swrast || die
690     setup_dynamic_dri classic || die
691     }
692     fi
693    
694     if driver_enabled dri-i810
695     then
696     src_install_mesa-dri-i810()
697     {
698     install_dri_driver i810 || die
699     setup_dynamic_dri classic || die
700     }
701     fi
702    
703     if driver_enabled dri-i915
704     then
705     src_install_mesa-dri-i915()
706     {
707     install_dri_driver i915 || die
708     setup_dynamic_dri classic || die
709     }
710     fi
711    
712     if driver_enabled dri-i965
713     then
714     src_install_mesa-dri-i965()
715     {
716     install_dri_driver i965 || die
717     setup_dynamic_dri classic || die
718     }
719     fi
720    
721     if driver_enabled dri-mach64
722     then
723     src_install_mesa-dri-mach64()
724     {
725     install_dri_driver mach64 || die
726     setup_dynamic_dri classic || die
727     }
728     fi
729    
730     if driver_enabled dri-mga
731     then
732     src_install_mesa-dri-mga()
733     {
734     install_dri_driver mga || die
735     setup_dynamic_dri classic || die
736     }
737     fi
738    
739     if driver_enabled dri-nouveau
740     then
741     src_install_mesa-dri-nouveau()
742     {
743     install_dri_driver nouveau || die
744     setup_dynamic_dri classic || die
745     }
746     fi
747    
748     if driver_enabled dri-r128
749     then
750     src_install_mesa-dri-r128()
751     {
752     install_dri_driver r128 || die
753     setup_dynamic_dri classic || die
754     }
755     fi
756    
757     if driver_enabled dri-r200
758     then
759     src_install_mesa-dri-r200()
760     {
761     install_dri_driver r200 || die
762     setup_dynamic_dri classic || die
763     }
764     fi
765    
766     if driver_enabled dri-r300
767     then
768     src_install_mesa-dri-r300()
769     {
770     install_dri_driver r300 || die
771     setup_dynamic_dri classic || die
772     }
773     fi
774    
775     if driver_enabled dri-r600
776     then
777     src_install_mesa-dri-r600()
778     {
779     install_dri_driver r600 || die
780     setup_dynamic_dri classic || die
781     }
782     fi
783    
784     if driver_enabled dri-radeon
785     then
786     src_install_mesa-dri-radeon()
787     {
788     install_dri_driver radeon || die
789     setup_dynamic_dri classic || die
790     }
791     fi
792    
793     if driver_enabled dri-savage
794     then
795     src_install_mesa-dri-savage()
796     {
797     install_dri_driver savage || die
798     setup_dynamic_dri classic || die
799     }
800     fi
801    
802     if driver_enabled dri-sis
803     then
804     src_install_mesa-dri-sis()
805     {
806     install_dri_driver sis || die
807     setup_dynamic_dri classic || die
808     }
809     fi
810    
811     if driver_enabled dri-tdfx
812     then
813     src_install_mesa-dri-tdfx()
814     {
815     install_dri_driver tdfx || die
816     setup_dynamic_dri classic || die
817     }
818     fi
819    
820     if driver_enabled dri-unichrome
821     then
822     src_install_mesa-dri-unichrome()
823     {
824     install_dri_driver unichrome || die
825     setup_dynamic_dri classic || die
826     }
827     fi
828    
829     if driver_enabled gallium-i915
830     then
831     src_install_mesa-gallium-i915()
832     {
833     install_gallium_driver i915 || die
834     setup_dynamic_dri gallium || die
835    
836     # gbm
837     install_gallium_pipe_driver i915 || die
838     }
839     fi
840    
841     if driver_enabled gallium-i965
842     then
843     src_install_mesa-gallium-i965()
844     {
845     install_gallium_driver i965 || die
846     setup_dynamic_dri gallium || die
847    
848     # gbm
849     install_gallium_pipe_driver i965 || die
850     }
851     fi
852    
853     if driver_enabled gallium-nouveau
854     then
855     src_install_mesa-gallium-nouveau()
856     {
857     install_gallium_driver nouveau || die
858     setup_dynamic_dri gallium || die
859    
860     # vdpau
861     install_gallium_vdpau_driver nouveau || die
862    
863     # gbm
864     install_gallium_pipe_driver nouveau || die
865     }
866     fi
867    
868     if driver_enabled gallium-r300
869     then
870     src_install_mesa-gallium-r300()
871     {
872     install_gallium_driver r300 || die
873     setup_dynamic_dri gallium || die
874    
875     # vdpau
876     #install_gallium_vdpau_driver r300 || die
877    
878     # gbm
879     install_gallium_pipe_driver r300 || die
880     }
881     fi
882    
883     if driver_enabled gallium-r600
884     then
885     src_install_mesa-gallium-r600()
886     {
887     install_gallium_driver r600 || die
888     setup_dynamic_dri gallium || die
889    
890     # vdpau
891     install_gallium_vdpau_driver r600 || die
892    
893     # gbm
894     install_gallium_pipe_driver r600 || die
895     }
896     fi
897    
898     if driver_enabled gallium-radeonsi
899     then
900     src_install_mesa-gallium-radeonsi()
901     {
902     install_gallium_driver radeonsi || die
903     setup_dynamic_dri gallium || die
904    
905     # vdpau
906     install_gallium_vdpau_driver radeonsi || die
907    
908     # gbm
909     install_gallium_pipe_driver radeonsi || die
910     }
911     fi
912    
913     if driver_enabled gallium-swrast
914     then
915     src_install_mesa-gallium-swrast()
916     {
917     install_gallium_driver swrast || die
918     setup_dynamic_dri gallium || die
919    
920     # vdpau
921     #install_gallium_vdpau_driver softpipe || die
922    
923     # gbm
924     install_gallium_pipe_driver swrast || die
925     }
926     fi
927    
928     if driver_enabled gallium-vmwgfx
929     then
930     src_install_mesa-gallium-vmwgfx()
931     {
932     install_gallium_driver vmwgfx || die
933     setup_dynamic_dri gallium || die
934    
935     # gbm
936     install_gallium_pipe_driver vmwgfx || die
937     }
938     fi
939    
940     postinstall_mesa()
941     {
942     ${MROOT}/usr/sbin/opengl-update --use-old xorg
943     }
944    
945     if driver_enabled dri-swrast
946     then
947     postinstall_mesa-dri-swrast()
948     {
949     ${MROOT}/usr/sbin/dri-update --use-old classic
950     }
951     fi
952    
953     if driver_enabled dri-i810
954     then
955     postinstall_mesa-dri-i810()
956     {
957     ${MROOT}/usr/sbin/dri-update --use-old classic
958     }
959     fi
960    
961     if driver_enabled dri-i915
962     then
963     postinstall_mesa-dri-i915()
964     {
965     ${MROOT}/usr/sbin/dri-update --use-old classic
966     }
967     fi
968    
969     if driver_enabled dri-i965
970     then
971     postinstall_mesa-dri-i965()
972     {
973     ${MROOT}/usr/sbin/dri-update --use-old classic
974     }
975     fi
976    
977     if driver_enabled dri-mach64
978     then
979     postinstall_mesa-dri-mach64()
980     {
981     ${MROOT}/usr/sbin/dri-update --use-old classic
982     }
983     fi
984    
985     if driver_enabled dri-mga
986     then
987     postinstall_mesa-dri-mga()
988     {
989     ${MROOT}/usr/sbin/dri-update --use-old classic
990     }
991     fi
992    
993     if driver_enabled dri-nouveau
994     then
995     postinstall_mesa-dri-nouveau()
996     {
997     ${MROOT}/usr/sbin/dri-update --use-old classic
998     }
999     fi
1000    
1001     if driver_enabled dri-r128
1002     then
1003     postinstall_mesa-dri-r128()
1004     {
1005     ${MROOT}/usr/sbin/dri-update --use-old classic
1006     }
1007     fi
1008    
1009     if driver_enabled dri-r200
1010     then
1011     postinstall_mesa-dri-r200()
1012     {
1013     ${MROOT}/usr/sbin/dri-update --use-old classic
1014     }
1015     fi
1016    
1017     if driver_enabled dri-r300
1018     then
1019     postinstall_mesa-dri-r300()
1020     {
1021     ${MROOT}/usr/sbin/dri-update --use-old classic
1022     }
1023     fi
1024    
1025     if driver_enabled dri-r600
1026     then
1027     postinstall_mesa-dri-r600()
1028     {
1029     ${MROOT}/usr/sbin/dri-update --use-old classic
1030     }
1031     fi
1032    
1033     if driver_enabled dri-radeon
1034     then
1035     postinstall_mesa-dri-radeon()
1036     {
1037     ${MROOT}/usr/sbin/dri-update --use-old classic
1038     }
1039     fi
1040    
1041     if driver_enabled dri-savage
1042     then
1043     postinstall_mesa-dri-savage()
1044     {
1045     ${MROOT}/usr/sbin/dri-update --use-old classic
1046     }
1047     fi
1048    
1049     if driver_enabled dri-sis
1050     then
1051     postinstall_mesa-dri-sis()
1052     {
1053     ${MROOT}/usr/sbin/dri-update --use-old classic
1054     }
1055     fi
1056    
1057     if driver_enabled dri-tdfx
1058     then
1059     postinstall_mesa-dri-tdfx()
1060     {
1061     ${MROOT}/usr/sbin/dri-update --use-old classic
1062     }
1063     fi
1064    
1065     if driver_enabled dri-unichrome
1066     then
1067     postinstall_mesa-dri-unichrome()
1068     {
1069     ${MROOT}/usr/sbin/dri-update --use-old classic
1070     }
1071     fi
1072    
1073     if driver_enabled gallium-i915
1074     then
1075     postinstall_mesa-gallium-i915()
1076     {
1077     ${MROOT}/usr/sbin/dri-update --use-old gallium
1078     }
1079     fi
1080    
1081     if driver_enabled gallium-i965
1082     then
1083     postinstall_mesa-gallium-i965()
1084     {
1085     ${MROOT}/usr/sbin/dri-update --use-old gallium
1086     }
1087     fi
1088    
1089     if driver_enabled gallium-nouveau
1090     then
1091     postinstall_mesa-gallium-nouveau()
1092     {
1093     ${MROOT}/usr/sbin/dri-update --use-old gallium
1094     }
1095     fi
1096    
1097     if driver_enabled gallium-r300
1098     then
1099     postinstall_mesa-gallium-r300()
1100     {
1101     ${MROOT}/usr/sbin/dri-update --use-old gallium
1102     }
1103     fi
1104    
1105     if driver_enabled gallium-r600
1106     then
1107     postinstall_mesa-gallium-r600()
1108     {
1109     ${MROOT}/usr/sbin/dri-update --use-old gallium
1110     }
1111     fi
1112    
1113     if driver_enabled gallium-radeonsi
1114     then
1115     postinstall_mesa-gallium-radeonsi()
1116     {
1117     ${MROOT}/usr/sbin/dri-update --use-old gallium
1118     }
1119     fi
1120    
1121     if driver_enabled gallium-swrast
1122     then
1123     postinstall_mesa-gallium-swrast()
1124     {
1125     ${MROOT}/usr/sbin/dri-update --use-old gallium
1126     }
1127     fi
1128    
1129     if driver_enabled gallium-vmwgfx
1130     then
1131     postinstall_mesa-gallium-vmwgfx()
1132     {
1133     ${MROOT}/usr/sbin/dri-update --use-old gallium
1134     }
1135     fi