aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDarren Hart <dvhart@linux.intel.com>2015-06-24 10:11:48 -0700
committerDarren Hart <dvhart@linux.intel.com>2015-06-24 10:11:48 -0700
commitae3a18d263b49a7ae509ef86ef366e2bc17a5e78 (patch)
treed7b7d94dbf708eb723af34892187d5712b39be67
parenta8ce648bf3b7ee40a6056bdaa31388e1d69d00f5 (diff)
downloadmeta-minnow-ae3a18d263b49a7ae509ef86ef366e2bc17a5e78.tar.gz
meta-minnow-ae3a18d263b49a7ae509ef86ef366e2bc17a5e78.tar.bz2
meta-minnow-ae3a18d263b49a7ae509ef86ef366e2bc17a5e78.zip
xorg: Add xserver-xorg version 1.9.3 for emgd support
The EMGD driver requires an older, 1.9.3, version of xorg. Add these recipes (copied from meta-intel daisy branch with PR and INC_PR removal as suggested by Koen Kooi). Also add xf86-input drivers for ABI compatibility. Signed-off-by: Darren Hart <dvhart@linux.intel.com>
-rw-r--r--recipes-graphics/xorg-driver/xf86-input-evdev_2.6.0.bb18
-rw-r--r--recipes-graphics/xorg-driver/xf86-input-synaptics_1.6.3.bb20
-rw-r--r--recipes-graphics/xorg-xserver/xserver-xorg-1.9.3.inc18
-rw-r--r--recipes-graphics/xorg-xserver/xserver-xorg-1.9.3/crosscompile.patch22
-rw-r--r--recipes-graphics/xorg-xserver/xserver-xorg-1.9.3/fix_open_max_preprocessor_error.patch15
-rw-r--r--recipes-graphics/xorg-xserver/xserver-xorg-1.9.3/macro_tweak.patch30
-rw-r--r--recipes-graphics/xorg-xserver/xserver-xorg-1.9.3/nodolt.patch14
-rw-r--r--recipes-graphics/xorg-xserver/xserver-xorg-1.9.3/ptr-to-int-cast-fix.patch92
-rw-r--r--recipes-graphics/xorg-xserver/xserver-xorg-1.9.3/werror-address-fix.patch49
-rw-r--r--recipes-graphics/xorg-xserver/xserver-xorg_1.9.3.bb4
10 files changed, 282 insertions, 0 deletions
diff --git a/recipes-graphics/xorg-driver/xf86-input-evdev_2.6.0.bb b/recipes-graphics/xorg-driver/xf86-input-evdev_2.6.0.bb
new file mode 100644
index 0000000..975388c
--- /dev/null
+++ b/recipes-graphics/xorg-driver/xf86-input-evdev_2.6.0.bb
@@ -0,0 +1,18 @@
+require recipes-graphics/xorg-driver/xorg-driver-input.inc
+
+SUMMARY = "X.Org X server -- event devices (evdev) input driver"
+
+DESCRIPTION = "evdev is an Xorg input driver for Linux's generic event \
+devices. It therefore supports all input devices that the kernel knows \
+about, including most mice and keyboards. \
+\
+The evdev driver can serve as both a pointer and a keyboard input \
+device, and may be used as both the core keyboard and the core pointer. \
+Multiple input devices are supported by multiple instances of this \
+driver, with one Load directive for evdev in the Module section of your \
+xorg.conf for each input device that will use this driver. "
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=fefe33b1cf0cacba0e72e3b0fa0f0e16"
+
+SRC_URI[md5sum] = "f33fe9413bde68936d8909206a13e8a1"
+SRC_URI[sha256sum] = "b0e7f3991a8183a4743196c3e16d7184d439b80bf43653aa2f45b0756a6753ac"
diff --git a/recipes-graphics/xorg-driver/xf86-input-synaptics_1.6.3.bb b/recipes-graphics/xorg-driver/xf86-input-synaptics_1.6.3.bb
new file mode 100644
index 0000000..0b2977c
--- /dev/null
+++ b/recipes-graphics/xorg-driver/xf86-input-synaptics_1.6.3.bb
@@ -0,0 +1,20 @@
+require recipes-graphics/xorg-driver/xorg-driver-input.inc
+
+SUMMARY = "X.Org X server -- synaptics touchpad input driver"
+
+DESCRIPTION = "synaptics is an Xorg input driver for the touchpads from \
+Synaptics Incorporated. Even though these touchpads (by default, \
+operating in a compatibility mode emulating a standard mouse) can be \
+handled by the normal evdev or mouse drivers, this driver allows more \
+advanced features of the touchpad to become available."
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=e395e21f3c21d4fc3a243783e85e9ab5"
+
+PR = "${INC_PR}.0"
+
+SRC_URI[md5sum] = "3568930b0bda522e00272b64c0ca2ca2"
+SRC_URI[sha256sum] = "b40c9dbd5f743ff1eb2ac81a23b9676df72e76ed3fa6408de3f8a3a260248604"
+
+DEPENDS += "libxi mtdev"
+
+FILES_${PN} += "${datadir}/X11/xorg.conf.d"
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg-1.9.3.inc b/recipes-graphics/xorg-xserver/xserver-xorg-1.9.3.inc
new file mode 100644
index 0000000..d7a4633
--- /dev/null
+++ b/recipes-graphics/xorg-xserver/xserver-xorg-1.9.3.inc
@@ -0,0 +1,18 @@
+SRC_URI += "file://nodolt.patch \
+ file://crosscompile.patch"
+
+# Misc build failure for master HEAD
+SRC_URI += "file://fix_open_max_preprocessor_error.patch"
+
+# What once were warnings now are errors, fix those up
+SRC_URI += "file://werror-address-fix.patch \
+ file://ptr-to-int-cast-fix.patch"
+
+PROTO_DEPS += "xf86driproto dri2proto"
+DEPENDS += "font-util"
+EXTRA_OECONF += "--enable-dri --enable-dri2 --enable-dga"
+
+LIC_FILES_CHKSUM = "file://COPYING;md5=3dd2bbe3563837f80ed8926b06c1c353"
+
+SRC_URI[md5sum] = "5bef6839a76d029204ab31aa2fcb5201"
+SRC_URI[sha256sum] = "864831f51e841ff37f2445d1c85b86b559c8860a435fb496aead4f256a2b141d"
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg-1.9.3/crosscompile.patch b/recipes-graphics/xorg-xserver/xserver-xorg-1.9.3/crosscompile.patch
new file mode 100644
index 0000000..2f98bb8
--- /dev/null
+++ b/recipes-graphics/xorg-xserver/xserver-xorg-1.9.3/crosscompile.patch
@@ -0,0 +1,22 @@
+Upstream-Status: Inappropriate [configuration]
+
+diff --git a/configure.ac b/configure.ac
+index b3b752c..600500b 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -523,13 +523,9 @@ dnl Uses --default-font-path if set, otherwise checks for /etc/X11/fontpath.d,
+ dnl otherwise uses standard subdirectories of FONTROOTDIR. When cross
+ dnl compiling, assume default font path uses standard FONTROOTDIR directories.
+ DEFAULT_FONT_PATH="${FONTMISCDIR}/,${FONTTTFDIR}/,${FONTOTFDIR}/,${FONTTYPE1DIR}/,${FONT100DPIDIR}/,${FONT75DPIDIR}/"
+-if test "$cross_compiling" != yes; then
+- AC_CHECK_FILE([${sysconfdir}/X11/fontpath.d],
+- [DEFAULT_FONT_PATH='catalogue:${sysconfdir}/X11/fontpath.d'],
+- [case $host_os in
++ case $host_os in
+ darwin*) DEFAULT_FONT_PATH="${DEFAULT_FONT_PATH},/Library/Fonts,/System/Library/Fonts" ;;
+- esac])
+-fi
++ esac
+ AC_ARG_WITH(default-font-path, AS_HELP_STRING([--with-default-font-path=PATH], [Comma separated list of font dirs]),
+ [ FONTPATH="$withval" ],
+ [ FONTPATH="${DEFAULT_FONT_PATH}" ])
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg-1.9.3/fix_open_max_preprocessor_error.patch b/recipes-graphics/xorg-xserver/xserver-xorg-1.9.3/fix_open_max_preprocessor_error.patch
new file mode 100644
index 0000000..9c33072
--- /dev/null
+++ b/recipes-graphics/xorg-xserver/xserver-xorg-1.9.3/fix_open_max_preprocessor_error.patch
@@ -0,0 +1,15 @@
+Upstream-Status: Inappropriate [embedded specific]
+
+Index: git/os/osdep.h
+===================================================================
+--- git.orig/os/osdep.h 2008-10-07 18:38:21.000000000 +0100
++++ git/os/osdep.h 2008-10-07 18:39:36.000000000 +0100
+@@ -92,7 +92,7 @@
+ * like sysconf(_SC_OPEN_MAX) is not supported.
+ */
+
+-#if OPEN_MAX <= 256
++#if 0
+ #define MAXSOCKS (OPEN_MAX - 1)
+ #else
+ #define MAXSOCKS 256
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg-1.9.3/macro_tweak.patch b/recipes-graphics/xorg-xserver/xserver-xorg-1.9.3/macro_tweak.patch
new file mode 100644
index 0000000..2b75427
--- /dev/null
+++ b/recipes-graphics/xorg-xserver/xserver-xorg-1.9.3/macro_tweak.patch
@@ -0,0 +1,30 @@
+This is the revised version of files/macro_tweak.patch for
+xorg-server 1.8.99.904.
+
+the files/macro_tweak.patch can not removed now since it is used by
+xserver-kdrive-1.7.99.2 and xserver-xf86-lite_1.7.99.2. Once they
+are all upgraded to 1.8.99.904, the the files/macro_tweak.patch
+can be safely replace by this patch.
+
+Upstream-Status: Pending
+
+Signed-off-by: Yu Ke <ke.yu@intel.com>
+
+diff --git a/xorg-server.m4 b/xorg-server.m4
+index bdecf62..040fdb8 100644
+--- a/xorg-server.m4
++++ b/xorg-server.m4
+@@ -28,10 +28,12 @@ dnl
+ # Checks for the $1 define in xorg-server.h (from the sdk). If it
+ # is defined, then add $1 to $REQUIRED_MODULES.
+
++m4_pattern_allow(PKG_CONFIG_SYSROOT_DIR)
++
+ AC_DEFUN([XORG_DRIVER_CHECK_EXT],[
+ AC_REQUIRE([PKG_PROG_PKG_CONFIG])
+ SAVE_CFLAGS="$CFLAGS"
+- CFLAGS="$CFLAGS -I`$PKG_CONFIG --variable=sdkdir xorg-server`"
++ CFLAGS="$CFLAGS -I$PKG_CONFIG_SYSROOT_DIR`$PKG_CONFIG --variable=sdkdir xorg-server`"
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
+ #include "xorg-server.h"
+ #if !defined $1
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg-1.9.3/nodolt.patch b/recipes-graphics/xorg-xserver/xserver-xorg-1.9.3/nodolt.patch
new file mode 100644
index 0000000..9cd7f93
--- /dev/null
+++ b/recipes-graphics/xorg-xserver/xserver-xorg-1.9.3/nodolt.patch
@@ -0,0 +1,14 @@
+Upstream-Status: Inappropriate [configuration]
+
+Index: git/configure.ac
+===================================================================
+--- git.orig/configure.ac 2009-01-15 20:35:31.000000000 +0000
++++ git/configure.ac 2009-01-15 20:35:38.000000000 +0000
+@@ -62,7 +62,6 @@
+ AC_LIBTOOL_WIN32_DLL
+ AC_DISABLE_STATIC
+ AC_PROG_LIBTOOL
+-DOLT
+ AC_PROG_MAKE_SET
+ PKG_PROG_PKG_CONFIG
+ AC_PROG_LEX
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg-1.9.3/ptr-to-int-cast-fix.patch b/recipes-graphics/xorg-xserver/xserver-xorg-1.9.3/ptr-to-int-cast-fix.patch
new file mode 100644
index 0000000..705cffc
--- /dev/null
+++ b/recipes-graphics/xorg-xserver/xserver-xorg-1.9.3/ptr-to-int-cast-fix.patch
@@ -0,0 +1,92 @@
+Upstream-Status: Inappropriate [already upstream]
+
+It's broken for devices with BARs above 4G, and the sysfs method should
+work everywhere anyway. As a pleasant side effect, this fixes some
+warnings:
+
+fbdevhw.c: In function 'fbdev_open_pci':
+fbdevhw.c:333:4: warning: cast from pointer to integer of different size
+fbdevhw.c:334:4: warning: cast from pointer to integer of different size
+fbdevhw.c:336:4: warning: cast from pointer to integer of different size
+fbdevhw.c:337:4: warning: cast from pointer to integer of different size
+
+Signed-off-by: Adam Jackson <ajax (a] redhat.com>
+Integrated-by: Tom Zanussi <tom.zanussi (a] intel.com>
+
+Index: xorg-server-1.9.3/hw/xfree86/fbdevhw/fbdevhw.c
+===================================================================
+--- xorg-server-1.9.3.orig/hw/xfree86/fbdevhw/fbdevhw.c 2012-01-12 10:32:07.097729262 -0600
++++ xorg-server-1.9.3/hw/xfree86/fbdevhw/fbdevhw.c 2012-01-12 10:32:55.076732780 -0600
+@@ -291,14 +291,7 @@
+ {
+ struct fb_fix_screeninfo fix;
+ char filename[256];
+- int fd,i,j;
+-
+-
+- /* There are two ways to that we can determine which fb device is
+- * associated with this PCI device. The more modern way is to look in
+- * the sysfs directory for the PCI device for a file named
+- * "graphics/fb*"
+- */
++ int fd, i;
+
+ for (i = 0; i < 8; i++) {
+ sprintf(filename,
+@@ -331,55 +324,10 @@
+ }
+ }
+
+-
+- /* The other way is to examine the resources associated with each fb
+- * device and see if there is a match with the PCI device. This technique
+- * has some problems on certain mixed 64-bit / 32-bit architectures.
+- * There is a flaw in the fb_fix_screeninfo structure in that it only
+- * returns the low 32-bits of the address of the resources associated with
+- * a device. However, on a mixed architecture the base addresses of PCI
+- * devices, even for 32-bit applications, may be higher than 0x0f0000000.
+- */
+-
+- for (i = 0; i < 8; i++) {
+- sprintf(filename,"/dev/fb%d",i);
+- if (-1 == (fd = open(filename,O_RDWR,0))) {
+- xf86DrvMsg(-1, X_WARNING,
+- "open %s: %s\n", filename, strerror(errno));
+- continue;
+- }
+- if (-1 == ioctl(fd,FBIOGET_FSCREENINFO,(void*)&fix)) {
+- close(fd);
+- continue;
+- }
+- for (j = 0; j < 6; j++) {
+- const pciaddr_t res_start = pPci->regions[j].base_addr;
+- const pciaddr_t res_end = res_start + pPci->regions[j].size;
+-
+- if ((0 != fix.smem_len &&
+- (pciaddr_t) fix.smem_start >= res_start &&
+- (pciaddr_t) fix.smem_start < res_end) ||
+- (0 != fix.mmio_len &&
+- (pciaddr_t) fix.mmio_start >= res_start &&
+- (pciaddr_t) fix.mmio_start < res_end))
+- break;
+- }
+- if (j == 6) {
+- close(fd);
+- continue;
+- }
+- if (namep) {
+- *namep = xnfalloc(16);
+- strncpy(*namep,fix.id,16);
+- }
+- return fd;
+- }
+-
+ if (namep)
+ *namep = NULL;
+
+- xf86DrvMsg(-1, X_ERROR,
+- "Unable to find a valid framebuffer device\n");
++ xf86DrvMsg(-1, X_ERROR, "Unable to find a valid framebuffer device\n");
+ return -1;
+ }
+
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg-1.9.3/werror-address-fix.patch b/recipes-graphics/xorg-xserver/xserver-xorg-1.9.3/werror-address-fix.patch
new file mode 100644
index 0000000..49d3f94
--- /dev/null
+++ b/recipes-graphics/xorg-xserver/xserver-xorg-1.9.3/werror-address-fix.patch
@@ -0,0 +1,49 @@
+Upstream-Status: Inappropriate [yocto-specific]
+
+This is fixed upstream by actually making these tests meaningful.
+As they stand, the warning is correct and they're no-ops, so remove
+them.
+
+Signed-off-by: Tom Zanussi <tom.zanussi (a] intel.com>
+
+Index: xorg-server-1.9.3/Xext/xvmc.c
+===================================================================
+--- xorg-server-1.9.3.orig/Xext/xvmc.c 2012-01-12 09:57:36.306947860 -0600
++++ xorg-server-1.9.3/Xext/xvmc.c 2012-01-12 10:24:59.286729946 -0600
+@@ -467,7 +467,6 @@
+ return Success;
+ }
+
+-
+ static int
+ ProcXvMCListSubpictureTypes(ClientPtr client)
+ {
+@@ -487,9 +486,6 @@
+
+ pScreen = pPort->pAdaptor->pScreen;
+
+- if(XvMCScreenKey == NULL) /* No XvMC adaptors */
+- return BadMatch;
+-
+ if(!(pScreenPriv = XVMC_GET_PRIVATE(pScreen)))
+ return BadMatch; /* None this screen */
+
+@@ -668,9 +664,6 @@
+ {
+ ExtensionEntry *extEntry;
+
+- if(XvMCScreenKey == NULL) /* nobody supports it */
+- return;
+-
+ if(!(XvMCRTContext = CreateNewResourceType(XvMCDestroyContextRes,
+ "XvMCRTContext")))
+ return;
+@@ -746,8 +739,6 @@
+ XvMCAdaptorPtr adaptor = NULL;
+ int i;
+
+- if(XvMCScreenKey == NULL) return NULL;
+-
+ if(!(pScreenPriv = XVMC_GET_PRIVATE(pScreen)))
+ return NULL;
+
diff --git a/recipes-graphics/xorg-xserver/xserver-xorg_1.9.3.bb b/recipes-graphics/xorg-xserver/xserver-xorg_1.9.3.bb
new file mode 100644
index 0000000..f62cad2
--- /dev/null
+++ b/recipes-graphics/xorg-xserver/xserver-xorg_1.9.3.bb
@@ -0,0 +1,4 @@
+require recipes-graphics/xorg-xserver/xserver-xorg.inc
+require xserver-xorg-${PV}.inc
+
+PE = "1"