From c09f0eb561a53b97a769dd0744076af7d904eafb Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Fri, 7 Oct 2011 16:37:10 +0200 Subject: xserver-xf86(-dri)-lite: rename to xserver-xorg and xserver-xorg-lite * xserver-xorg is closer to upstream naming and that's how it's named in OE-classic and meta-oe? It would make meta-oe transition easier and better to do it now then convert meta-oe to xserver-xf86 and then rename it back later. (From OE-Core rev: 0b31c7200a368533df970f0efeb81e2e20c73593) Signed-off-by: Martin Jansa Signed-off-by: Richard Purdie --- .../xorg-xserver/xserver-xf86-common.inc | 42 --- .../xorg-xserver/xserver-xf86-dri-lite.inc | 36 --- .../cache-xkbcomp-output-for-fast-start-up.patch | 360 --------------------- .../xserver-xf86-dri-lite/crosscompile.patch | 22 -- .../xserver-xf86-dri-lite/fix_macros1.patch | 24 -- .../fix_open_max_preprocessor_error.patch | 15 - .../xserver-xf86-dri-lite/macro_tweak.patch | 30 -- .../xorg-xserver/xserver-xf86-dri-lite_1.10.1.bb | 20 -- .../xorg-xserver/xserver-xf86-dri-lite_git.bb | 25 -- .../xorg-xserver/xserver-xf86-lite.inc | 34 -- .../xserver-xf86-lite/crosscompile.patch | 22 -- .../fix_open_max_preprocessor_error.patch | 15 - .../xserver-xf86-lite/macro_tweak.patch | 30 -- .../xorg-xserver/xserver-xf86-lite_1.10.1.bb | 12 - .../xorg-xserver/xserver-xorg-common.inc | 43 +++ .../xorg-xserver/xserver-xorg-lite.inc | 32 ++ .../xserver-xorg-lite/crosscompile.patch | 22 ++ .../fix_open_max_preprocessor_error.patch | 15 + .../xserver-xorg-lite/macro_tweak.patch | 30 ++ .../xorg-xserver/xserver-xorg-lite_1.10.1.bb | 12 + .../recipes-graphics/xorg-xserver/xserver-xorg.inc | 36 +++ .../cache-xkbcomp-output-for-fast-start-up.patch | 360 +++++++++++++++++++++ .../xorg-xserver/xserver-xorg/crosscompile.patch | 22 ++ .../xorg-xserver/xserver-xorg/fix_macros1.patch | 24 ++ .../fix_open_max_preprocessor_error.patch | 15 + .../xorg-xserver/xserver-xorg/macro_tweak.patch | 30 ++ .../xorg-xserver/xserver-xorg_1.10.1.bb | 20 ++ .../xorg-xserver/xserver-xorg_git.bb | 25 ++ 28 files changed, 686 insertions(+), 687 deletions(-) delete mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xf86-common.inc delete mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite.inc delete mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/cache-xkbcomp-output-for-fast-start-up.patch delete mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/crosscompile.patch delete mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/fix_macros1.patch delete mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/fix_open_max_preprocessor_error.patch delete mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/macro_tweak.patch delete mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite_1.10.1.bb delete mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite_git.bb delete mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xf86-lite.inc delete mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xf86-lite/crosscompile.patch delete mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xf86-lite/fix_open_max_preprocessor_error.patch delete mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xf86-lite/macro_tweak.patch delete mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xf86-lite_1.10.1.bb create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xorg-common.inc create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xorg-lite.inc create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xorg-lite/crosscompile.patch create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xorg-lite/fix_open_max_preprocessor_error.patch create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xorg-lite/macro_tweak.patch create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xorg-lite_1.10.1.bb create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xorg.inc create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xorg/cache-xkbcomp-output-for-fast-start-up.patch create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xorg/crosscompile.patch create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xorg/fix_macros1.patch create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xorg/fix_open_max_preprocessor_error.patch create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xorg/macro_tweak.patch create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xorg_1.10.1.bb create mode 100644 meta/recipes-graphics/xorg-xserver/xserver-xorg_git.bb (limited to 'meta/recipes-graphics/xorg-xserver') diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-common.inc b/meta/recipes-graphics/xorg-xserver/xserver-xf86-common.inc deleted file mode 100644 index 17d456cb5c..0000000000 --- a/meta/recipes-graphics/xorg-xserver/xserver-xf86-common.inc +++ /dev/null @@ -1,42 +0,0 @@ -DESCRIPTION = "The X.Org X server" -HOMEPAGE = "http://www.x.org" -SECTION = "x11/base" -LICENSE = "MIT-X" - -LIC_FILES_CHKSUM = "file://COPYING;md5=3dd2bbe3563837f80ed8926b06c1c353" - -# xf86-*-* packages depend on an X server built with the xfree86 DDX -# so we have a virtual to represent that: -PROVIDES = "virtual/xserver-xf86" - -# Other packages tend to just care that there is *an* X server: -PROVIDES += "virtual/xserver" - -XORG_PN = "xorg-server" -SRC_URI = "${XORG_MIRROR}/individual/xserver/${XORG_PN}-${PV}.tar.bz2" - -S = "${WORKDIR}/${XORG_PN}-${PV}" - -inherit autotools pkgconfig - -PACKAGES =+ "${PN}-utils" - -RDEPENDS_${PN} += "xserver-xf86-config xkeyboard-config" - -FILES_${PN}-utils = "${bindir}/scanpci ${bindir}/pcitweak ${bindir}/ioport ${bindir}/in[bwl] ${bindir}/out[bwl] ${bindir}/mmap[rw] ${bindir}/gtf ${bindir}/getconfig ${bindir}/getconfig.pl" -FILES_${PN} = "${libdir}/X11/Options ${libdir}/X11/Cards ${libdir}/X11/getconfig ${libdir}/X11/etc ${libdir}/xserver/SecurityPolicy ${libdir}/xorg/modules/*.so ${libdir}/xorg/modules/*/*.so ${libdir}/xorg/modules/*/*/*.so /etc/X11 " -FILES_${PN}-doc += "${libdir}/X11/doc ${datadir}/X11/xkb/compiled/README.compiled" - -FILES_${PN}-dbg += "${libdir}/xorg/modules/.debug \ - ${libdir}/xorg/modules/*/.debug \ - ${libdir}/xorg/modules/*/*/.debug \ - " - -SRC_URI += "file://macro_tweak.patch" - -EXTRA_OECONF = "--with-fop=no" - -PACKAGECONFIG ??= "udev" -PACKAGECONFIG[hal] = "--enable-config-hal,--disable-config-hal,,hal" -PACKAGECONFIG[udev] = "--enable-config-udev,--disable-config-udev,udev" - diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite.inc b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite.inc deleted file mode 100644 index 6b138732d0..0000000000 --- a/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite.inc +++ /dev/null @@ -1,36 +0,0 @@ -require xserver-xf86-common.inc - -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" - -LIB_DEPS = "pixman virtual/libgl libxfont xtrans libxau libxext libxdmcp libdrm libxkbfile libpciaccess openssl" - -DEPENDS = "${PROTO_DEPS} ${LIB_DEPS}" - -RDEPENDS_${PN} += "xorg-minimal-fonts" - -FILES_${PN} += "${bindir}/Xorg " - -EXTRA_OECONF += "--disable-static \ - --disable-acfb \ - --disable-ccfb \ - --disable-mcfb \ - --disable-dga \ - --disable-xinerama \ - --disable-xf86misc \ - --disable-xorgcfg \ - --disable-record \ - --disable-dmx \ - --disable-xnest \ - --disable-xvfb \ - --enable-composite \ - --enable-glx-tls \ - --sysconfdir=/etc/X11 \ - --localstatedir=/var \ - --with-pic \ - --with-int10=x86emu \ - --with-fontdir=${datadir}/fonts/X11 \ - --with-xkb-output=/var/lib/xkb \ - ac_cv_file__usr_share_sgml_X11_defs_ent=no" - -# Due to mesa-dri -COMPATIBLE_HOST = '(i.86.*-linux|x86_64.*-linux)' diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/cache-xkbcomp-output-for-fast-start-up.patch b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/cache-xkbcomp-output-for-fast-start-up.patch deleted file mode 100644 index 6b1b40f62e..0000000000 --- a/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/cache-xkbcomp-output-for-fast-start-up.patch +++ /dev/null @@ -1,360 +0,0 @@ -From 0f70ba9d3412b17ac4e08e33e1be3c226c06ea54 Mon Sep 17 00:00:00 2001 -From: Yan Li -Date: Tue, 12 May 2009 17:49:07 +0800 -Subject: [PATCH] XKB: cache xkbcomp output for fast start-up v5 for 1.6.1 -Organization: Intel - -xkbcomp outputs will be cached in files with hashed keymap as -names. This saves boot time for around 1s on commodity netbooks. - -Upstream-Status: Pending - -Signed-off-by: Yan Li ---- - configure.ac | 6 +- - xkb/README.compiled | 8 +- - xkb/ddxLoad.c | 192 +++++++++++++++++++++++++++++++++++++++++--------- - 3 files changed, 164 insertions(+), 42 deletions(-) - -diff --git a/configure.ac b/configure.ac -index 4c4c797..7a5020a 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -476,9 +476,9 @@ AC_ARG_WITH(default-font-path, AS_HELP_STRING([--with-default-font-path=PATH], [ - AC_ARG_WITH(xkb-path, AS_HELP_STRING([--with-xkb-path=PATH], [Path to XKB base dir (default: ${datadir}/X11/xkb)]), - [ XKBPATH="$withval" ], - [ XKBPATH="${datadir}/X11/xkb" ]) --AC_ARG_WITH(xkb-output, AS_HELP_STRING([--with-xkb-output=PATH], [Path to XKB output dir (default: ${datadir}/X11/xkb/compiled)]), -+AC_ARG_WITH(xkb-output, AS_HELP_STRING([--with-xkb-output=PATH], [Path to XKB output dir (default: ${localstatedir}/cache/xkb)]), - [ XKBOUTPUT="$withval" ], -- [ XKBOUTPUT="compiled" ]) -+ [ XKBOUTPUT="${localstatedir}/cache/xkb" ]) - AC_ARG_WITH(serverconfig-path, AS_HELP_STRING([--with-serverconfig-path=PATH], - [Directory where ancillary server config files are installed (default: ${libdir}/xorg)]), - [ SERVERCONFIG="$withval" ], -@@ -1757,7 +1757,7 @@ AC_DEFINE_DIR(XKB_BIN_DIRECTORY, bindir, [Path to XKB bin dir]) - XKBOUTPUT_FIRSTCHAR=`echo $XKBOUTPUT | cut -b 1` - - if [[ x$XKBOUTPUT_FIRSTCHAR != x/ ]] ; then -- XKBOUTPUT="$XKB_BASE_DIRECTORY/$XKBOUTPUT" -+ AC_MSG_ERROR([xkb-output must be an absolute path.]) - fi - - # XKM_OUTPUT_DIR (used in code) must end in / or file names get hosed -diff --git a/xkb/README.compiled b/xkb/README.compiled -index 71caa2f..a4a2ae0 100644 ---- a/xkb/README.compiled -+++ b/xkb/README.compiled -@@ -4,10 +4,10 @@ current keymap and/or any scratch keymaps used by clients. The X server - or some other tool might destroy or replace the files in this directory, - so it is not a safe place to store compiled keymaps for long periods of - time. The default keymap for any server is usually stored in: -- X-default.xkm --where is the display number of the server in question, which makes --it possible for several servers *on the same host* to share the same --directory. -+ server-.xkm -+ -+where is the SHA1 hash of keymap source, so that compiled -+keymap of different keymap sources are stored in different files. - - Unless the X server is modified, sharing this directory between servers on - different hosts could cause problems. -diff --git a/xkb/ddxLoad.c b/xkb/ddxLoad.c -index 4d5dfb6..60a68af 100644 ---- a/xkb/ddxLoad.c -+++ b/xkb/ddxLoad.c -@@ -32,6 +32,12 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE. - #include - #endif - -+#ifdef HAVE_SHA1_IN_LIBMD /* Use libmd for SHA1 */ -+# include -+#else /* Use OpenSSL's libcrypto */ -+# include /* buggy openssl/sha.h wants size_t */ -+# include -+#endif - #include - #include - #define NEED_EVENTS 1 -@@ -46,24 +52,13 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE. - #define XKBSRV_NEED_FILE_FUNCS - #include - #include -+#include - #include "xkb.h" - - #if defined(CSRG_BASED) || defined(linux) || defined(__GNU__) - #include - #endif - -- /* -- * If XKM_OUTPUT_DIR specifies a path without a leading slash, it is -- * relative to the top-level XKB configuration directory. -- * Making the server write to a subdirectory of that directory -- * requires some work in the general case (install procedure -- * has to create links to /var or somesuch on many machines), -- * so we just compile into /usr/tmp for now. -- */ --#ifndef XKM_OUTPUT_DIR --#define XKM_OUTPUT_DIR "compiled/" --#endif -- - #define PRE_ERROR_MSG "\"The XKEYBOARD keymap compiler (xkbcomp) reports:\"" - #define ERROR_PREFIX "\"> \"" - #define POST_ERROR_MSG1 "\"Errors from xkbcomp are not fatal to the X server\"" -@@ -179,6 +174,45 @@ OutputDirectory( - } - - static Bool -+Sha1Asc(char sha1Asc[SHA_DIGEST_LENGTH*2+1], const char * input) -+{ -+ int i; -+ unsigned char sha1[SHA_DIGEST_LENGTH]; -+ -+#ifdef HAVE_SHA1_IN_LIBMD /* Use libmd for SHA1 */ -+ SHA1_CTX ctx; -+ -+ SHA1Init (&ctx); -+ SHA1Update (&ctx, input, strlen(input)); -+ SHA1Final (sha1, &ctx); -+#else /* Use OpenSSL's libcrypto */ -+ SHA_CTX ctx; -+ int success; -+ -+ success = SHA1_Init (&ctx); -+ if (! success) -+ return BadAlloc; -+ -+ success = SHA1_Update (&ctx, input, strlen(input)); -+ if (! success) -+ return BadAlloc; -+ -+ success = SHA1_Final (sha1, &ctx); -+ if (! success) -+ return BadAlloc; -+#endif -+ -+ /* convert sha1 to sha1_asc */ -+ for(i=0; i nameRtrnLen) && nameRtrn) { -+ ErrorF("[xkb] nameRtrn too small to hold xkmfile name\n"); -+ return False; -+ } -+ strncpy(nameRtrn, xkmfile, nameRtrnLen); -+ -+ /* if the xkm file already exists, reuse it */ -+ canonicalXkmFileName = Xprintf("%s%s.xkm", xkm_output_dir, xkmfile); -+ if (access(canonicalXkmFileName, R_OK) == 0) { -+ /* yes, we can reuse the old xkm file */ -+ LogMessage(X_INFO, "XKB: reuse xkmfile %s\n", canonicalXkmFileName); -+ result = True; -+ goto _ret; -+ } -+ LogMessage(X_INFO, "XKB: generating xkmfile %s\n", canonicalXkmFileName); -+ -+ /* continue to call xkbcomp to compile the keymap. to avoid race -+ condition, we compile it to a tmpfile then rename it to -+ xkmfile */ -+ - #ifdef WIN32 - strcpy(tmpname, Win32TempDir()); - strcat(tmpname, "\\xkb_XXXXXX"); -@@ -230,19 +322,30 @@ XkbDDXCompileKeymapByNames( XkbDescPtr xkb, - } - } - -+ if ( (tmpXkmFile = tempnam(xkm_output_dir, NULL)) == NULL ) { -+ ErrorF("[xkb] Can't generate temp xkm file name"); -+ result = False; -+ goto _ret; -+ } -+ - buf = Xprintf("\"%s%sxkbcomp\" -w %d %s -xkm \"%s\" " -- "-em1 %s -emp %s -eml %s \"%s%s.xkm\"", -+ "-em1 %s -emp %s -eml %s \"%s\"", - xkbbindir, xkbbindirsep, - ( (xkbDebugFlags < 2) ? 1 : - ((xkbDebugFlags > 10) ? 10 : (int)xkbDebugFlags) ), -- xkbbasedirflag, xkmfile, -+ xkbbasedirflag, xkbfile, - PRE_ERROR_MSG, ERROR_PREFIX, POST_ERROR_MSG1, -- xkm_output_dir, keymap); -+ tmpXkmFile); - - if (xkbbasedirflag != emptystring) { - xfree(xkbbasedirflag); - } - -+ /* there's a potential race condition between calling tempnam() -+ and invoking xkbcomp to write the result file (potential temp -+ file name conflicts), but since xkbcomp is a standalone -+ program, we have to live with this */ -+ - #ifndef WIN32 - out= Popen(buf,"w"); - #else -@@ -250,31 +353,43 @@ XkbDDXCompileKeymapByNames( XkbDescPtr xkb, - #endif - - if (out!=NULL) { --#ifdef DEBUG -- if (xkbDebugFlags) { -- ErrorF("[xkb] XkbDDXCompileKeymapByNames compiling keymap:\n"); -- XkbWriteXKBKeymapForNames(stderr,names,xkb,want,need); -+ /* write XKBKeyMapBuf to xkbcomp */ -+ if (EOF==fputs(xkbKeyMapBuf, out)) -+ { -+ ErrorF("[xkb] Sending keymap to xkbcomp failed\n"); -+ result = False; -+ goto _ret; - } --#endif -- XkbWriteXKBKeymapForNames(out,names,xkb,want,need); - #ifndef WIN32 - if (Pclose(out)==0) - #else - if (fclose(out)==0 && System(buf) >= 0) - #endif - { -+ /* xkbcomp success */ - if (xkbDebugFlags) - DebugF("[xkb] xkb executes: %s\n",buf); -- if (nameRtrn) { -- strncpy(nameRtrn,keymap,nameRtrnLen); -- nameRtrn[nameRtrnLen-1]= '\0'; -+ -+ /* if canonicalXkmFileName already exists now, we simply -+ overwrite it, this is OK */ -+ ret = rename(tmpXkmFile, canonicalXkmFileName); -+ if (0 != ret) { -+ ErrorF("[xkb] Can't rename %s to %s, error: %s\n", -+ tmpXkmFile, canonicalXkmFileName, -+ strerror(errno)); -+ -+ /* in case of error, don't unlink tmpXkmFile, leave it -+ for debugging */ -+ -+ result = False; -+ goto _ret; - } -- if (buf != NULL) -- xfree (buf); -- return True; -+ -+ result = True; -+ goto _ret; - } - else -- LogMessage(X_ERROR, "Error compiling keymap (%s)\n", keymap); -+ LogMessage(X_ERROR, "Error compiling keymap (%s)\n", xkbfile); - #ifdef WIN32 - /* remove the temporary file */ - unlink(tmpname); -@@ -289,9 +404,17 @@ XkbDDXCompileKeymapByNames( XkbDescPtr xkb, - } - if (nameRtrn) - nameRtrn[0]= '\0'; -+ result = False; -+ -+_ret: -+ if (tmpXkmFile) -+ free(tmpXkmFile); -+ if (canonicalXkmFileName) -+ xfree(canonicalXkmFileName); - if (buf != NULL) - xfree (buf); -- return False; -+ -+ return result; - } - - static FILE * -@@ -375,7 +498,6 @@ unsigned missing; - DebugF("Loaded XKB keymap %s, defined=0x%x\n",fileName,(*xkbRtrn)->defined); - } - fclose(file); -- (void) unlink (fileName); - return (need|want)&(~missing); - } - --- -1.5.6.5 - diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/crosscompile.patch b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/crosscompile.patch deleted file mode 100644 index 2f98bb8c89..0000000000 --- a/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/crosscompile.patch +++ /dev/null @@ -1,22 +0,0 @@ -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/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/fix_macros1.patch b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/fix_macros1.patch deleted file mode 100644 index b2c8d58f52..0000000000 --- a/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/fix_macros1.patch +++ /dev/null @@ -1,24 +0,0 @@ -We need to insert the sysroot path into compiler commandlines for this -kind of variable use, otherwise we're looking into /usr/include/. - -RP - 26/11/09 - -Upstream-Status: Pending - -Index: git/xorg-server.m4 -=================================================================== ---- git.orig/xorg-server.m4 2010-02-05 10:00:55.000000000 +0000 -+++ git/xorg-server.m4 2010-02-05 10:02:12.000000000 +0000 -@@ -28,10 +28,11 @@ - # 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/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/fix_open_max_preprocessor_error.patch b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/fix_open_max_preprocessor_error.patch deleted file mode 100644 index 9c33072c5d..0000000000 --- a/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/fix_open_max_preprocessor_error.patch +++ /dev/null @@ -1,15 +0,0 @@ -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/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/macro_tweak.patch b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/macro_tweak.patch deleted file mode 100644 index 2b75427129..0000000000 --- a/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite/macro_tweak.patch +++ /dev/null @@ -1,30 +0,0 @@ -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 - -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/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite_1.10.1.bb b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite_1.10.1.bb deleted file mode 100644 index b797f9701f..0000000000 --- a/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite_1.10.1.bb +++ /dev/null @@ -1,20 +0,0 @@ -require xserver-xf86-dri-lite.inc - -LIC_FILES_CHKSUM = "file://COPYING;md5=74df27b6254cc88d2799b5f4f5949c00" - -PROTO_DEPS += "xf86driproto dri2proto" - -DEPENDS += "font-util" - -PE = "1" -PR = "r3" - -SRC_URI += "file://crosscompile.patch" - -# Misc build failure for master HEAD -SRC_URI += "file://fix_open_max_preprocessor_error.patch" - -SRC_URI[md5sum] = "75f117c74f2ecaf9dd167f6a66ac98de" -SRC_URI[sha256sum] = "143c7c3d7d4428352e1153dffa34fd64af391f72d30b2a03e911e54e36f00b5d" - -EXTRA_OECONF += "--enable-dri --enable-dri2" diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite_git.bb b/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite_git.bb deleted file mode 100644 index 87ba04025f..0000000000 --- a/meta/recipes-graphics/xorg-xserver/xserver-xf86-dri-lite_git.bb +++ /dev/null @@ -1,25 +0,0 @@ -require xserver-xf86-dri-lite.inc - -LIC_FILES_CHKSUM = "file://COPYING;md5=74df27b6254cc88d2799b5f4f5949c00" - -SRCREV = "6689e8add183835274a70ee013e5d3bc8023681f" -PE = "1" -PR = "r3" -PV = "1.10+git${SRCPV}" - -PROTO_DEPS += "xf86driproto dri2proto" - -DEPENDS += "font-util" - -RDEPENDS_${PN} += "xkeyboard-config" - -SRC_URI = "git://anongit.freedesktop.org/git/xorg/xserver;protocol=git;branch=master \ - file://crosscompile.patch; \ - file://fix_macros1.patch;" - -# Misc build failure for master HEAD -SRC_URI += "file://fix_open_max_preprocessor_error.patch;" - -EXTRA_OECONF += "--enable-dri --enable-dri2 --enable-dga" - -S = "${WORKDIR}/git" diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite.inc b/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite.inc deleted file mode 100644 index 131c258e82..0000000000 --- a/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite.inc +++ /dev/null @@ -1,34 +0,0 @@ -require xserver-xf86-common.inc - -PROVIDES += "xserver-xf86-lite" - -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" - -LIB_DEPS = "pixman libxfont xtrans libxau libxext libxdmcp libdrm libxkbfile libpciaccess openssl" - -DEPENDS = "${PROTO_DEPS} ${LIB_DEPS}" - -RDEPENDS_${PN} += "xorg-minimal-fonts" - -FILES_${PN} += "${bindir}/Xorg " - -EXTRA_OECONF += "--disable-static \ - --disable-acfb \ - --disable-ccfb \ - --disable-mcfb \ - --disable-dga \ - --disable-xinerama \ - --disable-xf86misc \ - --disable-xorgcfg \ - --disable-record \ - --disable-dmx \ - --disable-xnest \ - --disable-xvfb \ - --enable-composite \ - --disable-dri \ - --disable-glx \ - --sysconfdir=/etc/X11 \ - --localstatedir=/var \ - --with-fontdir=${datadir}/fonts/X11 \ - --with-xkb-output=/var/lib/xkb \ - ac_cv_file__usr_share_sgml_X11_defs_ent=no" diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite/crosscompile.patch b/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite/crosscompile.patch deleted file mode 100644 index 2f98bb8c89..0000000000 --- a/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite/crosscompile.patch +++ /dev/null @@ -1,22 +0,0 @@ -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/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite/fix_open_max_preprocessor_error.patch b/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite/fix_open_max_preprocessor_error.patch deleted file mode 100644 index 2f629724c9..0000000000 --- a/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite/fix_open_max_preprocessor_error.patch +++ /dev/null @@ -1,15 +0,0 @@ -Upstream-Status: Pending - -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/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite/macro_tweak.patch b/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite/macro_tweak.patch deleted file mode 100644 index 2b75427129..0000000000 --- a/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite/macro_tweak.patch +++ /dev/null @@ -1,30 +0,0 @@ -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 - -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/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite_1.10.1.bb b/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite_1.10.1.bb deleted file mode 100644 index e42f27d587..0000000000 --- a/meta/recipes-graphics/xorg-xserver/xserver-xf86-lite_1.10.1.bb +++ /dev/null @@ -1,12 +0,0 @@ -require xserver-xf86-lite.inc - -LIC_FILES_CHKSUM = "file://COPYING;md5=74df27b6254cc88d2799b5f4f5949c00" - -PR = "r3" - -DEPENDS += "font-util" - -SRC_URI += "file://crosscompile.patch" - -# Misc build failure for master HEAD -SRC_URI += "file://fix_open_max_preprocessor_error.patch;" diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xorg-common.inc b/meta/recipes-graphics/xorg-xserver/xserver-xorg-common.inc new file mode 100644 index 0000000000..78c5f2e3b4 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xorg-common.inc @@ -0,0 +1,43 @@ +DESCRIPTION = "The X.Org X server" +HOMEPAGE = "http://www.x.org" +SECTION = "x11/base" +LICENSE = "MIT-X" + +LIC_FILES_CHKSUM = "file://COPYING;md5=3dd2bbe3563837f80ed8926b06c1c353" + +# xf86-*-* packages depend on an X server built with the xfree86 DDX +# so we have a virtual to represent that: +# deprecated, we should use virtual/xserver instead +PROVIDES = "virtual/xserver-xf86" + +# Other packages tend to just care that there is *an* X server: +PROVIDES += "virtual/xserver" + +XORG_PN = "xorg-server" +SRC_URI = "${XORG_MIRROR}/individual/xserver/${XORG_PN}-${PV}.tar.bz2" + +S = "${WORKDIR}/${XORG_PN}-${PV}" + +inherit autotools pkgconfig + +PACKAGES =+ "${PN}-utils" + +RDEPENDS_${PN} += "xserver-xf86-config xkeyboard-config" + +FILES_${PN}-utils = "${bindir}/scanpci ${bindir}/pcitweak ${bindir}/ioport ${bindir}/in[bwl] ${bindir}/out[bwl] ${bindir}/mmap[rw] ${bindir}/gtf ${bindir}/getconfig ${bindir}/getconfig.pl" +FILES_${PN} = "${libdir}/X11/Options ${libdir}/X11/Cards ${libdir}/X11/getconfig ${libdir}/X11/etc ${libdir}/xserver/SecurityPolicy ${libdir}/xorg/modules/*.so ${libdir}/xorg/modules/*/*.so ${libdir}/xorg/modules/*/*/*.so /etc/X11 " +FILES_${PN}-doc += "${libdir}/X11/doc ${datadir}/X11/xkb/compiled/README.compiled" + +FILES_${PN}-dbg += "${libdir}/xorg/modules/.debug \ + ${libdir}/xorg/modules/*/.debug \ + ${libdir}/xorg/modules/*/*/.debug \ + " + +SRC_URI += "file://macro_tweak.patch" + +EXTRA_OECONF = "--with-fop=no" + +PACKAGECONFIG ??= "udev" +PACKAGECONFIG[hal] = "--enable-config-hal,--disable-config-hal,,hal" +PACKAGECONFIG[udev] = "--enable-config-udev,--disable-config-udev,udev" + diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xorg-lite.inc b/meta/recipes-graphics/xorg-xserver/xserver-xorg-lite.inc new file mode 100644 index 0000000000..f1cef1bb5d --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xorg-lite.inc @@ -0,0 +1,32 @@ +require xserver-xorg-common.inc + +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" + +LIB_DEPS = "pixman libxfont xtrans libxau libxext libxdmcp libdrm libxkbfile libpciaccess openssl" + +DEPENDS = "${PROTO_DEPS} ${LIB_DEPS}" + +RDEPENDS_${PN} += "xorg-minimal-fonts" + +FILES_${PN} += "${bindir}/Xorg " + +EXTRA_OECONF += "--disable-static \ + --disable-acfb \ + --disable-ccfb \ + --disable-mcfb \ + --disable-dga \ + --disable-xinerama \ + --disable-xf86misc \ + --disable-xorgcfg \ + --disable-record \ + --disable-dmx \ + --disable-xnest \ + --disable-xvfb \ + --enable-composite \ + --disable-dri \ + --disable-glx \ + --sysconfdir=/etc/X11 \ + --localstatedir=/var \ + --with-fontdir=${datadir}/fonts/X11 \ + --with-xkb-output=/var/lib/xkb \ + ac_cv_file__usr_share_sgml_X11_defs_ent=no" diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xorg-lite/crosscompile.patch b/meta/recipes-graphics/xorg-xserver/xserver-xorg-lite/crosscompile.patch new file mode 100644 index 0000000000..2f98bb8c89 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xorg-lite/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/meta/recipes-graphics/xorg-xserver/xserver-xorg-lite/fix_open_max_preprocessor_error.patch b/meta/recipes-graphics/xorg-xserver/xserver-xorg-lite/fix_open_max_preprocessor_error.patch new file mode 100644 index 0000000000..2f629724c9 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xorg-lite/fix_open_max_preprocessor_error.patch @@ -0,0 +1,15 @@ +Upstream-Status: Pending + +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/meta/recipes-graphics/xorg-xserver/xserver-xorg-lite/macro_tweak.patch b/meta/recipes-graphics/xorg-xserver/xserver-xorg-lite/macro_tweak.patch new file mode 100644 index 0000000000..2b32d4e48d --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xorg-lite/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-xorg(-lite). 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 + +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/meta/recipes-graphics/xorg-xserver/xserver-xorg-lite_1.10.1.bb b/meta/recipes-graphics/xorg-xserver/xserver-xorg-lite_1.10.1.bb new file mode 100644 index 0000000000..63b2c38823 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xorg-lite_1.10.1.bb @@ -0,0 +1,12 @@ +require xserver-xorg-lite.inc + +LIC_FILES_CHKSUM = "file://COPYING;md5=74df27b6254cc88d2799b5f4f5949c00" + +PR = "r3" + +DEPENDS += "font-util" + +SRC_URI += "file://crosscompile.patch" + +# Misc build failure for master HEAD +SRC_URI += "file://fix_open_max_preprocessor_error.patch;" diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xorg.inc b/meta/recipes-graphics/xorg-xserver/xserver-xorg.inc new file mode 100644 index 0000000000..9bc0ee48cf --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xorg.inc @@ -0,0 +1,36 @@ +require xserver-xorg-common.inc + +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" + +LIB_DEPS = "pixman virtual/libgl libxfont xtrans libxau libxext libxdmcp libdrm libxkbfile libpciaccess openssl" + +DEPENDS = "${PROTO_DEPS} ${LIB_DEPS}" + +RDEPENDS_${PN} += "xorg-minimal-fonts" + +FILES_${PN} += "${bindir}/Xorg " + +EXTRA_OECONF += "--disable-static \ + --disable-acfb \ + --disable-ccfb \ + --disable-mcfb \ + --disable-dga \ + --disable-xinerama \ + --disable-xf86misc \ + --disable-xorgcfg \ + --disable-record \ + --disable-dmx \ + --disable-xnest \ + --disable-xvfb \ + --enable-composite \ + --enable-glx-tls \ + --sysconfdir=/etc/X11 \ + --localstatedir=/var \ + --with-pic \ + --with-int10=x86emu \ + --with-fontdir=${datadir}/fonts/X11 \ + --with-xkb-output=/var/lib/xkb \ + ac_cv_file__usr_share_sgml_X11_defs_ent=no" + +# Due to mesa-dri +COMPATIBLE_HOST = '(i.86.*-linux|x86_64.*-linux)' diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xorg/cache-xkbcomp-output-for-fast-start-up.patch b/meta/recipes-graphics/xorg-xserver/xserver-xorg/cache-xkbcomp-output-for-fast-start-up.patch new file mode 100644 index 0000000000..6b1b40f62e --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xorg/cache-xkbcomp-output-for-fast-start-up.patch @@ -0,0 +1,360 @@ +From 0f70ba9d3412b17ac4e08e33e1be3c226c06ea54 Mon Sep 17 00:00:00 2001 +From: Yan Li +Date: Tue, 12 May 2009 17:49:07 +0800 +Subject: [PATCH] XKB: cache xkbcomp output for fast start-up v5 for 1.6.1 +Organization: Intel + +xkbcomp outputs will be cached in files with hashed keymap as +names. This saves boot time for around 1s on commodity netbooks. + +Upstream-Status: Pending + +Signed-off-by: Yan Li +--- + configure.ac | 6 +- + xkb/README.compiled | 8 +- + xkb/ddxLoad.c | 192 +++++++++++++++++++++++++++++++++++++++++--------- + 3 files changed, 164 insertions(+), 42 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 4c4c797..7a5020a 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -476,9 +476,9 @@ AC_ARG_WITH(default-font-path, AS_HELP_STRING([--with-default-font-path=PATH], [ + AC_ARG_WITH(xkb-path, AS_HELP_STRING([--with-xkb-path=PATH], [Path to XKB base dir (default: ${datadir}/X11/xkb)]), + [ XKBPATH="$withval" ], + [ XKBPATH="${datadir}/X11/xkb" ]) +-AC_ARG_WITH(xkb-output, AS_HELP_STRING([--with-xkb-output=PATH], [Path to XKB output dir (default: ${datadir}/X11/xkb/compiled)]), ++AC_ARG_WITH(xkb-output, AS_HELP_STRING([--with-xkb-output=PATH], [Path to XKB output dir (default: ${localstatedir}/cache/xkb)]), + [ XKBOUTPUT="$withval" ], +- [ XKBOUTPUT="compiled" ]) ++ [ XKBOUTPUT="${localstatedir}/cache/xkb" ]) + AC_ARG_WITH(serverconfig-path, AS_HELP_STRING([--with-serverconfig-path=PATH], + [Directory where ancillary server config files are installed (default: ${libdir}/xorg)]), + [ SERVERCONFIG="$withval" ], +@@ -1757,7 +1757,7 @@ AC_DEFINE_DIR(XKB_BIN_DIRECTORY, bindir, [Path to XKB bin dir]) + XKBOUTPUT_FIRSTCHAR=`echo $XKBOUTPUT | cut -b 1` + + if [[ x$XKBOUTPUT_FIRSTCHAR != x/ ]] ; then +- XKBOUTPUT="$XKB_BASE_DIRECTORY/$XKBOUTPUT" ++ AC_MSG_ERROR([xkb-output must be an absolute path.]) + fi + + # XKM_OUTPUT_DIR (used in code) must end in / or file names get hosed +diff --git a/xkb/README.compiled b/xkb/README.compiled +index 71caa2f..a4a2ae0 100644 +--- a/xkb/README.compiled ++++ b/xkb/README.compiled +@@ -4,10 +4,10 @@ current keymap and/or any scratch keymaps used by clients. The X server + or some other tool might destroy or replace the files in this directory, + so it is not a safe place to store compiled keymaps for long periods of + time. The default keymap for any server is usually stored in: +- X-default.xkm +-where is the display number of the server in question, which makes +-it possible for several servers *on the same host* to share the same +-directory. ++ server-.xkm ++ ++where is the SHA1 hash of keymap source, so that compiled ++keymap of different keymap sources are stored in different files. + + Unless the X server is modified, sharing this directory between servers on + different hosts could cause problems. +diff --git a/xkb/ddxLoad.c b/xkb/ddxLoad.c +index 4d5dfb6..60a68af 100644 +--- a/xkb/ddxLoad.c ++++ b/xkb/ddxLoad.c +@@ -32,6 +32,12 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE. + #include + #endif + ++#ifdef HAVE_SHA1_IN_LIBMD /* Use libmd for SHA1 */ ++# include ++#else /* Use OpenSSL's libcrypto */ ++# include /* buggy openssl/sha.h wants size_t */ ++# include ++#endif + #include + #include + #define NEED_EVENTS 1 +@@ -46,24 +52,13 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE. + #define XKBSRV_NEED_FILE_FUNCS + #include + #include ++#include + #include "xkb.h" + + #if defined(CSRG_BASED) || defined(linux) || defined(__GNU__) + #include + #endif + +- /* +- * If XKM_OUTPUT_DIR specifies a path without a leading slash, it is +- * relative to the top-level XKB configuration directory. +- * Making the server write to a subdirectory of that directory +- * requires some work in the general case (install procedure +- * has to create links to /var or somesuch on many machines), +- * so we just compile into /usr/tmp for now. +- */ +-#ifndef XKM_OUTPUT_DIR +-#define XKM_OUTPUT_DIR "compiled/" +-#endif +- + #define PRE_ERROR_MSG "\"The XKEYBOARD keymap compiler (xkbcomp) reports:\"" + #define ERROR_PREFIX "\"> \"" + #define POST_ERROR_MSG1 "\"Errors from xkbcomp are not fatal to the X server\"" +@@ -179,6 +174,45 @@ OutputDirectory( + } + + static Bool ++Sha1Asc(char sha1Asc[SHA_DIGEST_LENGTH*2+1], const char * input) ++{ ++ int i; ++ unsigned char sha1[SHA_DIGEST_LENGTH]; ++ ++#ifdef HAVE_SHA1_IN_LIBMD /* Use libmd for SHA1 */ ++ SHA1_CTX ctx; ++ ++ SHA1Init (&ctx); ++ SHA1Update (&ctx, input, strlen(input)); ++ SHA1Final (sha1, &ctx); ++#else /* Use OpenSSL's libcrypto */ ++ SHA_CTX ctx; ++ int success; ++ ++ success = SHA1_Init (&ctx); ++ if (! success) ++ return BadAlloc; ++ ++ success = SHA1_Update (&ctx, input, strlen(input)); ++ if (! success) ++ return BadAlloc; ++ ++ success = SHA1_Final (sha1, &ctx); ++ if (! success) ++ return BadAlloc; ++#endif ++ ++ /* convert sha1 to sha1_asc */ ++ for(i=0; i nameRtrnLen) && nameRtrn) { ++ ErrorF("[xkb] nameRtrn too small to hold xkmfile name\n"); ++ return False; ++ } ++ strncpy(nameRtrn, xkmfile, nameRtrnLen); ++ ++ /* if the xkm file already exists, reuse it */ ++ canonicalXkmFileName = Xprintf("%s%s.xkm", xkm_output_dir, xkmfile); ++ if (access(canonicalXkmFileName, R_OK) == 0) { ++ /* yes, we can reuse the old xkm file */ ++ LogMessage(X_INFO, "XKB: reuse xkmfile %s\n", canonicalXkmFileName); ++ result = True; ++ goto _ret; ++ } ++ LogMessage(X_INFO, "XKB: generating xkmfile %s\n", canonicalXkmFileName); ++ ++ /* continue to call xkbcomp to compile the keymap. to avoid race ++ condition, we compile it to a tmpfile then rename it to ++ xkmfile */ ++ + #ifdef WIN32 + strcpy(tmpname, Win32TempDir()); + strcat(tmpname, "\\xkb_XXXXXX"); +@@ -230,19 +322,30 @@ XkbDDXCompileKeymapByNames( XkbDescPtr xkb, + } + } + ++ if ( (tmpXkmFile = tempnam(xkm_output_dir, NULL)) == NULL ) { ++ ErrorF("[xkb] Can't generate temp xkm file name"); ++ result = False; ++ goto _ret; ++ } ++ + buf = Xprintf("\"%s%sxkbcomp\" -w %d %s -xkm \"%s\" " +- "-em1 %s -emp %s -eml %s \"%s%s.xkm\"", ++ "-em1 %s -emp %s -eml %s \"%s\"", + xkbbindir, xkbbindirsep, + ( (xkbDebugFlags < 2) ? 1 : + ((xkbDebugFlags > 10) ? 10 : (int)xkbDebugFlags) ), +- xkbbasedirflag, xkmfile, ++ xkbbasedirflag, xkbfile, + PRE_ERROR_MSG, ERROR_PREFIX, POST_ERROR_MSG1, +- xkm_output_dir, keymap); ++ tmpXkmFile); + + if (xkbbasedirflag != emptystring) { + xfree(xkbbasedirflag); + } + ++ /* there's a potential race condition between calling tempnam() ++ and invoking xkbcomp to write the result file (potential temp ++ file name conflicts), but since xkbcomp is a standalone ++ program, we have to live with this */ ++ + #ifndef WIN32 + out= Popen(buf,"w"); + #else +@@ -250,31 +353,43 @@ XkbDDXCompileKeymapByNames( XkbDescPtr xkb, + #endif + + if (out!=NULL) { +-#ifdef DEBUG +- if (xkbDebugFlags) { +- ErrorF("[xkb] XkbDDXCompileKeymapByNames compiling keymap:\n"); +- XkbWriteXKBKeymapForNames(stderr,names,xkb,want,need); ++ /* write XKBKeyMapBuf to xkbcomp */ ++ if (EOF==fputs(xkbKeyMapBuf, out)) ++ { ++ ErrorF("[xkb] Sending keymap to xkbcomp failed\n"); ++ result = False; ++ goto _ret; + } +-#endif +- XkbWriteXKBKeymapForNames(out,names,xkb,want,need); + #ifndef WIN32 + if (Pclose(out)==0) + #else + if (fclose(out)==0 && System(buf) >= 0) + #endif + { ++ /* xkbcomp success */ + if (xkbDebugFlags) + DebugF("[xkb] xkb executes: %s\n",buf); +- if (nameRtrn) { +- strncpy(nameRtrn,keymap,nameRtrnLen); +- nameRtrn[nameRtrnLen-1]= '\0'; ++ ++ /* if canonicalXkmFileName already exists now, we simply ++ overwrite it, this is OK */ ++ ret = rename(tmpXkmFile, canonicalXkmFileName); ++ if (0 != ret) { ++ ErrorF("[xkb] Can't rename %s to %s, error: %s\n", ++ tmpXkmFile, canonicalXkmFileName, ++ strerror(errno)); ++ ++ /* in case of error, don't unlink tmpXkmFile, leave it ++ for debugging */ ++ ++ result = False; ++ goto _ret; + } +- if (buf != NULL) +- xfree (buf); +- return True; ++ ++ result = True; ++ goto _ret; + } + else +- LogMessage(X_ERROR, "Error compiling keymap (%s)\n", keymap); ++ LogMessage(X_ERROR, "Error compiling keymap (%s)\n", xkbfile); + #ifdef WIN32 + /* remove the temporary file */ + unlink(tmpname); +@@ -289,9 +404,17 @@ XkbDDXCompileKeymapByNames( XkbDescPtr xkb, + } + if (nameRtrn) + nameRtrn[0]= '\0'; ++ result = False; ++ ++_ret: ++ if (tmpXkmFile) ++ free(tmpXkmFile); ++ if (canonicalXkmFileName) ++ xfree(canonicalXkmFileName); + if (buf != NULL) + xfree (buf); +- return False; ++ ++ return result; + } + + static FILE * +@@ -375,7 +498,6 @@ unsigned missing; + DebugF("Loaded XKB keymap %s, defined=0x%x\n",fileName,(*xkbRtrn)->defined); + } + fclose(file); +- (void) unlink (fileName); + return (need|want)&(~missing); + } + +-- +1.5.6.5 + diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xorg/crosscompile.patch b/meta/recipes-graphics/xorg-xserver/xserver-xorg/crosscompile.patch new file mode 100644 index 0000000000..2f98bb8c89 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xorg/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/meta/recipes-graphics/xorg-xserver/xserver-xorg/fix_macros1.patch b/meta/recipes-graphics/xorg-xserver/xserver-xorg/fix_macros1.patch new file mode 100644 index 0000000000..b2c8d58f52 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xorg/fix_macros1.patch @@ -0,0 +1,24 @@ +We need to insert the sysroot path into compiler commandlines for this +kind of variable use, otherwise we're looking into /usr/include/. + +RP - 26/11/09 + +Upstream-Status: Pending + +Index: git/xorg-server.m4 +=================================================================== +--- git.orig/xorg-server.m4 2010-02-05 10:00:55.000000000 +0000 ++++ git/xorg-server.m4 2010-02-05 10:02:12.000000000 +0000 +@@ -28,10 +28,11 @@ + # 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/meta/recipes-graphics/xorg-xserver/xserver-xorg/fix_open_max_preprocessor_error.patch b/meta/recipes-graphics/xorg-xserver/xserver-xorg/fix_open_max_preprocessor_error.patch new file mode 100644 index 0000000000..9c33072c5d --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xorg/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/meta/recipes-graphics/xorg-xserver/xserver-xorg/macro_tweak.patch b/meta/recipes-graphics/xorg-xserver/xserver-xorg/macro_tweak.patch new file mode 100644 index 0000000000..2b32d4e48d --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xorg/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-xorg(-lite). 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 + +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/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.10.1.bb b/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.10.1.bb new file mode 100644 index 0000000000..0194798a10 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xorg_1.10.1.bb @@ -0,0 +1,20 @@ +require xserver-xorg.inc + +LIC_FILES_CHKSUM = "file://COPYING;md5=74df27b6254cc88d2799b5f4f5949c00" + +PROTO_DEPS += "xf86driproto dri2proto" + +DEPENDS += "font-util" + +PE = "1" +PR = "r3" + +SRC_URI += "file://crosscompile.patch" + +# Misc build failure for master HEAD +SRC_URI += "file://fix_open_max_preprocessor_error.patch" + +SRC_URI[md5sum] = "75f117c74f2ecaf9dd167f6a66ac98de" +SRC_URI[sha256sum] = "143c7c3d7d4428352e1153dffa34fd64af391f72d30b2a03e911e54e36f00b5d" + +EXTRA_OECONF += "--enable-dri --enable-dri2" diff --git a/meta/recipes-graphics/xorg-xserver/xserver-xorg_git.bb b/meta/recipes-graphics/xorg-xserver/xserver-xorg_git.bb new file mode 100644 index 0000000000..beef06a3e3 --- /dev/null +++ b/meta/recipes-graphics/xorg-xserver/xserver-xorg_git.bb @@ -0,0 +1,25 @@ +require xserver-xorg.inc + +LIC_FILES_CHKSUM = "file://COPYING;md5=74df27b6254cc88d2799b5f4f5949c00" + +SRCREV = "6689e8add183835274a70ee013e5d3bc8023681f" +PE = "1" +PR = "r3" +PV = "1.10+git${SRCPV}" + +PROTO_DEPS += "xf86driproto dri2proto" + +DEPENDS += "font-util" + +RDEPENDS_${PN} += "xkeyboard-config" + +SRC_URI = "git://anongit.freedesktop.org/git/xorg/xserver;protocol=git;branch=master \ + file://crosscompile.patch; \ + file://fix_macros1.patch;" + +# Misc build failure for master HEAD +SRC_URI += "file://fix_open_max_preprocessor_error.patch;" + +EXTRA_OECONF += "--enable-dri --enable-dri2 --enable-dga" + +S = "${WORKDIR}/git" -- cgit v1.2.3-54-g00ecf