blob: d65d1c6ba8142fe6dddb5996784cc00ca73c4dce (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
|
# Copyright 1999-2002 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License, v2 or later
# Author Achim Gottinger <achim@gentoo.org>
# $Header: /var/cvsroot/gentoo-x86/media-libs/mesa/mesa-3.4.2.ebuild,v 1.4 2002/04/27 11:41:02 seemant Exp $
MY_P=Mesa-${PV}
S=${WORKDIR}/${MY_P}
DESCRIPTION="OpenGL like graphic library for Linux"
SRC_URI="http://download.sourceforge.net/mesa3d/MesaLib-${PV}.tar.bz2
http://download.sourceforge.net/mesa3d/MesaDemos-${PV}.tar.bz2"
HOMEPAGE="http://mesa3d.sourceforge.net/"
DEPEND="virtual/glibc
X? ( virtual/x11 )
ggi? ( >=media-libs/libggi-2.0_beta3 )
svga? ( >=media-libs/svgalib-1.4.2-r1 )"
if [ "`use X`" ]
then
PROVIDE="virtual/opengl virtual/glu virtual/glut"
else
PROVIDE="virtual/opengl"
fi
src_compile() {
local myconf
if [ "`use mmx`" ]
then
myconf="--enable-mmx"
else
myconf="--disable-mmx"
fi
if [ "`use 3dnow`" ]
then
myconf="${myconf} --enable-3dnow"
else
myconf="${myconf} --disable-3dnow"
fi
if [ "`use sse`" ]
then
myconf="${myconf} --enable-sse"
else
myconf="${myconf} --disable-sse"
fi
if [ "`use X`" ]
then
myconf="${myconf} --with-x --without-glut"
# --without-glut means that mesa is forced to use and install
# his own version of glut.
else
myconf="${myconf} --without-x"
rm -rf src-glut
fi
if [ -z "`use ggi`" ] || [ -z "`use fbcon`" ]
then
myconf="${myconf} --disable-ggi-fbdev --without-ggi"
fi
if [ -z "`use svga`" ]
then
myconf="${myconf} --without-svga"
fi
cp configure configure.orig
sed -e "s:^ggi_confdir.*:ggi_confdir=/etc/ggi:" \
-e "s:^ggi_libdir.*:ggi_libdir=\$prefix/lib:" \
configure.orig > configure
./configure --prefix=/usr --sysconfdir=/etc/mesa --host=${CHOST} $myconf \
|| die
if [ "`use ggi`" ] && [ "`use fbcon`" ]
then
cd ${S}/src/GGI
cp Makefile Makefile.orig
sed -e "s:^ggimesaconfdatadir.*:ggimesaconfdatadir = \${ggi_confdir}:" \
Makefile.orig > Makefile
cd ${S}/src/GGI/default
cp stubs.c stubs.c.orig
sed -e "s:Texture.Enabled:Texture.ReallyEnabled:" stubs.c.orig > stubs.c
cd ${S}/src/GGI/include/ggi/mesa
cp display_fbdev.h display_fbdev.h.orig
sed -e "s:fbdev_hook:ggi_fbdev_priv:" display_fbdev.h.orig > display_fbdev.h
cd ${S}
mkdir gg
ln -s /usr/lib/libgg*.so .
fi
make || die
# Don't worry about errors or failures in making the demos
cd ${S}/demos; for f in *.c; do make "${f%.c}"; done
cd ${S}/xdemos; for f in *.c; do make "${f%.c}"; done
if [ "`use ggi`" ]
then
cd ${S}/ggi/ggiglut
make libglut_la_LIBADD="-lggi -lgg -L${S}/src/.libs -lGL" \
|| die
fi
}
src_install () {
if [ "`use ggi`" ]
then
cd ggi/ggiglut
make DESTDIR=${D} install || die
cd ${D}/usr/lib
cp libglut.la libglut.orig
sed -e "s:-L${S}/src/.libs::g" libglut.orig > libglut.la
rm libglut.orig
fi
cd ${S}
make DESTDIR=${D} install || die
cd ${D}/usr/lib
if [ "$PN" = "mesa-glu" ]
then
rm -f libGL.*
rm -f ../include/GL/gl.h
rm -f ../include/GL/glx.h
rm -f ../include/GL/osmesa.h
else
ln -s libGL.so.2.1.030402 libMesaGL.so.3
fi
ln -s libGLU.so.1.1.030402 libMesaGLU.so.3
cd ${S}
dodoc docs/*
# Install any demos that successfully built
for d in demos xdemos; do
exeinto /usr/lib/mesa-$PV/$d
cd ${S}/$d
for f in *.c; do [ -f "${f%.c}" ] && doexe "${f%.c}"; done
done
}
|