1 |
commit: 45393659907d842e0c29addefe7cdb92da78e5e3 |
2 |
Author: Matt Turner <mattst88 <AT> gmail <DOT> com> |
3 |
AuthorDate: Wed Aug 29 05:37:01 2012 +0000 |
4 |
Commit: Matt Turner <mattst88 <AT> gmail <DOT> com> |
5 |
CommitDate: Wed Aug 29 05:37:01 2012 +0000 |
6 |
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/x11.git;a=commit;h=45393659 |
7 |
|
8 |
x11-apps/mesa-progs: Add support for building egl/gles1/gles2 demos |
9 |
|
10 |
https://bugs.gentoo.org/show_bug.cgi?id=430954 needs to be fixed before |
11 |
we can add proper dependencies. I have a hard time caring at the moment. |
12 |
|
13 |
--- |
14 |
x11-apps/mesa-progs/mesa-progs-9999.ebuild | 58 ++++++++++++++++++++------- |
15 |
x11-apps/mesa-progs/metadata.xml | 5 ++ |
16 |
2 files changed, 48 insertions(+), 15 deletions(-) |
17 |
|
18 |
diff --git a/x11-apps/mesa-progs/mesa-progs-9999.ebuild b/x11-apps/mesa-progs/mesa-progs-9999.ebuild |
19 |
index 551e45d..89ddd94 100644 |
20 |
--- a/x11-apps/mesa-progs/mesa-progs-9999.ebuild |
21 |
+++ b/x11-apps/mesa-progs/mesa-progs-9999.ebuild |
22 |
@@ -6,40 +6,68 @@ EAPI=4 |
23 |
|
24 |
MY_PN=${PN/progs/demos} |
25 |
MY_P=${MY_PN}-${PV} |
26 |
-EGIT_REPO_URI="git://anongit.freedesktop.org/${MY_PN/-//} |
27 |
- http://anongit.freedesktop.org/${MY_PN/-//}" |
28 |
-[[ ${PV} = 9999* ]] && GIT_ECLASS="git-2" |
29 |
+EGIT_REPO_URI="git://anongit.freedesktop.org/${MY_PN/-//}" |
30 |
+ |
31 |
+if [[ ${PV} = 9999* ]]; then |
32 |
+ GIT_ECLASS="git" |
33 |
+fi |
34 |
+ |
35 |
inherit toolchain-funcs ${GIT_ECLASS} |
36 |
|
37 |
DESCRIPTION="Mesa's OpenGL utility and demo programs (glxgears and glxinfo)" |
38 |
HOMEPAGE="http://mesa3d.sourceforge.net/" |
39 |
-[[ ${PV} == 9999* ]] || SRC_URI="ftp://ftp.freedesktop.org/pub/${MY_PN/-//}/${PV}/${MY_P}.tar.bz2" |
40 |
+if [[ ${PV} == 9999* ]]; then |
41 |
+ SRC_URI="" |
42 |
+else |
43 |
+ SRC_URI="ftp://ftp.freedesktop.org/pub/${MY_PN/-//}/${PV}/${MY_P}.tar.bz2" |
44 |
+fi |
45 |
|
46 |
LICENSE="LGPL-2" |
47 |
SLOT="0" |
48 |
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux" |
49 |
-IUSE="" |
50 |
+IUSE="egl gles1 gles2" |
51 |
|
52 |
RDEPEND="virtual/opengl" |
53 |
-DEPEND="${RDEPEND} |
54 |
- dev-util/pkgconfig" |
55 |
+DEPEND="${RDEPEND}" |
56 |
|
57 |
S=${WORKDIR}/${MY_P} |
58 |
|
59 |
src_configure() { |
60 |
- # We're not using the complete buildsystem to avoid dependencies |
61 |
- # unnecessary for our two little tools. |
62 |
- : |
63 |
+ # We're not using the complete buildsystem if we only want to build |
64 |
+ # glxinfo and glxgears. |
65 |
+ if use egl || use gles1 || use gles2; then |
66 |
+ default_src_configure |
67 |
+ fi |
68 |
} |
69 |
|
70 |
src_compile() { |
71 |
- local pkgs='gl x11' |
72 |
- tc-export CC |
73 |
- emake \ |
74 |
- CPPFLAGS="$(pkg-config --cflags ${pkgs}) -Isrc/util" \ |
75 |
- LDLIBS="$(pkg-config --libs ${pkgs}) -lm" src/xdemos/{glxgears,glxinfo} |
76 |
+ if ! use egl && ! use gles1 && ! use gles2; then |
77 |
+ tc-export CC |
78 |
+ emake LDLIBS='-lX11 -lGL -lm' src/xdemos/{glxgears,glxinfo} |
79 |
+ else |
80 |
+ emake -C src/xdemos glxgears glxinfo |
81 |
+ fi |
82 |
+ |
83 |
+ if use egl; then |
84 |
+ emake -C src/egl/eglut/ libeglut_screen.la libeglut_x11.la |
85 |
+ emake -C src/egl/opengl/ eglgears_screen eglgears_x11 |
86 |
+ |
87 |
+ use gles1 && emake -C src/egl/opengles1/ es1_info gears_screen gears_x11 |
88 |
+ use gles2 && emake -C src/egl/opengles2/ es2_info es2gears_screen es2gears_x11 |
89 |
+ fi |
90 |
} |
91 |
|
92 |
src_install() { |
93 |
dobin src/xdemos/{glxgears,glxinfo} |
94 |
+ if use egl; then |
95 |
+ dobin src/egl/opengl/eglgears_{screen,x11} |
96 |
+ |
97 |
+ if use gles1; then |
98 |
+ dobin src/egl/opengles1/es1_info |
99 |
+ newbin src/egl/opengles1/gears_screen es1gears_screen |
100 |
+ newbin src/egl/opengles1/gears_x11 es1gears_x11 |
101 |
+ fi |
102 |
+ |
103 |
+ use gles2 && dobin src/egl/opengles2/es2{_info,gears_{screen,x11}} |
104 |
+ fi |
105 |
} |
106 |
|
107 |
diff --git a/x11-apps/mesa-progs/metadata.xml b/x11-apps/mesa-progs/metadata.xml |
108 |
index 01c4c00..c679837 100644 |
109 |
--- a/x11-apps/mesa-progs/metadata.xml |
110 |
+++ b/x11-apps/mesa-progs/metadata.xml |
111 |
@@ -2,4 +2,9 @@ |
112 |
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> |
113 |
<pkgmetadata> |
114 |
<herd>x11</herd> |
115 |
+<use> |
116 |
+ <flag name='egl'>Enable EGL support.</flag> |
117 |
+ <flag name='gles1'>Enable GLESv1 support.</flag> |
118 |
+ <flag name='gles2'>Enable GLESv2 support.</flag> |
119 |
+</use> |
120 |
</pkgmetadata> |