Gentoo Archives: gentoo-commits

From: "Tomas Chvatal (scarabeus)" <scarabeus@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in media-libs/mesa: ChangeLog mesa-7.5-r3.ebuild mesa-7.4.2.ebuild mesa-7.5-r1.ebuild
Date: Wed, 26 Aug 2009 20:32:03
Message-Id: E1MgJyD-0003fH-2f@stork.gentoo.org
1 scarabeus 09/08/26 14:59:29
2
3 Modified: ChangeLog
4 Added: mesa-7.5-r3.ebuild
5 Removed: mesa-7.4.2.ebuild mesa-7.5-r1.ebuild
6 Log:
7 Revbump 7.5 with all availible upstream patches (works here on ati). Remove some old.
8 (Portage version: 2.2_rc38/cvs/Linux i686)
9
10 Revision Changes Path
11 1.228 media-libs/mesa/ChangeLog
12
13 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/media-libs/mesa/ChangeLog?rev=1.228&view=markup
14 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/media-libs/mesa/ChangeLog?rev=1.228&content-type=text/plain
15 diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/media-libs/mesa/ChangeLog?r1=1.227&r2=1.228
16
17 Index: ChangeLog
18 ===================================================================
19 RCS file: /var/cvsroot/gentoo-x86/media-libs/mesa/ChangeLog,v
20 retrieving revision 1.227
21 retrieving revision 1.228
22 diff -u -r1.227 -r1.228
23 --- ChangeLog 22 Jul 2009 10:32:59 -0000 1.227
24 +++ ChangeLog 26 Aug 2009 14:59:28 -0000 1.228
25 @@ -1,6 +1,13 @@
26 # ChangeLog for media-libs/mesa
27 # Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
28 -# $Header: /var/cvsroot/gentoo-x86/media-libs/mesa/ChangeLog,v 1.227 2009/07/22 10:32:59 remi Exp $
29 +# $Header: /var/cvsroot/gentoo-x86/media-libs/mesa/ChangeLog,v 1.228 2009/08/26 14:59:28 scarabeus Exp $
30 +
31 +*mesa-7.5-r3 (26 Aug 2009)
32 +
33 + 26 Aug 2009; Tomáš Chvátal <scarabeus@g.o>
34 + -files/7.4-fix-parallel-make.patch, -mesa-7.4.2.ebuild,
35 + -mesa-7.5-r1.ebuild, +mesa-7.5-r3.ebuild:
36 + Revbump with all patches from upstream availible up to now. Remove old.
37
38 22 Jul 2009; Rémi Cardona <remi@g.o> mesa-7.5-r2.ebuild:
39 use mirror://gentoo/ instead of gentooexperimental.org
40
41
42
43 1.1 media-libs/mesa/mesa-7.5-r3.ebuild
44
45 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/media-libs/mesa/mesa-7.5-r3.ebuild?rev=1.1&view=markup
46 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/media-libs/mesa/mesa-7.5-r3.ebuild?rev=1.1&content-type=text/plain
47
48 Index: mesa-7.5-r3.ebuild
49 ===================================================================
50 # Copyright 1999-2009 Gentoo Foundation
51 # Distributed under the terms of the GNU General Public License v2
52 # $Header: /var/cvsroot/gentoo-x86/media-libs/mesa/mesa-7.5-r3.ebuild,v 1.1 2009/08/26 14:59:28 scarabeus Exp $
53
54 EAPI="2"
55
56 EGIT_REPO_URI="git://anongit.freedesktop.org/mesa/mesa"
57
58 if [[ ${PV} = 9999* ]]; then
59 GIT_ECLASS="git"
60 EXPERIMENTAL="true"
61 IUSE_VIDEO_CARDS_UNSTABLE="video_cards_nouveau"
62 IUSE_UNSTABLE="gallium"
63 # User can also specify branch by simply adding MESA_LIVE_BRANCH="blesmrt"
64 # to the make.conf, where blesmrt is desired branch.
65 [[ -z ${MESA_LIVE_BRANCH} ]] || EGIT_BRANCH="${MESA_LIVE_BRANCH}"
66 fi
67
68 inherit autotools multilib flag-o-matic ${GIT_ECLASS} portability
69
70 OPENGL_DIR="xorg-x11"
71
72 MY_PN="${PN/m/M}"
73 MY_P="${MY_PN}-${PV/_/-}"
74 MY_SRC_P="${MY_PN}Lib-${PV/_/-}"
75 DESCRIPTION="OpenGL-like graphic library for Linux"
76 HOMEPAGE="http://mesa3d.sourceforge.net/"
77
78 SRC_PATCHES="mirror://gentoo/${P}-gentoo-patches-02.tar.bz2"
79 if [[ $PV = *_rc* ]]; then
80 SRC_URI="http://www.mesa3d.org/beta/${MY_SRC_P}.tar.gz
81 ${SRC_PATCHES}"
82 elif [[ $PV = 9999* ]]; then
83 SRC_URI="${SRC_PATCHES}"
84 else
85 SRC_URI="mirror://sourceforge/mesa3d/${MY_SRC_P}.tar.bz2
86 ${SRC_PATCHES}"
87 fi
88
89 LICENSE="LGPL-2"
90 SLOT="0"
91 KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd"
92
93 IUSE_VIDEO_CARDS="${IUSE_VIDEO_CARDS_UNSTABLE}
94 video_cards_intel
95 video_cards_mach64
96 video_cards_mga
97 video_cards_none
98 video_cards_r128
99 video_cards_radeon
100 video_cards_radeonhd
101 video_cards_s3virge
102 video_cards_savage
103 video_cards_sis
104 video_cards_sunffb
105 video_cards_tdfx
106 video_cards_trident
107 video_cards_via"
108 IUSE="${IUSE_VIDEO_CARDS} ${IUSE_UNSTABLE}
109 debug doc motif nptl pic xcb kernel_FreeBSD"
110
111 # keep correct libdrm and dri2proto dep
112 # keep blocks in rdepend for binpkg
113 RDEPEND="!<=x11-base/xorg-x11-6.9
114 !<=x11-proto/xf86driproto-2.0.3
115 app-admin/eselect-opengl
116 dev-libs/expat
117 >=x11-libs/libdrm-2.4.9
118 x11-libs/libICE
119 x11-libs/libX11[xcb?]
120 x11-libs/libXdamage
121 x11-libs/libXext
122 x11-libs/libXi
123 x11-libs/libXmu
124 x11-libs/libXxf86vm
125 motif? ( x11-libs/openmotif )
126 doc? ( app-doc/opengl-manpages )
127 "
128 DEPEND="${RDEPEND}
129 dev-util/pkgconfig
130 x11-misc/makedepend
131 >=x11-proto/dri2proto-1.99.3
132 >=x11-proto/glproto-1.4.8
133 x11-proto/inputproto
134 x11-proto/xextproto
135 x11-proto/xf86driproto
136 x11-proto/xf86vidmodeproto
137 "
138 # glew depend on mesa and it is needed in runtime
139 PDEPEND=">=media-libs/glew-1.5.1"
140
141 S="${WORKDIR}/${MY_P}"
142
143 # Think about: ggi, svga, fbcon, no-X configs
144
145 pkg_setup() {
146 # gcc 4.2 has buggy ivopts
147 if [[ $(gcc-version) = "4.2" ]]; then
148 append-flags -fno-ivopts
149 fi
150
151 # recommended by upstream
152 append-flags -ffast-math
153 }
154
155 src_unpack() {
156 [[ $PV = 9999* ]] && git_src_unpack || unpack ${A}
157 }
158
159 src_prepare() {
160 # apply patches
161 if [[ ${PV} != 9999* && -n ${SRC_PATCHES} ]]; then
162 EPATCH_FORCE="yes" \
163 EPATCH_SOURCE="${WORKDIR}/patches" \
164 EPATCH_SUFFIX="patch" \
165 epatch
166 fi
167 # FreeBSD 6.* doesn't have posix_memalign().
168 [[ ${CHOST} == *-freebsd6.* ]] && \
169 sed -i -e "s/-DHAVE_POSIX_MEMALIGN//" configure.ac
170
171 eautoreconf
172 }
173
174 src_configure() {
175 local myconf
176
177 # Configurable DRI drivers
178 driver_enable swrast
179 driver_enable video_cards_intel i810 i915 i965
180 driver_enable video_cards_mach64 mach64
181 driver_enable video_cards_mga mga
182 driver_enable video_cards_r128 r128
183 # ATI has two implementations as video_cards
184 driver_enable video_cards_radeon radeon r200 r300
185 driver_enable video_cards_radeonhd r300
186 driver_enable video_cards_s3virge s3v
187 driver_enable video_cards_savage savage
188 driver_enable video_cards_sis sis
189 driver_enable video_cards_sunffb ffb
190 driver_enable video_cards_tdfx tdfx
191 driver_enable video_cards_trident trident
192 driver_enable video_cards_via unichrome
193
194 # all live (experimental) stuff is wrapped around with experimental variable
195 # so the users cant get to this parts even with enabled useflags (downgrade
196 # from live to stable for example)
197 if [[ -n ${EXPERIMENTAL} ]]; then
198 # nouveau works only with gallium and intel, radeon, radeonhd can use
199 # gallium as alternative implementation (NOTE: THIS IS EXPERIMENTAL)
200 if use video_cards_nouveau && ! use gallium ; then
201 elog "Nouveau driver is available only via gallium interface."
202 elog "Enable gallium useflag if you want to use nouveau."
203 echo
204 fi
205 # state trackers, for now enable the one i want
206 # think about this bit more...
207 myconf="${myconf} $(use_enable gallium)"
208 if use gallium; then
209 elog "Warning gallium interface is highly experimental so use"
210 elog "it only if you feel really really brave."
211 elog
212 elog "Intel: works only i915."
213 elog "Nouveau: only available implementation, so no other choice"
214 elog "Radeon: not working, disabled."
215 echo
216 myconf="${myconf}
217 --with-state-trackers=glx,dri,egl
218 $(use_enable video_cards_nouveau gallium-nouveau)
219 $(use_enable video_cards_intel gallium-intel)"
220 #$(use_enable video_cards_radeon gallium-radeon)
221 #$(use_enable video_cards_radeonhd gallium-radeon)"
222 fi
223 else
224 # we need to disable the gallium since they enable by default...
225 myconf="${myconf} --disable-gallium"
226 fi
227
228 # Deactivate assembly code for pic build
229 myconf="${myconf} $(use_enable !pic asm)"
230
231 # --with-driver=dri|xlib|osmesa ; might get changed later to something
232 # else than dri
233 econf \
234 --with-driver=dri \
235 --disable-glut \
236 --without-demos \
237 $(use_enable debug) \
238 $(use_enable motif glw) \
239 $(use_enable motif) \
240 $(use_enable nptl glx-tls) \
241 $(use_enable xcb) \
242 --with-dri-drivers=${DRI_DRIVERS} \
243 ${myconf}
244 }
245
246 src_install() {
247 dodir /usr
248 emake DESTDIR="${D}" install || die "Installation failed"
249
250 # Remove redundant headers
251 # GLUT thing
252 rm -f "${D}"/usr/include/GL/glut*.h || die "Removing glut include failed."
253 # Glew includes
254 rm -f "${D}"/usr/include/GL/{glew,glxew,wglew}.h \
255 || die "Removing glew includes failed."
256
257 # Move libGL and others from /usr/lib to /usr/lib/opengl/blah/lib
258 # because user can eselect desired GL provider.
259 ebegin "Moving libGL and friends for dynamic switching"
260 dodir /usr/$(get_libdir)/opengl/${OPENGL_DIR}/{lib,extensions,include}
261 local x
262 for x in "${D}"/usr/$(get_libdir)/libGL.{la,a,so*}; do
263 if [ -f ${x} -o -L ${x} ]; then
264 mv -f ${x} "${D}"/usr/$(get_libdir)/opengl/${OPENGL_DIR}/lib \
265 || die "Failed to move ${x}"
266 fi
267 done
268 for x in "${D}"/usr/include/GL/{gl.h,glx.h,glext.h,glxext.h}; do
269 if [ -f ${x} -o -L ${x} ]; then
270 mv -f ${x} "${D}"/usr/$(get_libdir)/opengl/${OPENGL_DIR}/include \
271 || die "Failed to move ${x}"
272 fi
273 done
274 eend $?
275
276 # Install libtool archives
277 insinto /usr/$(get_libdir)
278 # Should this use the -L/usr/lib instead of -L/usr/$(get_libdir)?
279 # Please confirm and update this comment or the file.
280 doins "${FILESDIR}"/lib/libGLU.la || die "doins libGLU.la failed"
281 sed \
282 -e "s:\${libdir}:$(get_libdir):g" \
283 "${FILESDIR}"/lib/libGL.la \
284 > "${D}"/usr/$(get_libdir)/opengl/xorg-x11/lib/libGL.la
285
286 # On *BSD libcs dlopen() and similar functions are present directly in
287 # libc.so and does not require linking to libdl. portability eclass takes
288 # care of finding the needed library (if needed) witht the dlopen_lib
289 # function.
290 sed -i \
291 -e 's:-ldl:'$(dlopen_lib)':g' \
292 "${D}"/usr/$(get_libdir)/{libGLU.la,opengl/xorg-x11/lib/libGL.la} \
293 || die "sed dlopen failed"
294 }
295
296 pkg_postinst() {
297 # Switch to the xorg implementation.
298 echo
299 eselect opengl set --use-old ${OPENGL_DIR}
300 }
301
302 # $1 - VIDEO_CARDS flag
303 # other args - names of DRI drivers to enable
304 driver_enable() {
305 case $# in
306 # for enabling unconditionally
307 1)
308 DRI_DRIVERS="${DRI_DRIVERS},$1"
309 ;;
310 *)
311 if use $1; then
312 shift
313 for i in $@; do
314 DRI_DRIVERS="${DRI_DRIVERS},${i}"
315 done
316 fi
317 ;;
318 esac
319 }