Magellan Linux

Contents of /smage/branches/alx-0_6_0/core/mesa/mesa-7.10.2-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


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