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