Magellan Linux

Annotation of /branches/R11-stable/extras/mesa/mesa-10.4.3-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


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