Gentoo Archives: gentoo-commits

From: Matt Turner <mattst88@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: media-libs/mesa/
Date: Tue, 01 Nov 2016 16:41:41
Message-Id: 1478018484.ff26ce859309c373202560708a0a1dc197305b24.mattst88@gentoo
1 commit: ff26ce859309c373202560708a0a1dc197305b24
2 Author: Matt Turner <mattst88 <AT> gentoo <DOT> org>
3 AuthorDate: Tue Nov 1 16:40:58 2016 +0000
4 Commit: Matt Turner <mattst88 <AT> gentoo <DOT> org>
5 CommitDate: Tue Nov 1 16:41:24 2016 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ff26ce85
7
8 media-libs/mesa: Drop 13.0.0 RCs.
9
10 media-libs/mesa/Manifest | 3 -
11 media-libs/mesa/mesa-13.0.0_rc1.ebuild | 467 ---------------------------------
12 media-libs/mesa/mesa-13.0.0_rc2.ebuild | 467 ---------------------------------
13 media-libs/mesa/mesa-13.0.0_rc3.ebuild | 467 ---------------------------------
14 4 files changed, 1404 deletions(-)
15
16 diff --git a/media-libs/mesa/Manifest b/media-libs/mesa/Manifest
17 index 8f03915..ddf7c4b 100644
18 --- a/media-libs/mesa/Manifest
19 +++ b/media-libs/mesa/Manifest
20 @@ -5,7 +5,4 @@ DIST mesa-11.1.4.tar.xz 7570840 SHA256 0f781e9072655305f576efd4204d183bf99ac8cb8
21 DIST mesa-11.2.2.tar.xz 7860932 SHA256 40e148812388ec7c6d7b6657d5a16e2e8dabba8b97ddfceea5197947647bdfb4 SHA512 fd1fcb1bc97e52784a4b3dedfd8c8ba95bc1b03a62b132d2e16154d076be7a6fabbca1bcba705a7916a1507d811d7f3e6c3488aa386d5e63891282fb1713ce52 WHIRLPOOL 96ecc968b2dad4d0574751565c8fbd383da7e30eb2b805f964d31c11633bfb9e27c461150bd436cb4400bde1c4f28f326f37a3f942b4d13b03ddf49e5ce4620e
22 DIST mesa-12.0.1.tar.xz 8571144 SHA256 bab24fb79f78c876073527f515ed871fc9c81d816f66c8a0b051d8d653896389 SHA512 11898336478d1f5bd3946d695b9599647c0b9084ad8890b4fa89daa922a217e5ca6d8b72f5801e362c3dd7723382f2daaa655b54f65a6d088ad8cfdb85f10023 WHIRLPOOL 9923990fc35142b8c877cbbfdfa7d362ae94c8c637360f28e348943dc6f380bdf5aee944c04da6337994f0f15790c8d1a55bea1f0b00afa780305e5862c78601
23 DIST mesa-12.0.3.tar.xz 8577408 SHA256 1dc86dd9b51272eee1fad3df65e18cda2e556ef1bc0b6e07cd750b9757f493b1 SHA512 7d6525b5ed75e1361f3586aaf7f058de06b5038900a6379ab5f713ee879a0b3cecd253d6f3fb799673ef097bcd6866d61b46c33c0059f6636bb06fb5ceb5d750 WHIRLPOOL 88d77d445aaff7d96f9c44143c4b09763850d7dbffd6b0716a6204f6753ea84d155c97798e7959de0039f0babc8cffddc05845f385b9f39e6eb6f308921d379d
24 -DIST mesa-13.0.0-rc1.tar.xz 9010476 SHA256 ae4fcaf51fdb9b81626ded3d44d42fd20437376793d961fb8e1727aae8658625 SHA512 72ede4c43ad823fc21ed8b68d8de74cbd38d54a0529750432cde6d6f7c886d84d6d8f5eb09bc1925233bdca2a3e87b8fb667ace64230d5aade05cc1d6883f577 WHIRLPOOL 80971ed0960e0f33ad5db785a70e3958aa3fdb438a768182df97e4a565b1a5625d600c4bced09b162bb2bf27c4f71b812a54089c7341cfb3e51f10501915a81d
25 -DIST mesa-13.0.0-rc2.tar.xz 9016756 SHA256 ef26031a79b915e1643b0ffe5354f8ae774cd445f12b342abac63438f9735a43 SHA512 76057fae240b3bc1415e7779003d1eddd18effa4fe4e5b1d8568ea5fcf82ccb136209093fcccd92440a2255d6cd6a136dee52aa3e212903a9471bf9687cb63b2 WHIRLPOOL 4e4b1e6949260cd7f183b10e2e4b86202e3176b464c6c42ca1588cbab39e06a72a82d02807bdca52972728a2af3da59b6d3774b7795d16c6a36ce28b13a62d23
26 -DIST mesa-13.0.0-rc3.tar.xz 9135320 SHA256 4a3ec9e93cc2be964e204a591a88d8aa935d988fcba877a56e66441f1ebe681a SHA512 596af31614158930b1c2af1606462dc24ae49a28fc702a6795e05464b97cafd414e3aa34844ce425b1e9e672837b95e675a3b97e9588aaf3149de7000ad63855 WHIRLPOOL 54227a71a1871ee41ad80b64d0f74350caaca64bbd1975d294049b5bb6299a79295f3b3840a01e6483bb3432492bd04ad371ad064052af592978089b07da20ad
27 DIST mesa-13.0.0.tar.xz 9151388 SHA256 94edb4ebff82066a68be79d9c2627f15995e1fe10f67ab3fc63deb842027d727 SHA512 3de56ffed1e7940bf0caf604cb9071d39684b9252e09c1c6430fe28227cd7e88d48b4a31591d5677669feca73b95b1c7958944e16c9247cf6b3c59494099e77d WHIRLPOOL 67a1a53b7783126871f5ae23a5ab3fae2665e68bd57638441b15758e9a173771e64469736e4d8285e97cf49b99113db237153f41772de88d00ffe2b1923eed99
28
29 diff --git a/media-libs/mesa/mesa-13.0.0_rc1.ebuild b/media-libs/mesa/mesa-13.0.0_rc1.ebuild
30 deleted file mode 100644
31 index bfedccc..00000000
32 --- a/media-libs/mesa/mesa-13.0.0_rc1.ebuild
33 +++ /dev/null
34 @@ -1,467 +0,0 @@
35 -# Copyright 1999-2016 Gentoo Foundation
36 -# Distributed under the terms of the GNU General Public License v2
37 -# $Id$
38 -
39 -EAPI=5
40 -
41 -EGIT_REPO_URI="git://anongit.freedesktop.org/mesa/mesa"
42 -
43 -if [[ ${PV} = 9999 ]]; then
44 - GIT_ECLASS="git-r3"
45 - EXPERIMENTAL="true"
46 -fi
47 -
48 -PYTHON_COMPAT=( python2_7 )
49 -
50 -inherit autotools multilib-minimal python-any-r1 pax-utils ${GIT_ECLASS}
51 -
52 -OPENGL_DIR="xorg-x11"
53 -
54 -MY_P="${P/_/-}"
55 -FOLDER="${PV/_rc*/}"
56 -
57 -DESCRIPTION="OpenGL-like graphic library for Linux"
58 -HOMEPAGE="http://mesa3d.sourceforge.net/"
59 -
60 -if [[ $PV == 9999 ]]; then
61 - SRC_URI=""
62 - KEYWORDS=""
63 -else
64 - SRC_URI="ftp://ftp.freedesktop.org/pub/mesa/${FOLDER}/${MY_P}.tar.xz"
65 - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~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"
66 -fi
67 -
68 -LICENSE="MIT"
69 -SLOT="0"
70 -RESTRICT="!bindist? ( bindist )"
71 -
72 -INTEL_CARDS="i915 i965 ilo intel"
73 -RADEON_CARDS="r100 r200 r300 r600 radeon radeonsi"
74 -VIDEO_CARDS="${INTEL_CARDS} ${RADEON_CARDS} freedreno nouveau vc4 vmware"
75 -for card in ${VIDEO_CARDS}; do
76 - IUSE_VIDEO_CARDS+=" video_cards_${card}"
77 -done
78 -
79 -IUSE="${IUSE_VIDEO_CARDS}
80 - bindist +classic d3d9 debug +dri3 +egl +gallium +gbm gles1 gles2 +llvm
81 - +nptl opencl osmesa pax_kernel openmax pic selinux vaapi valgrind
82 - vdpau wayland xvmc xa kernel_FreeBSD"
83 -
84 -REQUIRED_USE="
85 - d3d9? ( dri3 gallium )
86 - llvm? ( gallium )
87 - opencl? ( gallium llvm )
88 - openmax? ( gallium )
89 - gles1? ( egl )
90 - gles2? ( egl )
91 - vaapi? ( gallium )
92 - vdpau? ( gallium )
93 - wayland? ( egl gbm )
94 - xa? ( gallium )
95 - video_cards_freedreno? ( gallium )
96 - video_cards_intel? ( classic )
97 - video_cards_i915? ( || ( classic gallium ) )
98 - video_cards_i965? ( classic )
99 - video_cards_ilo? ( gallium )
100 - video_cards_nouveau? ( || ( classic gallium ) )
101 - video_cards_radeon? ( || ( classic gallium )
102 - gallium? ( x86? ( llvm ) amd64? ( llvm ) ) )
103 - video_cards_r100? ( classic )
104 - video_cards_r200? ( classic )
105 - video_cards_r300? ( gallium x86? ( llvm ) amd64? ( llvm ) )
106 - video_cards_r600? ( gallium )
107 - video_cards_radeonsi? ( gallium llvm )
108 - video_cards_vmware? ( gallium )
109 - ${PYTHON_REQUIRED_USE}
110 -"
111 -
112 -LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.67"
113 -# keep correct libdrm and dri2proto dep
114 -# keep blocks in rdepend for binpkg
115 -RDEPEND="
116 - !<x11-base/xorg-server-1.7
117 - !<=x11-proto/xf86driproto-2.0.3
118 - abi_x86_32? ( !app-emulation/emul-linux-x86-opengl[-abi_x86_32(-)] )
119 - classic? ( app-eselect/eselect-mesa )
120 - gallium? ( app-eselect/eselect-mesa )
121 - >=app-eselect/eselect-opengl-1.3.0
122 - >=dev-libs/expat-2.1.0-r3:=[${MULTILIB_USEDEP}]
123 - >=x11-libs/libX11-1.6.2:=[${MULTILIB_USEDEP}]
124 - >=x11-libs/libxshmfence-1.1:=[${MULTILIB_USEDEP}]
125 - >=x11-libs/libXdamage-1.1.4-r1:=[${MULTILIB_USEDEP}]
126 - >=x11-libs/libXext-1.3.2:=[${MULTILIB_USEDEP}]
127 - >=x11-libs/libXxf86vm-1.1.3:=[${MULTILIB_USEDEP}]
128 - >=x11-libs/libxcb-1.9.3:=[${MULTILIB_USEDEP}]
129 - x11-libs/libXfixes:=[${MULTILIB_USEDEP}]
130 - llvm? ( !kernel_FreeBSD? (
131 - video_cards_radeonsi? ( virtual/libelf:0=[${MULTILIB_USEDEP}] )
132 - !video_cards_r600? (
133 - video_cards_radeon? ( virtual/libelf:0=[${MULTILIB_USEDEP}] )
134 - ) )
135 - >=sys-devel/llvm-3.6.0:=[${MULTILIB_USEDEP}]
136 - )
137 - opencl? (
138 - app-eselect/eselect-opencl
139 - dev-libs/libclc
140 - !kernel_FreeBSD? ( virtual/libelf:0=[${MULTILIB_USEDEP}] )
141 - )
142 - openmax? ( >=media-libs/libomxil-bellagio-0.9.3:=[${MULTILIB_USEDEP}] )
143 - vaapi? (
144 - >=x11-libs/libva-1.6.0:=[${MULTILIB_USEDEP}]
145 - video_cards_nouveau? ( !<=x11-libs/libva-vdpau-driver-0.7.4-r3 )
146 - )
147 - vdpau? ( >=x11-libs/libvdpau-1.1:=[${MULTILIB_USEDEP}] )
148 - wayland? ( >=dev-libs/wayland-1.2.0:=[${MULTILIB_USEDEP}] )
149 - xvmc? ( >=x11-libs/libXvMC-1.0.8:=[${MULTILIB_USEDEP}] )
150 - ${LIBDRM_DEPSTRING}[video_cards_freedreno?,video_cards_nouveau?,video_cards_vc4?,video_cards_vmware?,${MULTILIB_USEDEP}]
151 -"
152 -for card in ${INTEL_CARDS}; do
153 - RDEPEND="${RDEPEND}
154 - video_cards_${card}? ( ${LIBDRM_DEPSTRING}[video_cards_intel] )
155 - "
156 -done
157 -
158 -for card in ${RADEON_CARDS}; do
159 - RDEPEND="${RDEPEND}
160 - video_cards_${card}? ( ${LIBDRM_DEPSTRING}[video_cards_radeon] )
161 - "
162 -done
163 -RDEPEND="${RDEPEND}
164 - video_cards_radeonsi? ( ${LIBDRM_DEPSTRING}[video_cards_amdgpu] )
165 -"
166 -
167 -# FIXME: kill the sys-devel/llvm[video_cards_radeon] compat once
168 -# LLVM < 3.9 is out of the game
169 -DEPEND="${RDEPEND}
170 - llvm? (
171 - video_cards_radeonsi? ( || (
172 - sys-devel/llvm[llvm_targets_AMDGPU]
173 - sys-devel/llvm[video_cards_radeon]
174 - ) )
175 - )
176 - opencl? (
177 - >=sys-devel/llvm-3.4.2:=[${MULTILIB_USEDEP}]
178 - >=sys-devel/clang-3.4.2:=[${MULTILIB_USEDEP}]
179 - >=sys-devel/gcc-4.6
180 - )
181 - sys-devel/gettext
182 - virtual/pkgconfig
183 - valgrind? ( dev-util/valgrind )
184 - >=x11-proto/dri2proto-2.8-r1:=[${MULTILIB_USEDEP}]
185 - dri3? (
186 - >=x11-proto/dri3proto-1.0:=[${MULTILIB_USEDEP}]
187 - >=x11-proto/presentproto-1.0:=[${MULTILIB_USEDEP}]
188 - )
189 - >=x11-proto/glproto-1.4.17-r1:=[${MULTILIB_USEDEP}]
190 - >=x11-proto/xextproto-7.2.1-r1:=[${MULTILIB_USEDEP}]
191 - >=x11-proto/xf86driproto-2.1.1-r1:=[${MULTILIB_USEDEP}]
192 - >=x11-proto/xf86vidmodeproto-2.3.1-r1:=[${MULTILIB_USEDEP}]
193 -"
194 -[[ ${PV} == 9999 ]] && DEPEND+="
195 - sys-devel/bison
196 - sys-devel/flex
197 - ${PYTHON_DEPS}
198 - $(python_gen_any_dep ">=dev-python/mako-0.7.3[\${PYTHON_USEDEP}]")
199 -"
200 -
201 -S="${WORKDIR}/${MY_P}"
202 -EGIT_CHECKOUT_DIR=${S}
203 -
204 -QA_WX_LOAD="
205 -x86? (
206 - !pic? (
207 - usr/lib*/libglapi.so.0.0.0
208 - usr/lib*/libGLESv1_CM.so.1.1.0
209 - usr/lib*/libGLESv2.so.2.0.0
210 - usr/lib*/libGL.so.1.2.0
211 - usr/lib*/libOSMesa.so.8.0.0
212 - )
213 -)"
214 -
215 -pkg_setup() {
216 - # warning message for bug 459306
217 - if use llvm && has_version sys-devel/llvm[!debug=]; then
218 - ewarn "Mismatch between debug USE flags in media-libs/mesa and sys-devel/llvm"
219 - ewarn "detected! This can cause problems. For details, see bug 459306."
220 - fi
221 -
222 - python-any-r1_pkg_setup
223 -}
224 -
225 -src_prepare() {
226 - [[ ${PV} == 9999 ]] && eautoreconf
227 -}
228 -
229 -multilib_src_configure() {
230 - local myconf
231 -
232 - if use classic; then
233 - # Configurable DRI drivers
234 - driver_enable swrast
235 -
236 - # Intel code
237 - driver_enable video_cards_i915 i915
238 - driver_enable video_cards_i965 i965
239 - if ! use video_cards_i915 && \
240 - ! use video_cards_i965; then
241 - driver_enable video_cards_intel i915 i965
242 - fi
243 -
244 - # Nouveau code
245 - driver_enable video_cards_nouveau nouveau
246 -
247 - # ATI code
248 - driver_enable video_cards_r100 radeon
249 - driver_enable video_cards_r200 r200
250 - if ! use video_cards_r100 && \
251 - ! use video_cards_r200; then
252 - driver_enable video_cards_radeon radeon r200
253 - fi
254 - fi
255 -
256 - if use egl; then
257 - myconf+=" --with-egl-platforms=x11$(use wayland && echo ",wayland")$(use gbm && echo ",drm")"
258 - fi
259 -
260 - if use gallium; then
261 - myconf+="
262 - $(use_enable d3d9 nine)
263 - $(use_enable llvm gallium-llvm)
264 - $(use_enable openmax omx)
265 - $(use_enable vaapi va)
266 - $(use_enable vdpau)
267 - $(use_enable xa)
268 - $(use_enable xvmc)
269 - "
270 - use vaapi && myconf+=" --with-va-libdir=/usr/$(get_libdir)/va/drivers"
271 -
272 - gallium_enable swrast
273 - gallium_enable video_cards_vc4 vc4
274 - gallium_enable video_cards_vmware svga
275 - gallium_enable video_cards_nouveau nouveau
276 - gallium_enable video_cards_i915 i915
277 - gallium_enable video_cards_ilo ilo
278 - if ! use video_cards_i915 && \
279 - ! use video_cards_i965; then
280 - gallium_enable video_cards_intel i915
281 - fi
282 -
283 - gallium_enable video_cards_r300 r300
284 - gallium_enable video_cards_r600 r600
285 - gallium_enable video_cards_radeonsi radeonsi
286 - if ! use video_cards_r300 && \
287 - ! use video_cards_r600; then
288 - gallium_enable video_cards_radeon r300 r600
289 - fi
290 -
291 - gallium_enable video_cards_freedreno freedreno
292 - # opencl stuff
293 - if use opencl; then
294 - myconf+="
295 - $(use_enable opencl)
296 - --with-clang-libdir="${EPREFIX}/usr/lib"
297 - "
298 - fi
299 - fi
300 -
301 - # x86 hardened pax_kernel needs glx-rts, bug 240956
302 - if [[ ${ABI} == x86 ]]; then
303 - myconf+=" $(use_enable pax_kernel glx-read-only-text)"
304 - fi
305 -
306 - # on abi_x86_32 hardened we need to have asm disable
307 - if [[ ${ABI} == x86* ]] && use pic; then
308 - myconf+=" --disable-asm"
309 - fi
310 -
311 - if use gallium; then
312 - myconf+=" $(use_enable osmesa gallium-osmesa)"
313 - else
314 - myconf+=" $(use_enable osmesa)"
315 - fi
316 -
317 - # build fails with BSD indent, bug #428112
318 - use userland_GNU || export INDENT=cat
319 -
320 - ECONF_SOURCE="${S}" \
321 - econf \
322 - --enable-dri \
323 - --enable-glx \
324 - --enable-shared-glapi \
325 - --disable-shader-cache \
326 - $(use_enable !bindist texture-float) \
327 - $(use_enable d3d9 nine) \
328 - $(use_enable debug) \
329 - $(use_enable dri3) \
330 - $(use_enable egl) \
331 - $(use_enable gbm) \
332 - $(use_enable gles1) \
333 - $(use_enable gles2) \
334 - $(use_enable nptl glx-tls) \
335 - --enable-valgrind=$(usex valgrind auto no) \
336 - --enable-llvm-shared-libs \
337 - --with-dri-drivers=${DRI_DRIVERS} \
338 - --with-gallium-drivers=${GALLIUM_DRIVERS} \
339 - PYTHON2="${PYTHON}" \
340 - ${myconf}
341 -}
342 -
343 -multilib_src_install() {
344 - emake install DESTDIR="${D}"
345 -
346 - if use classic || use gallium; then
347 - ebegin "Moving DRI/Gallium drivers for dynamic switching"
348 - local gallium_drivers=( i915_dri.so i965_dri.so r300_dri.so r600_dri.so swrast_dri.so )
349 - keepdir /usr/$(get_libdir)/dri
350 - dodir /usr/$(get_libdir)/mesa
351 - for x in ${gallium_drivers[@]}; do
352 - if [ -f "$(get_libdir)/gallium/${x}" ]; then
353 - mv -f "${ED}/usr/$(get_libdir)/dri/${x}" "${ED}/usr/$(get_libdir)/dri/${x/_dri.so/g_dri.so}" \
354 - || die "Failed to move ${x}"
355 - fi
356 - done
357 - if use classic; then
358 - emake -C "${BUILD_DIR}/src/mesa/drivers/dri" DESTDIR="${D}" install
359 - fi
360 - for x in "${ED}"/usr/$(get_libdir)/dri/*.so; do
361 - if [ -f ${x} -o -L ${x} ]; then
362 - mv -f "${x}" "${x/dri/mesa}" \
363 - || die "Failed to move ${x}"
364 - fi
365 - done
366 - pushd "${ED}"/usr/$(get_libdir)/dri || die "pushd failed"
367 - ln -s ../mesa/*.so . || die "Creating symlink failed"
368 - # remove symlinks to drivers known to eselect
369 - for x in ${gallium_drivers[@]}; do
370 - if [ -f ${x} -o -L ${x} ]; then
371 - rm "${x}" || die "Failed to remove ${x}"
372 - fi
373 - done
374 - popd
375 - eend $?
376 - fi
377 - if use opencl; then
378 - ebegin "Moving Gallium/Clover OpenCL implementation for dynamic switching"
379 - local cl_dir="/usr/$(get_libdir)/OpenCL/vendors/mesa"
380 - dodir ${cl_dir}/{lib,include}
381 - if [ -f "${ED}/usr/$(get_libdir)/libOpenCL.so" ]; then
382 - mv -f "${ED}"/usr/$(get_libdir)/libOpenCL.so* \
383 - "${ED}"${cl_dir}
384 - fi
385 - if [ -f "${ED}/usr/include/CL/opencl.h" ]; then
386 - mv -f "${ED}"/usr/include/CL \
387 - "${ED}"${cl_dir}/include
388 - fi
389 - eend $?
390 - fi
391 -
392 - if use openmax; then
393 - echo "XDG_DATA_DIRS=\"${EPREFIX}/usr/share/mesa/xdg\"" > "${T}/99mesaxdgomx"
394 - doenvd "${T}"/99mesaxdgomx
395 - keepdir /usr/share/mesa/xdg
396 - fi
397 -}
398 -
399 -multilib_src_install_all() {
400 - prune_libtool_files --all
401 - einstalldocs
402 -
403 - if use !bindist; then
404 - dodoc docs/patents.txt
405 - fi
406 -
407 - # Install config file for eselect mesa
408 - insinto /usr/share/mesa
409 - newins "${FILESDIR}/eselect-mesa.conf.9.2" eselect-mesa.conf
410 -}
411 -
412 -multilib_src_test() {
413 - if use llvm; then
414 - local llvm_tests='lp_test_arit lp_test_arit lp_test_blend lp_test_blend lp_test_conv lp_test_conv lp_test_format lp_test_format lp_test_printf lp_test_printf'
415 - pushd src/gallium/drivers/llvmpipe >/dev/null || die
416 - emake ${llvm_tests}
417 - pax-mark m ${llvm_tests}
418 - popd >/dev/null || die
419 - fi
420 - emake check
421 -}
422 -
423 -pkg_postinst() {
424 - # Switch to the xorg implementation.
425 - echo
426 - eselect opengl set --use-old ${OPENGL_DIR}
427 -
428 - # Select classic/gallium drivers
429 - if use classic || use gallium; then
430 - eselect mesa set --auto
431 - fi
432 -
433 - # Switch to mesa opencl
434 - if use opencl; then
435 - eselect opencl set --use-old ${PN}
436 - fi
437 -
438 - # run omxregister-bellagio to make the OpenMAX drivers known system-wide
439 - if use openmax; then
440 - ebegin "Registering OpenMAX drivers"
441 - BELLAGIO_SEARCH_PATH="${EPREFIX}/usr/$(get_libdir)/libomxil-bellagio0" \
442 - OMX_BELLAGIO_REGISTRY=${EPREFIX}/usr/share/mesa/xdg/.omxregister \
443 - omxregister-bellagio
444 - eend $?
445 - fi
446 -
447 - # warn about patent encumbered texture-float
448 - if use !bindist; then
449 - elog "USE=\"bindist\" was not set. Potentially patent encumbered code was"
450 - elog "enabled. Please see patents.txt for an explanation."
451 - fi
452 -
453 - if ! has_version media-libs/libtxc_dxtn; then
454 - elog "Note that in order to have full S3TC support, it is necessary to install"
455 - elog "media-libs/libtxc_dxtn as well. This may be necessary to get nice"
456 - elog "textures in some apps, and some others even require this to run."
457 - fi
458 -}
459 -
460 -pkg_prerm() {
461 - if use openmax; then
462 - rm "${EPREFIX}"/usr/share/mesa/xdg/.omxregister
463 - fi
464 -}
465 -
466 -# $1 - VIDEO_CARDS flag
467 -# other args - names of DRI drivers to enable
468 -# TODO: avoid code duplication for a more elegant implementation
469 -driver_enable() {
470 - case $# in
471 - # for enabling unconditionally
472 - 1)
473 - DRI_DRIVERS+=",$1"
474 - ;;
475 - *)
476 - if use $1; then
477 - shift
478 - for i in $@; do
479 - DRI_DRIVERS+=",${i}"
480 - done
481 - fi
482 - ;;
483 - esac
484 -}
485 -
486 -gallium_enable() {
487 - case $# in
488 - # for enabling unconditionally
489 - 1)
490 - GALLIUM_DRIVERS+=",$1"
491 - ;;
492 - *)
493 - if use $1; then
494 - shift
495 - for i in $@; do
496 - GALLIUM_DRIVERS+=",${i}"
497 - done
498 - fi
499 - ;;
500 - esac
501 -}
502
503 diff --git a/media-libs/mesa/mesa-13.0.0_rc2.ebuild b/media-libs/mesa/mesa-13.0.0_rc2.ebuild
504 deleted file mode 100644
505 index bfedccc..00000000
506 --- a/media-libs/mesa/mesa-13.0.0_rc2.ebuild
507 +++ /dev/null
508 @@ -1,467 +0,0 @@
509 -# Copyright 1999-2016 Gentoo Foundation
510 -# Distributed under the terms of the GNU General Public License v2
511 -# $Id$
512 -
513 -EAPI=5
514 -
515 -EGIT_REPO_URI="git://anongit.freedesktop.org/mesa/mesa"
516 -
517 -if [[ ${PV} = 9999 ]]; then
518 - GIT_ECLASS="git-r3"
519 - EXPERIMENTAL="true"
520 -fi
521 -
522 -PYTHON_COMPAT=( python2_7 )
523 -
524 -inherit autotools multilib-minimal python-any-r1 pax-utils ${GIT_ECLASS}
525 -
526 -OPENGL_DIR="xorg-x11"
527 -
528 -MY_P="${P/_/-}"
529 -FOLDER="${PV/_rc*/}"
530 -
531 -DESCRIPTION="OpenGL-like graphic library for Linux"
532 -HOMEPAGE="http://mesa3d.sourceforge.net/"
533 -
534 -if [[ $PV == 9999 ]]; then
535 - SRC_URI=""
536 - KEYWORDS=""
537 -else
538 - SRC_URI="ftp://ftp.freedesktop.org/pub/mesa/${FOLDER}/${MY_P}.tar.xz"
539 - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~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"
540 -fi
541 -
542 -LICENSE="MIT"
543 -SLOT="0"
544 -RESTRICT="!bindist? ( bindist )"
545 -
546 -INTEL_CARDS="i915 i965 ilo intel"
547 -RADEON_CARDS="r100 r200 r300 r600 radeon radeonsi"
548 -VIDEO_CARDS="${INTEL_CARDS} ${RADEON_CARDS} freedreno nouveau vc4 vmware"
549 -for card in ${VIDEO_CARDS}; do
550 - IUSE_VIDEO_CARDS+=" video_cards_${card}"
551 -done
552 -
553 -IUSE="${IUSE_VIDEO_CARDS}
554 - bindist +classic d3d9 debug +dri3 +egl +gallium +gbm gles1 gles2 +llvm
555 - +nptl opencl osmesa pax_kernel openmax pic selinux vaapi valgrind
556 - vdpau wayland xvmc xa kernel_FreeBSD"
557 -
558 -REQUIRED_USE="
559 - d3d9? ( dri3 gallium )
560 - llvm? ( gallium )
561 - opencl? ( gallium llvm )
562 - openmax? ( gallium )
563 - gles1? ( egl )
564 - gles2? ( egl )
565 - vaapi? ( gallium )
566 - vdpau? ( gallium )
567 - wayland? ( egl gbm )
568 - xa? ( gallium )
569 - video_cards_freedreno? ( gallium )
570 - video_cards_intel? ( classic )
571 - video_cards_i915? ( || ( classic gallium ) )
572 - video_cards_i965? ( classic )
573 - video_cards_ilo? ( gallium )
574 - video_cards_nouveau? ( || ( classic gallium ) )
575 - video_cards_radeon? ( || ( classic gallium )
576 - gallium? ( x86? ( llvm ) amd64? ( llvm ) ) )
577 - video_cards_r100? ( classic )
578 - video_cards_r200? ( classic )
579 - video_cards_r300? ( gallium x86? ( llvm ) amd64? ( llvm ) )
580 - video_cards_r600? ( gallium )
581 - video_cards_radeonsi? ( gallium llvm )
582 - video_cards_vmware? ( gallium )
583 - ${PYTHON_REQUIRED_USE}
584 -"
585 -
586 -LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.67"
587 -# keep correct libdrm and dri2proto dep
588 -# keep blocks in rdepend for binpkg
589 -RDEPEND="
590 - !<x11-base/xorg-server-1.7
591 - !<=x11-proto/xf86driproto-2.0.3
592 - abi_x86_32? ( !app-emulation/emul-linux-x86-opengl[-abi_x86_32(-)] )
593 - classic? ( app-eselect/eselect-mesa )
594 - gallium? ( app-eselect/eselect-mesa )
595 - >=app-eselect/eselect-opengl-1.3.0
596 - >=dev-libs/expat-2.1.0-r3:=[${MULTILIB_USEDEP}]
597 - >=x11-libs/libX11-1.6.2:=[${MULTILIB_USEDEP}]
598 - >=x11-libs/libxshmfence-1.1:=[${MULTILIB_USEDEP}]
599 - >=x11-libs/libXdamage-1.1.4-r1:=[${MULTILIB_USEDEP}]
600 - >=x11-libs/libXext-1.3.2:=[${MULTILIB_USEDEP}]
601 - >=x11-libs/libXxf86vm-1.1.3:=[${MULTILIB_USEDEP}]
602 - >=x11-libs/libxcb-1.9.3:=[${MULTILIB_USEDEP}]
603 - x11-libs/libXfixes:=[${MULTILIB_USEDEP}]
604 - llvm? ( !kernel_FreeBSD? (
605 - video_cards_radeonsi? ( virtual/libelf:0=[${MULTILIB_USEDEP}] )
606 - !video_cards_r600? (
607 - video_cards_radeon? ( virtual/libelf:0=[${MULTILIB_USEDEP}] )
608 - ) )
609 - >=sys-devel/llvm-3.6.0:=[${MULTILIB_USEDEP}]
610 - )
611 - opencl? (
612 - app-eselect/eselect-opencl
613 - dev-libs/libclc
614 - !kernel_FreeBSD? ( virtual/libelf:0=[${MULTILIB_USEDEP}] )
615 - )
616 - openmax? ( >=media-libs/libomxil-bellagio-0.9.3:=[${MULTILIB_USEDEP}] )
617 - vaapi? (
618 - >=x11-libs/libva-1.6.0:=[${MULTILIB_USEDEP}]
619 - video_cards_nouveau? ( !<=x11-libs/libva-vdpau-driver-0.7.4-r3 )
620 - )
621 - vdpau? ( >=x11-libs/libvdpau-1.1:=[${MULTILIB_USEDEP}] )
622 - wayland? ( >=dev-libs/wayland-1.2.0:=[${MULTILIB_USEDEP}] )
623 - xvmc? ( >=x11-libs/libXvMC-1.0.8:=[${MULTILIB_USEDEP}] )
624 - ${LIBDRM_DEPSTRING}[video_cards_freedreno?,video_cards_nouveau?,video_cards_vc4?,video_cards_vmware?,${MULTILIB_USEDEP}]
625 -"
626 -for card in ${INTEL_CARDS}; do
627 - RDEPEND="${RDEPEND}
628 - video_cards_${card}? ( ${LIBDRM_DEPSTRING}[video_cards_intel] )
629 - "
630 -done
631 -
632 -for card in ${RADEON_CARDS}; do
633 - RDEPEND="${RDEPEND}
634 - video_cards_${card}? ( ${LIBDRM_DEPSTRING}[video_cards_radeon] )
635 - "
636 -done
637 -RDEPEND="${RDEPEND}
638 - video_cards_radeonsi? ( ${LIBDRM_DEPSTRING}[video_cards_amdgpu] )
639 -"
640 -
641 -# FIXME: kill the sys-devel/llvm[video_cards_radeon] compat once
642 -# LLVM < 3.9 is out of the game
643 -DEPEND="${RDEPEND}
644 - llvm? (
645 - video_cards_radeonsi? ( || (
646 - sys-devel/llvm[llvm_targets_AMDGPU]
647 - sys-devel/llvm[video_cards_radeon]
648 - ) )
649 - )
650 - opencl? (
651 - >=sys-devel/llvm-3.4.2:=[${MULTILIB_USEDEP}]
652 - >=sys-devel/clang-3.4.2:=[${MULTILIB_USEDEP}]
653 - >=sys-devel/gcc-4.6
654 - )
655 - sys-devel/gettext
656 - virtual/pkgconfig
657 - valgrind? ( dev-util/valgrind )
658 - >=x11-proto/dri2proto-2.8-r1:=[${MULTILIB_USEDEP}]
659 - dri3? (
660 - >=x11-proto/dri3proto-1.0:=[${MULTILIB_USEDEP}]
661 - >=x11-proto/presentproto-1.0:=[${MULTILIB_USEDEP}]
662 - )
663 - >=x11-proto/glproto-1.4.17-r1:=[${MULTILIB_USEDEP}]
664 - >=x11-proto/xextproto-7.2.1-r1:=[${MULTILIB_USEDEP}]
665 - >=x11-proto/xf86driproto-2.1.1-r1:=[${MULTILIB_USEDEP}]
666 - >=x11-proto/xf86vidmodeproto-2.3.1-r1:=[${MULTILIB_USEDEP}]
667 -"
668 -[[ ${PV} == 9999 ]] && DEPEND+="
669 - sys-devel/bison
670 - sys-devel/flex
671 - ${PYTHON_DEPS}
672 - $(python_gen_any_dep ">=dev-python/mako-0.7.3[\${PYTHON_USEDEP}]")
673 -"
674 -
675 -S="${WORKDIR}/${MY_P}"
676 -EGIT_CHECKOUT_DIR=${S}
677 -
678 -QA_WX_LOAD="
679 -x86? (
680 - !pic? (
681 - usr/lib*/libglapi.so.0.0.0
682 - usr/lib*/libGLESv1_CM.so.1.1.0
683 - usr/lib*/libGLESv2.so.2.0.0
684 - usr/lib*/libGL.so.1.2.0
685 - usr/lib*/libOSMesa.so.8.0.0
686 - )
687 -)"
688 -
689 -pkg_setup() {
690 - # warning message for bug 459306
691 - if use llvm && has_version sys-devel/llvm[!debug=]; then
692 - ewarn "Mismatch between debug USE flags in media-libs/mesa and sys-devel/llvm"
693 - ewarn "detected! This can cause problems. For details, see bug 459306."
694 - fi
695 -
696 - python-any-r1_pkg_setup
697 -}
698 -
699 -src_prepare() {
700 - [[ ${PV} == 9999 ]] && eautoreconf
701 -}
702 -
703 -multilib_src_configure() {
704 - local myconf
705 -
706 - if use classic; then
707 - # Configurable DRI drivers
708 - driver_enable swrast
709 -
710 - # Intel code
711 - driver_enable video_cards_i915 i915
712 - driver_enable video_cards_i965 i965
713 - if ! use video_cards_i915 && \
714 - ! use video_cards_i965; then
715 - driver_enable video_cards_intel i915 i965
716 - fi
717 -
718 - # Nouveau code
719 - driver_enable video_cards_nouveau nouveau
720 -
721 - # ATI code
722 - driver_enable video_cards_r100 radeon
723 - driver_enable video_cards_r200 r200
724 - if ! use video_cards_r100 && \
725 - ! use video_cards_r200; then
726 - driver_enable video_cards_radeon radeon r200
727 - fi
728 - fi
729 -
730 - if use egl; then
731 - myconf+=" --with-egl-platforms=x11$(use wayland && echo ",wayland")$(use gbm && echo ",drm")"
732 - fi
733 -
734 - if use gallium; then
735 - myconf+="
736 - $(use_enable d3d9 nine)
737 - $(use_enable llvm gallium-llvm)
738 - $(use_enable openmax omx)
739 - $(use_enable vaapi va)
740 - $(use_enable vdpau)
741 - $(use_enable xa)
742 - $(use_enable xvmc)
743 - "
744 - use vaapi && myconf+=" --with-va-libdir=/usr/$(get_libdir)/va/drivers"
745 -
746 - gallium_enable swrast
747 - gallium_enable video_cards_vc4 vc4
748 - gallium_enable video_cards_vmware svga
749 - gallium_enable video_cards_nouveau nouveau
750 - gallium_enable video_cards_i915 i915
751 - gallium_enable video_cards_ilo ilo
752 - if ! use video_cards_i915 && \
753 - ! use video_cards_i965; then
754 - gallium_enable video_cards_intel i915
755 - fi
756 -
757 - gallium_enable video_cards_r300 r300
758 - gallium_enable video_cards_r600 r600
759 - gallium_enable video_cards_radeonsi radeonsi
760 - if ! use video_cards_r300 && \
761 - ! use video_cards_r600; then
762 - gallium_enable video_cards_radeon r300 r600
763 - fi
764 -
765 - gallium_enable video_cards_freedreno freedreno
766 - # opencl stuff
767 - if use opencl; then
768 - myconf+="
769 - $(use_enable opencl)
770 - --with-clang-libdir="${EPREFIX}/usr/lib"
771 - "
772 - fi
773 - fi
774 -
775 - # x86 hardened pax_kernel needs glx-rts, bug 240956
776 - if [[ ${ABI} == x86 ]]; then
777 - myconf+=" $(use_enable pax_kernel glx-read-only-text)"
778 - fi
779 -
780 - # on abi_x86_32 hardened we need to have asm disable
781 - if [[ ${ABI} == x86* ]] && use pic; then
782 - myconf+=" --disable-asm"
783 - fi
784 -
785 - if use gallium; then
786 - myconf+=" $(use_enable osmesa gallium-osmesa)"
787 - else
788 - myconf+=" $(use_enable osmesa)"
789 - fi
790 -
791 - # build fails with BSD indent, bug #428112
792 - use userland_GNU || export INDENT=cat
793 -
794 - ECONF_SOURCE="${S}" \
795 - econf \
796 - --enable-dri \
797 - --enable-glx \
798 - --enable-shared-glapi \
799 - --disable-shader-cache \
800 - $(use_enable !bindist texture-float) \
801 - $(use_enable d3d9 nine) \
802 - $(use_enable debug) \
803 - $(use_enable dri3) \
804 - $(use_enable egl) \
805 - $(use_enable gbm) \
806 - $(use_enable gles1) \
807 - $(use_enable gles2) \
808 - $(use_enable nptl glx-tls) \
809 - --enable-valgrind=$(usex valgrind auto no) \
810 - --enable-llvm-shared-libs \
811 - --with-dri-drivers=${DRI_DRIVERS} \
812 - --with-gallium-drivers=${GALLIUM_DRIVERS} \
813 - PYTHON2="${PYTHON}" \
814 - ${myconf}
815 -}
816 -
817 -multilib_src_install() {
818 - emake install DESTDIR="${D}"
819 -
820 - if use classic || use gallium; then
821 - ebegin "Moving DRI/Gallium drivers for dynamic switching"
822 - local gallium_drivers=( i915_dri.so i965_dri.so r300_dri.so r600_dri.so swrast_dri.so )
823 - keepdir /usr/$(get_libdir)/dri
824 - dodir /usr/$(get_libdir)/mesa
825 - for x in ${gallium_drivers[@]}; do
826 - if [ -f "$(get_libdir)/gallium/${x}" ]; then
827 - mv -f "${ED}/usr/$(get_libdir)/dri/${x}" "${ED}/usr/$(get_libdir)/dri/${x/_dri.so/g_dri.so}" \
828 - || die "Failed to move ${x}"
829 - fi
830 - done
831 - if use classic; then
832 - emake -C "${BUILD_DIR}/src/mesa/drivers/dri" DESTDIR="${D}" install
833 - fi
834 - for x in "${ED}"/usr/$(get_libdir)/dri/*.so; do
835 - if [ -f ${x} -o -L ${x} ]; then
836 - mv -f "${x}" "${x/dri/mesa}" \
837 - || die "Failed to move ${x}"
838 - fi
839 - done
840 - pushd "${ED}"/usr/$(get_libdir)/dri || die "pushd failed"
841 - ln -s ../mesa/*.so . || die "Creating symlink failed"
842 - # remove symlinks to drivers known to eselect
843 - for x in ${gallium_drivers[@]}; do
844 - if [ -f ${x} -o -L ${x} ]; then
845 - rm "${x}" || die "Failed to remove ${x}"
846 - fi
847 - done
848 - popd
849 - eend $?
850 - fi
851 - if use opencl; then
852 - ebegin "Moving Gallium/Clover OpenCL implementation for dynamic switching"
853 - local cl_dir="/usr/$(get_libdir)/OpenCL/vendors/mesa"
854 - dodir ${cl_dir}/{lib,include}
855 - if [ -f "${ED}/usr/$(get_libdir)/libOpenCL.so" ]; then
856 - mv -f "${ED}"/usr/$(get_libdir)/libOpenCL.so* \
857 - "${ED}"${cl_dir}
858 - fi
859 - if [ -f "${ED}/usr/include/CL/opencl.h" ]; then
860 - mv -f "${ED}"/usr/include/CL \
861 - "${ED}"${cl_dir}/include
862 - fi
863 - eend $?
864 - fi
865 -
866 - if use openmax; then
867 - echo "XDG_DATA_DIRS=\"${EPREFIX}/usr/share/mesa/xdg\"" > "${T}/99mesaxdgomx"
868 - doenvd "${T}"/99mesaxdgomx
869 - keepdir /usr/share/mesa/xdg
870 - fi
871 -}
872 -
873 -multilib_src_install_all() {
874 - prune_libtool_files --all
875 - einstalldocs
876 -
877 - if use !bindist; then
878 - dodoc docs/patents.txt
879 - fi
880 -
881 - # Install config file for eselect mesa
882 - insinto /usr/share/mesa
883 - newins "${FILESDIR}/eselect-mesa.conf.9.2" eselect-mesa.conf
884 -}
885 -
886 -multilib_src_test() {
887 - if use llvm; then
888 - local llvm_tests='lp_test_arit lp_test_arit lp_test_blend lp_test_blend lp_test_conv lp_test_conv lp_test_format lp_test_format lp_test_printf lp_test_printf'
889 - pushd src/gallium/drivers/llvmpipe >/dev/null || die
890 - emake ${llvm_tests}
891 - pax-mark m ${llvm_tests}
892 - popd >/dev/null || die
893 - fi
894 - emake check
895 -}
896 -
897 -pkg_postinst() {
898 - # Switch to the xorg implementation.
899 - echo
900 - eselect opengl set --use-old ${OPENGL_DIR}
901 -
902 - # Select classic/gallium drivers
903 - if use classic || use gallium; then
904 - eselect mesa set --auto
905 - fi
906 -
907 - # Switch to mesa opencl
908 - if use opencl; then
909 - eselect opencl set --use-old ${PN}
910 - fi
911 -
912 - # run omxregister-bellagio to make the OpenMAX drivers known system-wide
913 - if use openmax; then
914 - ebegin "Registering OpenMAX drivers"
915 - BELLAGIO_SEARCH_PATH="${EPREFIX}/usr/$(get_libdir)/libomxil-bellagio0" \
916 - OMX_BELLAGIO_REGISTRY=${EPREFIX}/usr/share/mesa/xdg/.omxregister \
917 - omxregister-bellagio
918 - eend $?
919 - fi
920 -
921 - # warn about patent encumbered texture-float
922 - if use !bindist; then
923 - elog "USE=\"bindist\" was not set. Potentially patent encumbered code was"
924 - elog "enabled. Please see patents.txt for an explanation."
925 - fi
926 -
927 - if ! has_version media-libs/libtxc_dxtn; then
928 - elog "Note that in order to have full S3TC support, it is necessary to install"
929 - elog "media-libs/libtxc_dxtn as well. This may be necessary to get nice"
930 - elog "textures in some apps, and some others even require this to run."
931 - fi
932 -}
933 -
934 -pkg_prerm() {
935 - if use openmax; then
936 - rm "${EPREFIX}"/usr/share/mesa/xdg/.omxregister
937 - fi
938 -}
939 -
940 -# $1 - VIDEO_CARDS flag
941 -# other args - names of DRI drivers to enable
942 -# TODO: avoid code duplication for a more elegant implementation
943 -driver_enable() {
944 - case $# in
945 - # for enabling unconditionally
946 - 1)
947 - DRI_DRIVERS+=",$1"
948 - ;;
949 - *)
950 - if use $1; then
951 - shift
952 - for i in $@; do
953 - DRI_DRIVERS+=",${i}"
954 - done
955 - fi
956 - ;;
957 - esac
958 -}
959 -
960 -gallium_enable() {
961 - case $# in
962 - # for enabling unconditionally
963 - 1)
964 - GALLIUM_DRIVERS+=",$1"
965 - ;;
966 - *)
967 - if use $1; then
968 - shift
969 - for i in $@; do
970 - GALLIUM_DRIVERS+=",${i}"
971 - done
972 - fi
973 - ;;
974 - esac
975 -}
976
977 diff --git a/media-libs/mesa/mesa-13.0.0_rc3.ebuild b/media-libs/mesa/mesa-13.0.0_rc3.ebuild
978 deleted file mode 100644
979 index bfedccc..00000000
980 --- a/media-libs/mesa/mesa-13.0.0_rc3.ebuild
981 +++ /dev/null
982 @@ -1,467 +0,0 @@
983 -# Copyright 1999-2016 Gentoo Foundation
984 -# Distributed under the terms of the GNU General Public License v2
985 -# $Id$
986 -
987 -EAPI=5
988 -
989 -EGIT_REPO_URI="git://anongit.freedesktop.org/mesa/mesa"
990 -
991 -if [[ ${PV} = 9999 ]]; then
992 - GIT_ECLASS="git-r3"
993 - EXPERIMENTAL="true"
994 -fi
995 -
996 -PYTHON_COMPAT=( python2_7 )
997 -
998 -inherit autotools multilib-minimal python-any-r1 pax-utils ${GIT_ECLASS}
999 -
1000 -OPENGL_DIR="xorg-x11"
1001 -
1002 -MY_P="${P/_/-}"
1003 -FOLDER="${PV/_rc*/}"
1004 -
1005 -DESCRIPTION="OpenGL-like graphic library for Linux"
1006 -HOMEPAGE="http://mesa3d.sourceforge.net/"
1007 -
1008 -if [[ $PV == 9999 ]]; then
1009 - SRC_URI=""
1010 - KEYWORDS=""
1011 -else
1012 - SRC_URI="ftp://ftp.freedesktop.org/pub/mesa/${FOLDER}/${MY_P}.tar.xz"
1013 - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~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"
1014 -fi
1015 -
1016 -LICENSE="MIT"
1017 -SLOT="0"
1018 -RESTRICT="!bindist? ( bindist )"
1019 -
1020 -INTEL_CARDS="i915 i965 ilo intel"
1021 -RADEON_CARDS="r100 r200 r300 r600 radeon radeonsi"
1022 -VIDEO_CARDS="${INTEL_CARDS} ${RADEON_CARDS} freedreno nouveau vc4 vmware"
1023 -for card in ${VIDEO_CARDS}; do
1024 - IUSE_VIDEO_CARDS+=" video_cards_${card}"
1025 -done
1026 -
1027 -IUSE="${IUSE_VIDEO_CARDS}
1028 - bindist +classic d3d9 debug +dri3 +egl +gallium +gbm gles1 gles2 +llvm
1029 - +nptl opencl osmesa pax_kernel openmax pic selinux vaapi valgrind
1030 - vdpau wayland xvmc xa kernel_FreeBSD"
1031 -
1032 -REQUIRED_USE="
1033 - d3d9? ( dri3 gallium )
1034 - llvm? ( gallium )
1035 - opencl? ( gallium llvm )
1036 - openmax? ( gallium )
1037 - gles1? ( egl )
1038 - gles2? ( egl )
1039 - vaapi? ( gallium )
1040 - vdpau? ( gallium )
1041 - wayland? ( egl gbm )
1042 - xa? ( gallium )
1043 - video_cards_freedreno? ( gallium )
1044 - video_cards_intel? ( classic )
1045 - video_cards_i915? ( || ( classic gallium ) )
1046 - video_cards_i965? ( classic )
1047 - video_cards_ilo? ( gallium )
1048 - video_cards_nouveau? ( || ( classic gallium ) )
1049 - video_cards_radeon? ( || ( classic gallium )
1050 - gallium? ( x86? ( llvm ) amd64? ( llvm ) ) )
1051 - video_cards_r100? ( classic )
1052 - video_cards_r200? ( classic )
1053 - video_cards_r300? ( gallium x86? ( llvm ) amd64? ( llvm ) )
1054 - video_cards_r600? ( gallium )
1055 - video_cards_radeonsi? ( gallium llvm )
1056 - video_cards_vmware? ( gallium )
1057 - ${PYTHON_REQUIRED_USE}
1058 -"
1059 -
1060 -LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.67"
1061 -# keep correct libdrm and dri2proto dep
1062 -# keep blocks in rdepend for binpkg
1063 -RDEPEND="
1064 - !<x11-base/xorg-server-1.7
1065 - !<=x11-proto/xf86driproto-2.0.3
1066 - abi_x86_32? ( !app-emulation/emul-linux-x86-opengl[-abi_x86_32(-)] )
1067 - classic? ( app-eselect/eselect-mesa )
1068 - gallium? ( app-eselect/eselect-mesa )
1069 - >=app-eselect/eselect-opengl-1.3.0
1070 - >=dev-libs/expat-2.1.0-r3:=[${MULTILIB_USEDEP}]
1071 - >=x11-libs/libX11-1.6.2:=[${MULTILIB_USEDEP}]
1072 - >=x11-libs/libxshmfence-1.1:=[${MULTILIB_USEDEP}]
1073 - >=x11-libs/libXdamage-1.1.4-r1:=[${MULTILIB_USEDEP}]
1074 - >=x11-libs/libXext-1.3.2:=[${MULTILIB_USEDEP}]
1075 - >=x11-libs/libXxf86vm-1.1.3:=[${MULTILIB_USEDEP}]
1076 - >=x11-libs/libxcb-1.9.3:=[${MULTILIB_USEDEP}]
1077 - x11-libs/libXfixes:=[${MULTILIB_USEDEP}]
1078 - llvm? ( !kernel_FreeBSD? (
1079 - video_cards_radeonsi? ( virtual/libelf:0=[${MULTILIB_USEDEP}] )
1080 - !video_cards_r600? (
1081 - video_cards_radeon? ( virtual/libelf:0=[${MULTILIB_USEDEP}] )
1082 - ) )
1083 - >=sys-devel/llvm-3.6.0:=[${MULTILIB_USEDEP}]
1084 - )
1085 - opencl? (
1086 - app-eselect/eselect-opencl
1087 - dev-libs/libclc
1088 - !kernel_FreeBSD? ( virtual/libelf:0=[${MULTILIB_USEDEP}] )
1089 - )
1090 - openmax? ( >=media-libs/libomxil-bellagio-0.9.3:=[${MULTILIB_USEDEP}] )
1091 - vaapi? (
1092 - >=x11-libs/libva-1.6.0:=[${MULTILIB_USEDEP}]
1093 - video_cards_nouveau? ( !<=x11-libs/libva-vdpau-driver-0.7.4-r3 )
1094 - )
1095 - vdpau? ( >=x11-libs/libvdpau-1.1:=[${MULTILIB_USEDEP}] )
1096 - wayland? ( >=dev-libs/wayland-1.2.0:=[${MULTILIB_USEDEP}] )
1097 - xvmc? ( >=x11-libs/libXvMC-1.0.8:=[${MULTILIB_USEDEP}] )
1098 - ${LIBDRM_DEPSTRING}[video_cards_freedreno?,video_cards_nouveau?,video_cards_vc4?,video_cards_vmware?,${MULTILIB_USEDEP}]
1099 -"
1100 -for card in ${INTEL_CARDS}; do
1101 - RDEPEND="${RDEPEND}
1102 - video_cards_${card}? ( ${LIBDRM_DEPSTRING}[video_cards_intel] )
1103 - "
1104 -done
1105 -
1106 -for card in ${RADEON_CARDS}; do
1107 - RDEPEND="${RDEPEND}
1108 - video_cards_${card}? ( ${LIBDRM_DEPSTRING}[video_cards_radeon] )
1109 - "
1110 -done
1111 -RDEPEND="${RDEPEND}
1112 - video_cards_radeonsi? ( ${LIBDRM_DEPSTRING}[video_cards_amdgpu] )
1113 -"
1114 -
1115 -# FIXME: kill the sys-devel/llvm[video_cards_radeon] compat once
1116 -# LLVM < 3.9 is out of the game
1117 -DEPEND="${RDEPEND}
1118 - llvm? (
1119 - video_cards_radeonsi? ( || (
1120 - sys-devel/llvm[llvm_targets_AMDGPU]
1121 - sys-devel/llvm[video_cards_radeon]
1122 - ) )
1123 - )
1124 - opencl? (
1125 - >=sys-devel/llvm-3.4.2:=[${MULTILIB_USEDEP}]
1126 - >=sys-devel/clang-3.4.2:=[${MULTILIB_USEDEP}]
1127 - >=sys-devel/gcc-4.6
1128 - )
1129 - sys-devel/gettext
1130 - virtual/pkgconfig
1131 - valgrind? ( dev-util/valgrind )
1132 - >=x11-proto/dri2proto-2.8-r1:=[${MULTILIB_USEDEP}]
1133 - dri3? (
1134 - >=x11-proto/dri3proto-1.0:=[${MULTILIB_USEDEP}]
1135 - >=x11-proto/presentproto-1.0:=[${MULTILIB_USEDEP}]
1136 - )
1137 - >=x11-proto/glproto-1.4.17-r1:=[${MULTILIB_USEDEP}]
1138 - >=x11-proto/xextproto-7.2.1-r1:=[${MULTILIB_USEDEP}]
1139 - >=x11-proto/xf86driproto-2.1.1-r1:=[${MULTILIB_USEDEP}]
1140 - >=x11-proto/xf86vidmodeproto-2.3.1-r1:=[${MULTILIB_USEDEP}]
1141 -"
1142 -[[ ${PV} == 9999 ]] && DEPEND+="
1143 - sys-devel/bison
1144 - sys-devel/flex
1145 - ${PYTHON_DEPS}
1146 - $(python_gen_any_dep ">=dev-python/mako-0.7.3[\${PYTHON_USEDEP}]")
1147 -"
1148 -
1149 -S="${WORKDIR}/${MY_P}"
1150 -EGIT_CHECKOUT_DIR=${S}
1151 -
1152 -QA_WX_LOAD="
1153 -x86? (
1154 - !pic? (
1155 - usr/lib*/libglapi.so.0.0.0
1156 - usr/lib*/libGLESv1_CM.so.1.1.0
1157 - usr/lib*/libGLESv2.so.2.0.0
1158 - usr/lib*/libGL.so.1.2.0
1159 - usr/lib*/libOSMesa.so.8.0.0
1160 - )
1161 -)"
1162 -
1163 -pkg_setup() {
1164 - # warning message for bug 459306
1165 - if use llvm && has_version sys-devel/llvm[!debug=]; then
1166 - ewarn "Mismatch between debug USE flags in media-libs/mesa and sys-devel/llvm"
1167 - ewarn "detected! This can cause problems. For details, see bug 459306."
1168 - fi
1169 -
1170 - python-any-r1_pkg_setup
1171 -}
1172 -
1173 -src_prepare() {
1174 - [[ ${PV} == 9999 ]] && eautoreconf
1175 -}
1176 -
1177 -multilib_src_configure() {
1178 - local myconf
1179 -
1180 - if use classic; then
1181 - # Configurable DRI drivers
1182 - driver_enable swrast
1183 -
1184 - # Intel code
1185 - driver_enable video_cards_i915 i915
1186 - driver_enable video_cards_i965 i965
1187 - if ! use video_cards_i915 && \
1188 - ! use video_cards_i965; then
1189 - driver_enable video_cards_intel i915 i965
1190 - fi
1191 -
1192 - # Nouveau code
1193 - driver_enable video_cards_nouveau nouveau
1194 -
1195 - # ATI code
1196 - driver_enable video_cards_r100 radeon
1197 - driver_enable video_cards_r200 r200
1198 - if ! use video_cards_r100 && \
1199 - ! use video_cards_r200; then
1200 - driver_enable video_cards_radeon radeon r200
1201 - fi
1202 - fi
1203 -
1204 - if use egl; then
1205 - myconf+=" --with-egl-platforms=x11$(use wayland && echo ",wayland")$(use gbm && echo ",drm")"
1206 - fi
1207 -
1208 - if use gallium; then
1209 - myconf+="
1210 - $(use_enable d3d9 nine)
1211 - $(use_enable llvm gallium-llvm)
1212 - $(use_enable openmax omx)
1213 - $(use_enable vaapi va)
1214 - $(use_enable vdpau)
1215 - $(use_enable xa)
1216 - $(use_enable xvmc)
1217 - "
1218 - use vaapi && myconf+=" --with-va-libdir=/usr/$(get_libdir)/va/drivers"
1219 -
1220 - gallium_enable swrast
1221 - gallium_enable video_cards_vc4 vc4
1222 - gallium_enable video_cards_vmware svga
1223 - gallium_enable video_cards_nouveau nouveau
1224 - gallium_enable video_cards_i915 i915
1225 - gallium_enable video_cards_ilo ilo
1226 - if ! use video_cards_i915 && \
1227 - ! use video_cards_i965; then
1228 - gallium_enable video_cards_intel i915
1229 - fi
1230 -
1231 - gallium_enable video_cards_r300 r300
1232 - gallium_enable video_cards_r600 r600
1233 - gallium_enable video_cards_radeonsi radeonsi
1234 - if ! use video_cards_r300 && \
1235 - ! use video_cards_r600; then
1236 - gallium_enable video_cards_radeon r300 r600
1237 - fi
1238 -
1239 - gallium_enable video_cards_freedreno freedreno
1240 - # opencl stuff
1241 - if use opencl; then
1242 - myconf+="
1243 - $(use_enable opencl)
1244 - --with-clang-libdir="${EPREFIX}/usr/lib"
1245 - "
1246 - fi
1247 - fi
1248 -
1249 - # x86 hardened pax_kernel needs glx-rts, bug 240956
1250 - if [[ ${ABI} == x86 ]]; then
1251 - myconf+=" $(use_enable pax_kernel glx-read-only-text)"
1252 - fi
1253 -
1254 - # on abi_x86_32 hardened we need to have asm disable
1255 - if [[ ${ABI} == x86* ]] && use pic; then
1256 - myconf+=" --disable-asm"
1257 - fi
1258 -
1259 - if use gallium; then
1260 - myconf+=" $(use_enable osmesa gallium-osmesa)"
1261 - else
1262 - myconf+=" $(use_enable osmesa)"
1263 - fi
1264 -
1265 - # build fails with BSD indent, bug #428112
1266 - use userland_GNU || export INDENT=cat
1267 -
1268 - ECONF_SOURCE="${S}" \
1269 - econf \
1270 - --enable-dri \
1271 - --enable-glx \
1272 - --enable-shared-glapi \
1273 - --disable-shader-cache \
1274 - $(use_enable !bindist texture-float) \
1275 - $(use_enable d3d9 nine) \
1276 - $(use_enable debug) \
1277 - $(use_enable dri3) \
1278 - $(use_enable egl) \
1279 - $(use_enable gbm) \
1280 - $(use_enable gles1) \
1281 - $(use_enable gles2) \
1282 - $(use_enable nptl glx-tls) \
1283 - --enable-valgrind=$(usex valgrind auto no) \
1284 - --enable-llvm-shared-libs \
1285 - --with-dri-drivers=${DRI_DRIVERS} \
1286 - --with-gallium-drivers=${GALLIUM_DRIVERS} \
1287 - PYTHON2="${PYTHON}" \
1288 - ${myconf}
1289 -}
1290 -
1291 -multilib_src_install() {
1292 - emake install DESTDIR="${D}"
1293 -
1294 - if use classic || use gallium; then
1295 - ebegin "Moving DRI/Gallium drivers for dynamic switching"
1296 - local gallium_drivers=( i915_dri.so i965_dri.so r300_dri.so r600_dri.so swrast_dri.so )
1297 - keepdir /usr/$(get_libdir)/dri
1298 - dodir /usr/$(get_libdir)/mesa
1299 - for x in ${gallium_drivers[@]}; do
1300 - if [ -f "$(get_libdir)/gallium/${x}" ]; then
1301 - mv -f "${ED}/usr/$(get_libdir)/dri/${x}" "${ED}/usr/$(get_libdir)/dri/${x/_dri.so/g_dri.so}" \
1302 - || die "Failed to move ${x}"
1303 - fi
1304 - done
1305 - if use classic; then
1306 - emake -C "${BUILD_DIR}/src/mesa/drivers/dri" DESTDIR="${D}" install
1307 - fi
1308 - for x in "${ED}"/usr/$(get_libdir)/dri/*.so; do
1309 - if [ -f ${x} -o -L ${x} ]; then
1310 - mv -f "${x}" "${x/dri/mesa}" \
1311 - || die "Failed to move ${x}"
1312 - fi
1313 - done
1314 - pushd "${ED}"/usr/$(get_libdir)/dri || die "pushd failed"
1315 - ln -s ../mesa/*.so . || die "Creating symlink failed"
1316 - # remove symlinks to drivers known to eselect
1317 - for x in ${gallium_drivers[@]}; do
1318 - if [ -f ${x} -o -L ${x} ]; then
1319 - rm "${x}" || die "Failed to remove ${x}"
1320 - fi
1321 - done
1322 - popd
1323 - eend $?
1324 - fi
1325 - if use opencl; then
1326 - ebegin "Moving Gallium/Clover OpenCL implementation for dynamic switching"
1327 - local cl_dir="/usr/$(get_libdir)/OpenCL/vendors/mesa"
1328 - dodir ${cl_dir}/{lib,include}
1329 - if [ -f "${ED}/usr/$(get_libdir)/libOpenCL.so" ]; then
1330 - mv -f "${ED}"/usr/$(get_libdir)/libOpenCL.so* \
1331 - "${ED}"${cl_dir}
1332 - fi
1333 - if [ -f "${ED}/usr/include/CL/opencl.h" ]; then
1334 - mv -f "${ED}"/usr/include/CL \
1335 - "${ED}"${cl_dir}/include
1336 - fi
1337 - eend $?
1338 - fi
1339 -
1340 - if use openmax; then
1341 - echo "XDG_DATA_DIRS=\"${EPREFIX}/usr/share/mesa/xdg\"" > "${T}/99mesaxdgomx"
1342 - doenvd "${T}"/99mesaxdgomx
1343 - keepdir /usr/share/mesa/xdg
1344 - fi
1345 -}
1346 -
1347 -multilib_src_install_all() {
1348 - prune_libtool_files --all
1349 - einstalldocs
1350 -
1351 - if use !bindist; then
1352 - dodoc docs/patents.txt
1353 - fi
1354 -
1355 - # Install config file for eselect mesa
1356 - insinto /usr/share/mesa
1357 - newins "${FILESDIR}/eselect-mesa.conf.9.2" eselect-mesa.conf
1358 -}
1359 -
1360 -multilib_src_test() {
1361 - if use llvm; then
1362 - local llvm_tests='lp_test_arit lp_test_arit lp_test_blend lp_test_blend lp_test_conv lp_test_conv lp_test_format lp_test_format lp_test_printf lp_test_printf'
1363 - pushd src/gallium/drivers/llvmpipe >/dev/null || die
1364 - emake ${llvm_tests}
1365 - pax-mark m ${llvm_tests}
1366 - popd >/dev/null || die
1367 - fi
1368 - emake check
1369 -}
1370 -
1371 -pkg_postinst() {
1372 - # Switch to the xorg implementation.
1373 - echo
1374 - eselect opengl set --use-old ${OPENGL_DIR}
1375 -
1376 - # Select classic/gallium drivers
1377 - if use classic || use gallium; then
1378 - eselect mesa set --auto
1379 - fi
1380 -
1381 - # Switch to mesa opencl
1382 - if use opencl; then
1383 - eselect opencl set --use-old ${PN}
1384 - fi
1385 -
1386 - # run omxregister-bellagio to make the OpenMAX drivers known system-wide
1387 - if use openmax; then
1388 - ebegin "Registering OpenMAX drivers"
1389 - BELLAGIO_SEARCH_PATH="${EPREFIX}/usr/$(get_libdir)/libomxil-bellagio0" \
1390 - OMX_BELLAGIO_REGISTRY=${EPREFIX}/usr/share/mesa/xdg/.omxregister \
1391 - omxregister-bellagio
1392 - eend $?
1393 - fi
1394 -
1395 - # warn about patent encumbered texture-float
1396 - if use !bindist; then
1397 - elog "USE=\"bindist\" was not set. Potentially patent encumbered code was"
1398 - elog "enabled. Please see patents.txt for an explanation."
1399 - fi
1400 -
1401 - if ! has_version media-libs/libtxc_dxtn; then
1402 - elog "Note that in order to have full S3TC support, it is necessary to install"
1403 - elog "media-libs/libtxc_dxtn as well. This may be necessary to get nice"
1404 - elog "textures in some apps, and some others even require this to run."
1405 - fi
1406 -}
1407 -
1408 -pkg_prerm() {
1409 - if use openmax; then
1410 - rm "${EPREFIX}"/usr/share/mesa/xdg/.omxregister
1411 - fi
1412 -}
1413 -
1414 -# $1 - VIDEO_CARDS flag
1415 -# other args - names of DRI drivers to enable
1416 -# TODO: avoid code duplication for a more elegant implementation
1417 -driver_enable() {
1418 - case $# in
1419 - # for enabling unconditionally
1420 - 1)
1421 - DRI_DRIVERS+=",$1"
1422 - ;;
1423 - *)
1424 - if use $1; then
1425 - shift
1426 - for i in $@; do
1427 - DRI_DRIVERS+=",${i}"
1428 - done
1429 - fi
1430 - ;;
1431 - esac
1432 -}
1433 -
1434 -gallium_enable() {
1435 - case $# in
1436 - # for enabling unconditionally
1437 - 1)
1438 - GALLIUM_DRIVERS+=",$1"
1439 - ;;
1440 - *)
1441 - if use $1; then
1442 - shift
1443 - for i in $@; do
1444 - GALLIUM_DRIVERS+=",${i}"
1445 - done
1446 - fi
1447 - ;;
1448 - esac
1449 -}