diff options
Diffstat (limited to 'meta/recipes-graphics/mesa')
-rw-r--r-- | meta/recipes-graphics/mesa/mesa-common.inc | 24 | ||||
-rw-r--r-- | meta/recipes-graphics/mesa/mesa-dri-glsl-native_7.8.2.bb | 24 | ||||
-rw-r--r-- | meta/recipes-graphics/mesa/mesa-dri/cross2.patch | 44 | ||||
-rw-r--r-- | meta/recipes-graphics/mesa/mesa-dri/crossfix.patch | 16 | ||||
-rw-r--r-- | meta/recipes-graphics/mesa/mesa-dri/i586/matypes.h | 162 | ||||
-rw-r--r-- | meta/recipes-graphics/mesa/mesa-dri_7.5.bb | 48 | ||||
-rw-r--r-- | meta/recipes-graphics/mesa/mesa-dri_7.7.bb | 49 | ||||
-rw-r--r-- | meta/recipes-graphics/mesa/mesa-dri_7.8.2.bb | 53 | ||||
-rw-r--r-- | meta/recipes-graphics/mesa/mesa-dri_git.bb | 59 | ||||
-rw-r--r-- | meta/recipes-graphics/mesa/mesa-xlib_7.8.2.bb | 22 | ||||
-rw-r--r-- | meta/recipes-graphics/mesa/qemugl/versionfix.patch | 30 | ||||
-rw-r--r-- | meta/recipes-graphics/mesa/qemugl_git.bb | 37 |
12 files changed, 568 insertions, 0 deletions
diff --git a/meta/recipes-graphics/mesa/mesa-common.inc b/meta/recipes-graphics/mesa/mesa-common.inc new file mode 100644 index 000000000..240f956b8 --- /dev/null +++ b/meta/recipes-graphics/mesa/mesa-common.inc @@ -0,0 +1,24 @@ +DESCRIPTION = "An open source implementation of the OpenGL spec" +HOMEPAGE = "http://mesa3d.org" +BUGTRACKER = "https://bugs.freedesktop.org" +SECTION = "x11" +LICENSE = "MIT" + +SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/${PV}/MesaLib-${PV}.tar.bz2 \ + ftp://ftp.freedesktop.org/pub/mesa/${PV}/MesaDemos-${PV}.tar.bz2 " + +S = "${WORKDIR}/Mesa-${PV}" + +PROVIDES = "virtual/libgl" + +inherit autotools pkgconfig + +EXTRA_OECONF = "--disable-glu \ + --disable-glw \ + --disable-glut \ + --enable-glx-tls" + +# Multiple virtual/gl providers being built breaks staging +EXCLUDE_FROM_WORLD = "1" + + diff --git a/meta/recipes-graphics/mesa/mesa-dri-glsl-native_7.8.2.bb b/meta/recipes-graphics/mesa/mesa-dri-glsl-native_7.8.2.bb new file mode 100644 index 000000000..f6121c19a --- /dev/null +++ b/meta/recipes-graphics/mesa/mesa-dri-glsl-native_7.8.2.bb @@ -0,0 +1,24 @@ +DESCRIPTION = "gl shader language specific build from mesa-dri" +HOMEPAGE = "http://mesa3d.org" +BUGTRACKER = "https://bugs.freedesktop.org" +SECTION = "x11" +LICENSE = "MIT" +PR = "r0" + +DEPENDS = "makedepend-native" + +SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/${PV}/MesaLib-${PV}.tar.bz2" + +S = "${WORKDIR}/Mesa-7.8.2/src/glsl/" + +inherit native + +# use default config for native build +do_configure_prepend() { + ln -s ${S}/../../configs/default ${S}/../../configs/current +} + +do_install() { + install -d ${D}/${bindir} + install -m 755 ${S}/apps/compile ${D}/${bindir}/glsl-compile +} diff --git a/meta/recipes-graphics/mesa/mesa-dri/cross2.patch b/meta/recipes-graphics/mesa/mesa-dri/cross2.patch new file mode 100644 index 000000000..d2147910a --- /dev/null +++ b/meta/recipes-graphics/mesa/mesa-dri/cross2.patch @@ -0,0 +1,44 @@ +Index: git/configure.ac +=================================================================== +--- git.orig/configure.ac 2009-09-01 16:38:26.000000000 +0100 ++++ git/configure.ac 2009-09-01 16:38:47.000000000 +0100 +@@ -269,15 +269,6 @@ + GLAPI_ASM_SOURCES="" + AC_MSG_CHECKING([whether to enable assembly]) + test "x$enable_asm" = xno && AC_MSG_RESULT([no]) +-# disable if cross compiling on x86/x86_64 since we must run gen_matypes +-if test "x$enable_asm" = xyes && test "x$cross_compiling" = xyes; then +- case "$host_cpu" in +- i?86 | x86_64) +- enable_asm=no +- AC_MSG_RESULT([no, cross compiling]) +- ;; +- esac +-fi + # check for supported arches + if test "x$enable_asm" = xyes; then + case "$host_cpu" in +Index: git/src/mesa/x86/Makefile +=================================================================== +--- git.orig/src/mesa/x86/Makefile 2009-09-01 16:40:02.000000000 +0100 ++++ git/src/mesa/x86/Makefile 2009-09-01 16:40:13.000000000 +0100 +@@ -14,19 +14,6 @@ + -I../tnl + + +-default: gen_matypes matypes.h +- +-clean: +- -rm -f matypes.h gen_matypes +- +- +-gen_matypes: gen_matypes.c +- $(HOST_CC) $(ARCH_FLAGS) $(INCLUDE_DIRS) $(HOST_CFLAGS) gen_matypes.c -o gen_matypes +- +-# need some special rules here, unfortunately +-matypes.h: ../main/mtypes.h ../tnl/t_context.h gen_matypes +- ./gen_matypes > matypes.h +- + common_x86_asm.o: matypes.h + 3dnow_normal.o: matypes.h + 3dnow_xform1.o: matypes.h diff --git a/meta/recipes-graphics/mesa/mesa-dri/crossfix.patch b/meta/recipes-graphics/mesa/mesa-dri/crossfix.patch new file mode 100644 index 000000000..84be428c4 --- /dev/null +++ b/meta/recipes-graphics/mesa/mesa-dri/crossfix.patch @@ -0,0 +1,16 @@ +Index: Mesa-7.5/bin/mklib +=================================================================== +--- Mesa-7.5.orig/bin/mklib 2009-08-12 13:01:34.000000000 +0100 ++++ Mesa-7.5/bin/mklib 2009-08-12 13:04:19.000000000 +0100 +@@ -234,9 +234,9 @@ + if [ "x$LINK" = "x" ] ; then + # -linker was not specified so set default link command now + if [ $CPLUSPLUS = 1 ] ; then +- LINK=g++ ++ LINK=$CXX + else +- LINK=gcc ++ LINK=$CC + fi + fi + diff --git a/meta/recipes-graphics/mesa/mesa-dri/i586/matypes.h b/meta/recipes-graphics/mesa/mesa-dri/i586/matypes.h new file mode 100644 index 000000000..98d2188e7 --- /dev/null +++ b/meta/recipes-graphics/mesa/mesa-dri/i586/matypes.h @@ -0,0 +1,162 @@ +/* + * This file is automatically generated from the Mesa internal type + * definitions. Do not edit directly. + */ + +#ifndef __ASM_TYPES_H__ +#define __ASM_TYPES_H__ + + + +/* ============================================================= + * Offsets for GLcontext + */ + +#define CTX_DRIVER_CTX 996 + +#define CTX_LIGHT_ENABLED 39404 +#define CTX_LIGHT_SHADE_MODEL 39408 +#define CTX_LIGHT_COLOR_MAT_FACE 39412 +#define CTX_LIGHT_COLOR_MAT_MODE 39416 +#define CTX_LIGHT_COLOR_MAT_MASK 39420 +#define CTX_LIGHT_COLOR_MAT_ENABLED 39424 +#define CTX_LIGHT_ENABLED_LIST 39432 +#define CTX_LIGHT_NEED_VERTS 43793 +#define CTX_LIGHT_FLAGS 43796 +#define CTX_LIGHT_BASE_COLOR 43800 + + +/* ============================================================= + * Offsets for struct vertex_buffer + */ + +#define VB_SIZE 0 +#define VB_COUNT 4 + +#define VB_ELTS 8 +#define VB_OBJ_PTR 12 +#define VB_EYE_PTR 16 +#define VB_CLIP_PTR 20 +#define VB_PROJ_CLIP_PTR 24 +#define VB_CLIP_OR_MASK 28 +#define VB_CLIP_MASK 32 +#define VB_NORMAL_PTR 36 +#define VB_EDGE_FLAG 44 +#define VB_TEX0_COORD_PTR 48 +#define VB_TEX1_COORD_PTR 52 +#define VB_TEX2_COORD_PTR 56 +#define VB_TEX3_COORD_PTR 60 +#define VB_INDEX_PTR 80 +#define VB_COLOR_PTR 88 +#define VB_SECONDARY_COLOR_PTR 96 +#define VB_FOG_COORD_PTR 104 +#define VB_PRIMITIVE 108 + + +/* + * Flags for struct vertex_buffer + */ + +#define VERT_BIT_OBJ 0x1 +#define VERT_BIT_NORM 0x4 +#define VERT_BIT_RGBA 0x8 +#define VERT_BIT_SPEC_RGB 0x10 +#define VERT_BIT_FOG_COORD 0x20 +#define VERT_BIT_TEX0 0x100 +#define VERT_BIT_TEX1 0x200 +#define VERT_BIT_TEX2 0x400 +#define VERT_BIT_TEX3 0x800 + + +/* ============================================================= + * Offsets for GLvector4f + */ + +#define V4F_DATA 0 +#define V4F_START 4 +#define V4F_COUNT 8 +#define V4F_STRIDE 12 +#define V4F_SIZE 16 +#define V4F_FLAGS 20 + +/* + * Flags for GLvector4f + */ + +#define VEC_MALLOC 0x10 +#define VEC_NOT_WRITEABLE 0x40 +#define VEC_BAD_STRIDE 0x100 + +#define VEC_SIZE_1 0x1 +#define VEC_SIZE_2 0x3 +#define VEC_SIZE_3 0x7 +#define VEC_SIZE_4 0xf + + +/* ============================================================= + * Offsets for GLmatrix + */ + +#define MATRIX_DATA 0 +#define MATRIX_INV 4 +#define MATRIX_FLAGS 8 +#define MATRIX_TYPE 12 + + +/* ============================================================= + * Offsets for struct gl_light + */ + +#define LIGHT_NEXT 0 +#define LIGHT_PREV 4 + +#define LIGHT_AMBIENT 8 +#define LIGHT_DIFFUSE 24 +#define LIGHT_SPECULAR 40 +#define LIGHT_EYE_POSITION 56 +#define LIGHT_SPOT_DIRECTION 72 +#define LIGHT_SPOT_EXPONENT 88 +#define LIGHT_SPOT_CUTOFF 92 +#define LIGHT_COS_CUTOFF 100 +#define LIGHT_CONST_ATTEN 104 +#define LIGHT_LINEAR_ATTEN 108 +#define LIGHT_QUADRATIC_ATTEN 112 +#define LIGHT_ENABLED 116 + +#define LIGHT_FLAGS 120 + +#define LIGHT_POSITION 124 +#define LIGHT_VP_INF_NORM 140 +#define LIGHT_H_INF_NORM 152 +#define LIGHT_NORM_DIRECTION 164 +#define LIGHT_VP_INF_SPOT_ATTEN 180 + +#define LIGHT_SPOT_EXP_TABLE 184 +#define LIGHT_MAT_AMBIENT 4280 +#define LIGHT_MAT_DIFFUSE 4304 +#define LIGHT_MAT_SPECULAR 4328 + +#define SIZEOF_GL_LIGHT 4360 + +/* + * Flags for struct gl_light + */ + +#define LIGHT_SPOT 0x1 +#define LIGHT_LOCAL_VIEWER 0x2 +#define LIGHT_POSITIONAL 0x4 + +#define LIGHT_NEED_VERTICES 0x6 + + +/* ============================================================= + * Offsets for struct gl_lightmodel + */ + +#define LIGHT_MODEL_AMBIENT 0 +#define LIGHT_MODEL_LOCAL_VIEWER 16 +#define LIGHT_MODEL_TWO_SIDE 17 +#define LIGHT_MODEL_COLOR_CONTROL 20 + + +#endif /* __ASM_TYPES_H__ */ diff --git a/meta/recipes-graphics/mesa/mesa-dri_7.5.bb b/meta/recipes-graphics/mesa/mesa-dri_7.5.bb new file mode 100644 index 000000000..6e9cdc9aa --- /dev/null +++ b/meta/recipes-graphics/mesa/mesa-dri_7.5.bb @@ -0,0 +1,48 @@ +include mesa-common.inc + +SRC_URI += "file://crossfix.patch;patch=1" +# file://mesa-DRI2Swapbuffer.patch;patch=1 + +PROTO_DEPS = "xf86driproto glproto dri2proto" +LIB_DEPS = "libdrm virtual/libx11 libxext libxxf86vm libxdamage libxfixes expat" + +DEPENDS = "${PROTO_DEPS} ${LIB_DEPS}" + +PR = "r11" + +# most of our targets do not have DRI so will use mesa-xlib +DEFAULT_PREFERENCE = "-1" + +# Netbooks have DRI support so use mesa-dri by default +DEFAULT_PREFERENCE_netbook = "1" + +PACKAGES =+ "${PN}-xprogs" +PACKAGES_DYNAMIC = "mesa-dri-driver-*" + +FILES_${PN}-dbg += "${libdir}/dri/.debug/*" +FILES_${PN}-xprogs = "${bindir}/glxdemo ${bindir}/glxgears ${bindir}/glxheads ${bindir}/glxinfo" + +LEAD_SONAME = "libGL.so.1" + +EXTRA_OECONF += "--with-driver=dri --disable-egl --disable-gallium" + +do_install_append () { + install -d ${D}/usr/bin + install -m 0755 ${S}/progs/xdemos/{glxdemo,glxgears,glxheads,glxinfo} ${D}/usr/bin/ +} + +python populate_packages_prepend() { + import os.path + + dri_drivers_root = os.path.join(bb.data.getVar('libdir', d, 1), "dri") + + do_split_packages(d, dri_drivers_root, '^(.*)_dri\.so$', 'mesa-dri-driver-%s', 'Mesa %s DRI driver', extra_depends='') +} + +COMPATIBLE_HOST = '(i.86.*-linux|x86_64.*-linux)' + + +# +# 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 +# then run gen_matypes > matypes.h on device +#
\ No newline at end of file diff --git a/meta/recipes-graphics/mesa/mesa-dri_7.7.bb b/meta/recipes-graphics/mesa/mesa-dri_7.7.bb new file mode 100644 index 000000000..a5899f389 --- /dev/null +++ b/meta/recipes-graphics/mesa/mesa-dri_7.7.bb @@ -0,0 +1,49 @@ +include mesa-common.inc + +SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/7.7/MesaLib-${PV}.tar.bz2 \ + ftp://ftp.freedesktop.org/pub/mesa/7.7/MesaDemos-${PV}.tar.bz2 \ + file://crossfix.patch;patch=1" + +PROTO_DEPS = "xf86driproto glproto dri2proto" +LIB_DEPS = "libdrm virtual/libx11 libxext libxxf86vm libxdamage libxfixes expat" + +DEPENDS = "${PROTO_DEPS} ${LIB_DEPS}" + +PR = "r11" + +# most of our targets do not have DRI so will use mesa-xlib +DEFAULT_PREFERENCE = "-1" + +# Netbooks have DRI support so use mesa-dri by default +DEFAULT_PREFERENCE_netbook = "1" + +PACKAGES =+ "${PN}-xprogs" +PACKAGES_DYNAMIC = "mesa-dri-driver-*" + +FILES_${PN}-dbg += "${libdir}/dri/.debug/*" +FILES_${PN}-xprogs = "${bindir}/glxdemo ${bindir}/glxgears ${bindir}/glxheads ${bindir}/glxinfo" + +LEAD_SONAME = "libGL.so.1" + +EXTRA_OECONF += "--with-driver=dri --disable-egl --disable-gallium" + +do_install_append () { + install -d ${D}/usr/bin + install -m 0755 ${S}/progs/xdemos/{glxdemo,glxgears,glxheads,glxinfo} ${D}/usr/bin/ +} + +python populate_packages_prepend() { + import os.path + + dri_drivers_root = os.path.join(bb.data.getVar('libdir', d, 1), "dri") + + do_split_packages(d, dri_drivers_root, '^(.*)_dri\.so$', 'mesa-dri-driver-%s', 'Mesa %s DRI driver', extra_depends='') +} + +COMPATIBLE_HOST = '(i.86.*-linux|x86_64.*-linux)' + + +# +# 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 +# then run gen_matypes > matypes.h on device +#
\ No newline at end of file diff --git a/meta/recipes-graphics/mesa/mesa-dri_7.8.2.bb b/meta/recipes-graphics/mesa/mesa-dri_7.8.2.bb new file mode 100644 index 000000000..ffd885f29 --- /dev/null +++ b/meta/recipes-graphics/mesa/mesa-dri_7.8.2.bb @@ -0,0 +1,53 @@ +include mesa-common.inc + +LIC_FILES_CHKSUM = "file://docs/license.html;md5=7a3373c039b6b925c427755a4f779c1d" + +PROTO_DEPS = "xf86driproto glproto dri2proto" +LIB_DEPS = "libdrm virtual/libx11 libxext libxxf86vm libxdamage libxfixes expat" + +DEPENDS = "${PROTO_DEPS} ${LIB_DEPS} mesa-dri-glsl-native" + +PR = "r1" + +SRC_URI += "file://crossfix.patch" + +# most of our targets do not have DRI so will use mesa-xlib +DEFAULT_PREFERENCE = "-1" + +# Netbooks have DRI support so use mesa-dri by default +DEFAULT_PREFERENCE_netbook = "1" + +LEAD_SONAME = "libGL.so.1" + +EXTRA_OECONF += "--with-driver=dri --disable-egl --disable-gallium" + +# We need glsl-compile built for buildhost arch instead of target (is provided by mesa-dri-glsl-native)" +do_configure_prepend() { + sed -i "s#^GLSL_CL = .*\$#GLSL_CL = ${STAGING_BINDIR_NATIVE}/glsl-compile#g" ${S}/src/mesa/shader/slang/library/Makefile +} + +do_install_append () { + install -d ${D}/usr/bin + install -m 0755 ${S}/progs/xdemos/{glxdemo,glxgears,glxheads,glxinfo} ${D}/usr/bin/ +} + +python populate_packages_prepend() { + import os.path + + dri_drivers_root = os.path.join(bb.data.getVar('libdir', d, 1), "dri") + + do_split_packages(d, dri_drivers_root, '^(.*)_dri\.so$', 'mesa-dri-driver-%s', 'Mesa %s DRI driver', extra_depends='') +} + +COMPATIBLE_HOST = '(i.86.*-linux|x86_64.*-linux)' + +PACKAGES =+ "${PN}-xprogs" +PACKAGES_DYNAMIC = "mesa-dri-driver-*" + +FILES_${PN}-dbg += "${libdir}/dri/.debug/*" +FILES_${PN}-xprogs = "${bindir}/glxdemo ${bindir}/glxgears ${bindir}/glxheads ${bindir}/glxinfo" + +# +# 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 +# then run gen_matypes > matypes.h on device +# diff --git a/meta/recipes-graphics/mesa/mesa-dri_git.bb b/meta/recipes-graphics/mesa/mesa-dri_git.bb new file mode 100644 index 000000000..fa0a7c8dc --- /dev/null +++ b/meta/recipes-graphics/mesa/mesa-dri_git.bb @@ -0,0 +1,59 @@ +include mesa-common.inc + +SRC_URI = "git://anongit.freedesktop.org/git/mesa/mesa;protocol=git \ + file://cross2.patch;patch=1 \ + file://matypes.h" +# file://mesa-DRI2Swapbuffer.patch;patch=1 " +S = "${WORKDIR}/git" + +PROTO_DEPS = "xf86driproto glproto dri2proto" +LIB_DEPS = "libdrm virtual/libx11 libxext libxxf86vm libxdamage libxfixes expat" + +DEPENDS = "${PROTO_DEPS} ${LIB_DEPS}" + +PV = "7.7+git${SRCPV}" +PR = "r0" + +# most of our targets do not have DRI so will use mesa-xlib +DEFAULT_PREFERENCE = "-1" + +# Netbooks have DRI support so use mesa-dri by default +DEFAULT_PREFERENCE_netbook = "1" + +PACKAGES =+ "${PN}-xprogs" +PACKAGES_DYNAMIC = "mesa-dri-driver-*" + +FILES_${PN}-dbg += "${libdir}/dri/.debug/*" +FILES_${PN}-xprogs = "${bindir}/glxdemo ${bindir}/glxgears ${bindir}/glxheads ${bindir}/glxinfo" + +LEAD_SONAME = "libGL.so.1" + +EXTRA_OECONF += "--with-driver=dri --disable-egl --disable-gallium" + +do_configure_prepend () { + cp ${WORKDIR}/matypes.h ${S}/src/mesa/x86 + touch ${S}/src/mesa/x86/matypes.h +} + +do_compile () { + oe_runmake clean + oe_runmake -C src/glsl CC='${BUILD_CC}' CFLAGS="" + mv ${S}/src/glsl/apps/compile ${S}/host_compile + oe_runmake clean + oe_runmake GLSL_CL="${S}/host_compile" +} + +do_install_append () { + install -d ${D}/usr/bin + install -m 0755 ${S}/progs/xdemos/{glxdemo,glxgears,glxheads,glxinfo} ${D}/usr/bin/ +} + +python populate_packages_prepend() { + import os.path + + dri_drivers_root = os.path.join(bb.data.getVar('libdir', d, 1), "dri") + + do_split_packages(d, dri_drivers_root, '^(.*)_dri\.so$', 'mesa-dri-driver-%s', 'Mesa %s DRI driver', extra_depends='') +} + +COMPATIBLE_HOST = '(i.86|x86_64).*-linux' diff --git a/meta/recipes-graphics/mesa/mesa-xlib_7.8.2.bb b/meta/recipes-graphics/mesa/mesa-xlib_7.8.2.bb new file mode 100644 index 000000000..093ad6ed7 --- /dev/null +++ b/meta/recipes-graphics/mesa/mesa-xlib_7.8.2.bb @@ -0,0 +1,22 @@ +include mesa-common.inc + +LIC_FILES_CHKSUM = "file://docs/license.html;md5=7a3373c039b6b925c427755a4f779c1d" + +PROTO_DEPS = "xf86driproto glproto" +LIB_DEPS = "virtual/libx11 libxext libxxf86vm libxdamage libxfixes" + +DEPENDS = "${PROTO_DEPS} ${LIB_DEPS}" + +PE = "1" +PR = "r0" + +EXTRA_OECONF += "--with-driver=xlib" + +do_install_append () { + install -d ${D}/${bindir} + install -m 0755 ${S}/progs/xdemos/{glxdemo,glxgears,glxheads,glxinfo} ${D}/${bindir} +} + +PACKAGES =+ "${PN}-xprogs" + +FILES_${PN}-xprogs = "${bindir}/glxdemo ${bindir}/glxgears ${bindir}/glxheads ${bindir}/glxinfo" diff --git a/meta/recipes-graphics/mesa/qemugl/versionfix.patch b/meta/recipes-graphics/mesa/qemugl/versionfix.patch new file mode 100644 index 000000000..a3d33e830 --- /dev/null +++ b/meta/recipes-graphics/mesa/qemugl/versionfix.patch @@ -0,0 +1,30 @@ +Index: git/Makefile +=================================================================== +--- git.orig/Makefile 2009-01-19 23:37:36.000000000 +0000 ++++ git/Makefile 2009-06-09 20:30:37.000000000 +0100 +@@ -1,9 +1,9 @@ + GL_CFLAGS := -Wall -g -O2 -fno-strict-aliasing + +-all: libGL.so ++all: libGL.so.1.2 + +-libGL.so: client_stub.c opengl_client.c glgetv_cst.h opengl_func.h opengl_utils.h opengl_client_xfonts.c mesa_gl.h mesa_glext.h mesa_glx.h mesa_glxext.h +- $(CC) -fPIC $(GL_CFLAGS) opengl_client.c -shared -o libGL.so -lX11 -lXfixes -lm -L$(D)/usr/X11R6/lib -lpthread -I. ++libGL.so.1.2: client_stub.c opengl_client.c glgetv_cst.h opengl_func.h opengl_utils.h opengl_client_xfonts.c mesa_gl.h mesa_glext.h mesa_glx.h mesa_glxext.h ++ $(CC) -fPIC $(GL_CFLAGS) opengl_client.c -shared -o libGL.so.1.2 -lX11 -lXfixes -lm -L$(D)/usr/X11R6/lib -lpthread -I. + + opengl_func.h: gl_func.h + +Index: git/opengl_client.c +=================================================================== +--- git.orig/opengl_client.c 2009-06-09 21:07:15.000000000 +0100 ++++ git/opengl_client.c 2009-06-09 21:07:33.000000000 +0100 +@@ -11578,7 +11578,7 @@ + tab_assoc = calloc(tabSize, sizeof(AssocProcAdress)); + + #ifndef WIN32 +- handle = dlopen(getenv("REAL_LIBGL") ? getenv("REAL_LIBGL") : "libGL.so" ,RTLD_LAZY); ++ handle = dlopen(getenv("REAL_LIBGL") ? getenv("REAL_LIBGL") : "libGL.so.1.2" ,RTLD_LAZY); + if (!handle) { + log_gl("%s\n", dlerror()); + exit(1); diff --git a/meta/recipes-graphics/mesa/qemugl_git.bb b/meta/recipes-graphics/mesa/qemugl_git.bb new file mode 100644 index 000000000..184c78272 --- /dev/null +++ b/meta/recipes-graphics/mesa/qemugl_git.bb @@ -0,0 +1,37 @@ +DESCRIPTION = "QEMU i386 OpenGL passtrough" +HOMEPAGE = "http://savannah.nongnu.org/projects/qemugl" +SECTION = "x11/drivers" +LICENSE = "GPL" + +DEPENDS = "virtual/libx11 xproto glproto libxfixes" + +COMPATIBLE_HOST = '(x86_64.*|i.86.*)-(linux|freebsd.*)' + +SRC_URI = "git://git.o-hand.com/qemugl.git;protocol=git \ + file://versionfix.patch" +S = "${WORKDIR}/git" + +PV = "0.0+git${SRCPV}" +PR = "r6" + +DEFAULT_PREFERENCE = "-1" + +do_install () { + install -d ${D}${libdir}/ + if [ "${PN}" != "qemugl-nativesdk" ]; then + install -m 0755 ${S}/libGL.so.1.2 ${D}${libdir}/libGL-qemu.so.1.2 + else + install -m 0755 ${S}/libGL.so.1.2 ${D}${libdir}/libGL.so.1.2 + ln -s libGL.so.1.2 ${D}${libdir}/libGL.so.1 + ln -s libGL.so.1 ${D}${libdir}/libGL.so + fi +} + +pkg_postinst_${PN} () { + if [ "${PN}" != "qemugl-nativesdk" ]; then + rm -f $D${libdir}/libGL.so.1.2 + ln -s libGL-qemu.so.1.2 $D${libdir}/libGL.so.1.2 + fi +} + +BBCLASSEXTEND = "nativesdk" |