ODROID-U3 xorg-server debian package fork :
[deb_xorg-server.git] / debian / patches / 190_cache-xkbcomp_output_for_fast_start_up.patch
index c5a08bce13b843b002cb4fe316dd45c812befdff..16b6a1c06a7e1338cb13e5a1691eb92d6b2a9d1f 100644 (file)
@@ -1,10 +1,8 @@
 Last-Update: 2013-09-19
 
-Index: xorg-server-1.14.2.901/configure.ac
-===================================================================
---- xorg-server-1.14.2.901.orig/configure.ac   2013-09-19 11:43:53.948797077 -0400
-+++ xorg-server-1.14.2.901/configure.ac        2013-09-19 11:43:53.944797077 -0400
-@@ -517,9 +517,9 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -514,9 +514,9 @@ AC_MSG_RESULT([$FONTPATH])
  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" ])
@@ -16,7 +14,7 @@ Index: xorg-server-1.14.2.901/configure.ac
  AC_ARG_WITH(default-xkb-rules, AS_HELP_STRING([--with-default-xkb-rules=RULES],
                                     [Keyboard ruleset (default: base/evdev)]),
                                  [ XKB_DFLT_RULES="$withval" ],
-@@ -1225,7 +1225,7 @@
+@@ -1415,7 +1415,7 @@ AC_DEFINE_DIR(XKB_BIN_DIRECTORY, XKB_BIN
  dnl Make sure XKM_OUTPUT_DIR is an absolute path
  XKBOUTPUT_FIRSTCHAR=`echo $XKBOUTPUT | cut -b 1`
  if [[ x$XKBOUTPUT_FIRSTCHAR != x/ -a x$XKBOUTPUT_FIRSTCHAR != 'x$' ]] ; then
@@ -25,11 +23,9 @@ Index: xorg-server-1.14.2.901/configure.ac
  fi
  
  dnl XKM_OUTPUT_DIR (used in code) must end in / or file names get hosed
-Index: xorg-server-1.14.2.901/xkb/README.compiled
-===================================================================
---- xorg-server-1.14.2.901.orig/xkb/README.compiled    2013-09-19 11:43:53.948797077 -0400
-+++ xorg-server-1.14.2.901/xkb/README.compiled 2013-09-19 11:43:53.944797077 -0400
-@@ -4,10 +4,10 @@
+--- a/xkb/README.compiled
++++ b/xkb/README.compiled
+@@ -4,10 +4,10 @@ current keymap and/or any scratch keymap
  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:
@@ -44,11 +40,9 @@ Index: xorg-server-1.14.2.901/xkb/README.compiled
  
  Unless the X server is modified, sharing this directory between servers on
  different hosts could cause problems.
-Index: xorg-server-1.14.2.901/xkb/ddxLoad.c
-===================================================================
---- xorg-server-1.14.2.901.orig/xkb/ddxLoad.c  2013-09-19 11:43:53.948797077 -0400
-+++ xorg-server-1.14.2.901/xkb/ddxLoad.c       2013-09-19 11:51:04.744800715 -0400
-@@ -30,6 +30,12 @@
+--- a/xkb/ddxLoad.c
++++ b/xkb/ddxLoad.c
+@@ -30,6 +30,12 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
  
  #include <xkb-config.h>
  
@@ -61,7 +55,7 @@ Index: xorg-server-1.14.2.901/xkb/ddxLoad.c
  #include <stdio.h>
  #include <ctype.h>
  #include <X11/X.h>
-@@ -43,20 +49,9 @@
+@@ -43,20 +49,9 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
  #define       XKBSRV_NEED_FILE_FUNCS
  #include <xkbsrv.h>
  #include <X11/extensions/XI.h>
@@ -83,7 +77,7 @@ Index: xorg-server-1.14.2.901/xkb/ddxLoad.c
  #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\""
-@@ -69,35 +64,87 @@
+@@ -69,35 +64,87 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
  #endif
  
  static void
@@ -174,7 +168,7 @@ Index: xorg-server-1.14.2.901/xkb/ddxLoad.c
  
      const char *emptystring = "";
      char *xkbbasedirflag = NULL;
-@@ -108,14 +155,68 @@
+@@ -108,14 +155,68 @@ XkbDDXCompileKeymapByNames(XkbDescPtr xk
      /* WIN32 has no popen. The input must be stored in a file which is
         used as input for xkbcomp. xkbcomp does not read from stdin. */
      char tmpname[PATH_MAX];
@@ -247,7 +241,7 @@ Index: xorg-server-1.14.2.901/xkb/ddxLoad.c
  
  #ifdef WIN32
      strcpy(tmpname, Win32TempDir());
-@@ -139,15 +240,21 @@
+@@ -139,15 +240,21 @@ XkbDDXCompileKeymapByNames(XkbDescPtr xk
          }
      }
  
@@ -272,7 +266,7 @@ Index: xorg-server-1.14.2.901/xkb/ddxLoad.c
          buf = NULL;
  
      free(xkbbasedirflag);
-@@ -158,6 +265,11 @@
+@@ -158,6 +265,11 @@ XkbDDXCompileKeymapByNames(XkbDescPtr xk
          return FALSE;
      }
  
@@ -284,7 +278,7 @@ Index: xorg-server-1.14.2.901/xkb/ddxLoad.c
  #ifndef WIN32
      out = Popen(buf, "w");
  #else
-@@ -165,32 +277,43 @@
+@@ -165,32 +277,43 @@ XkbDDXCompileKeymapByNames(XkbDescPtr xk
  #endif
  
      if (out != NULL) {
@@ -339,7 +333,7 @@ Index: xorg-server-1.14.2.901/xkb/ddxLoad.c
  #ifdef WIN32
          /* remove the temporary file */
          unlink(tmpname);
-@@ -205,8 +328,17 @@
+@@ -205,8 +328,17 @@ XkbDDXCompileKeymapByNames(XkbDescPtr xk
      }
      if (nameRtrn)
          nameRtrn[0] = '\0';
@@ -359,7 +353,7 @@ Index: xorg-server-1.14.2.901/xkb/ddxLoad.c
  }
  
  static FILE *
-@@ -217,7 +349,7 @@
+@@ -217,7 +349,7 @@ XkbDDXOpenConfigFile(char *mapName, char
  
      buf[0] = '\0';
      if (mapName != NULL) {
@@ -368,7 +362,7 @@ Index: xorg-server-1.14.2.901/xkb/ddxLoad.c
          if ((XkbBaseDirectory != NULL) && (xkm_output_dir[0] != '/')
  #ifdef WIN32
              && (!isalpha(xkm_output_dir[0]) || xkm_output_dir[1] != ':')
-@@ -256,6 +388,7 @@
+@@ -256,6 +388,7 @@ XkbDDXLoadKeymapByNames(DeviceIntPtr key
      FILE *file;
      char fileName[PATH_MAX];
      unsigned missing;
@@ -376,7 +370,7 @@ Index: xorg-server-1.14.2.901/xkb/ddxLoad.c
  
      *xkbRtrn = NULL;
      if ((keybd == NULL) || (keybd->key == NULL) ||
-@@ -271,7 +404,8 @@
+@@ -271,7 +404,8 @@ XkbDDXLoadKeymapByNames(DeviceIntPtr key
          return 0;
      }
      else if (!XkbDDXCompileKeymapByNames(xkb, names, want, need,
@@ -386,7 +380,7 @@ Index: xorg-server-1.14.2.901/xkb/ddxLoad.c
          LogMessage(X_ERROR, "XKB: Couldn't compile keymap\n");
          return 0;
      }
-@@ -293,7 +427,8 @@
+@@ -293,7 +427,8 @@ XkbDDXLoadKeymapByNames(DeviceIntPtr key
                 (*xkbRtrn)->defined);
      }
      fclose(file);