Gentoo Archives: gentoo-commits

From: Matt Turner <mattst88@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/x11:master commit in: media-libs/mesa/
Date: Sun, 03 Nov 2013 03:29:57
Message-Id: 1383449380.b055298f643027b3283ecbf14ea17e0033185228.mattst88@gentoo
1 commit: b055298f643027b3283ecbf14ea17e0033185228
2 Author: Matt Turner <mattst88 <AT> gmail <DOT> com>
3 AuthorDate: Sun Nov 3 03:29:08 2013 +0000
4 Commit: Matt Turner <mattst88 <AT> gentoo <DOT> org>
5 CommitDate: Sun Nov 3 03:29:40 2013 +0000
6 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/x11.git;a=commit;h=b055298f
7
8 media-libs/mesa: Move 9.2.2 to tree.
9
10 ---
11 media-libs/mesa/mesa-9.2.2.ebuild | 478 --------------------------------------
12 1 file changed, 478 deletions(-)
13
14 diff --git a/media-libs/mesa/mesa-9.2.2.ebuild b/media-libs/mesa/mesa-9.2.2.ebuild
15 deleted file mode 100644
16 index 2e44083..0000000
17 --- a/media-libs/mesa/mesa-9.2.2.ebuild
18 +++ /dev/null
19 @@ -1,478 +0,0 @@
20 -# Copyright 1999-2013 Gentoo Foundation
21 -# Distributed under the terms of the GNU General Public License v2
22 -# $Header: $
23 -
24 -EAPI=5
25 -
26 -EGIT_REPO_URI="git://anongit.freedesktop.org/mesa/mesa"
27 -
28 -if [[ ${PV} = 9999* ]]; then
29 - GIT_ECLASS="git-2"
30 - EXPERIMENTAL="true"
31 -fi
32 -
33 -PYTHON_COMPAT=( python{2_6,2_7} )
34 -
35 -inherit base autotools multilib multilib-minimal flag-o-matic \
36 - python-any-r1 toolchain-funcs ${GIT_ECLASS}
37 -
38 -OPENGL_DIR="xorg-x11"
39 -
40 -MY_PN="${PN/m/M}"
41 -MY_P="${MY_PN}-${PV/_/-}"
42 -MY_SRC_P="${MY_PN}Lib-${PV/_/-}"
43 -
44 -FOLDER="${PV/_rc*/}"
45 -
46 -DESCRIPTION="OpenGL-like graphic library for Linux"
47 -HOMEPAGE="http://mesa3d.sourceforge.net/"
48 -
49 -#SRC_PATCHES="mirror://gentoo/${P}-gentoo-patches-01.tar.bz2"
50 -if [[ $PV = 9999* ]]; then
51 - SRC_URI="${SRC_PATCHES}"
52 -else
53 - SRC_URI="ftp://ftp.freedesktop.org/pub/mesa/${FOLDER}/${MY_SRC_P}.tar.bz2
54 - ${SRC_PATCHES}"
55 -fi
56 -
57 -# The code is MIT/X11.
58 -# GLES[2]/gl[2]{,ext,platform}.h are SGI-B-2.0
59 -LICENSE="MIT SGI-B-2.0"
60 -SLOT="0"
61 -KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~x86-freebsd ~amd64-linux ~arm-linux ~ia64-linux ~x86-linux ~sparc-solaris ~x64-solaris ~x86-solaris"
62 -
63 -INTEL_CARDS="i915 i965 ilo intel"
64 -RADEON_CARDS="r100 r200 r300 r600 radeon radeonsi"
65 -VIDEO_CARDS="${INTEL_CARDS} ${RADEON_CARDS} freedreno nouveau vmware"
66 -for card in ${VIDEO_CARDS}; do
67 - IUSE_VIDEO_CARDS+=" video_cards_${card}"
68 -done
69 -
70 -IUSE="${IUSE_VIDEO_CARDS}
71 - bindist +classic debug +egl +gallium gbm gles1 gles2 +llvm +nptl opencl
72 - openvg osmesa pax_kernel pic r600-llvm-compiler selinux vdpau
73 - wayland xvmc xa xorg kernel_FreeBSD"
74 -
75 -REQUIRED_USE="
76 - llvm? ( gallium )
77 - openvg? ( egl gallium )
78 - opencl? (
79 - gallium
80 - video_cards_r600? ( r600-llvm-compiler )
81 - video_cards_radeon? ( r600-llvm-compiler )
82 - video_cards_radeonsi? ( r600-llvm-compiler )
83 - )
84 - gles1? ( egl )
85 - gles2? ( egl )
86 - r600-llvm-compiler? ( gallium llvm || ( video_cards_r600 video_cards_radeonsi video_cards_radeon ) )
87 - wayland? ( egl )
88 - xa? ( gallium )
89 - xorg? ( gallium )
90 - video_cards_freedreno? ( gallium )
91 - video_cards_intel? ( || ( classic gallium ) )
92 - video_cards_i915? ( || ( classic gallium ) )
93 - video_cards_i965? ( classic )
94 - video_cards_ilo? ( gallium )
95 - video_cards_nouveau? ( || ( classic gallium ) )
96 - video_cards_radeon? ( || ( classic gallium ) )
97 - video_cards_r100? ( classic )
98 - video_cards_r200? ( classic )
99 - video_cards_r300? ( gallium )
100 - video_cards_r600? ( gallium )
101 - video_cards_radeonsi? ( gallium llvm )
102 - video_cards_vmware? ( gallium )
103 -"
104 -
105 -LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.46"
106 -# keep correct libdrm and dri2proto dep
107 -# keep blocks in rdepend for binpkg
108 -RDEPEND="
109 - !<x11-base/xorg-server-1.7
110 - !<=x11-proto/xf86driproto-2.0.3
111 - abi_x86_32? ( !app-emulation/emul-linux-x86-opengl[-abi_x86_32(-)] )
112 - classic? ( app-admin/eselect-mesa )
113 - gallium? ( app-admin/eselect-mesa )
114 - >=app-admin/eselect-opengl-1.2.7
115 - dev-libs/expat[${MULTILIB_USEDEP}]
116 - gbm? ( virtual/udev[${MULTILIB_USEDEP}] )
117 - >=x11-libs/libX11-1.3.99.901[${MULTILIB_USEDEP}]
118 - x11-libs/libXdamage[${MULTILIB_USEDEP}]
119 - x11-libs/libXext[${MULTILIB_USEDEP}]
120 - x11-libs/libXxf86vm[${MULTILIB_USEDEP}]
121 - >=x11-libs/libxcb-1.8.1[${MULTILIB_USEDEP}]
122 - opencl? (
123 - app-admin/eselect-opencl
124 - dev-libs/libclc
125 - )
126 - vdpau? ( >=x11-libs/libvdpau-0.4.1[${MULTILIB_USEDEP}] )
127 - wayland? ( >=dev-libs/wayland-1.0.3[${MULTILIB_USEDEP}] )
128 - xorg? (
129 - x11-base/xorg-server:=
130 - x11-libs/libdrm[libkms]
131 - )
132 - xvmc? ( >=x11-libs/libXvMC-1.0.6[${MULTILIB_USEDEP}] )
133 - ${LIBDRM_DEPSTRING}[video_cards_freedreno?,video_cards_nouveau?,video_cards_vmware?,${MULTILIB_USEDEP}]
134 -"
135 -for card in ${INTEL_CARDS}; do
136 - RDEPEND="${RDEPEND}
137 - video_cards_${card}? ( ${LIBDRM_DEPSTRING}[video_cards_intel] )
138 - "
139 -done
140 -
141 -for card in ${RADEON_CARDS}; do
142 - RDEPEND="${RDEPEND}
143 - video_cards_${card}? ( ${LIBDRM_DEPSTRING}[video_cards_radeon] )
144 - "
145 -done
146 -
147 -DEPEND="${RDEPEND}
148 - llvm? (
149 - >=sys-devel/llvm-2.9[${MULTILIB_USEDEP}]
150 - r600-llvm-compiler? ( sys-devel/llvm[video_cards_radeon] )
151 - video_cards_radeonsi? ( sys-devel/llvm[video_cards_radeon] )
152 - )
153 - opencl? (
154 - >=sys-devel/llvm-3.3-r1[video_cards_radeon,${MULTILIB_USEDEP}]
155 - >=sys-devel/clang-3.3[${MULTILIB_USEDEP}]
156 - >=sys-devel/gcc-4.6
157 - )
158 - sys-devel/bison
159 - sys-devel/flex
160 - virtual/pkgconfig
161 - >=x11-proto/dri2proto-2.6[${MULTILIB_USEDEP}]
162 - >=x11-proto/glproto-1.4.15-r1[${MULTILIB_USEDEP}]
163 - >=x11-proto/xextproto-7.0.99.1[${MULTILIB_USEDEP}]
164 - x11-proto/xf86driproto[${MULTILIB_USEDEP}]
165 - x11-proto/xf86vidmodeproto[${MULTILIB_USEDEP}]
166 - $(python_gen_any_dep 'dev-libs/libxml2[python,${PYTHON_USEDEP}]')
167 -"
168 -
169 -python_check_deps() {
170 - has_version "dev-libs/libxml2[python,${PYTHON_USEDEP}]"
171 -}
172 -
173 -S="${WORKDIR}/${MY_P}"
174 -
175 -# It is slow without texrels, if someone wants slow
176 -# mesa without texrels +pic use is worth the shot
177 -QA_EXECSTACK="usr/lib*/opengl/xorg-x11/lib/libGL.so*"
178 -QA_WX_LOAD="usr/lib*/opengl/xorg-x11/lib/libGL.so*"
179 -
180 -# Think about: ggi, fbcon, no-X configs
181 -
182 -pkg_setup() {
183 - # workaround toc-issue wrt #386545
184 - use ppc64 && append-flags -mminimal-toc
185 -
186 - python-any-r1_pkg_setup
187 -}
188 -
189 -src_unpack() {
190 - default
191 - [[ $PV = 9999* ]] && git-2_src_unpack
192 -}
193 -
194 -src_prepare() {
195 - # apply patches
196 - if [[ ${PV} != 9999* && -n ${SRC_PATCHES} ]]; then
197 - EPATCH_FORCE="yes" \
198 - EPATCH_SOURCE="${WORKDIR}/patches" \
199 - EPATCH_SUFFIX="patch" \
200 - epatch
201 - fi
202 -
203 - # relax the requirement that r300 must have llvm, bug 380303
204 - epatch "${FILESDIR}"/${PN}-9.2-dont-require-llvm-for-r300.patch
205 -
206 - # fix for hardened pax_kernel, bug 240956
207 - [[ ${PV} != 9999* ]] && epatch "${FILESDIR}"/glx_ro_text_segm.patch
208 -
209 - # Solaris needs some recent POSIX stuff in our case
210 - if [[ ${CHOST} == *-solaris* ]] ; then
211 - sed -i -e "s/-DSVR4/-D_POSIX_C_SOURCE=200112L/" configure.ac || die
212 - fi
213 -
214 - base_src_prepare
215 -
216 - eautoreconf
217 - multilib_copy_sources
218 -}
219 -
220 -multilib_src_configure() {
221 - local myconf
222 -
223 - if use classic; then
224 - # Configurable DRI drivers
225 - driver_enable swrast
226 -
227 - # Intel code
228 - driver_enable video_cards_i915 i915
229 - driver_enable video_cards_i965 i965
230 - if ! use video_cards_i915 && \
231 - ! use video_cards_i965; then
232 - driver_enable video_cards_intel i915 i965
233 - fi
234 -
235 - # Nouveau code
236 - driver_enable video_cards_nouveau nouveau
237 -
238 - # ATI code
239 - driver_enable video_cards_r100 radeon
240 - driver_enable video_cards_r200 r200
241 - if ! use video_cards_r100 && \
242 - ! use video_cards_r200; then
243 - driver_enable video_cards_radeon radeon r200
244 - fi
245 - fi
246 -
247 - if use egl; then
248 - myconf+="
249 - --with-egl-platforms=x11$(use wayland && echo ",wayland")$(use gbm && echo ",drm")
250 - $(use_enable gallium gallium-egl)
251 - "
252 - fi
253 -
254 - if use gallium; then
255 - myconf+="
256 - $(use_enable llvm gallium-llvm)
257 - $(use_enable openvg)
258 - $(use_enable r600-llvm-compiler)
259 - $(use_enable vdpau)
260 - $(use_enable xvmc)
261 - "
262 - gallium_enable swrast
263 - gallium_enable video_cards_vmware svga
264 - gallium_enable video_cards_nouveau nouveau
265 - gallium_enable video_cards_i915 i915
266 - gallium_enable video_cards_ilo ilo
267 - if ! use video_cards_i915 && \
268 - ! use video_cards_i965; then
269 - gallium_enable video_cards_intel i915
270 - fi
271 -
272 - gallium_enable video_cards_r300 r300
273 - gallium_enable video_cards_r600 r600
274 - gallium_enable video_cards_radeonsi radeonsi
275 - if ! use video_cards_r300 && \
276 - ! use video_cards_r600; then
277 - gallium_enable video_cards_radeon r300 r600
278 - fi
279 -
280 - gallium_enable video_cards_freedreno freedreno
281 - # opencl stuff
282 - if use opencl; then
283 - myconf+="
284 - $(use_enable opencl)
285 - --with-opencl-libdir="${EPREFIX}/usr/$(get_libdir)/OpenCL/vendors/mesa"
286 - --with-clang-libdir="${EPREFIX}/usr/lib"
287 - "
288 - fi
289 - fi
290 -
291 - # x86 hardened pax_kernel needs glx-rts, bug 240956
292 - if use pax_kernel; then
293 - myconf+="
294 - $(use_enable x86 glx-rts)
295 - "
296 - fi
297 -
298 - # build fails with BSD indent, bug #428112
299 - use userland_GNU || export INDENT=cat
300 -
301 - if ! multilib_is_native_abi; then
302 - myconf+="--disable-xorg
303 - LLVM_CONFIG=${EPREFIX}/usr/bin/llvm-config.${ABI}"
304 - fi
305 -
306 - econf \
307 - --enable-dri \
308 - --enable-glx \
309 - --enable-shared-glapi \
310 - $(use_enable !bindist texture-float) \
311 - $(use_enable debug) \
312 - $(use_enable egl) \
313 - $(use_enable gbm) \
314 - $(use_enable gles1) \
315 - $(use_enable gles2) \
316 - $(use_enable nptl glx-tls) \
317 - $(use_enable osmesa) \
318 - $(use_enable !pic asm) \
319 - $(use_enable xa) \
320 - $(use_enable xorg) \
321 - --with-dri-drivers=${DRI_DRIVERS} \
322 - --with-gallium-drivers=${GALLIUM_DRIVERS} \
323 - --with-llvm-shared-libs \
324 - PYTHON2="${PYTHON}" \
325 - ${myconf}
326 -}
327 -
328 -multilib_src_install() {
329 - emake install DESTDIR="${D}"
330 -
331 - # Move libGL and others from /usr/lib to /usr/lib/opengl/blah/lib
332 - # because user can eselect desired GL provider.
333 - ebegin "Moving libGL and friends for dynamic switching"
334 - local x
335 - local gl_dir="/usr/$(get_libdir)/opengl/${OPENGL_DIR}/"
336 - dodir ${gl_dir}/{lib,extensions,include/GL}
337 - for x in "${ED}"/usr/$(get_libdir)/lib{EGL,GL*,OpenVG}.{la,a,so*}; do
338 - if [ -f ${x} -o -L ${x} ]; then
339 - mv -f "${x}" "${ED}${gl_dir}"/lib \
340 - || die "Failed to move ${x}"
341 - fi
342 - done
343 - for x in "${ED}"/usr/include/GL/{gl.h,glx.h,glext.h,glxext.h}; do
344 - if [ -f ${x} -o -L ${x} ]; then
345 - mv -f "${x}" "${ED}${gl_dir}"/include/GL \
346 - || die "Failed to move ${x}"
347 - fi
348 - done
349 - for x in "${ED}"/usr/include/{EGL,GLES*,VG,KHR}; do
350 - if [ -d ${x} ]; then
351 - mv -f "${x}" "${ED}${gl_dir}"/include \
352 - || die "Failed to move ${x}"
353 - fi
354 - done
355 - eend $?
356 -
357 - if use classic || use gallium; then
358 - ebegin "Moving DRI/Gallium drivers for dynamic switching"
359 - local gallium_drivers=( i915_dri.so i965_dri.so r300_dri.so r600_dri.so swrast_dri.so )
360 - keepdir /usr/$(get_libdir)/dri
361 - dodir /usr/$(get_libdir)/mesa
362 - for x in ${gallium_drivers[@]}; do
363 - if [ -f "$(get_libdir)/gallium/${x}" ]; then
364 - mv -f "${ED}/usr/$(get_libdir)/dri/${x}" "${ED}/usr/$(get_libdir)/dri/${x/_dri.so/g_dri.so}" \
365 - || die "Failed to move ${x}"
366 - insinto "/usr/$(get_libdir)/dri/"
367 - if [ -f "$(get_libdir)/${x}" ]; then
368 - insopts -m0755
369 - doins "$(get_libdir)/${x}"
370 - fi
371 - fi
372 - done
373 - for x in "${ED}"/usr/$(get_libdir)/dri/*.so; do
374 - if [ -f ${x} -o -L ${x} ]; then
375 - mv -f "${x}" "${x/dri/mesa}" \
376 - || die "Failed to move ${x}"
377 - fi
378 - done
379 - pushd "${ED}"/usr/$(get_libdir)/dri || die "pushd failed"
380 - ln -s ../mesa/*.so . || die "Creating symlink failed"
381 - # remove symlinks to drivers known to eselect
382 - for x in ${gallium_drivers[@]}; do
383 - if [ -f ${x} -o -L ${x} ]; then
384 - rm "${x}" || die "Failed to remove ${x}"
385 - fi
386 - done
387 - popd
388 - eend $?
389 - fi
390 - if use opencl; then
391 - ebegin "Moving Gallium/Clover OpenCL implementation for dynamic switching"
392 - local cl_dir="/usr/$(get_libdir)/OpenCL/vendors/mesa"
393 - dodir ${cl_dir}/{lib,include}
394 - if [ -f "${ED}/usr/$(get_libdir)/libOpenCL.so" ]; then
395 - mv -f "${ED}"/usr/$(get_libdir)/libOpenCL.so* \
396 - "${ED}"${cl_dir}
397 - fi
398 - if [ -f "${ED}/usr/include/CL/opencl.h" ]; then
399 - mv -f "${ED}"/usr/include/CL \
400 - "${ED}"${cl_dir}/include
401 - fi
402 - eend $?
403 - fi
404 -}
405 -
406 -multilib_src_install_all() {
407 - prune_libtool_files --all
408 - einstalldocs
409 -
410 - if use !bindist; then
411 - dodoc docs/patents.txt
412 - fi
413 -
414 - # Install config file for eselect mesa
415 - insinto /usr/share/mesa
416 - newins "${FILESDIR}/eselect-mesa.conf.9.2" eselect-mesa.conf
417 -}
418 -
419 -pkg_postinst() {
420 - # Switch to the xorg implementation.
421 - echo
422 - eselect opengl set --use-old ${OPENGL_DIR}
423 -
424 - # switch to xorg-x11 and back if necessary, bug #374647 comment 11
425 - OLD_IMPLEM="$(eselect opengl show)"
426 - if [[ ${OPENGL_DIR}x != ${OLD_IMPLEM}x ]]; then
427 - eselect opengl set ${OPENGL_DIR}
428 - eselect opengl set ${OLD_IMPLEM}
429 - fi
430 -
431 - # Select classic/gallium drivers
432 - if use classic || use gallium; then
433 - eselect mesa set --auto
434 - fi
435 -
436 - # Switch to mesa opencl
437 - if use opencl; then
438 - eselect opencl set --use-old ${PN}
439 - fi
440 -
441 - # warn about patent encumbered texture-float
442 - if use !bindist; then
443 - elog "USE=\"bindist\" was not set. Potentially patent encumbered code was"
444 - elog "enabled. Please see patents.txt for an explanation."
445 - fi
446 -
447 - local using_radeon r_flag
448 - for r_flag in ${RADEON_CARDS}; do
449 - if use video_cards_${r_flag}; then
450 - using_radeon=1
451 - break
452 - fi
453 - done
454 -
455 - if [[ ${using_radeon} = 1 ]] && ! has_version media-libs/libtxc_dxtn; then
456 - elog "Note that in order to have full S3TC support, it is necessary to install"
457 - elog "media-libs/libtxc_dxtn as well. This may be necessary to get nice"
458 - elog "textures in some apps, and some others even require this to run."
459 - fi
460 -}
461 -
462 -# $1 - VIDEO_CARDS flag
463 -# other args - names of DRI drivers to enable
464 -# TODO: avoid code duplication for a more elegant implementation
465 -driver_enable() {
466 - case $# in
467 - # for enabling unconditionally
468 - 1)
469 - DRI_DRIVERS+=",$1"
470 - ;;
471 - *)
472 - if use $1; then
473 - shift
474 - for i in $@; do
475 - DRI_DRIVERS+=",${i}"
476 - done
477 - fi
478 - ;;
479 - esac
480 -}
481 -
482 -gallium_enable() {
483 - case $# in
484 - # for enabling unconditionally
485 - 1)
486 - GALLIUM_DRIVERS+=",$1"
487 - ;;
488 - *)
489 - if use $1; then
490 - shift
491 - for i in $@; do
492 - GALLIUM_DRIVERS+=",${i}"
493 - done
494 - fi
495 - ;;
496 - esac
497 -}