Magellan Linux

Annotation of /branches/magellan-next/core/mesa/mesa-7.10.2-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 7731 - (hide annotations) (download)
Mon May 30 16:41:36 2011 UTC (12 years, 11 months ago) by niro
File size: 9309 byte(s)
auto added: ver bump to 7.10.2-r1
1 niro 7721 # $Id$
2    
3     PNAME="mesa"
4     PVER="7.10.2"
5     PBUILD="r1"
6    
7     STATE="unstable"
8    
9     HOMEPAGE="http://mesa3d.sourceforge.net/"
10    
11     MESA_DEPEND=">= dev-libs/expat-2
12     >= x11-libs/libX11-1.4
13     >= x11-libs/libXext-1.3
14     >= x11-libs/libXxf86vm-1.1
15     >= x11-libs/libXi-1.4
16     >= x11-libs/libXmu-1.1
17     >= x11-libs/libdrm-2.4.25
18     >= x11-libs/libICE-1
19     >= x11-base/opengl-update-magellan-2.2.13
20     >= x11-libs/libxcb-1
21     >= x11-libs/libXfixes-5
22     >= x11-libs/libXdamage-1"
23    
24     MESA_PROGS_DEPEND=">= virtual/glut"
25    
26     SDEPEND="${MESA_DEPEND}
27     ${MESA_PROGS_DEPEND}
28     >= dev-util/pkgconfig-0.25
29     >= x11-misc/makedepend-1
30     >= x11-proto/xf86vidmodeproto-2.3
31     >= x11-libs/libXxf86vm-1.1
32     >= x11-proto/glproto-1.4.12
33     >= x11-proto/inputproto-2
34     >= x11-proto/xextproto-7.2
35     >= x11-proto/xf86driproto-2.1
36     >= x11-proto/dri2proto-2.3
37     >= x11-proto/xcb-proto-1.6
38     >= x11-proto/xproto-7
39     >= x11-proto/fixesproto-5
40     >= x11-proto/damageproto-1.2"
41    
42     # must be set before the include of multilib!
43     EMUL_LINUX_32=true
44     sminclude xorg mtools multilib
45    
46     # must be set *after* the include of xorg!
47     SRCFILE="MesaLib-${PVER/_/-}.tar.bz2"
48 niro 7724 # libs SRCDIR
49 niro 7721 SRCDIR="${BUILDDIR}/Mesa-${PVER/_/-}"
50    
51     SPLIT_PACKAGES="mesa
52     mesa-dri-swrast
53     mesa-dri-i810
54     mesa-dri-i915
55     mesa-dri-i965
56     mesa-dri-mach64
57     mesa-dri-mga
58     mesa-dri-r128
59     mesa-dri-r200
60     mesa-dri-r300
61     mesa-dri-r600
62     mesa-dri-radeon
63     mesa-dri-savage
64     mesa-dri-sis
65     mesa-dri-tdfx
66     mesa-dri-unichrome"
67    
68     SRC_URI=(
69     ftp://ftp.freedesktop.org/pub/mesa/${PVER}/${SRCFILE}
70     sourceforge://mesa3d/${SRCFILE}
71     mirror://${PNAME}/${SRCFILE}
72     mirror://${PNAME}/libGLU.la
73     mirror://${PNAME}/libGL.la
74     )
75    
76     UP2DATE="updatecmd ftp://ftp.freedesktop.org/pub/mesa/current | lasttarball"
77    
78     split_info_mesa()
79     {
80     DESCRIPTION="Mesa3D OpenGL graphics library."
81     PCATEGORIE="media-libs"
82    
83     DEPEND="${MESA_DEPEND}"
84    
85 niro 7731 PROVIDE="virtual/opengl"
86    
87 niro 7721 postinstall()
88     {
89     ${MROOT}/usr/sbin/opengl-update --use-old xorg
90     }
91     }
92    
93     split_info_mesa-dri-swrast()
94     {
95     DESCRIPTION="Mesa Software Raster DRI driver."
96     DEPEND="== ${PCATEGORIE}/mesa-${PVER}"
97     }
98    
99     split_info_mesa-dri-i810()
100     {
101     DESCRIPTION="Mesa Intel i810 DRI driver."
102     DEPEND="== ${PCATEGORIE}/mesa-${PVER}"
103     }
104    
105     split_info_mesa-dri-i915()
106     {
107     DESCRIPTION="Mesa Intel i915 DRI driver."
108     DEPEND="== ${PCATEGORIE}/mesa-${PVER}"
109     }
110    
111     split_info_mesa-dri-i965()
112     {
113     DESCRIPTION="Mesa Intel i965 DRI driver."
114     DEPEND="== ${PCATEGORIE}/mesa-${PVER}"
115     }
116    
117     split_info_mesa-dri-mach64()
118     {
119     DESCRIPTION="Mesa ATI mach64 DRI driver."
120     DEPEND="== ${PCATEGORIE}/mesa-${PVER}"
121     }
122    
123     split_info_mesa-dri-mga()
124     {
125     DESCRIPTION="Mesa Matrox mga DRI driver."
126     DEPEND="== ${PCATEGORIE}/mesa-${PVER}"
127     }
128    
129     split_info_mesa-dri-r128()
130     {
131     DESCRIPTION="Mesa ATI Rage128 DRI driver."
132     DEPEND="== ${PCATEGORIE}/mesa-${PVER}"
133     }
134    
135     split_info_mesa-dri-r200()
136     {
137     DESCRIPTION="Mesa ATI Radeon r200 DRI driver."
138     DEPEND="== ${PCATEGORIE}/mesa-${PVER}"
139     }
140    
141     split_info_mesa-dri-r300()
142     {
143     DESCRIPTION="Mesa ATI Radeon r300 DRI driver."
144     DEPEND="== ${PCATEGORIE}/mesa-${PVER}"
145     }
146    
147     split_info_mesa-dri-r600()
148     {
149     DESCRIPTION="Mesa ATI Radeon r600 DRI driver."
150     DEPEND="== ${PCATEGORIE}/mesa-${PVER}"
151     }
152    
153     split_info_mesa-dri-radeon()
154     {
155     DESCRIPTION="Mesa ATI Radeon generic DRI driver."
156     DEPEND="== ${PCATEGORIE}/mesa-${PVER}"
157     }
158    
159     split_info_mesa-dri-savage()
160     {
161     DESCRIPTION="Mesa S3 Savage DRI driver."
162     DEPEND="== ${PCATEGORIE}/mesa-${PVER}"
163     }
164    
165     split_info_mesa-dri-sis()
166     {
167     DESCRIPTION="Mesa SIS generic DRI driver."
168     DEPEND="== ${PCATEGORIE}/mesa-${PVER}"
169     }
170    
171     split_info_mesa-dri-tdfx()
172     {
173     DESCRIPTION="Mesa 3DFX Voodoo DRI driver."
174     DEPEND="== ${PCATEGORIE}/mesa-${PVER}"
175     }
176    
177     split_info_mesa-dri-unichrome()
178     {
179     DESCRIPTION="Mesa VIA Chrome DRI driver."
180     DEPEND="== ${PCATEGORIE}/mesa-${PVER}"
181     }
182    
183     src_prepare()
184     {
185     munpack ${SRCFILE} || die
186    
187     # no debug code in the drives (gentoo)
188     all-abis 'find src/mesa/drivers/dri -name *.[hc] -exec egrep -l "\#define\W+DO_DEBUG\W+1" {} \; | xargs sed -i -re "s/\#define\W+DO_DEBUG\W+1/\#define DO_DEBUG 0/" ;'
189    
190     # get rid of glut includes
191     all-abis rm -f include/GL/glut*h || die
192     }
193    
194     src_compile()
195     {
196     # gallium is highly experimental, disabled atm!
197     mconfigure \
198     --with-driver=dri \
199     --with-dri-driverdir=/usr/'$(mlibdir)'/dri \
200     --disable-debug \
201     --disable-glut \
202     --disable-ttm-api \
203     --without-demos \
204     --enable-glx-tls \
205     --enable-asm \
206     --enable-xcb \
207     --enable-glw \
208 niro 7729 --enable-egl \
209     --enable-gles1 \
210     --enable-gles2 \
211     --enable-galium-egl \
212     --enable-gallium-svga \
213     --enable-gallium-radeon \
214     --enable-gallium-r600 \
215     --enable-gallium-nouveau \
216     --enable-gallium-swrast \
217     --enable-gallium-i915 \
218     --enable-gallium-i965 \
219     --with-state-trackers=glx,dri,egl,vega \
220 niro 7721 || die
221    
222     # only build software renderer on multilib arches
223     if [[ ${ARCH} = x86_64 ]]
224     then
225     only-m32 "echo 'DRI_DIRS =' >> configs/autoconf" || die
226     fi
227    
228 niro 7729 mmake -j1 || die
229 niro 7721 }
230    
231     src_install_mesa()
232     {
233     # needed directories
234     minstalldir /etc/env.d || die
235    
236     mmake DESTDIR=${BINDIR} install || die
237    
238     # missing gl headers
239     minstallfile src/glw/GLwDrawA.h /usr/include/GL || die
240    
241     # remove private headers
242     rm -f ${BINDIR}/usr/include/GL/GLw*P.h || die
243    
244     for abi in ${MULTILIB_ABIS}
245     do
246     [[ ${abi} = m32 ]] && ABI_LIBDIR="lib"
247     [[ ${abi} = m64 ]] && ABI_LIBDIR="lib64"
248     cd ${SRCDIR}-${abi}
249    
250     # fix opengl-symlinks
251     # first remove invalid symlinks
252     find ${BINDIR}/usr/$(mlibdir) -name libGL\.* -type l | xargs rm -f
253     # now create required opengl-symlinks
254     mlink libGL.so.1.2 /usr/$(mlibdir)/libGL.so || die
255     mlink libGL.so.1.2 /usr/$(mlibdir)/libGL.so.1 || die
256    
257     # now setup dynamic opengl
258     minstalldir /usr/$(mlibdir)/opengl/xorg/lib || die
259     minstalldir /usr/$(mlibdir)/opengl/xorg/extensions || die
260     minstalldir /usr/$(mlibdir)/opengl/xorg/include || die
261    
262     local x
263     for x in ${BINDIR}/usr/$(mlibdir)/libGL.so* \
264     ${BINDIR}/usr/$(mlibdir)/libGL.la \
265     ${BINDIR}/usr/$(mlibdir)/libGL.a
266     do
267     if [ -f ${x} -o -L ${x} ]
268     then
269     # libGL.a cause problems with tuxracer, etc
270     mv -f ${x} ${BINDIR}/usr/$(mlibdir)/opengl/xorg/lib || die "${x}"
271     fi
272     done
273     for x in ${BINDIR}/usr/include/GL/{gl.h,glx.h,glext.h,glxext.h}
274     do
275     if [ -f ${x} -o -L ${x} ]
276     then
277     mv -f ${x} ${BINDIR}/usr/$(mlibdir)/opengl/xorg/include || die "${x}"
278     fi
279     done
280    
281     # satisfy libtool
282     minstallfile -s libGLU.la /usr/$(mlibdir) || die
283     minstallfile -s libGL.la /usr/$(mlibdir)/opengl/xorg/lib || die
284    
285     # fix libdir on 64bit arches
286     if [[ $(mlibdir) != lib ]]
287     then
288     sed -i "s:/usr/lib:/usr/$(mlibdir):g" ${BINDIR}/usr/$(mlibdir)/libGLU.la || die
289     sed -i "s:/usr/lib:/usr/$(mlibdir):g" ${BINDIR}/usr/$(mlibdir)/opengl/xorg/lib/libGL.la || die
290     fi
291    
292     # create the two-number versioned libs (.so.#.#), since only .so.# and
293     # .so.#.#.# were made
294     local x
295     for x in ${BINDIR}/usr/$(mlibdir)/libGLU.so.*.*.* \
296     ${BINDIR}/usr/$(mlibdir)/libGLw.so.*.*.*
297     do
298     local lib_name_dot3="$(basename $(ls ${x}))"
299     local lib_name_dot2="${lib_name_dot3%.*}"
300     local lib_name_dot1="${lib_name_dot2%.*}"
301     local lib_name_dot0="${lib_name_dot1%.*}"
302     mlink ${lib_name_dot3} /usr/$(mlibdir)/${lib_name_dot2} || die "${x}"
303     mlink ${lib_name_dot3} /usr/$(mlibdir)/${lib_name_dot1} || die "${x}"
304     mlink ${lib_name_dot3} /usr/$(mlibdir)/${lib_name_dot0} || die "${x}"
305     done
306    
307     # export LIBGL_DRIVER_PATH location.
308     # we are using '/usr/lib/dri' as hardcoded location.
309     # but nvidia and ati are using '/usr/$(mlibdir)/xorg/modules/dri'
310     # LIBGL_DRIVER_PATH overwrites the hardcoded location and
311     # if nvidia or ati driver are installed
312     # the dri modules will never be found by libGL
313     # use "LIBGL_DEBUG=verbose glxinfo" to check this issue
314     echo "LIBGL_DRIVERS_PATH=/usr/$(mlibdir)/dri" > ${BINDIR}/etc/env.d/09mesa-${abi} || die
315     done
316    
317     # remove dri-drivers
318 niro 7728 # rm -r ${BINDIR}/usr/$(mlibdir)/dri || die
319     # if [[ $(mlibdir) != lib ]]
320     # then
321     # rm -r ${BINDIR}/usr/lib/dri || die
322     # fi
323 niro 7721 }
324    
325     src_install_mesa-dri-swrast()
326     {
327     mmake -C src/mesa/drivers/dri/swrast DESTDIR=${BINDIR} install || die
328     }
329    
330     src_install_mesa-dri-i810()
331     {
332     mmake -C src/mesa/drivers/dri/i810 DESTDIR=${BINDIR} install || die
333     }
334    
335     src_install_mesa-dri-i915()
336     {
337     mmake -C src/mesa/drivers/dri/i915 DESTDIR=${BINDIR} install || die
338     }
339    
340     src_install_mesa-dri-i965()
341     {
342     mmake -C src/mesa/drivers/dri/i965 DESTDIR=${BINDIR} install || die
343     }
344    
345     src_install_mesa-dri-mach64()
346     {
347     mmake -C src/mesa/drivers/dri/mach64 DESTDIR=${BINDIR} install || die
348     }
349     src_install_mesa-dri-mga()
350     {
351     mmake -C src/mesa/drivers/dri/mga DESTDIR=${BINDIR} install || die
352     }
353    
354     src_install_mesa-dri-r128()
355     {
356     mmake -C src/mesa/drivers/dri/r128 DESTDIR=${BINDIR} install || die
357     }
358    
359     src_install_mesa-dri-r200()
360     {
361     mmake -C src/mesa/drivers/dri/r200 DESTDIR=${BINDIR} install || die
362     }
363    
364     src_install_mesa-dri-r300()
365     {
366     mmake -C src/mesa/drivers/dri/r300 DESTDIR=${BINDIR} install || die
367     }
368    
369     src_install_mesa-dri-r600()
370     {
371     mmake -C src/mesa/drivers/dri/r600 DESTDIR=${BINDIR} install || die
372     }
373    
374     src_install_mesa-dri-radeon()
375     {
376     mmake -C src/mesa/drivers/dri/radeon DESTDIR=${BINDIR} install || die
377     }
378    
379     src_install_mesa-dri-savage()
380     {
381     mmake -C src/mesa/drivers/dri/savage DESTDIR=${BINDIR} install || die
382     }
383    
384     src_install_mesa-dri-sis()
385     {
386     mmake -C src/mesa/drivers/dri/sis DESTDIR=${BINDIR} install || die
387     }
388    
389     src_install_mesa-dri-tdfx()
390     {
391     mmake -C src/mesa/drivers/dri/tdfx DESTDIR=${BINDIR} install || die
392     }
393    
394     src_install_mesa-dri-unichrome()
395     {
396     mmake -C src/mesa/drivers/dri/unichrome DESTDIR=${BINDIR} install || die
397     }
398 niro 7729