summaryrefslogtreecommitdiff
path: root/meta-emenlow/packages/xpsb-glx
diff options
context:
space:
mode:
authorJeff Dike <jdike@x86_64.user-mode-linux.org>2010-07-21 17:31:45 -0400
committerRichard Purdie <rpurdie@linux.intel.com>2010-07-21 22:39:43 +0100
commite8e3ac9b1e0e4342fc3a6d7b435ddaf93f274304 (patch)
treec8ed16e490e2e30de292c8a10eedb084d5abdea8 /meta-emenlow/packages/xpsb-glx
parent0c3b1aa0a5461c9b5f3833feb091f7c8a459ca9b (diff)
downloadopenembedded-core-e8e3ac9b1e0e4342fc3a6d7b435ddaf93f274304.tar.gz
openembedded-core-e8e3ac9b1e0e4342fc3a6d7b435ddaf93f274304.tar.bz2
openembedded-core-e8e3ac9b1e0e4342fc3a6d7b435ddaf93f274304.tar.xz
openembedded-core-e8e3ac9b1e0e4342fc3a6d7b435ddaf93f274304.zip
meta-emenlow: Layer for eMenlow-based systems.
This layer provides a kernel suitable for booting on eMenlow-based systems, plus support for Poulsbo graphics. The Poulsbo support includes a kernel patch for the graphics driver, a couple of libraries, the 2D and 3D X drivers, and a properly configured X server. The closed portions of this support are in the 3D driver, xpsb-glx. This package contains the binaries for the libraries that communicate with the kernel driver and a mesa library which uses those libraries. There is a README in meta-emenlow/ describing how to enable this layer. Where possible, the recipes use bitbake's new .bbappend facility in order to avoid copying recipes from meta/. There are checksums and license information for all of the new packages. Signed-off-by: Jeff Dike <jdike@linux.intel.com>
Diffstat (limited to 'meta-emenlow/packages/xpsb-glx')
-rw-r--r--meta-emenlow/packages/xpsb-glx/xpsb-glx-0.18/cross-compile.patch58
-rw-r--r--meta-emenlow/packages/xpsb-glx/xpsb-glx_0.18.bb40
2 files changed, 98 insertions, 0 deletions
diff --git a/meta-emenlow/packages/xpsb-glx/xpsb-glx-0.18/cross-compile.patch b/meta-emenlow/packages/xpsb-glx/xpsb-glx-0.18/cross-compile.patch
new file mode 100644
index 000000000..a23159681
--- /dev/null
+++ b/meta-emenlow/packages/xpsb-glx/xpsb-glx-0.18/cross-compile.patch
@@ -0,0 +1,58 @@
+Index: mesa/configs/linux-dri
+===================================================================
+--- mesa.orig/configs/linux-dri
++++ mesa/configs/linux-dri
+@@ -3,11 +3,9 @@
+
+ include $(TOP)/configs/default
+
+-CONFIG_NAME = linux-dri
++$(warning ENVIRONMENT = $(shell printenv))
+
+-# Compiler and flags
+-CC = gcc
+-CXX = g++
++CONFIG_NAME = linux-dri
+
+ #MKDEP = /usr/X11R6/bin/makedepend
+ #MKDEP = gcc -M
+@@ -25,8 +23,6 @@ DEFINES = -D_POSIX_SOURCE -D_POSIX_C_SOU
+ -DGLX_DIRECT_RENDERING -DGLX_INDIRECT_RENDERING \
+ -DHAVE_ALIAS -DHAVE_POSIX_MEMALIGN
+
+-X11_INCLUDES = -I/usr/X11R6/include
+-
+ CFLAGS = -Wall -Wmissing-prototypes -std=c99 -ffast-math \
+ $(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES) $(ASM_FLAGS)
+
+@@ -40,9 +36,6 @@ CXXFLAGS += -fno-strict-aliasing
+
+ ASM_SOURCES =
+
+-# Library/program dependencies
+-EXTRA_LIB_PATH=-L/usr/X11R6/lib
+-
+ LIBDRM_CFLAGS = `pkg-config --cflags libdrm-poulsbo`
+ LIBDRM_LIB = `pkg-config --libs libdrm-poulsbo`
+ DRI_LIB_DEPS = $(EXTRA_LIB_PATH) -lm -lpthread -lexpat -ldl $(LIBDRM_LIB)
+Index: mesa/configs/default
+===================================================================
+--- mesa.orig/configs/default
++++ mesa/configs/default
+@@ -17,8 +17,6 @@ MESA_VERSION = $(MESA_MAJOR).$(MESA_MINO
+ DRM_SOURCE_PATH=$(TOP)/../drm
+
+ # Compiler and flags
+-CC = cc
+-CXX = CC
+ CFLAGS = -O
+ CXXFLAGS = -O
+ LDFLAGS =
+@@ -67,7 +65,6 @@ ASM_SOURCES =
+ # GLw widget sources (Append "GLwMDrawA.c" here and add -lXm to GLW_LIB_DEPS in
+ # order to build the Motif widget too)
+ GLW_SOURCES = GLwDrawA.c
+-MOTIF_CFLAGS = -I/usr/include/Motif1.2
+
+
+ # Directories to build
diff --git a/meta-emenlow/packages/xpsb-glx/xpsb-glx_0.18.bb b/meta-emenlow/packages/xpsb-glx/xpsb-glx_0.18.bb
new file mode 100644
index 000000000..41b15890f
--- /dev/null
+++ b/meta-emenlow/packages/xpsb-glx/xpsb-glx_0.18.bb
@@ -0,0 +1,40 @@
+DESCRIPTION = "X11 drivers for Poulsbo (psb) 3D acceleration"
+
+# There's a mesa implementation in this package, which is presumably
+# not Intel proprietary, but it has no obvious license attached to it.
+LICENSE = "Intel-binary-only"
+LIC_FILES_CHKSUM = "file://${WORKDIR}/${PN}-${PV}/COPYING;md5=02c597a2f082b4581596065bb5a521a8"
+PR = "r1"
+
+inherit autotools
+
+PROVIDES = "virtual/libgl mesa-dri"
+
+SRC_URI="https://launchpad.net/~gma500/+archive/ppa/+files/xpsb-glx_0.18-0ubuntu1netbook2~1004um1ubuntu1.tar.gz \
+ file://cross-compile.patch;patch=1"
+
+do_configure () {
+ chmod +x autogen.sh && ./autogen.sh && make realclean
+}
+
+do_install() {
+ make DESTDIR=${D} install
+ install -d -m 0755 ${D}/${libdir}/xorg/modules/dri \
+ ${D}/${libdir}/xorg/modules/drivers
+ install -m 0644 ${WORKDIR}/${PN}-${PV}/dri/* \
+ ${D}/${libdir}/xorg/modules/dri
+ install -m 0644 ${WORKDIR}/${PN}-${PV}/drivers/* \
+ ${D}/${libdir}/xorg/modules/drivers
+}
+
+S = "${WORKDIR}/${PN}-${PV}/mesa"
+
+EXTRA_OEMAKE = "linux-dri-x86"
+
+DEPENDS += "libdrm-poulsbo libxxf86vm dri2proto libxmu libxi glproto"
+
+FILES_${PN} = "${libdir}/* ${libdir}/xorg/modules/dri/* \
+ ${libdir}/xorg/modules/drivers/*"
+
+# Multiple virtual/gl providers being built breaks staging
+EXCLUDE_FROM_WORLD = "1"