1 |
dberkholz 07/11/10 23:17:07 |
2 |
|
3 |
Modified: ChangeLog |
4 |
Added: mesa-7.0.2.ebuild |
5 |
Log: |
6 |
Bump to 7.0.2, with lots of bugfixes. I removed all keywords because I can't get any 3D apps running besides glxgears, but I'd like to get reports from others to help figure out whether my system's just broken. |
7 |
(Portage version: 2.1.3.17) |
8 |
|
9 |
Revision Changes Path |
10 |
1.161 media-libs/mesa/ChangeLog |
11 |
|
12 |
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/media-libs/mesa/ChangeLog?rev=1.161&view=markup |
13 |
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/media-libs/mesa/ChangeLog?rev=1.161&content-type=text/plain |
14 |
diff : http://sources.gentoo.org/viewcvs.py/gentoo-x86/media-libs/mesa/ChangeLog?r1=1.160&r2=1.161 |
15 |
|
16 |
Index: ChangeLog |
17 |
=================================================================== |
18 |
RCS file: /var/cvsroot/gentoo-x86/media-libs/mesa/ChangeLog,v |
19 |
retrieving revision 1.160 |
20 |
retrieving revision 1.161 |
21 |
diff -u -r1.160 -r1.161 |
22 |
--- ChangeLog 9 Oct 2007 08:30:11 -0000 1.160 |
23 |
+++ ChangeLog 10 Nov 2007 23:17:07 -0000 1.161 |
24 |
@@ -1,6 +1,14 @@ |
25 |
# ChangeLog for media-libs/mesa |
26 |
# Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2 |
27 |
-# $Header: /var/cvsroot/gentoo-x86/media-libs/mesa/ChangeLog,v 1.160 2007/10/09 08:30:11 dberkholz Exp $ |
28 |
+# $Header: /var/cvsroot/gentoo-x86/media-libs/mesa/ChangeLog,v 1.161 2007/11/10 23:17:07 dberkholz Exp $ |
29 |
+ |
30 |
+*mesa-7.0.2 (10 Nov 2007) |
31 |
+ |
32 |
+ 10 Nov 2007; Donnie Berkholz <dberkholz@g.o>; |
33 |
+ +files/7.0.2-glw.pc.in, +mesa-7.0.2.ebuild: |
34 |
+ Bump to 7.0.2, with lots of bugfixes. I removed all keywords because I can't |
35 |
+ get any 3D apps running besides glxgears, but I'd like to get reports from |
36 |
+ others to help figure out whether my system's just broken. |
37 |
|
38 |
09 Oct 2007; Donnie Berkholz <dberkholz@g.o>; |
39 |
-files/mesa-6.5.3-pthread.patch, -mesa-6.5.2.ebuild, -mesa-6.5.3.ebuild: |
40 |
|
41 |
|
42 |
|
43 |
1.1 media-libs/mesa/mesa-7.0.2.ebuild |
44 |
|
45 |
file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/media-libs/mesa/mesa-7.0.2.ebuild?rev=1.1&view=markup |
46 |
plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/media-libs/mesa/mesa-7.0.2.ebuild?rev=1.1&content-type=text/plain |
47 |
|
48 |
Index: mesa-7.0.2.ebuild |
49 |
=================================================================== |
50 |
# Copyright 1999-2007 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.0.2.ebuild,v 1.1 2007/11/10 23:17:07 dberkholz Exp $ |
53 |
|
54 |
inherit eutils toolchain-funcs multilib flag-o-matic portability versionator |
55 |
|
56 |
OPENGL_DIR="xorg-x11" |
57 |
|
58 |
MY_PN="${PN/m/M}" |
59 |
MY_P="${MY_PN}-${PV//_}" |
60 |
MY_SRC_P="${MY_PN}Lib-${PV//_}" |
61 |
DESCRIPTION="OpenGL-like graphic library for Linux" |
62 |
HOMEPAGE="http://mesa3d.sourceforge.net/" |
63 |
if [[ $PV = *_rc* ]]; then |
64 |
SRC_URI="http://www.mesa3d.org/beta/${MY_SRC_P}.tar.gz" |
65 |
else |
66 |
SRC_URI="mirror://sourceforge/mesa3d/${MY_SRC_P}.tar.bz2" |
67 |
fi |
68 |
LICENSE="LGPL-2" |
69 |
SLOT="0" |
70 |
KEYWORDS="" |
71 |
IUSE_VIDEO_CARDS=" |
72 |
video_cards_i810 |
73 |
video_cards_mach64 |
74 |
video_cards_mga |
75 |
video_cards_none |
76 |
video_cards_r128 |
77 |
video_cards_radeon |
78 |
video_cards_s3virge |
79 |
video_cards_savage |
80 |
video_cards_sis |
81 |
video_cards_sunffb |
82 |
video_cards_tdfx |
83 |
video_cards_trident |
84 |
video_cards_via" |
85 |
IUSE="${IUSE_VIDEO_CARDS} |
86 |
debug |
87 |
doc |
88 |
hardened |
89 |
motif |
90 |
nptl |
91 |
xcb |
92 |
kernel_FreeBSD" |
93 |
|
94 |
RDEPEND="dev-libs/expat |
95 |
x11-libs/libX11 |
96 |
x11-libs/libXext |
97 |
x11-libs/libXxf86vm |
98 |
x11-libs/libXi |
99 |
x11-libs/libXmu |
100 |
x11-libs/libXdamage |
101 |
>=x11-libs/libdrm-2.2 |
102 |
x11-libs/libICE |
103 |
motif? ( virtual/motif ) |
104 |
doc? ( app-doc/opengl-manpages ) |
105 |
!<=x11-base/xorg-x11-6.9 |
106 |
xcb? ( x11-libs/libxcb )" |
107 |
DEPEND="${RDEPEND} |
108 |
dev-util/pkgconfig |
109 |
x11-misc/makedepend |
110 |
x11-proto/inputproto |
111 |
x11-proto/xextproto |
112 |
app-admin/eselect-opengl |
113 |
!hppa? ( x11-proto/xf86driproto ) |
114 |
x11-proto/xf86vidmodeproto |
115 |
>=x11-proto/glproto-1.4.8 |
116 |
motif? ( x11-proto/printproto )" |
117 |
|
118 |
S="${WORKDIR}/${MY_P}" |
119 |
|
120 |
# Think about: ggi, svga, fbcon, no-X configs |
121 |
|
122 |
pkg_setup() { |
123 |
if use xcb; then |
124 |
if ! built_with_use x11-libs/libX11 xcb; then |
125 |
msg="You must build libX11 with xcb enabled." |
126 |
eerror ${msg} |
127 |
die ${msg} |
128 |
fi |
129 |
fi |
130 |
|
131 |
if use debug; then |
132 |
strip-flags |
133 |
append-flags -g |
134 |
fi |
135 |
|
136 |
append-flags -fno-strict-aliasing |
137 |
|
138 |
# gcc 4.2 has buggy ivopts |
139 |
if [[ $(gcc-version) = "4.2" ]]; then |
140 |
append-flags -fno-ivopts |
141 |
fi |
142 |
|
143 |
if use x86-fbsd; then |
144 |
CONFIG="freebsd-dri-x86" |
145 |
elif use amd64-fbsd; then |
146 |
CONFIG="freebsd-dri-amd64" |
147 |
elif use kernel_FreeBSD; then |
148 |
CONFIG="freebsd-dri" |
149 |
elif use x86; then |
150 |
CONFIG="linux-dri-x86" |
151 |
elif use amd64; then |
152 |
[[ ${ABI} == "amd64" ]] && CONFIG="linux-dri-x86-64" |
153 |
[[ ${ABI} == "x86" ]] && CONFIG="linux-dri-x86" |
154 |
elif use ppc; then |
155 |
CONFIG="linux-dri-ppc" |
156 |
else |
157 |
CONFIG="linux-dri" |
158 |
fi |
159 |
} |
160 |
|
161 |
src_unpack() { |
162 |
HOSTCONF="${S}/configs/${CONFIG}" |
163 |
|
164 |
unpack ${A} |
165 |
cd "${S}" |
166 |
|
167 |
# Upstream forgot to include this file in tarball for 7.0.2 |
168 |
# but it's in git, so this is a copy from the git repository |
169 |
cp "${FILESDIR}"/${PV}-glw.pc.in "${S}"/src/glw/glw.pc.in || die |
170 |
|
171 |
# FreeBSD 6.* doesn't have posix_memalign(). |
172 |
[[ ${CHOST} == *-freebsd6.* ]] && sed -i -e "s/-DHAVE_POSIX_MEMALIGN//" configs/freebsd{,-dri} |
173 |
|
174 |
# Don't compile debug code with USE=-debug - bug #125004 |
175 |
if ! use debug; then |
176 |
einfo "Removing DO_DEBUG defs in dri drivers..." |
177 |
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/" ; |
178 |
fi |
179 |
|
180 |
# Set up libdir |
181 |
echo "LIB_DIR = $(get_libdir)" >> "${HOSTCONF}" |
182 |
|
183 |
# Set default dri drivers directory |
184 |
echo 'DRI_DRIVER_SEARCH_DIR = /usr/$(LIB_DIR)/dri' >> "${HOSTCONF}" |
185 |
|
186 |
# Do we want thread-local storage (TLS)? |
187 |
if use nptl; then |
188 |
echo "ARCH_FLAGS += -DGLX_USE_TLS" >> "${HOSTCONF}" |
189 |
fi |
190 |
|
191 |
echo "X11_INCLUDES = `pkg-config --cflags-only-I x11`" >> "${HOSTCONF}" |
192 |
if use xcb; then |
193 |
echo "DEFINES += -DUSE_XCB" >> "${HOSTCONF}" |
194 |
echo "X11_INCLUDES += `pkg-config --cflags-only-I xcb` `pkg-config --cflags-only-I x11-xcb` `pkg-config --cflags-only-I xcb-glx`" >> "${HOSTCONF}" |
195 |
echo "GL_LIB_DEPS += `pkg-config --libs xcb` `pkg-config --libs x11-xcb` `pkg-config --libs xcb-glx`" >> "${HOSTCONF}" |
196 |
fi |
197 |
|
198 |
# Configurable DRI drivers |
199 |
driver_enable video_cards_i810 i810 i915 i915tex i965 |
200 |
driver_enable video_cards_mach64 mach64 |
201 |
driver_enable video_cards_mga mga |
202 |
driver_enable video_cards_r128 r128 |
203 |
driver_enable video_cards_radeon radeon r200 r300 |
204 |
driver_enable video_cards_s3virge s3v |
205 |
driver_enable video_cards_savage savage |
206 |
driver_enable video_cards_sis sis |
207 |
driver_enable video_cards_sunffb ffb |
208 |
driver_enable video_cards_tdfx tdfx |
209 |
driver_enable video_cards_trident trident |
210 |
driver_enable video_cards_via unichrome |
211 |
|
212 |
# Set drivers to everything on which we ran driver_enable() |
213 |
echo "DRI_DIRS = ${DRI_DRIVERS}" >> "${HOSTCONF}" |
214 |
|
215 |
if use hardened; then |
216 |
einfo "Deactivating assembly code for hardened build" |
217 |
echo "ASM_FLAGS =" >> "${HOSTCONF}" |
218 |
echo "ASM_SOURCES =" >> "${HOSTCONF}" |
219 |
echo "ASM_API =" >> "${HOSTCONF}" |
220 |
fi |
221 |
|
222 |
if use sparc; then |
223 |
einfo "Sparc assembly code is not working; deactivating" |
224 |
echo "ASM_FLAGS =" >> "${HOSTCONF}" |
225 |
echo "ASM_SOURCES =" >> "${HOSTCONF}" |
226 |
fi |
227 |
|
228 |
# Replace hardcoded /usr/X11R6 with this |
229 |
echo "EXTRA_LIB_PATH = `pkg-config --libs-only-L x11`" >> "${HOSTCONF}" |
230 |
|
231 |
echo 'CFLAGS = $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES) $(ASM_FLAGS)' >> "${HOSTCONF}" |
232 |
echo "OPT_FLAGS = ${CFLAGS}" >> "${HOSTCONF}" |
233 |
echo "CC = $(tc-getCC)" >> "${HOSTCONF}" |
234 |
echo "CXX = $(tc-getCXX)" >> "${HOSTCONF}" |
235 |
# bug #110840 - Build with PIC, since it hasn't been shown to slow it down |
236 |
echo "PIC_FLAGS = -fPIC" >> "${HOSTCONF}" |
237 |
|
238 |
# Removed glut, since we have separate freeglut/glut ebuilds |
239 |
# Remove EGL, since Brian Paul says it's not ready for a release |
240 |
echo "SRC_DIRS = glx/x11 mesa glu glw" >> "${HOSTCONF}" |
241 |
|
242 |
# Get rid of glut includes |
243 |
rm -f "${S}"/include/GL/glut*h |
244 |
|
245 |
# Documented in configs/default |
246 |
if use motif; then |
247 |
# Add -lXm |
248 |
echo "GLW_LIB_DEPS += -lXm" >> "${HOSTCONF}" |
249 |
# Add GLwMDrawA.c |
250 |
echo "GLW_SOURCES += GLwMDrawA.c" >> "${HOSTCONF}" |
251 |
fi |
252 |
|
253 |
# Shut up pointless warnings |
254 |
# echo "MKDEP = gcc -M" >> "${HOSTCONF}" |
255 |
# echo "MKDEP_OPTIONS = -MF depend" >> "${HOSTCONF}" |
256 |
echo "MKDEP_OPTIONS = -fdepend -I$(gcc-config -L)/include" >> "${HOSTCONF}" |
257 |
echo "INSTALL_DIR = /usr" >> "${HOSTCONF}" |
258 |
echo 'DRI_DRIVER_INSTALL_DIR = /usr/$(LIB_DIR)/dri' >> "${HOSTCONF}" |
259 |
} |
260 |
|
261 |
src_compile() { |
262 |
emake -j1 ${CONFIG} || die "Build failed" |
263 |
} |
264 |
|
265 |
src_install() { |
266 |
dodir /usr |
267 |
emake -j1 \ |
268 |
DESTDIR="${D}" \ |
269 |
install || die "Installation failed" |
270 |
|
271 |
if ! use motif; then |
272 |
rm "${D}"/usr/include/GL/GLwMDrawA.h |
273 |
fi |
274 |
|
275 |
# Don't install private headers |
276 |
rm -f "${D}"/usr/include/GL/GLw*P.h |
277 |
|
278 |
fix_opengl_symlinks |
279 |
dynamic_libgl_install |
280 |
|
281 |
# Install libtool archives |
282 |
insinto /usr/$(get_libdir) |
283 |
# (#67729) Needs to be lib, not $(get_libdir) |
284 |
doins "${FILESDIR}"/lib/libGLU.la |
285 |
sed -e "s:\${libdir}:$(get_libdir):g" "${FILESDIR}"/lib/libGL.la \ |
286 |
> "${D}"/usr/$(get_libdir)/opengl/xorg-x11/lib/libGL.la |
287 |
|
288 |
# On *BSD libcs dlopen() and similar functions are present directly in |
289 |
# libc.so and does not require linking to libdl. portability eclass takes |
290 |
# care of finding the needed library (if needed) witht the dlopen_lib |
291 |
# function. |
292 |
sed -i -e 's:-ldl:'$(dlopen_lib)':g' \ |
293 |
"${D}"/usr/$(get_libdir)/libGLU.la \ |
294 |
"${D}"/usr/$(get_libdir)/opengl/xorg-x11/lib/libGL.la |
295 |
|
296 |
# Create the two-number versioned libs (.so.#.#), since only .so.# and |
297 |
# .so.#.#.# were made |
298 |
local MAJOR_2="$(printf "%.2i" $(get_version_component_range 1 ${PV}))" |
299 |
local MINOR_2="$(printf "%.2i" $(get_version_component_range 2 ${PV}))" |
300 |
local MICRO_2="$(printf "%.2i" $(get_version_component_range 3 ${PV}))" |
301 |
dosym \ |
302 |
libGLU.so.1.3.${MAJOR_2}${MINOR_2}${MICRO_2} \ |
303 |
/usr/$(get_libdir)/libGLU.so.1.3 |
304 |
dosym libGLw.so.1.0.0 /usr/$(get_libdir)/libGLw.so.1.0 |
305 |
|
306 |
# libGLU doesn't get the plain .so symlink either |
307 |
dosym libGLU.so.1 /usr/$(get_libdir)/libGLU.so |
308 |
|
309 |
# Figure out why libGL.so.1.5 is built (directfb), and why it's linked to |
310 |
# as the default libGL.so.1 |
311 |
} |
312 |
|
313 |
pkg_postinst() { |
314 |
switch_opengl_implem |
315 |
} |
316 |
|
317 |
fix_opengl_symlinks() { |
318 |
# Remove invalid symlinks |
319 |
local LINK |
320 |
for LINK in $(find "${D}"/usr/$(get_libdir) \ |
321 |
-name libGL\.* -type l); do |
322 |
rm -f ${LINK} |
323 |
done |
324 |
# Create required symlinks |
325 |
if [[ ${CHOST} == *-freebsd* ]]; then |
326 |
# FreeBSD doesn't use major.minor versioning, so the library is only |
327 |
# libGL.so.1 and no libGL.so.1.2 is ever used there, thus only create |
328 |
# libGL.so symlink and leave libGL.so.1 being the real thing |
329 |
dosym libGL.so.1 /usr/$(get_libdir)/libGL.so |
330 |
else |
331 |
dosym libGL.so.1.2 /usr/$(get_libdir)/libGL.so |
332 |
dosym libGL.so.1.2 /usr/$(get_libdir)/libGL.so.1 |
333 |
fi |
334 |
} |
335 |
|
336 |
dynamic_libgl_install() { |
337 |
# next section is to setup the dynamic libGL stuff |
338 |
ebegin "Moving libGL and friends for dynamic switching" |
339 |
dodir /usr/$(get_libdir)/opengl/${OPENGL_DIR}/{lib,extensions,include} |
340 |
local x="" |
341 |
for x in "${D}"/usr/$(get_libdir)/libGL.so* \ |
342 |
"${D}"/usr/$(get_libdir)/libGL.la \ |
343 |
"${D}"/usr/$(get_libdir)/libGL.a; do |
344 |
if [ -f ${x} -o -L ${x} ]; then |
345 |
# libGL.a cause problems with tuxracer, etc |
346 |
mv -f ${x} "${D}"/usr/$(get_libdir)/opengl/${OPENGL_DIR}/lib |
347 |
fi |
348 |
done |
349 |
# glext.h added for #54984 |
350 |
for x in "${D}"/usr/include/GL/{gl.h,glx.h,glext.h,glxext.h}; do |
351 |
if [ -f ${x} -o -L ${x} ]; then |
352 |
mv -f ${x} "${D}"/usr/$(get_libdir)/opengl/${OPENGL_DIR}/include |
353 |
fi |
354 |
done |
355 |
eend 0 |
356 |
} |
357 |
|
358 |
switch_opengl_implem() { |
359 |
# Switch to the xorg implementation. |
360 |
# Use new opengl-update that will not reset user selected |
361 |
# OpenGL interface ... |
362 |
echo |
363 |
eselect opengl set --use-old ${OPENGL_DIR} |
364 |
} |
365 |
|
366 |
# $1 - VIDEO_CARDS flag |
367 |
# other args - names of DRI drivers to enable |
368 |
driver_enable() { |
369 |
if use $1; then |
370 |
shift |
371 |
DRI_DRIVERS="${DRI_DRIVERS} $@" |
372 |
fi |
373 |
} |
374 |
|
375 |
|
376 |
|
377 |
-- |
378 |
gentoo-commits@g.o mailing list |