diff options
author | Robert Bragg <bob@openedhand.com> | 2008-10-13 15:23:14 +0000 |
---|---|---|
committer | Robert Bragg <bob@openedhand.com> | 2008-10-13 15:23:14 +0000 |
commit | 10650210e775ab98f1b0bf4bd5292361f1807b0f (patch) | |
tree | 228cbf08681d0c323110f65f6b64790aa6505526 /meta/packages/xorg-xserver | |
parent | 4c7fc919401ac29174e40d794e85d4d6c20de270 (diff) | |
download | poky-10650210e775ab98f1b0bf4bd5292361f1807b0f.tar.gz |
Adds support for GEM + DRI2
DRI2 is disabled by default though since running with metacity-clutter seems
to cause a lock up.
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@5484 311d38ba-8fff-0310-9ca6-ca027cbcb966
Diffstat (limited to 'meta/packages/xorg-xserver')
7 files changed, 107 insertions, 7 deletions
diff --git a/meta/packages/xorg-xserver/xserver-xf86-dri-lite.inc b/meta/packages/xorg-xserver/xserver-xf86-dri-lite.inc index 6caf889d1d..227be4ec0c 100644 --- a/meta/packages/xorg-xserver/xserver-xf86-dri-lite.inc +++ b/meta/packages/xorg-xserver/xserver-xf86-dri-lite.inc | |||
@@ -1,8 +1,6 @@ | |||
1 | require xserver-xf86-common.inc | 1 | require xserver-xf86-common.inc |
2 | 2 | ||
3 | PROVIDES += "xserver-xf86-dri-lite" | 3 | PROTO_DEPS = "randrproto renderproto fixesproto damageproto xextproto xproto xf86dgaproto xf86miscproto xf86rushproto xf86vidmodeproto xf86bigfontproto compositeproto recordproto resourceproto videoproto scrnsaverproto evieext trapproto xineramaproto fontsproto kbproto inputproto bigreqsproto xcmiscproto glproto" |
4 | |||
5 | PROTO_DEPS = "randrproto renderproto fixesproto damageproto xextproto xproto xf86dgaproto xf86miscproto xf86rushproto xf86vidmodeproto xf86bigfontproto compositeproto recordproto resourceproto videoproto scrnsaverproto evieext trapproto xineramaproto fontsproto kbproto inputproto bigreqsproto xcmiscproto glproto xf86driproto dri2proto" | ||
6 | 4 | ||
7 | LIB_DEPS = "pixman mesa-dri libxfont xtrans libxau libxext libxdmcp libdrm libxkbfile libpciaccess openssl" | 5 | LIB_DEPS = "pixman mesa-dri libxfont xtrans libxau libxext libxdmcp libdrm libxkbfile libpciaccess openssl" |
8 | 6 | ||
@@ -12,24 +10,28 @@ RDEPENDS = "hal xorg-minimal-fonts" | |||
12 | 10 | ||
13 | FILES_${PN} += "${bindir}/Xorg " | 11 | FILES_${PN} += "${bindir}/Xorg " |
14 | 12 | ||
15 | EXTRA_OECONF += "--disable-cfb \ | 13 | EXTRA_OECONF += "--disable-static \ |
16 | --disable-afb \ | 14 | --disable-acfb \ |
17 | --disable-mfb \ | 15 | --disable-ccfb \ |
16 | --disable-mcfb \ | ||
18 | --disable-dga \ | 17 | --disable-dga \ |
19 | --disable-xinerama \ | 18 | --disable-xinerama \ |
20 | --disable-xf86misc \ | 19 | --disable-xf86misc \ |
21 | --disable-xorgcfg \ | 20 | --disable-xorgcfg \ |
21 | --disable-record \ | ||
22 | --disable-dmx \ | 22 | --disable-dmx \ |
23 | --disable-xnest \ | 23 | --disable-xnest \ |
24 | --disable-xvfb \ | 24 | --disable-xvfb \ |
25 | --enable-composite \ | 25 | --enable-composite \ |
26 | --enable-dri \ | ||
27 | --enable-glx-tls \ | 26 | --enable-glx-tls \ |
28 | --sysconfdir=/etc/X11 \ | 27 | --sysconfdir=/etc/X11 \ |
29 | --localstatedir=/var \ | 28 | --localstatedir=/var \ |
29 | --with-pic \ | ||
30 | --with-int10=x86emu \ | ||
30 | --with-fontdir=/usr/share/fonts/X11 \ | 31 | --with-fontdir=/usr/share/fonts/X11 \ |
31 | --with-xkb-output=/var/lib/xkb \ | 32 | --with-xkb-output=/var/lib/xkb \ |
32 | ac_cv_file__usr_share_sgml_X11_defs_ent=no" | 33 | ac_cv_file__usr_share_sgml_X11_defs_ent=no" |
33 | 34 | ||
34 | # Due to mesa-dri | 35 | # Due to mesa-dri |
35 | COMPATIBLE_HOST = '(i.86.*-linux)' | 36 | COMPATIBLE_HOST = '(i.86.*-linux)' |
37 | |||
diff --git a/meta/packages/xorg-xserver/xserver-xf86-dri-lite/fix_open_max_preprocessor_error.patch b/meta/packages/xorg-xserver/xserver-xf86-dri-lite/fix_open_max_preprocessor_error.patch new file mode 100644 index 0000000000..565832eed8 --- /dev/null +++ b/meta/packages/xorg-xserver/xserver-xf86-dri-lite/fix_open_max_preprocessor_error.patch | |||
@@ -0,0 +1,13 @@ | |||
1 | Index: git/os/osdep.h | ||
2 | =================================================================== | ||
3 | --- git.orig/os/osdep.h 2008-10-07 18:38:21.000000000 +0100 | ||
4 | +++ git/os/osdep.h 2008-10-07 18:39:36.000000000 +0100 | ||
5 | @@ -92,7 +92,7 @@ | ||
6 | * like sysconf(_SC_OPEN_MAX) is not supported. | ||
7 | */ | ||
8 | |||
9 | -#if OPEN_MAX <= 256 | ||
10 | +#if 0 | ||
11 | #define MAXSOCKS (OPEN_MAX - 1) | ||
12 | #else | ||
13 | #define MAXSOCKS 256 | ||
diff --git a/meta/packages/xorg-xserver/xserver-xf86-dri-lite/xorg-server-disable-dri_sarea.patch b/meta/packages/xorg-xserver/xserver-xf86-dri-lite/xorg-server-disable-dri_sarea.patch new file mode 100755 index 0000000000..3d2fa1669a --- /dev/null +++ b/meta/packages/xorg-xserver/xserver-xf86-dri-lite/xorg-server-disable-dri_sarea.patch | |||
@@ -0,0 +1,12 @@ | |||
1 | diff -urN xorg-server-1.5.99.1/hw/xfree86/dri2/dri2.c xorg-server-1.5.99.1.new/hw/xfree86/dri2/dri2.c | ||
2 | --- xorg-server-1.5.99.1/hw/xfree86/dri2/dri2.c 2008-09-01 03:26:37.000000000 +0800 | ||
3 | +++ xorg-server-1.5.99.1.new/hw/xfree86/dri2/dri2.c 2008-09-18 00:28:16.000000000 +0800 | ||
4 | @@ -39,7 +39,7 @@ | ||
5 | #include "scrnintstr.h" | ||
6 | #include "windowstr.h" | ||
7 | #include "dri2.h" | ||
8 | -#include <GL/internal/dri_sarea.h> | ||
9 | +//#include <GL/internal/dri_sarea.h> | ||
10 | |||
11 | #include "xf86.h" | ||
12 | |||
diff --git a/meta/packages/xorg-xserver/xserver-xf86-dri-lite/xorg-server-enable-dri2.patch b/meta/packages/xorg-xserver/xserver-xf86-dri-lite/xorg-server-enable-dri2.patch new file mode 100755 index 0000000000..7ff3658d0c --- /dev/null +++ b/meta/packages/xorg-xserver/xserver-xf86-dri-lite/xorg-server-enable-dri2.patch | |||
@@ -0,0 +1,23 @@ | |||
1 | commit 67b9b3a77a8b86eef03af36a0f4be3a07411efee | ||
2 | Author: Eric Anholt <eric@anholt.net> | ||
3 | Date: Thu Sep 11 16:18:17 2008 -0700 | ||
4 | |||
5 | Enable DRI2 build. | ||
6 | |||
7 | diff --git a/hw/xfree86/Makefile.am b/hw/xfree86/Makefile.am | ||
8 | index eff2c31..98d7ec8 100644 | ||
9 | --- a/hw/xfree86/Makefile.am | ||
10 | +++ b/hw/xfree86/Makefile.am | ||
11 | @@ -4,9 +4,9 @@ if DRI | ||
12 | DRI_SUBDIR = dri | ||
13 | endif | ||
14 | |||
15 | -#if DRI2 | ||
16 | -#DRI2_SUBDIR = dri2 | ||
17 | -#endif | ||
18 | +if DRI2 | ||
19 | +DRI2_SUBDIR = dri2 | ||
20 | +endif | ||
21 | |||
22 | if XF86UTILS | ||
23 | XF86UTILS_SUBDIR = utils | ||
diff --git a/meta/packages/xorg-xserver/xserver-xf86-dri-lite/xserver-boottime.patch b/meta/packages/xorg-xserver/xserver-xf86-dri-lite/xserver-boottime.patch new file mode 100755 index 0000000000..8e4033e9a3 --- /dev/null +++ b/meta/packages/xorg-xserver/xserver-xf86-dri-lite/xserver-boottime.patch | |||
@@ -0,0 +1,37 @@ | |||
1 | diff --git a/os/log.c b/os/log.c | ||
2 | index 0860847..2c46f1a 100644 | ||
3 | --- a/os/log.c | ||
4 | +++ b/os/log.c | ||
5 | @@ -255,6 +255,32 @@ LogVWrite(int verb, const char *f, va_list args) | ||
6 | static char tmpBuffer[1024]; | ||
7 | int len = 0; | ||
8 | |||
9 | + struct timeval time; | ||
10 | + time_t tv_sec; | ||
11 | + suseconds_t tv_usec; | ||
12 | + static Bool first = TRUE; | ||
13 | + static time_t start_tv_sec; | ||
14 | + static suseconds_t start_usec; | ||
15 | + int diff_sec, diff_usec; | ||
16 | + | ||
17 | + gettimeofday(&time, NULL); | ||
18 | + tv_sec = time.tv_sec; | ||
19 | + tv_usec = time.tv_usec; | ||
20 | + if (first == TRUE) { | ||
21 | + start_tv_sec = tv_sec; | ||
22 | + start_usec = tv_usec; | ||
23 | + first = FALSE; | ||
24 | + } | ||
25 | + diff_sec = (int)difftime(tv_sec, start_tv_sec); | ||
26 | + diff_usec = (tv_usec - start_usec); | ||
27 | + if (diff_usec < 0) { | ||
28 | + diff_sec--; | ||
29 | + diff_usec += 1000000; | ||
30 | + } | ||
31 | + sprintf(tmpBuffer, "[%d sec: %06d usec]", diff_sec , diff_usec); | ||
32 | + len = strlen(tmpBuffer); | ||
33 | + fwrite(tmpBuffer, len, 1, logFile); | ||
34 | + | ||
35 | /* | ||
36 | * Since a va_list can only be processed once, write the string to a | ||
37 | * buffer, and then write the buffer out to the appropriate output | ||
diff --git a/meta/packages/xorg-xserver/xserver-xf86-dri-lite_1.5.0.bb b/meta/packages/xorg-xserver/xserver-xf86-dri-lite_1.5.0.bb index bc5aa493e5..c9bd3f9fbe 100644 --- a/meta/packages/xorg-xserver/xserver-xf86-dri-lite_1.5.0.bb +++ b/meta/packages/xorg-xserver/xserver-xf86-dri-lite_1.5.0.bb | |||
@@ -3,6 +3,10 @@ require xserver-xf86-dri-lite.inc | |||
3 | PE = "1" | 3 | PE = "1" |
4 | PR = "r3" | 4 | PR = "r3" |
5 | 5 | ||
6 | PROTO_DEPS += "xf86driproto" | ||
7 | |||
6 | SRC_URI += "file://drmfix.patch;patch=1 \ | 8 | SRC_URI += "file://drmfix.patch;patch=1 \ |
7 | file://libdri-xinerama-symbol.patch;patch=1 " | 9 | file://libdri-xinerama-symbol.patch;patch=1 " |
8 | 10 | ||
11 | EXTRA_OECONF += "--enable-dri" | ||
12 | |||
diff --git a/meta/packages/xorg-xserver/xserver-xf86-dri-lite_git.bb b/meta/packages/xorg-xserver/xserver-xf86-dri-lite_git.bb index e45702664b..39e286570e 100644 --- a/meta/packages/xorg-xserver/xserver-xf86-dri-lite_git.bb +++ b/meta/packages/xorg-xserver/xserver-xf86-dri-lite_git.bb | |||
@@ -4,8 +4,17 @@ PE = "1" | |||
4 | PR = "r2" | 4 | PR = "r2" |
5 | PV = "1.5.0+git${SRCREV}" | 5 | PV = "1.5.0+git${SRCREV}" |
6 | 6 | ||
7 | PROTO_DEPS += "xf86driproto" | ||
8 | |||
7 | DEFAULT_PREFERENCE = "-1" | 9 | DEFAULT_PREFERENCE = "-1" |
8 | 10 | ||
9 | SRC_URI = "git://anongit.freedesktop.org/git/xorg/xserver;protocol=git \ | 11 | SRC_URI = "git://anongit.freedesktop.org/git/xorg/xserver;protocol=git \ |
12 | file://xorg.conf \ | ||
10 | file://libdri-xinerama-symbol.patch;patch=1" | 13 | file://libdri-xinerama-symbol.patch;patch=1" |
11 | 14 | ||
15 | # Misc build failure for master HEAD | ||
16 | SRC_URI += "file://fix_open_max_preprocessor_error.patch;patch=1" | ||
17 | |||
18 | EXTRA_OECONF += "--enable-dri" | ||
19 | |||
20 | S = "${WORKDIR}/git" | ||