diff options
author | Richard Purdie <rpurdie@linux.intel.com> | 2009-08-14 18:02:13 +0100 |
---|---|---|
committer | Richard Purdie <rpurdie@linux.intel.com> | 2009-08-14 18:02:13 +0100 |
commit | a0a9a2c6dfea1d6cf0cfb7bed6bd866850198656 (patch) | |
tree | e103828eb6419b36534f8f666e307f463e9d1bdd /meta | |
parent | c57e2d63159bc2af7f6e72dd3a83fa02ad91fc04 (diff) | |
download | poky-a0a9a2c6dfea1d6cf0cfb7bed6bd866850198656.tar.gz |
mesa: Update mesa-dri git recipe and add recipe for 7.5
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
Diffstat (limited to 'meta')
-rw-r--r-- | meta/packages/mesa/mesa-dri/cross2.patch | 44 | ||||
-rw-r--r-- | meta/packages/mesa/mesa-dri/crossfix.patch | 16 | ||||
-rw-r--r-- | meta/packages/mesa/mesa-dri/i586/matypes.h | 162 | ||||
-rw-r--r-- | meta/packages/mesa/mesa-dri_7.5.bb | 48 | ||||
-rw-r--r-- | meta/packages/mesa/mesa-dri_git.bb | 23 |
5 files changed, 286 insertions, 7 deletions
diff --git a/meta/packages/mesa/mesa-dri/cross2.patch b/meta/packages/mesa/mesa-dri/cross2.patch new file mode 100644 index 0000000000..3c62a469ed --- /dev/null +++ b/meta/packages/mesa/mesa-dri/cross2.patch | |||
@@ -0,0 +1,44 @@ | |||
1 | Index: git/configure.ac | ||
2 | =================================================================== | ||
3 | --- git.orig/configure.ac 2009-08-14 16:16:23.000000000 +0100 | ||
4 | +++ git/configure.ac 2009-08-14 16:17:27.000000000 +0100 | ||
5 | @@ -268,15 +268,6 @@ | ||
6 | GLAPI_ASM_SOURCES="" | ||
7 | AC_MSG_CHECKING([whether to enable assembly]) | ||
8 | test "x$enable_asm" = xno && AC_MSG_RESULT([no]) | ||
9 | -# disable if cross compiling on x86/x86_64 since we must run gen_matypes | ||
10 | -if test "x$enable_asm" = xyes && test "x$cross_compiling" = xyes; then | ||
11 | - case "$host_cpu" in | ||
12 | - i?86 | x86_64) | ||
13 | - enable_asm=no | ||
14 | - AC_MSG_RESULT([no, cross compiling]) | ||
15 | - ;; | ||
16 | - esac | ||
17 | -fi | ||
18 | # check for supported arches | ||
19 | if test "x$enable_asm" = xyes; then | ||
20 | case "$host_cpu" in | ||
21 | Index: git/src/mesa/x86/Makefile | ||
22 | =================================================================== | ||
23 | --- git.orig/src/mesa/x86/Makefile 2009-08-14 16:18:23.000000000 +0100 | ||
24 | +++ git/src/mesa/x86/Makefile 2009-08-14 16:19:10.000000000 +0100 | ||
25 | @@ -14,19 +14,6 @@ | ||
26 | -I../tnl | ||
27 | |||
28 | |||
29 | -default: gen_matypes matypes.h | ||
30 | - | ||
31 | -clean: | ||
32 | - -rm -f matypes.h gen_matypes | ||
33 | - | ||
34 | - | ||
35 | -gen_matypes: gen_matypes.c | ||
36 | - $(HOST_CC) $(INCLUDE_DIRS) $(HOST_CFLAGS) gen_matypes.c -o gen_matypes | ||
37 | - | ||
38 | -# need some special rules here, unfortunately | ||
39 | -matypes.h: ../main/mtypes.h ../tnl/t_context.h gen_matypes | ||
40 | - ./gen_matypes > matypes.h | ||
41 | - | ||
42 | common_x86_asm.o: matypes.h | ||
43 | 3dnow_normal.o: matypes.h | ||
44 | 3dnow_xform1.o: matypes.h | ||
diff --git a/meta/packages/mesa/mesa-dri/crossfix.patch b/meta/packages/mesa/mesa-dri/crossfix.patch new file mode 100644 index 0000000000..84be428c4f --- /dev/null +++ b/meta/packages/mesa/mesa-dri/crossfix.patch | |||
@@ -0,0 +1,16 @@ | |||
1 | Index: Mesa-7.5/bin/mklib | ||
2 | =================================================================== | ||
3 | --- Mesa-7.5.orig/bin/mklib 2009-08-12 13:01:34.000000000 +0100 | ||
4 | +++ Mesa-7.5/bin/mklib 2009-08-12 13:04:19.000000000 +0100 | ||
5 | @@ -234,9 +234,9 @@ | ||
6 | if [ "x$LINK" = "x" ] ; then | ||
7 | # -linker was not specified so set default link command now | ||
8 | if [ $CPLUSPLUS = 1 ] ; then | ||
9 | - LINK=g++ | ||
10 | + LINK=$CXX | ||
11 | else | ||
12 | - LINK=gcc | ||
13 | + LINK=$CC | ||
14 | fi | ||
15 | fi | ||
16 | |||
diff --git a/meta/packages/mesa/mesa-dri/i586/matypes.h b/meta/packages/mesa/mesa-dri/i586/matypes.h new file mode 100644 index 0000000000..98d2188e75 --- /dev/null +++ b/meta/packages/mesa/mesa-dri/i586/matypes.h | |||
@@ -0,0 +1,162 @@ | |||
1 | /* | ||
2 | * This file is automatically generated from the Mesa internal type | ||
3 | * definitions. Do not edit directly. | ||
4 | */ | ||
5 | |||
6 | #ifndef __ASM_TYPES_H__ | ||
7 | #define __ASM_TYPES_H__ | ||
8 | |||
9 | |||
10 | |||
11 | /* ============================================================= | ||
12 | * Offsets for GLcontext | ||
13 | */ | ||
14 | |||
15 | #define CTX_DRIVER_CTX 996 | ||
16 | |||
17 | #define CTX_LIGHT_ENABLED 39404 | ||
18 | #define CTX_LIGHT_SHADE_MODEL 39408 | ||
19 | #define CTX_LIGHT_COLOR_MAT_FACE 39412 | ||
20 | #define CTX_LIGHT_COLOR_MAT_MODE 39416 | ||
21 | #define CTX_LIGHT_COLOR_MAT_MASK 39420 | ||
22 | #define CTX_LIGHT_COLOR_MAT_ENABLED 39424 | ||
23 | #define CTX_LIGHT_ENABLED_LIST 39432 | ||
24 | #define CTX_LIGHT_NEED_VERTS 43793 | ||
25 | #define CTX_LIGHT_FLAGS 43796 | ||
26 | #define CTX_LIGHT_BASE_COLOR 43800 | ||
27 | |||
28 | |||
29 | /* ============================================================= | ||
30 | * Offsets for struct vertex_buffer | ||
31 | */ | ||
32 | |||
33 | #define VB_SIZE 0 | ||
34 | #define VB_COUNT 4 | ||
35 | |||
36 | #define VB_ELTS 8 | ||
37 | #define VB_OBJ_PTR 12 | ||
38 | #define VB_EYE_PTR 16 | ||
39 | #define VB_CLIP_PTR 20 | ||
40 | #define VB_PROJ_CLIP_PTR 24 | ||
41 | #define VB_CLIP_OR_MASK 28 | ||
42 | #define VB_CLIP_MASK 32 | ||
43 | #define VB_NORMAL_PTR 36 | ||
44 | #define VB_EDGE_FLAG 44 | ||
45 | #define VB_TEX0_COORD_PTR 48 | ||
46 | #define VB_TEX1_COORD_PTR 52 | ||
47 | #define VB_TEX2_COORD_PTR 56 | ||
48 | #define VB_TEX3_COORD_PTR 60 | ||
49 | #define VB_INDEX_PTR 80 | ||
50 | #define VB_COLOR_PTR 88 | ||
51 | #define VB_SECONDARY_COLOR_PTR 96 | ||
52 | #define VB_FOG_COORD_PTR 104 | ||
53 | #define VB_PRIMITIVE 108 | ||
54 | |||
55 | |||
56 | /* | ||
57 | * Flags for struct vertex_buffer | ||
58 | */ | ||
59 | |||
60 | #define VERT_BIT_OBJ 0x1 | ||
61 | #define VERT_BIT_NORM 0x4 | ||
62 | #define VERT_BIT_RGBA 0x8 | ||
63 | #define VERT_BIT_SPEC_RGB 0x10 | ||
64 | #define VERT_BIT_FOG_COORD 0x20 | ||
65 | #define VERT_BIT_TEX0 0x100 | ||
66 | #define VERT_BIT_TEX1 0x200 | ||
67 | #define VERT_BIT_TEX2 0x400 | ||
68 | #define VERT_BIT_TEX3 0x800 | ||
69 | |||
70 | |||
71 | /* ============================================================= | ||
72 | * Offsets for GLvector4f | ||
73 | */ | ||
74 | |||
75 | #define V4F_DATA 0 | ||
76 | #define V4F_START 4 | ||
77 | #define V4F_COUNT 8 | ||
78 | #define V4F_STRIDE 12 | ||
79 | #define V4F_SIZE 16 | ||
80 | #define V4F_FLAGS 20 | ||
81 | |||
82 | /* | ||
83 | * Flags for GLvector4f | ||
84 | */ | ||
85 | |||
86 | #define VEC_MALLOC 0x10 | ||
87 | #define VEC_NOT_WRITEABLE 0x40 | ||
88 | #define VEC_BAD_STRIDE 0x100 | ||
89 | |||
90 | #define VEC_SIZE_1 0x1 | ||
91 | #define VEC_SIZE_2 0x3 | ||
92 | #define VEC_SIZE_3 0x7 | ||
93 | #define VEC_SIZE_4 0xf | ||
94 | |||
95 | |||
96 | /* ============================================================= | ||
97 | * Offsets for GLmatrix | ||
98 | */ | ||
99 | |||
100 | #define MATRIX_DATA 0 | ||
101 | #define MATRIX_INV 4 | ||
102 | #define MATRIX_FLAGS 8 | ||
103 | #define MATRIX_TYPE 12 | ||
104 | |||
105 | |||
106 | /* ============================================================= | ||
107 | * Offsets for struct gl_light | ||
108 | */ | ||
109 | |||
110 | #define LIGHT_NEXT 0 | ||
111 | #define LIGHT_PREV 4 | ||
112 | |||
113 | #define LIGHT_AMBIENT 8 | ||
114 | #define LIGHT_DIFFUSE 24 | ||
115 | #define LIGHT_SPECULAR 40 | ||
116 | #define LIGHT_EYE_POSITION 56 | ||
117 | #define LIGHT_SPOT_DIRECTION 72 | ||
118 | #define LIGHT_SPOT_EXPONENT 88 | ||
119 | #define LIGHT_SPOT_CUTOFF 92 | ||
120 | #define LIGHT_COS_CUTOFF 100 | ||
121 | #define LIGHT_CONST_ATTEN 104 | ||
122 | #define LIGHT_LINEAR_ATTEN 108 | ||
123 | #define LIGHT_QUADRATIC_ATTEN 112 | ||
124 | #define LIGHT_ENABLED 116 | ||
125 | |||
126 | #define LIGHT_FLAGS 120 | ||
127 | |||
128 | #define LIGHT_POSITION 124 | ||
129 | #define LIGHT_VP_INF_NORM 140 | ||
130 | #define LIGHT_H_INF_NORM 152 | ||
131 | #define LIGHT_NORM_DIRECTION 164 | ||
132 | #define LIGHT_VP_INF_SPOT_ATTEN 180 | ||
133 | |||
134 | #define LIGHT_SPOT_EXP_TABLE 184 | ||
135 | #define LIGHT_MAT_AMBIENT 4280 | ||
136 | #define LIGHT_MAT_DIFFUSE 4304 | ||
137 | #define LIGHT_MAT_SPECULAR 4328 | ||
138 | |||
139 | #define SIZEOF_GL_LIGHT 4360 | ||
140 | |||
141 | /* | ||
142 | * Flags for struct gl_light | ||
143 | */ | ||
144 | |||
145 | #define LIGHT_SPOT 0x1 | ||
146 | #define LIGHT_LOCAL_VIEWER 0x2 | ||
147 | #define LIGHT_POSITIONAL 0x4 | ||
148 | |||
149 | #define LIGHT_NEED_VERTICES 0x6 | ||
150 | |||
151 | |||
152 | /* ============================================================= | ||
153 | * Offsets for struct gl_lightmodel | ||
154 | */ | ||
155 | |||
156 | #define LIGHT_MODEL_AMBIENT 0 | ||
157 | #define LIGHT_MODEL_LOCAL_VIEWER 16 | ||
158 | #define LIGHT_MODEL_TWO_SIDE 17 | ||
159 | #define LIGHT_MODEL_COLOR_CONTROL 20 | ||
160 | |||
161 | |||
162 | #endif /* __ASM_TYPES_H__ */ | ||
diff --git a/meta/packages/mesa/mesa-dri_7.5.bb b/meta/packages/mesa/mesa-dri_7.5.bb new file mode 100644 index 0000000000..8b5fa7bc92 --- /dev/null +++ b/meta/packages/mesa/mesa-dri_7.5.bb | |||
@@ -0,0 +1,48 @@ | |||
1 | include mesa-common.inc | ||
2 | |||
3 | SRC_URI += "file://crossfix.patch;patch=1 \ | ||
4 | file://mesa-DRI2Swapbuffer.patch;patch=1 " | ||
5 | |||
6 | PROTO_DEPS = "xf86driproto glproto dri2proto" | ||
7 | LIB_DEPS = "libdrm virtual/libx11 libxext libxxf86vm libxdamage libxfixes expat" | ||
8 | |||
9 | DEPENDS = "${PROTO_DEPS} ${LIB_DEPS}" | ||
10 | |||
11 | PR = "r10" | ||
12 | |||
13 | # most of our targets do not have DRI so will use mesa-xlib | ||
14 | DEFAULT_PREFERENCE = "-1" | ||
15 | |||
16 | # Netbooks have DRI support so use mesa-dri by default | ||
17 | DEFAULT_PREFERENCE_netbook = "1" | ||
18 | |||
19 | PACKAGES =+ "${PN}-xprogs" | ||
20 | PACKAGES_DYNAMIC = "mesa-dri-driver-*" | ||
21 | |||
22 | FILES_${PN}-dbg += "${libdir}/dri/.debug/*" | ||
23 | FILES_${PN}-xprogs = "${bindir}/glxdemo ${bindir}/glxgears ${bindir}/glxheads ${bindir}/glxinfo" | ||
24 | |||
25 | LEAD_SONAME = "libGL.so.1" | ||
26 | |||
27 | EXTRA_OECONF += "--with-driver=dri --disable-egl --disable-gallium" | ||
28 | |||
29 | do_install_append () { | ||
30 | install -d ${D}/usr/bin | ||
31 | install -m 0755 ${S}/progs/xdemos/{glxdemo,glxgears,glxheads,glxinfo} ${D}/usr/bin/ | ||
32 | } | ||
33 | |||
34 | python populate_packages_prepend() { | ||
35 | import os.path | ||
36 | |||
37 | dri_drivers_root = os.path.join(bb.data.getVar('libdir', d, 1), "dri") | ||
38 | |||
39 | do_split_packages(d, dri_drivers_root, '^(.*)_dri\.so$', 'mesa-dri-driver-%s', 'Mesa %s DRI driver', extra_depends='') | ||
40 | } | ||
41 | |||
42 | COMPATIBLE_HOST = '(i.86.*-linux)' | ||
43 | |||
44 | |||
45 | # | ||
46 | # Header generated by i586-poky-linux-gcc gen_matypes.c -o gen_matypes -I ../../../include/GL -I ../../../include -I .. -I ../main/ -I ../math -I ../glapi/ -I ../tnl | ||
47 | # then run gen_matypes > matypes.h on device | ||
48 | # \ No newline at end of file | ||
diff --git a/meta/packages/mesa/mesa-dri_git.bb b/meta/packages/mesa/mesa-dri_git.bb index 65a4a03656..a316d580e4 100644 --- a/meta/packages/mesa/mesa-dri_git.bb +++ b/meta/packages/mesa/mesa-dri_git.bb | |||
@@ -1,12 +1,18 @@ | |||
1 | include mesa-common.inc | 1 | include mesa-common.inc |
2 | 2 | ||
3 | SRC_URI = "git://anongit.freedesktop.org/git/mesa/mesa;protocol=git;branch=mesa_7_5_branch \ | ||
4 | file://cross2.patch;patch=1 \ | ||
5 | file://matypes.h" | ||
6 | # file://mesa-DRI2Swapbuffer.patch;patch=1 " | ||
7 | S = "${WORKDIR}/git" | ||
8 | |||
3 | PROTO_DEPS = "xf86driproto glproto dri2proto" | 9 | PROTO_DEPS = "xf86driproto glproto dri2proto" |
4 | LIB_DEPS = "libdrm virtual/libx11 libxext libxxf86vm libxdamage libxfixes expat" | 10 | LIB_DEPS = "libdrm virtual/libx11 libxext libxxf86vm libxdamage libxfixes expat" |
5 | 11 | ||
6 | DEPENDS = "${PROTO_DEPS} ${LIB_DEPS}" | 12 | DEPENDS = "${PROTO_DEPS} ${LIB_DEPS}" |
7 | 13 | ||
8 | PV = "7.4+git${SRCPV}" | 14 | PV = "7.5+git${SRCPV}" |
9 | PR = "r4" | 15 | PR = "r14" |
10 | 16 | ||
11 | # most of our targets do not have DRI so will use mesa-xlib | 17 | # most of our targets do not have DRI so will use mesa-xlib |
12 | DEFAULT_PREFERENCE = "-1" | 18 | DEFAULT_PREFERENCE = "-1" |
@@ -14,21 +20,24 @@ DEFAULT_PREFERENCE = "-1" | |||
14 | # Netbooks have DRI support so use mesa-dri by default | 20 | # Netbooks have DRI support so use mesa-dri by default |
15 | DEFAULT_PREFERENCE_netbook = "1" | 21 | DEFAULT_PREFERENCE_netbook = "1" |
16 | 22 | ||
17 | SRC_URI = "git://anongit.freedesktop.org/git/mesa/mesa;protocol=git;branch=master" | ||
18 | S = "${WORKDIR}/git" | ||
19 | |||
20 | PACKAGES =+ "${PN}-xprogs" | 23 | PACKAGES =+ "${PN}-xprogs" |
21 | PACKAGES_DYNAMIC = "mesa-dri-driver-*" | 24 | PACKAGES_DYNAMIC = "mesa-dri-driver-*" |
22 | 25 | ||
23 | FILES_${PN}-dbg += "${libdir}/dri/.debug/*" | 26 | FILES_${PN}-dbg += "${libdir}/dri/.debug/*" |
24 | FILES_${PN}-xprogs = "${bindir}/glxdemo ${bindir}/glxgears ${bindir}/glxheads ${bindir}/glxinfo" | 27 | FILES_${PN}-xprogs = "${bindir}/glxdemo ${bindir}/glxgears ${bindir}/glxheads ${bindir}/glxinfo" |
25 | 28 | ||
26 | EXTRA_OECONF += "--with-driver=dri --with-state-trackers=glx" | 29 | LEAD_SONAME = "libGL.so.1" |
30 | |||
31 | EXTRA_OECONF += "--with-driver=dri --disable-egl --disable-gallium" | ||
32 | |||
33 | do_configure_prepend () { | ||
34 | cp ${WORKDIR}/matypes.h ${S}/src/mesa/x86 | ||
35 | touch ${S}/src/mesa/x86/matypes.h | ||
36 | } | ||
27 | 37 | ||
28 | do_install_append () { | 38 | do_install_append () { |
29 | install -d ${D}/usr/bin | 39 | install -d ${D}/usr/bin |
30 | install -m 0755 ${S}/progs/xdemos/{glxdemo,glxgears,glxheads,glxinfo} ${D}/usr/bin/ | 40 | install -m 0755 ${S}/progs/xdemos/{glxdemo,glxgears,glxheads,glxinfo} ${D}/usr/bin/ |
31 | rm ${D}/usr/lib/libEGL* || /bin/true | ||
32 | } | 41 | } |
33 | 42 | ||
34 | python populate_packages_prepend() { | 43 | python populate_packages_prepend() { |