6960017 Upgrade X client libraries to get xcb/thread-safety fixes
authorAlan Coopersmith <Alan.Coopersmith@Oracle.COM>
Fri, 11 Jun 2010 06:38:19 -0700
changeset 962 c323b15ad103
parent 961 2d4d41b97291
child 963 7a4fced80e83
6960017 Upgrade X client libraries to get xcb/thread-safety fixes
open-src/lib/libX11/1234757.patch
open-src/lib/libX11/1261271.patch
open-src/lib/libX11/6913809.patch
open-src/lib/libX11/Makefile
open-src/lib/libX11/compose-el_GR.UTF-8.patch
open-src/lib/libX11/compose-en_US.UTF-8.patch
open-src/lib/libX11/compose-iso8859-13.patch
open-src/lib/libX11/compose-iso8859-2.patch
open-src/lib/libX11/compose-iso8859-5.patch
open-src/lib/libX11/compose-iso8859-6.patch
open-src/lib/libX11/compose-iso8859-7.patch
open-src/lib/libX11/compose-iso8859-8.patch
open-src/lib/libX11/compose-ko_KR.UTF-8.patch
open-src/lib/libX11/compose-zh_CN.UTF-8.patch
open-src/lib/libX11/compose-zh_HK.UTF-8.patch
open-src/lib/libX11/compose-zh_TW.UTF-8.patch
open-src/lib/libX11/compose.dir.patch
open-src/lib/libX11/lc-jisx0208.patch
open-src/lib/libX11/lintlib.patch
open-src/lib/libX11/locale-en_US.UTF-8.patch
open-src/lib/libX11/locale-ja_JP.UTF-8.patch
open-src/lib/libX11/locale-ko_KR.UTF-8.patch
open-src/lib/libX11/locale-th_TH.UTF-8.patch
open-src/lib/libX11/locale-zh_CN.UTF-8.patch
open-src/lib/libX11/locale.paths.patch
open-src/lib/libX11/mapfile-vers
open-src/lib/libX11/sme.patch
open-src/lib/libXcomposite/Makefile
open-src/lib/libXdamage/Makefile
open-src/lib/libXext/Makefile
open-src/lib/libXext/lint-flags.patch
open-src/lib/libXext/server-compat.patch
open-src/lib/libXfixes/Makefile
open-src/lib/libXrender/Makefile
open-src/util/util-macros/Makefile
packages/SUNWxwpmn/prototype
--- a/open-src/lib/libX11/1234757.patch	Mon Jun 07 13:50:41 2010 -0700
+++ b/open-src/lib/libX11/1234757.patch	Fri Jun 11 06:38:19 2010 -0700
@@ -35,10 +35,10 @@
 other Xlib calls.
 
 diff -urp -x '*~' -x '*.orig' include/X11/Xlibint.h include/X11/Xlibint.h
---- include/X11/Xlibint.h	2009-02-20 15:17:13.000000000 -0800
-+++ include/X11/Xlibint.h	2009-04-08 00:17:31.818676000 -0700
-@@ -187,6 +187,29 @@ struct _XDisplay
- 	struct _X11XCBPrivate *xcb; /* XCB glue private data */
+--- include/X11/Xlibint.h	2010-04-26 22:00:12.000000000 -0700
++++ include/X11/Xlibint.h	2010-06-07 15:49:10.764640595 -0700
+@@ -199,6 +199,29 @@ struct _XDisplay
+ 	void *cookiejar;  /* cookie events returned but not claimed */
  };
  
 +#if defined(XTHREADS) && defined(SUNSOFT)
@@ -68,9 +68,9 @@
  
  /*
 diff -urp -x '*~' -x '*.orig' src/OpenDis.c src/OpenDis.c
---- src/OpenDis.c	2009-04-06 16:48:55.000000000 -0700
-+++ src/OpenDis.c	2009-04-08 00:17:31.819345000 -0700
-@@ -62,6 +62,11 @@ typedef struct {
+--- src/OpenDis.c	2010-05-14 20:33:41.000000000 -0700
++++ src/OpenDis.c	2010-06-07 15:49:10.765824756 -0700
+@@ -60,6 +60,11 @@ typedef struct {
  } _XBigReqState;
  #endif /* !USE_XCB */
  
@@ -82,7 +82,7 @@
  #ifdef XTHREADS
  #include "locking.h"
  int  (*_XInitDisplayLock_fn)(Display *dpy) = NULL;
-@@ -261,6 +266,13 @@ XOpenDisplay (
+@@ -278,6 +283,13 @@ fallback_success:
  		return(NULL);
  	}
  
@@ -96,7 +96,7 @@
  	if (!_XPollfdCacheInit(dpy)) {
  	        OutOfMemory (dpy, setup);
  		return(NULL);
-@@ -790,5 +802,9 @@ _XBigReqHandler(
+@@ -814,6 +826,10 @@ _XBigReqHandler(
  
  void _XFreeDisplayStructure(Display *dpy)
  {
@@ -104,9 +104,10 @@
 +        RemoveFromDisplayLink(dpy);
 +#endif XTHREADS
 +
-	/* move all cookies in the EQ to the jar, then free them. */
-	if (dpy->qfree) {
-@@ -910,6 +926,107 @@ void _XFreeDisplayStructure(Display *dpy
+ 	/* move all cookies in the EQ to the jar, then free them. */
+ 	if (dpy->qfree) {
+ 	    _XQEvent *qelt = dpy->qfree;
+@@ -945,6 +961,107 @@ void _XFreeDisplayStructure(Display *dpy
  	Xfree ((char *)dpy);
  }
  
@@ -215,9 +216,9 @@
     after this returns. */
  
 diff -urp -x '*~' -x '*.orig' src/locking.c src/locking.c
---- src/locking.c	2009-04-06 16:29:10.000000000 -0700
-+++ src/locking.c	2009-04-08 00:17:31.819992000 -0700
-@@ -611,6 +611,11 @@ Status XInitThreads(void)
+--- src/locking.c	2010-04-16 08:40:29.000000000 -0700
++++ src/locking.c	2010-06-07 15:49:10.766507253 -0700
+@@ -612,6 +612,11 @@ Status XInitThreads(void)
  #endif
  #endif
  
--- a/open-src/lib/libX11/1261271.patch	Mon Jun 07 13:50:41 2010 -0700
+++ b/open-src/lib/libX11/1261271.patch	Fri Jun 11 06:38:19 2010 -0700
@@ -24,12 +24,12 @@
 1261271 /usr/dist/exe/gnuemacs doesn't work on s297.
 
 diff -urp -x '*~' -x '*.orig' src/XlibInt.c src/XlibInt.c
---- src/XlibInt.c	2009-03-24 23:25:37.548747000 -0700
-+++ src/XlibInt.c	2009-03-24 23:25:49.514829000 -0700
-@@ -54,6 +54,12 @@
+--- src/XlibInt.c	2010-06-07 15:49:17.815076479 -0700
++++ src/XlibInt.c	2010-06-07 15:49:18.612816160 -0700
+@@ -52,6 +52,12 @@ from The Open Group.
  #include <direct.h>
  #endif
-
+ 
 +/* Xtransint.h is needed for access to an xtrans internal structure.
 + * See the comments in _XFlush for information. This is required for
 + * compatibility between X11R6-xtrans and gnuemacs v18.58.
@@ -38,11 +38,11 @@
 +
  #ifdef XTHREADS
  #include "locking.h"
-
-@@ -653,6 +659,18 @@
-	register char *bufindex;
-	_XExtension *ext;
-
+ 
+@@ -661,6 +667,18 @@ static void _XFlushInt(
+ 	register char *bufindex;
+ 	_XExtension *ext;
+ 
 +	/* Begin gnuemacs v18.58 compatability fix.
 +	 * In x11trans.c, line 2207, in gnuemacs source, the dpy->fd is
 +	 * modified.  This was of no consequence in X11R5, but in X11R6,
@@ -56,5 +56,5 @@
 +	/* End gnuemacs v18.58 compatability fix. */
 +
  	/* This fix resets the bufptr to the front of the buffer so
-	 * additional appends to the bufptr will not corrupt memory. Since
-	 * the server is down, these appends are no-op's anyway but
+ 	 * additional appends to the bufptr will not corrupt memory. Since
+ 	 * the server is down, these appends are no-op's anyway but
--- a/open-src/lib/libX11/6913809.patch	Mon Jun 07 13:50:41 2010 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,23 +0,0 @@
---- modules/om/generic/omGeneric.c.old	Thu Dec 31 23:28:51 2009
-+++ modules/om/generic/omGeneric.c	Sat Jan  3 09:10:58 2010
-@@ -437,11 +437,10 @@
- 		}
- 	    }
- 
--	    if(font_set->vrotate_num > 0) {
-+	    if(font_set->vrotate_num > 0 && font_set->vrotate != NULL) {
- 		font_data = (FontData) font_set->vrotate;
- 		font_data_count = font_set->vrotate_num;
- 		for( ; font_data_count-- ; font_data++) {
--		    if(font_data != NULL)
- 		    if(font_data->font != NULL) {
- 			check_fontset_extents(&overall, &logical_ascent,
- 					      &logical_descent,
-@@ -597,6 +596,7 @@
- 	if((ptr = strchr(ptr, '-'))) {
- 	    *ptr = '\0';
- 	} else {
-+	    field_num++;	/* Count last field */
- 	    break;
- 	}
-     }
--- a/open-src/lib/libX11/Makefile	Mon Jun 07 13:50:41 2010 -0700
+++ b/open-src/lib/libX11/Makefile	Fri Jun 11 06:38:19 2010 -0700
@@ -29,15 +29,14 @@
 MODULE_NAME=libX11
 
 # Version number (used in path names)
-MODULE_VERSION=1.3.2
+MODULE_VERSION=1.3.4
 
 # Checksums for upstream tarball
-TARBALL_MD5  = 001d780829f936e34851ef7cd37b4dfd
-TARBALL_SHA1 = d4b3966d8eeb79514daad3eeae0debf65d16edca
+TARBALL_MD5  = f65c9c7ecbfb64c19dbd7927160d63fd
+TARBALL_SHA1 = 5aab6dc8ed5ec0e86419626715efc3edd34d1db4
 
 # Patches to apply to source after unpacking, in order
 SOURCE_PATCHES = \
-	lintlib.patch,-p1 \
 	1234757.patch \
 	4010755.patch \
 	4614834.patch \
@@ -94,8 +93,7 @@
 	locale-zh_HK.UTF-8.patch \
 	locale-zh_TW.UTF-8.patch \
 	locale-zh_TW.patch \
-	locale-ru-RU.UTF-8.patch \
-	6913809.patch 
+	locale-ru-RU.UTF-8.patch
 
 # Library name (used for specfiles/mapfiles)
 LIBNAME=X11
--- a/open-src/lib/libX11/compose-el_GR.UTF-8.patch	Mon Jun 07 13:50:41 2010 -0700
+++ b/open-src/lib/libX11/compose-el_GR.UTF-8.patch	Fri Jun 11 06:38:19 2010 -0700
@@ -22,11 +22,10 @@
 #
 
 diff -urp -x '*~' -x '*.orig' nls/el_GR.UTF-8/Compose.pre nls/el_GR.UTF-8/Compose.pre
---- nls/el_GR.UTF-8/Compose.pre	Thu Nov 12 21:18:05 2009
-+++ nls/el_GR.UTF-8/Compose.pre	Tue Nov 10 09:03:06 2009
-@@ -1,1982 +1,2694 @@
+--- nls/el_GR.UTF-8/Compose.pre	2010-01-14 17:11:36.000000000 -0800
++++ nls/el_GR.UTF-8/Compose.pre	2010-06-07 15:49:35.703893203 -0700
+@@ -1,1981 +1,2694 @@
  XCOMM
--XCOMM $XFree86$
 +XCOMM Copyright 1996, 2002, Oracle and/or its affiliates. All rights reserved.
  XCOMM
  XCOMM UTF-8 compose sequence definitions for the greek keyboard layout.
@@ -1229,21 +1228,83 @@
 -XCOMM	Vasilis Vasaitis <[email protected]>
 -XCOMM based on the idea and initial implementation by:
 -XCOMM	Alejandros Diamandidis <[email protected]>
+-
+-XCOMM Part 1
 +XCOMM Latin-3 sequences
 +<Multi_key> <C> <asciicircum>	: "\xc4\x88"	Ccircumflex
 +<Multi_key> <asciicircum> <C>	: "\xc4\x88"	Ccircumflex
 +<Multi_key> <C> <greater>	: "\xc4\x88"	Ccircumflex
 +<Multi_key> <greater> <C>	: "\xc4\x88"	Ccircumflex
- 
--XCOMM Part 1
--XCOMM
--XCOMM ISO 8859-1 (Latin-1) multi-key definitions extracted and converted
--XCOMM from the iso8859-1/Compose file.
++
 +<Multi_key> <c> <asciicircum>	: "\xc4\x89"	ccircumflex
 +<Multi_key> <asciicircum> <c>	: "\xc4\x89"	ccircumflex
 +<Multi_key> <c> <greater>	: "\xc4\x89"	ccircumflex
 +<Multi_key> <greater> <c>	: "\xc4\x89"	ccircumflex
- 
++
++<Multi_key> <period> <C>	: "\xc4\x8a"	Cabovedot
++<Multi_key> <C> <period> 	: "\xc4\x8a"	Cabovedot
++
++<Multi_key> <period> <c>	: "\xc4\x8b"	cabovedot
++<Multi_key> <c> <period> 	: "\xc4\x8b"	cabovedot
++
++<Multi_key> <G> <asciicircum>	: "\xc4\x9c"	Gcircumflex
++<Multi_key> <asciicircum> <G>	: "\xc4\x9c"	Gcircumflex
++<Multi_key> <G> <greater>	: "\xc4\x9c"	Gcircumflex
++<Multi_key> <greater> <G>	: "\xc4\x9c"	Gcircumflex
++
++<Multi_key> <g> <asciicircum>	: "\xc4\x9d"	gcircumflex
++<Multi_key> <asciicircum> <g>	: "\xc4\x9d"	gcircumflex
++<Multi_key> <g> <greater>	: "\xc4\x9d"	gcircumflex
++<Multi_key> <greater> <g>	: "\xc4\x9d"	gcircumflex
++
++<Multi_key> <period> <G>	: "\xc4\xa0"	Gabovedot
++<Multi_key> <G> <period> 	: "\xc4\xa0"	Gabovedot
++
++<Multi_key> <period> <g>	: "\xc4\xa1"	gabovedot
++<Multi_key> <g> <period> 	: "\xc4\xa1"	gabovedot
++
++<Multi_key> <H> <asciicircum>	: "\xc4\xa4"	Hcircumflex
++<Multi_key> <asciicircum> <H>	: "\xc4\xa4"	Hcircumflex
++<Multi_key> <H> <greater>	: "\xc4\xa4"	Hcircumflex
++<Multi_key> <greater> <H>	: "\xc4\xa4"	Hcircumflex
++
++<Multi_key> <h> <asciicircum>	: "\xc4\xa5"	hcircumflex
++<Multi_key> <asciicircum> <h>	: "\xc4\xa5"	hcircumflex
++<Multi_key> <h> <greater>	: "\xc4\xa5"	hcircumflex
++<Multi_key> <greater> <h>	: "\xc4\xa5"	hcircumflex
++
++<Multi_key> <J> <asciicircum>	: "\xc4\xb4"	Jcircumflex
++<Multi_key> <asciicircum> <J>	: "\xc4\xb4"	Jcircumflex
++<Multi_key> <J> <greater>	: "\xc4\xb4"	Jcircumflex
++<Multi_key> <greater> <J>	: "\xc4\xb4"	Jcircumflex
++
++<Multi_key> <j> <asciicircum>	: "\xc4\xb5"	jcircumflex
++<Multi_key> <asciicircum> <j>	: "\xc4\xb5"	jcircumflex
++<Multi_key> <j> <greater>	: "\xc4\xb5"	jcircumflex
++<Multi_key> <greater> <j>	: "\xc4\xb5"	jcircumflex
++
++<Multi_key> <S> <asciicircum>	: "\xc5\x9c"	Scircumflex
++<Multi_key> <asciicircum> <S>	: "\xc5\x9c"	Scircumflex
++<Multi_key> <S> <greater>	: "\xc5\x9c"	Scircumflex
++<Multi_key> <greater> <S>	: "\xc5\x9c"	Scircumflex
++
++<Multi_key> <s> <asciicircum>	: "\xc5\x9d"	scircumflex
++<Multi_key> <asciicircum> <s>	: "\xc5\x9d"	scircumflex
++<Multi_key> <s> <greater>	: "\xc5\x9d"	scircumflex
++<Multi_key> <greater> <s>	: "\xc5\x9d"	scircumflex
++
++<Multi_key> <U> <breve>		: "\xc5\xac"	Ubreve
++<Multi_key> <breve> <U>		: "\xc5\xac"	Ubreve
++<Multi_key> <U> <u>		: "\xc5\xac"	Ubreve
++<Multi_key> <u> <U>		: "\xc5\xac"	Ubreve
++
++<Multi_key> <u> <breve>		: "\xc5\xad"	ubreve
++<Multi_key> <breve> <u>		: "\xc5\xad"	ubreve
++<Multi_key> <u> <u>		: "\xc5\xad"	ubreve
+ XCOMM
+-XCOMM ISO 8859-1 (Latin-1) multi-key definitions extracted and converted
+-XCOMM from the iso8859-1/Compose file.
+-
 -XCOMM Special Character
 -<Multi_key> <plus> <plus>		: "#"	numbersign
 -<Multi_key> <apostrophe> <space>	: "'"	apostrophe
@@ -1619,71 +1680,8 @@
 -<Multi_key> <quotedbl> <y>		: "ÿ"	ydiaeresis
 -<Multi_key> <y> <diaeresis>		: "ÿ"	ydiaeresis
 -<Multi_key> <diaeresis> <y>		: "ÿ"	ydiaeresis
-+<Multi_key> <period> <C>	: "\xc4\x8a"	Cabovedot
-+<Multi_key> <C> <period> 	: "\xc4\x8a"	Cabovedot
- 
+-
 -XCOMM Part 2
-+<Multi_key> <period> <c>	: "\xc4\x8b"	cabovedot
-+<Multi_key> <c> <period> 	: "\xc4\x8b"	cabovedot
-+
-+<Multi_key> <G> <asciicircum>	: "\xc4\x9c"	Gcircumflex
-+<Multi_key> <asciicircum> <G>	: "\xc4\x9c"	Gcircumflex
-+<Multi_key> <G> <greater>	: "\xc4\x9c"	Gcircumflex
-+<Multi_key> <greater> <G>	: "\xc4\x9c"	Gcircumflex
-+
-+<Multi_key> <g> <asciicircum>	: "\xc4\x9d"	gcircumflex
-+<Multi_key> <asciicircum> <g>	: "\xc4\x9d"	gcircumflex
-+<Multi_key> <g> <greater>	: "\xc4\x9d"	gcircumflex
-+<Multi_key> <greater> <g>	: "\xc4\x9d"	gcircumflex
-+
-+<Multi_key> <period> <G>	: "\xc4\xa0"	Gabovedot
-+<Multi_key> <G> <period> 	: "\xc4\xa0"	Gabovedot
-+
-+<Multi_key> <period> <g>	: "\xc4\xa1"	gabovedot
-+<Multi_key> <g> <period> 	: "\xc4\xa1"	gabovedot
-+
-+<Multi_key> <H> <asciicircum>	: "\xc4\xa4"	Hcircumflex
-+<Multi_key> <asciicircum> <H>	: "\xc4\xa4"	Hcircumflex
-+<Multi_key> <H> <greater>	: "\xc4\xa4"	Hcircumflex
-+<Multi_key> <greater> <H>	: "\xc4\xa4"	Hcircumflex
-+
-+<Multi_key> <h> <asciicircum>	: "\xc4\xa5"	hcircumflex
-+<Multi_key> <asciicircum> <h>	: "\xc4\xa5"	hcircumflex
-+<Multi_key> <h> <greater>	: "\xc4\xa5"	hcircumflex
-+<Multi_key> <greater> <h>	: "\xc4\xa5"	hcircumflex
-+
-+<Multi_key> <J> <asciicircum>	: "\xc4\xb4"	Jcircumflex
-+<Multi_key> <asciicircum> <J>	: "\xc4\xb4"	Jcircumflex
-+<Multi_key> <J> <greater>	: "\xc4\xb4"	Jcircumflex
-+<Multi_key> <greater> <J>	: "\xc4\xb4"	Jcircumflex
-+
-+<Multi_key> <j> <asciicircum>	: "\xc4\xb5"	jcircumflex
-+<Multi_key> <asciicircum> <j>	: "\xc4\xb5"	jcircumflex
-+<Multi_key> <j> <greater>	: "\xc4\xb5"	jcircumflex
-+<Multi_key> <greater> <j>	: "\xc4\xb5"	jcircumflex
-+
-+<Multi_key> <S> <asciicircum>	: "\xc5\x9c"	Scircumflex
-+<Multi_key> <asciicircum> <S>	: "\xc5\x9c"	Scircumflex
-+<Multi_key> <S> <greater>	: "\xc5\x9c"	Scircumflex
-+<Multi_key> <greater> <S>	: "\xc5\x9c"	Scircumflex
-+
-+<Multi_key> <s> <asciicircum>	: "\xc5\x9d"	scircumflex
-+<Multi_key> <asciicircum> <s>	: "\xc5\x9d"	scircumflex
-+<Multi_key> <s> <greater>	: "\xc5\x9d"	scircumflex
-+<Multi_key> <greater> <s>	: "\xc5\x9d"	scircumflex
-+
-+<Multi_key> <U> <breve>		: "\xc5\xac"	Ubreve
-+<Multi_key> <breve> <U>		: "\xc5\xac"	Ubreve
-+<Multi_key> <U> <u>		: "\xc5\xac"	Ubreve
-+<Multi_key> <u> <U>		: "\xc5\xac"	Ubreve
-+
-+<Multi_key> <u> <breve>		: "\xc5\xad"	ubreve
-+<Multi_key> <breve> <u>		: "\xc5\xad"	ubreve
-+<Multi_key> <u> <u>		: "\xc5\xad"	ubreve
- XCOMM
--XCOMM Greek Extended multi-key and dead key definitions. These have been
--XCOMM machine-generated by a perl script, found at:
--XCOMM	http://hal.csd.auth.gr/~vvas/i18n/xkb/polytonic-compose.pl
 +XCOMM Latin-4 sequences
 +<Multi_key> <N> <N>		: "\xc5\x8a"	ENG
 +<Multi_key> <U> <a>		: "\xc5\xb2"	Uogonek
@@ -1759,7 +1757,278 @@
 +<Multi_key> <underscore> <I> 	: "\xc4\xaa"	Imacron
 +<Multi_key> <i> <underscore>	: "\xc4\xab"	imacron
 +<Multi_key> <underscore> <i> 	: "\xc4\xab"	imacron
- 
++
++XCOMM Ctrl<T> combo
++Ctrl<T> <a> <A>			: "\xc4\x84"	Aogonek
++Ctrl<T> <A> <a> 			: "\xc4\x84"	Aogonek
++Ctrl<T> <a> <a> 			: "\xc4\x85"	aogonek
++Ctrl<T> <C> <acute> 		: "\xc4\x86"	Cacute
++Ctrl<T> <c> <acute> 		: "\xc4\x87"	cacute
++Ctrl<T> <acute> <C>			: "\xc4\x86"	Cacute
++Ctrl<T> <acute> <c>			: "\xc4\x87"	cacute
++Ctrl<T> <acute> <N>			: "\xc5\x83"	Nacute
++Ctrl<T> <N> <acute> 		: "\xc5\x83"	Nacute
++XCOMM Ctrl<T> <minus> <D>		: "\xc3\x90"	ETH
++XCOMM Ctrl<T> <minus> <d>		: "\xc3\xb0"	eth
++Ctrl<T> <slash> <D>			: "\xc4\x90"	Dstroke
++Ctrl<T> <slash> <d>			: "\xc4\x91"	dstroke
++Ctrl<T> <caron> <Z>		: "\xc5\xbd"	Zcaron
++Ctrl<T> <Z> <caron> 	: "\xc5\xbd"	Zcaron
++Ctrl<T> <v> <Z>		: "\xc5\xbd"	Zcaron
++Ctrl<T> <Z> <v>		: "\xc5\xbd"	Zcaron
++Ctrl<T> <caron> <z>		: "\xc5\xbe"	zcaron
++Ctrl<T> <z> <caron> 	: "\xc5\xbe"	zcaron
++Ctrl<T> <z> <v>		: "\xc5\xbe"	zcaron
++Ctrl<T> <v> <z>		: "\xc5\xbe"	zcaron
++Ctrl<T> <G> <u>		: "\xc4\x9e"	Gbreve
++Ctrl<T> <u> <G>		: "\xc4\x9e"	Gbreve
++Ctrl<T> <g> <u>		: "\xc4\x9f"	gbreve
++Ctrl<T> <u> <g>		: "\xc4\x9f"	gbreve
++Ctrl<T> <I> <period>	: "\xc4\xb0"	Iabovedot
++Ctrl<T> <period> <I>	: "\xc4\xb0"	Iabovedot
++Ctrl<T> <i> <period>	: "\xc4\xb1"	idotless
++Ctrl<T> <period> <i>	: "\xc4\xb1"	idotless
++Ctrl<T> <space> <breve>	: "\xcb\x98"	breve
++Ctrl<T> <space> <degree>	: "\xc2\xb0"	degree
++Ctrl<T> <space> <ogonek>	: "\xcb\x9b"	ogonek
++Ctrl<T> <space> <caron>	: "\xcb\x87"	caron
++Ctrl<T> <space> <v>		: "\xcb\x87"	caron
++Ctrl<T> <space> <doubleacute> : "\xcb\x9d"	doubleacute
++Ctrl<T> <diaeresis> <A>	: "\xc3\x84"	Adiaeresis
++Ctrl<T> <A> <diaeresis> 	: "\xc3\x84"	Adiaeresis
++Ctrl<T> <diaeresis> <E>	: "\xc3\x8b" 	Ediaeresis
++Ctrl<T> <E> <diaeresis> 	: "\xc3\x8b" 	Ediaeresis
++Ctrl<T> <diaeresis> <O>	: "\xc3\x96"	Odiaeresis
++Ctrl<T> <O> <diaeresis> 	: "\xc3\x96"	Odiaeresis
++Ctrl<T> <diaeresis> <U>	: "\xc3\x9c"	Udiaeresis
++Ctrl<T> <U> <diaeresis> 	: "\xc3\x9c"	Udiaeresis
++Ctrl<T> <diaeresis> <a>	: "\xc3\xa4"	adiaeresis
++Ctrl<T> <a> <diaeresis> 	: "\xc3\xa4"	adiaeresis
++Ctrl<T> <diaeresis> <e>	: "\xc3\xab"	ediaeresis
++Ctrl<T> <e> <diaeresis> 	: "\xc3\xab"	ediaeresis
++Ctrl<T> <diaeresis> <o>	: "\xc3\xb6"	odiaeresis
++Ctrl<T> <o> <diaeresis> 	: "\xc3\xb6"	odiaeresis
++Ctrl<T> <diaeresis> <u>	: "\xc3\xbc"	udiaeresis
++Ctrl<T> <u> <diaeresis> 	: "\xc3\xbc"	udiaeresis
++Ctrl<T> <acute> <R>		: "\xc5\x94"	Racute
++Ctrl<T> <R> <acute> 	: "\xc5\x94"	Racute
++Ctrl<T> <acute> <S>		: "\xc5\x9a"	Sacute
++Ctrl<T> <S> <acute> 	: "\xc5\x9a"	Sacute
++Ctrl<T> <acute> <Z>		: "\xc4\xbe"	Zacute
++Ctrl<T> <Z> <acute> 	: "\xc4\xbe"	Zacute
++Ctrl<T> <acute> <n>		: "\xc5\x84"	nacute
++Ctrl<T> <n> <acute> 	: "\xc5\x84"	nacute
++Ctrl<T> <acute> <r>		: "\xc5\x95"	racute
++Ctrl<T> <r> <acute> 	: "\xc5\x95"	racute
++Ctrl<T> <acute> <s>		: "\xc5\x9b"	sacute
++Ctrl<T> <s> <acute> 	: "\xc5\x9b"	sacute
++Ctrl<T> <acute> <z>		: "\xc5\xba"	zacute
++Ctrl<T> <z> <acute> 	: "\xc5\xba"	zacute
++Ctrl<T> <0> <O>		: "\xc2\xb0"	degree
++Ctrl<T> <o> <o> 		: "\xc2\xb0"	degree
++Ctrl<T> <comma> <S>		: "\xc5\x9e"	Scedilla
++Ctrl<T> <S> <comma> 	: "\xc5\x9e"	Scedilla
++Ctrl<T> <comma> <T>		: "\xc5\xa2"	Tcedilla
++Ctrl<T> <T> <comma> 	: "\xc5\xa2"	Tcedilla
++Ctrl<T> <comma> <s>		: "\xc5\x9f"	scedilla
++Ctrl<T> <s> <comma> 	: "\xc5\x9f"	scedilla
++Ctrl<T> <comma> <t>		: "\xc5\xa3"	tcedilla
++Ctrl<T> <t> <comma> 	: "\xc5\xa3"	tcedilla
++Ctrl<T> <caron> <C>		: "\xc4\x8c"	Ccaron
++Ctrl<T> <C> <caron> 	: "\xc4\x8c"	Ccaron
++Ctrl<T> <caron> <D>		: "\xc4\x8e"	Dcaron
++Ctrl<T> <D> <caron> 	: "\xc4\x8e"	Dcaron
++Ctrl<T> <caron> <E>		: "\xc4\x9a"	Ecaron
++Ctrl<T> <E> <caron> 	: "\xc4\x9a"	Ecaron
++Ctrl<T> <caron> <L>		: "\xc4\xbd"	Lcaron
++Ctrl<T> <L> <caron> 	: "\xc4\xbd"	Lcaron
++Ctrl<T> <caron> <N>		: "\xc5\x87" 	Ncaron
++Ctrl<T> <N> <caron>		: "\xc5\x87" 	Ncaron
++Ctrl<T> <caron> <R>		: "\xc5\x98"	Rcaron
++Ctrl<T> <R> <caron> 	: "\xc5\x98"	Rcaron
++Ctrl<T> <caron> <S>		: "\xc5\xa0"	Scaron
++Ctrl<T> <S> <caron> 	: "\xc5\xa0"	Scaron
++Ctrl<T> <caron> <T>		: "\xc5\xa4"	Tcaron
++Ctrl<T> <T> <caron> 	: "\xc5\xa4"	Tcaron
++Ctrl<T> <caron> <U>		: "\xc5\xae"	Uring
++Ctrl<T> <U> <caron> 	: "\xc5\xae"	Uring
++Ctrl<T> <caron> <c>		: "\xc4\x8d"	ccaron
++Ctrl<T> <c> <caron> 	: "\xc4\x8d"	ccaron
++Ctrl<T> <caron> <d>		: "\xc4\x8f"	dcaron
++Ctrl<T> <d> <caron> 	: "\xc4\x8f"	dcaron
++Ctrl<T> <caron> <e>		: "\xc4\x9b"	ecaron
++Ctrl<T> <e> <caron> 	: "\xc4\x9b"	ecaron
++Ctrl<T> <caron> <l>		: "\xc4\xbe"	lcaron
++Ctrl<T> <l> <caron> 	: "\xc4\xbe"	lcaron
++Ctrl<T> <caron> <n>		: "\xc5\x88"	ncaron
++Ctrl<T> <n> <caron> 	: "\xc5\x88"	ncaron
++Ctrl<T> <caron> <r>		: "\xc5\x99"	rcaron
++Ctrl<T> <r> <caron> 	: "\xc5\x99"	rcaron
++Ctrl<T> <caron> <s>		: "\xc5\xa1"	scaron
++Ctrl<T> <s> <caron> 	: "\xc5\xa1"	scaron
++Ctrl<T> <caron> <t>		: "\xc5\xa5"	tcaron
++Ctrl<T> <t> <caron> 	: "\xc5\xa5"	tcaron
++Ctrl<T> <caron> <u>		: "\xc5\xaf"	uring
++Ctrl<T> <u> <caron> 	: "\xc5\xaf"	uring
++Ctrl<T> <v> <C>		: "\xc4\x8c"	Ccaron
++Ctrl<T> <C> <v> 		: "\xc4\x8c"	Ccaron
++Ctrl<T> <v> <D>		: "\xc4\x8e"	Dcaron
++Ctrl<T> <D> <v> 		: "\xc4\x8e"	Dcaron
++Ctrl<T> <v> <E>		: "\xc4\x9a"	Ecaron
++Ctrl<T> <E> <v> 		: "\xc4\x9a"	Ecaron
++Ctrl<T> <v> <N>		: "\xc5\x87" 	Ncaron
++Ctrl<T> <N> <v>		: "\xc5\x87" 	Ncaron
++Ctrl<T> <v> <R>		: "\xc5\x98"	Rcaron
++Ctrl<T> <R> <v> 		: "\xc5\x98"	Rcaron
++Ctrl<T> <v> <T>		: "\xc5\xa4"	Tcaron
++Ctrl<T> <T> <v> 		: "\xc5\xa4"	Tcaron
++Ctrl<T> <v> <U>		: "\xc5\xae"	Uring
++Ctrl<T> <U> <v> 		: "\xc5\xae"	Uring
++Ctrl<T> <v> <c>		: "\xc4\x8d"	ccaron
++Ctrl<T> <c> <v> 		: "\xc4\x8d"	ccaron
++Ctrl<T> <v> <d>		: "\xc4\x8f"	dcaron
++Ctrl<T> <d> <v> 		: "\xc4\x8f"	dcaron
++Ctrl<T> <v> <e>		: "\xc4\x9b"	ecaron
++Ctrl<T> <e> <v> 		: "\xc4\x9b"	ecaron
++Ctrl<T> <v> <n>		: "\xc5\x88"	ncaron
++Ctrl<T> <n> <v> 		: "\xc5\x88"	ncaron
++Ctrl<T> <v> <r>		: "\xc5\x99"	rcaron
++Ctrl<T> <r> <v> 		: "\xc5\x99"	rcaron
++Ctrl<T> <v> <t>		: "\xc5\xa5"	tcaron
++Ctrl<T> <t> <v> 		: "\xc5\xa5"	tcaron
++Ctrl<T> <v> <u>		: "\xc5\xaf"	uring
++Ctrl<T> <u> <v> 		: "\xc5\xaf"	uring
++Ctrl<T> <breve> <A>		: "\xc4\x82"	Abreve
++Ctrl<T> <A> <breve> 	: "\xc4\x82"	Abreve
++Ctrl<T> <breve> <a>		: "\xc4\x83"	abreve
++Ctrl<T> <a> <breve> 	: "\xc4\x83"	abreve
++Ctrl<T> <ogonek> <A>	: "\xc4\x84"	Aogonek
++Ctrl<T> <A> <ogonek> 	: "\xc4\x84"	Aogonek
++Ctrl<T> <ogonek> <E>	: "\xc4\x98"	Eogonek
++Ctrl<T> <E> <ogonek> 	: "\xc4\x98"	Eogonek
++Ctrl<T> <ogonek> <a> 	: "\xc4\x85"	aogonek
++Ctrl<T> <a> <ogonek> 	: "\xc4\x85"	aogonek
++Ctrl<T> <ogonek> <e> 	: "\xc4\x99"	eogonek
++Ctrl<T> <e> <ogonek> 	: "\xc4\x99"	eogonek
++Ctrl<T> <E> <a> 		: "\xc4\x98"	Eogonek
++Ctrl<T> <e> <a> 		: "\xc4\x99"	eogonek
++Ctrl<T> <doubleacute> <O>	: "\xc5\x90"	Odoubleacute
++Ctrl<T> <O> <doubleacute> 	: "\xc5\x90"	Odoubleacute
++Ctrl<T> <doubleacute> <U>	: "\xc5\xb0"	Udoubleacute
++Ctrl<T> <U> <doubleacute> 	: "\xc5\xb0"	Udoubleacute
++Ctrl<T> <doubleacute> <o>	: "\xc5\x91"	odoubleacute
++Ctrl<T> <o> <doubleacute> 	: "\xc5\x91"	odoubleacute
++Ctrl<T> <doubleacute> <u>	: "\xc5\xb1"	udoubleacute
++Ctrl<T> <u> <doubleacute> 	: "\xc5\xb1"	udoubleacute
++Ctrl<T> <period> <U>	: "\xc5\xae"	Uring
++Ctrl<T> <U> <period> 	: "\xc5\xae"	Uring
++Ctrl<T> <period> <u>	: "\xc5\xaf"	uring
++Ctrl<T> <u> <period> 	: "\xc5\xaf"	uring
++Ctrl<T> <period> <z>	: "\xc5\xbc"	zabovedot
++Ctrl<T> <z> <period> 	: "\xc5\xbc"	zabovedot
++Ctrl<T> <period> <Z>	: "\xc5\xbb"	Zabovedot
++Ctrl<T> <Z> <period> 	: "\xc5\xbb"	Zabovedot
++Ctrl<T> <a> <space>	: "\xcb\x9b"	ogonek
++Ctrl<T> <u> <space>	: "\xcb\x98"	breve
++Ctrl<T> <v> <space>	: "\xcb\x87"	caron
++Ctrl<T> <quotedbl> <space>	: "\xcb\x9d"	doubleacute
++Ctrl<T> <A> <u>			: "\xc4\x82"	Abreve
++Ctrl<T> <C> <apostrophe>	: "\xc4\x86"	Cacute
++Ctrl<T> <L> <apostrophe>	: "\xc4\xb9"	Lacute
++Ctrl<T> <L> <slash>		: "\xc5\x81"	Lstroke
++Ctrl<T> <L> <greater>		: "\xc4\xbd"	Lcaron
++Ctrl<T> <N> <apostrophe>	: "\xc5\x83"	Nacute
++Ctrl<T> <S> <apostrophe>	: "\xc5\x9a"	Sacute
++Ctrl<T> <R> <apostrophe>	: "\xc5\x94"	Racute
++Ctrl<T> <U> <asterisk>		: "\xc5\xae"	Uring
++Ctrl<T> <Z> <apostrophe>	: "\xc5\xb9"	Zacute
++Ctrl<T> <a> <u>			: "\xc4\x83"	abreve
++Ctrl<T> <c> <apostrophe>	: "\xc4\x87"	cacute
++Ctrl<T> <l> <apostrophe>	: "\xc4\xba"	lacute
++Ctrl<T> <l> <slash>		: "\xc5\x82"	lstroke
++Ctrl<T> <l> <greater>		: "\xc4\xbe"	lcaron
++Ctrl<T> <n> <apostrophe>	: "\xc5\x84"	nacute
++Ctrl<T> <s> <apostrophe>	: "\xc5\x9b"	sacute
++Ctrl<T> <r> <apostrophe>	: "\xc5\x95"	racute
++Ctrl<T> <u> <asterisk>		: "\xc5\xaf"	uring
++Ctrl<T> <z> <apostrophe>	: "\xc5\xba"	zacute
++XCOMM
++XCOMM Latin-3 sequences
++Ctrl<T> <C> <asciicircum>	: "\xc4\x88"	Ccircumflex
++Ctrl<T> <asciicircum> <C>	: "\xc4\x88"	Ccircumflex
++Ctrl<T> <C> <greater>		: "\xc4\x88"	Ccircumflex
++Ctrl<T> <greater> <C>		: "\xc4\x88"	Ccircumflex
++
++Ctrl<T> <c> <asciicircum>	: "\xc4\x89"	ccircumflex
++Ctrl<T> <asciicircum> <c>	: "\xc4\x89"	ccircumflex
++Ctrl<T> <c> <greater>		: "\xc4\x89"	ccircumflex
++Ctrl<T> <greater> <c>		: "\xc4\x89"	ccircumflex
++
++Ctrl<T> <period> <C>		: "\xc4\x8a"	Cabovedot
++Ctrl<T> <C> <period> 		: "\xc4\x8a"	Cabovedot
++
++Ctrl<T> <period> <c>		: "\xc4\x8b"	cabovedot
++Ctrl<T> <c> <period> 		: "\xc4\x8b"	cabovedot
++
++Ctrl<T> <G> <asciicircum>	: "\xc4\x9c"	Gcircumflex
++Ctrl<T> <asciicircum> <G>	: "\xc4\x9c"	Gcircumflex
++Ctrl<T> <G> <greater>		: "\xc4\x9c"	Gcircumflex
++Ctrl<T> <greater> <G>		: "\xc4\x9c"	Gcircumflex
++
++Ctrl<T> <g> <asciicircum>	: "\xc4\x9d"	gcircumflex
++Ctrl<T> <asciicircum> <g>	: "\xc4\x9d"	gcircumflex
++Ctrl<T> <g> <greater>		: "\xc4\x9d"	gcircumflex
++Ctrl<T> <greater> <g>		: "\xc4\x9d"	gcircumflex
++
++Ctrl<T> <period> <G>		: "\xc4\xa0"	Gabovedot
++Ctrl<T> <G> <period> 		: "\xc4\xa0"	Gabovedot
++
++Ctrl<T> <period> <g>		: "\xc4\xa1"	gabovedot
++Ctrl<T> <g> <period> 		: "\xc4\xa1"	gabovedot
++
++Ctrl<T> <H> <asciicircum>	: "\xc4\xa4"	Hcircumflex
++Ctrl<T> <asciicircum> <H>	: "\xc4\xa4"	Hcircumflex
++Ctrl<T> <H> <greater>		: "\xc4\xa4"	Hcircumflex
++Ctrl<T> <greater> <H>		: "\xc4\xa4"	Hcircumflex
++
++Ctrl<T> <h> <asciicircum>	: "\xc4\xa5"	hcircumflex
++Ctrl<T> <asciicircum> <h>	: "\xc4\xa5"	hcircumflex
++Ctrl<T> <h> <greater>		: "\xc4\xa5"	hcircumflex
++Ctrl<T> <greater> <h>		: "\xc4\xa5"	hcircumflex
++
++Ctrl<T> <J> <asciicircum>	: "\xc4\xb4"	Jcircumflex
++Ctrl<T> <asciicircum> <J>	: "\xc4\xb4"	Jcircumflex
++Ctrl<T> <J> <greater>		: "\xc4\xb4"	Jcircumflex
++Ctrl<T> <greater> <J>		: "\xc4\xb4"	Jcircumflex
++
++Ctrl<T> <j> <asciicircum>	: "\xc4\xb5"	jcircumflex
++Ctrl<T> <asciicircum> <j>	: "\xc4\xb5"	jcircumflex
++Ctrl<T> <j> <greater>		: "\xc4\xb5"	jcircumflex
++Ctrl<T> <greater> <j>		: "\xc4\xb5"	jcircumflex
++
++Ctrl<T> <S> <asciicircum>	: "\xc5\x9c"	Scircumflex
++Ctrl<T> <asciicircum> <S>	: "\xc5\x9c"	Scircumflex
++Ctrl<T> <S> <greater>		: "\xc5\x9c"	Scircumflex
++Ctrl<T> <greater> <S>		: "\xc5\x9c"	Scircumflex
++
++Ctrl<T> <s> <asciicircum>	: "\xc5\x9d"	scircumflex
++Ctrl<T> <asciicircum> <s>	: "\xc5\x9d"	scircumflex
++Ctrl<T> <s> <greater>		: "\xc5\x9d"	scircumflex
++Ctrl<T> <greater> <s>		: "\xc5\x9d"	scircumflex
++
++Ctrl<T> <U> <breve>		: "\xc5\xac"	Ubreve
++Ctrl<T> <breve> <U>		: "\xc5\xac"	Ubreve
++Ctrl<T> <U> <u>			: "\xc5\xac"	Ubreve
++Ctrl<T> <u> <U>			: "\xc5\xac"	Ubreve
++
++Ctrl<T> <u> <breve>		: "\xc5\xad"	ubreve
++Ctrl<T> <breve> <u>		: "\xc5\xad"	ubreve
++Ctrl<T> <u> <u>			: "\xc5\xad"	ubreve
+ XCOMM
+-XCOMM Greek Extended multi-key and dead key definitions. These have been
+-XCOMM machine-generated by a perl script, found at:
+-XCOMM	http://hal.csd.auth.gr/~vvas/i18n/xkb/polytonic-compose.pl
+-
 -<Multi_key> <greater> <Greek_alpha>                     : "ἀ"  U1f00
 -<dead_horn> <Greek_alpha>                               : "ἀ"  U1f00
 -<dead_psili> <Greek_alpha>                               : "ἀ"  U1f00
@@ -3167,276 +3436,6 @@
 -<dead_iota> <underscore>                                : "ι"  U1fbe
 -<dead_iota> <space>                                     : "ͺ"  U037a
 -<dead_iota> <dead_iota>                                 : "ͺ"  U037a
-+XCOMM Ctrl<T> combo
-+Ctrl<T> <a> <A>			: "\xc4\x84"	Aogonek
-+Ctrl<T> <A> <a> 			: "\xc4\x84"	Aogonek
-+Ctrl<T> <a> <a> 			: "\xc4\x85"	aogonek
-+Ctrl<T> <C> <acute> 		: "\xc4\x86"	Cacute
-+Ctrl<T> <c> <acute> 		: "\xc4\x87"	cacute
-+Ctrl<T> <acute> <C>			: "\xc4\x86"	Cacute
-+Ctrl<T> <acute> <c>			: "\xc4\x87"	cacute
-+Ctrl<T> <acute> <N>			: "\xc5\x83"	Nacute
-+Ctrl<T> <N> <acute> 		: "\xc5\x83"	Nacute
-+XCOMM Ctrl<T> <minus> <D>		: "\xc3\x90"	ETH
-+XCOMM Ctrl<T> <minus> <d>		: "\xc3\xb0"	eth
-+Ctrl<T> <slash> <D>			: "\xc4\x90"	Dstroke
-+Ctrl<T> <slash> <d>			: "\xc4\x91"	dstroke
-+Ctrl<T> <caron> <Z>		: "\xc5\xbd"	Zcaron
-+Ctrl<T> <Z> <caron> 	: "\xc5\xbd"	Zcaron
-+Ctrl<T> <v> <Z>		: "\xc5\xbd"	Zcaron
-+Ctrl<T> <Z> <v>		: "\xc5\xbd"	Zcaron
-+Ctrl<T> <caron> <z>		: "\xc5\xbe"	zcaron
-+Ctrl<T> <z> <caron> 	: "\xc5\xbe"	zcaron
-+Ctrl<T> <z> <v>		: "\xc5\xbe"	zcaron
-+Ctrl<T> <v> <z>		: "\xc5\xbe"	zcaron
-+Ctrl<T> <G> <u>		: "\xc4\x9e"	Gbreve
-+Ctrl<T> <u> <G>		: "\xc4\x9e"	Gbreve
-+Ctrl<T> <g> <u>		: "\xc4\x9f"	gbreve
-+Ctrl<T> <u> <g>		: "\xc4\x9f"	gbreve
-+Ctrl<T> <I> <period>	: "\xc4\xb0"	Iabovedot
-+Ctrl<T> <period> <I>	: "\xc4\xb0"	Iabovedot
-+Ctrl<T> <i> <period>	: "\xc4\xb1"	idotless
-+Ctrl<T> <period> <i>	: "\xc4\xb1"	idotless
-+Ctrl<T> <space> <breve>	: "\xcb\x98"	breve
-+Ctrl<T> <space> <degree>	: "\xc2\xb0"	degree
-+Ctrl<T> <space> <ogonek>	: "\xcb\x9b"	ogonek
-+Ctrl<T> <space> <caron>	: "\xcb\x87"	caron
-+Ctrl<T> <space> <v>		: "\xcb\x87"	caron
-+Ctrl<T> <space> <doubleacute> : "\xcb\x9d"	doubleacute
-+Ctrl<T> <diaeresis> <A>	: "\xc3\x84"	Adiaeresis
-+Ctrl<T> <A> <diaeresis> 	: "\xc3\x84"	Adiaeresis
-+Ctrl<T> <diaeresis> <E>	: "\xc3\x8b" 	Ediaeresis
-+Ctrl<T> <E> <diaeresis> 	: "\xc3\x8b" 	Ediaeresis
-+Ctrl<T> <diaeresis> <O>	: "\xc3\x96"	Odiaeresis
-+Ctrl<T> <O> <diaeresis> 	: "\xc3\x96"	Odiaeresis
-+Ctrl<T> <diaeresis> <U>	: "\xc3\x9c"	Udiaeresis
-+Ctrl<T> <U> <diaeresis> 	: "\xc3\x9c"	Udiaeresis
-+Ctrl<T> <diaeresis> <a>	: "\xc3\xa4"	adiaeresis
-+Ctrl<T> <a> <diaeresis> 	: "\xc3\xa4"	adiaeresis
-+Ctrl<T> <diaeresis> <e>	: "\xc3\xab"	ediaeresis
-+Ctrl<T> <e> <diaeresis> 	: "\xc3\xab"	ediaeresis
-+Ctrl<T> <diaeresis> <o>	: "\xc3\xb6"	odiaeresis
-+Ctrl<T> <o> <diaeresis> 	: "\xc3\xb6"	odiaeresis
-+Ctrl<T> <diaeresis> <u>	: "\xc3\xbc"	udiaeresis
-+Ctrl<T> <u> <diaeresis> 	: "\xc3\xbc"	udiaeresis
-+Ctrl<T> <acute> <R>		: "\xc5\x94"	Racute
-+Ctrl<T> <R> <acute> 	: "\xc5\x94"	Racute
-+Ctrl<T> <acute> <S>		: "\xc5\x9a"	Sacute
-+Ctrl<T> <S> <acute> 	: "\xc5\x9a"	Sacute
-+Ctrl<T> <acute> <Z>		: "\xc4\xbe"	Zacute
-+Ctrl<T> <Z> <acute> 	: "\xc4\xbe"	Zacute
-+Ctrl<T> <acute> <n>		: "\xc5\x84"	nacute
-+Ctrl<T> <n> <acute> 	: "\xc5\x84"	nacute
-+Ctrl<T> <acute> <r>		: "\xc5\x95"	racute
-+Ctrl<T> <r> <acute> 	: "\xc5\x95"	racute
-+Ctrl<T> <acute> <s>		: "\xc5\x9b"	sacute
-+Ctrl<T> <s> <acute> 	: "\xc5\x9b"	sacute
-+Ctrl<T> <acute> <z>		: "\xc5\xba"	zacute
-+Ctrl<T> <z> <acute> 	: "\xc5\xba"	zacute
-+Ctrl<T> <0> <O>		: "\xc2\xb0"	degree
-+Ctrl<T> <o> <o> 		: "\xc2\xb0"	degree
-+Ctrl<T> <comma> <S>		: "\xc5\x9e"	Scedilla
-+Ctrl<T> <S> <comma> 	: "\xc5\x9e"	Scedilla
-+Ctrl<T> <comma> <T>		: "\xc5\xa2"	Tcedilla
-+Ctrl<T> <T> <comma> 	: "\xc5\xa2"	Tcedilla
-+Ctrl<T> <comma> <s>		: "\xc5\x9f"	scedilla
-+Ctrl<T> <s> <comma> 	: "\xc5\x9f"	scedilla
-+Ctrl<T> <comma> <t>		: "\xc5\xa3"	tcedilla
-+Ctrl<T> <t> <comma> 	: "\xc5\xa3"	tcedilla
-+Ctrl<T> <caron> <C>		: "\xc4\x8c"	Ccaron
-+Ctrl<T> <C> <caron> 	: "\xc4\x8c"	Ccaron
-+Ctrl<T> <caron> <D>		: "\xc4\x8e"	Dcaron
-+Ctrl<T> <D> <caron> 	: "\xc4\x8e"	Dcaron
-+Ctrl<T> <caron> <E>		: "\xc4\x9a"	Ecaron
-+Ctrl<T> <E> <caron> 	: "\xc4\x9a"	Ecaron
-+Ctrl<T> <caron> <L>		: "\xc4\xbd"	Lcaron
-+Ctrl<T> <L> <caron> 	: "\xc4\xbd"	Lcaron
-+Ctrl<T> <caron> <N>		: "\xc5\x87" 	Ncaron
-+Ctrl<T> <N> <caron>		: "\xc5\x87" 	Ncaron
-+Ctrl<T> <caron> <R>		: "\xc5\x98"	Rcaron
-+Ctrl<T> <R> <caron> 	: "\xc5\x98"	Rcaron
-+Ctrl<T> <caron> <S>		: "\xc5\xa0"	Scaron
-+Ctrl<T> <S> <caron> 	: "\xc5\xa0"	Scaron
-+Ctrl<T> <caron> <T>		: "\xc5\xa4"	Tcaron
-+Ctrl<T> <T> <caron> 	: "\xc5\xa4"	Tcaron
-+Ctrl<T> <caron> <U>		: "\xc5\xae"	Uring
-+Ctrl<T> <U> <caron> 	: "\xc5\xae"	Uring
-+Ctrl<T> <caron> <c>		: "\xc4\x8d"	ccaron
-+Ctrl<T> <c> <caron> 	: "\xc4\x8d"	ccaron
-+Ctrl<T> <caron> <d>		: "\xc4\x8f"	dcaron
-+Ctrl<T> <d> <caron> 	: "\xc4\x8f"	dcaron
-+Ctrl<T> <caron> <e>		: "\xc4\x9b"	ecaron
-+Ctrl<T> <e> <caron> 	: "\xc4\x9b"	ecaron
-+Ctrl<T> <caron> <l>		: "\xc4\xbe"	lcaron
-+Ctrl<T> <l> <caron> 	: "\xc4\xbe"	lcaron
-+Ctrl<T> <caron> <n>		: "\xc5\x88"	ncaron
-+Ctrl<T> <n> <caron> 	: "\xc5\x88"	ncaron
-+Ctrl<T> <caron> <r>		: "\xc5\x99"	rcaron
-+Ctrl<T> <r> <caron> 	: "\xc5\x99"	rcaron
-+Ctrl<T> <caron> <s>		: "\xc5\xa1"	scaron
-+Ctrl<T> <s> <caron> 	: "\xc5\xa1"	scaron
-+Ctrl<T> <caron> <t>		: "\xc5\xa5"	tcaron
-+Ctrl<T> <t> <caron> 	: "\xc5\xa5"	tcaron
-+Ctrl<T> <caron> <u>		: "\xc5\xaf"	uring
-+Ctrl<T> <u> <caron> 	: "\xc5\xaf"	uring
-+Ctrl<T> <v> <C>		: "\xc4\x8c"	Ccaron
-+Ctrl<T> <C> <v> 		: "\xc4\x8c"	Ccaron
-+Ctrl<T> <v> <D>		: "\xc4\x8e"	Dcaron
-+Ctrl<T> <D> <v> 		: "\xc4\x8e"	Dcaron
-+Ctrl<T> <v> <E>		: "\xc4\x9a"	Ecaron
-+Ctrl<T> <E> <v> 		: "\xc4\x9a"	Ecaron
-+Ctrl<T> <v> <N>		: "\xc5\x87" 	Ncaron
-+Ctrl<T> <N> <v>		: "\xc5\x87" 	Ncaron
-+Ctrl<T> <v> <R>		: "\xc5\x98"	Rcaron
-+Ctrl<T> <R> <v> 		: "\xc5\x98"	Rcaron
-+Ctrl<T> <v> <T>		: "\xc5\xa4"	Tcaron
-+Ctrl<T> <T> <v> 		: "\xc5\xa4"	Tcaron
-+Ctrl<T> <v> <U>		: "\xc5\xae"	Uring
-+Ctrl<T> <U> <v> 		: "\xc5\xae"	Uring
-+Ctrl<T> <v> <c>		: "\xc4\x8d"	ccaron
-+Ctrl<T> <c> <v> 		: "\xc4\x8d"	ccaron
-+Ctrl<T> <v> <d>		: "\xc4\x8f"	dcaron
-+Ctrl<T> <d> <v> 		: "\xc4\x8f"	dcaron
-+Ctrl<T> <v> <e>		: "\xc4\x9b"	ecaron
-+Ctrl<T> <e> <v> 		: "\xc4\x9b"	ecaron
-+Ctrl<T> <v> <n>		: "\xc5\x88"	ncaron
-+Ctrl<T> <n> <v> 		: "\xc5\x88"	ncaron
-+Ctrl<T> <v> <r>		: "\xc5\x99"	rcaron
-+Ctrl<T> <r> <v> 		: "\xc5\x99"	rcaron
-+Ctrl<T> <v> <t>		: "\xc5\xa5"	tcaron
-+Ctrl<T> <t> <v> 		: "\xc5\xa5"	tcaron
-+Ctrl<T> <v> <u>		: "\xc5\xaf"	uring
-+Ctrl<T> <u> <v> 		: "\xc5\xaf"	uring
-+Ctrl<T> <breve> <A>		: "\xc4\x82"	Abreve
-+Ctrl<T> <A> <breve> 	: "\xc4\x82"	Abreve
-+Ctrl<T> <breve> <a>		: "\xc4\x83"	abreve
-+Ctrl<T> <a> <breve> 	: "\xc4\x83"	abreve
-+Ctrl<T> <ogonek> <A>	: "\xc4\x84"	Aogonek
-+Ctrl<T> <A> <ogonek> 	: "\xc4\x84"	Aogonek
-+Ctrl<T> <ogonek> <E>	: "\xc4\x98"	Eogonek
-+Ctrl<T> <E> <ogonek> 	: "\xc4\x98"	Eogonek
-+Ctrl<T> <ogonek> <a> 	: "\xc4\x85"	aogonek
-+Ctrl<T> <a> <ogonek> 	: "\xc4\x85"	aogonek
-+Ctrl<T> <ogonek> <e> 	: "\xc4\x99"	eogonek
-+Ctrl<T> <e> <ogonek> 	: "\xc4\x99"	eogonek
-+Ctrl<T> <E> <a> 		: "\xc4\x98"	Eogonek
-+Ctrl<T> <e> <a> 		: "\xc4\x99"	eogonek
-+Ctrl<T> <doubleacute> <O>	: "\xc5\x90"	Odoubleacute
-+Ctrl<T> <O> <doubleacute> 	: "\xc5\x90"	Odoubleacute
-+Ctrl<T> <doubleacute> <U>	: "\xc5\xb0"	Udoubleacute
-+Ctrl<T> <U> <doubleacute> 	: "\xc5\xb0"	Udoubleacute
-+Ctrl<T> <doubleacute> <o>	: "\xc5\x91"	odoubleacute
-+Ctrl<T> <o> <doubleacute> 	: "\xc5\x91"	odoubleacute
-+Ctrl<T> <doubleacute> <u>	: "\xc5\xb1"	udoubleacute
-+Ctrl<T> <u> <doubleacute> 	: "\xc5\xb1"	udoubleacute
-+Ctrl<T> <period> <U>	: "\xc5\xae"	Uring
-+Ctrl<T> <U> <period> 	: "\xc5\xae"	Uring
-+Ctrl<T> <period> <u>	: "\xc5\xaf"	uring
-+Ctrl<T> <u> <period> 	: "\xc5\xaf"	uring
-+Ctrl<T> <period> <z>	: "\xc5\xbc"	zabovedot
-+Ctrl<T> <z> <period> 	: "\xc5\xbc"	zabovedot
-+Ctrl<T> <period> <Z>	: "\xc5\xbb"	Zabovedot
-+Ctrl<T> <Z> <period> 	: "\xc5\xbb"	Zabovedot
-+Ctrl<T> <a> <space>	: "\xcb\x9b"	ogonek
-+Ctrl<T> <u> <space>	: "\xcb\x98"	breve
-+Ctrl<T> <v> <space>	: "\xcb\x87"	caron
-+Ctrl<T> <quotedbl> <space>	: "\xcb\x9d"	doubleacute
-+Ctrl<T> <A> <u>			: "\xc4\x82"	Abreve
-+Ctrl<T> <C> <apostrophe>	: "\xc4\x86"	Cacute
-+Ctrl<T> <L> <apostrophe>	: "\xc4\xb9"	Lacute
-+Ctrl<T> <L> <slash>		: "\xc5\x81"	Lstroke
-+Ctrl<T> <L> <greater>		: "\xc4\xbd"	Lcaron
-+Ctrl<T> <N> <apostrophe>	: "\xc5\x83"	Nacute
-+Ctrl<T> <S> <apostrophe>	: "\xc5\x9a"	Sacute
-+Ctrl<T> <R> <apostrophe>	: "\xc5\x94"	Racute
-+Ctrl<T> <U> <asterisk>		: "\xc5\xae"	Uring
-+Ctrl<T> <Z> <apostrophe>	: "\xc5\xb9"	Zacute
-+Ctrl<T> <a> <u>			: "\xc4\x83"	abreve
-+Ctrl<T> <c> <apostrophe>	: "\xc4\x87"	cacute
-+Ctrl<T> <l> <apostrophe>	: "\xc4\xba"	lacute
-+Ctrl<T> <l> <slash>		: "\xc5\x82"	lstroke
-+Ctrl<T> <l> <greater>		: "\xc4\xbe"	lcaron
-+Ctrl<T> <n> <apostrophe>	: "\xc5\x84"	nacute
-+Ctrl<T> <s> <apostrophe>	: "\xc5\x9b"	sacute
-+Ctrl<T> <r> <apostrophe>	: "\xc5\x95"	racute
-+Ctrl<T> <u> <asterisk>		: "\xc5\xaf"	uring
-+Ctrl<T> <z> <apostrophe>	: "\xc5\xba"	zacute
-+XCOMM
-+XCOMM Latin-3 sequences
-+Ctrl<T> <C> <asciicircum>	: "\xc4\x88"	Ccircumflex
-+Ctrl<T> <asciicircum> <C>	: "\xc4\x88"	Ccircumflex
-+Ctrl<T> <C> <greater>		: "\xc4\x88"	Ccircumflex
-+Ctrl<T> <greater> <C>		: "\xc4\x88"	Ccircumflex
- 
--XCOMM Part 3
-+Ctrl<T> <c> <asciicircum>	: "\xc4\x89"	ccircumflex
-+Ctrl<T> <asciicircum> <c>	: "\xc4\x89"	ccircumflex
-+Ctrl<T> <c> <greater>		: "\xc4\x89"	ccircumflex
-+Ctrl<T> <greater> <c>		: "\xc4\x89"	ccircumflex
-+
-+Ctrl<T> <period> <C>		: "\xc4\x8a"	Cabovedot
-+Ctrl<T> <C> <period> 		: "\xc4\x8a"	Cabovedot
-+
-+Ctrl<T> <period> <c>		: "\xc4\x8b"	cabovedot
-+Ctrl<T> <c> <period> 		: "\xc4\x8b"	cabovedot
-+
-+Ctrl<T> <G> <asciicircum>	: "\xc4\x9c"	Gcircumflex
-+Ctrl<T> <asciicircum> <G>	: "\xc4\x9c"	Gcircumflex
-+Ctrl<T> <G> <greater>		: "\xc4\x9c"	Gcircumflex
-+Ctrl<T> <greater> <G>		: "\xc4\x9c"	Gcircumflex
-+
-+Ctrl<T> <g> <asciicircum>	: "\xc4\x9d"	gcircumflex
-+Ctrl<T> <asciicircum> <g>	: "\xc4\x9d"	gcircumflex
-+Ctrl<T> <g> <greater>		: "\xc4\x9d"	gcircumflex
-+Ctrl<T> <greater> <g>		: "\xc4\x9d"	gcircumflex
-+
-+Ctrl<T> <period> <G>		: "\xc4\xa0"	Gabovedot
-+Ctrl<T> <G> <period> 		: "\xc4\xa0"	Gabovedot
-+
-+Ctrl<T> <period> <g>		: "\xc4\xa1"	gabovedot
-+Ctrl<T> <g> <period> 		: "\xc4\xa1"	gabovedot
-+
-+Ctrl<T> <H> <asciicircum>	: "\xc4\xa4"	Hcircumflex
-+Ctrl<T> <asciicircum> <H>	: "\xc4\xa4"	Hcircumflex
-+Ctrl<T> <H> <greater>		: "\xc4\xa4"	Hcircumflex
-+Ctrl<T> <greater> <H>		: "\xc4\xa4"	Hcircumflex
-+
-+Ctrl<T> <h> <asciicircum>	: "\xc4\xa5"	hcircumflex
-+Ctrl<T> <asciicircum> <h>	: "\xc4\xa5"	hcircumflex
-+Ctrl<T> <h> <greater>		: "\xc4\xa5"	hcircumflex
-+Ctrl<T> <greater> <h>		: "\xc4\xa5"	hcircumflex
-+
-+Ctrl<T> <J> <asciicircum>	: "\xc4\xb4"	Jcircumflex
-+Ctrl<T> <asciicircum> <J>	: "\xc4\xb4"	Jcircumflex
-+Ctrl<T> <J> <greater>		: "\xc4\xb4"	Jcircumflex
-+Ctrl<T> <greater> <J>		: "\xc4\xb4"	Jcircumflex
-+
-+Ctrl<T> <j> <asciicircum>	: "\xc4\xb5"	jcircumflex
-+Ctrl<T> <asciicircum> <j>	: "\xc4\xb5"	jcircumflex
-+Ctrl<T> <j> <greater>		: "\xc4\xb5"	jcircumflex
-+Ctrl<T> <greater> <j>		: "\xc4\xb5"	jcircumflex
-+
-+Ctrl<T> <S> <asciicircum>	: "\xc5\x9c"	Scircumflex
-+Ctrl<T> <asciicircum> <S>	: "\xc5\x9c"	Scircumflex
-+Ctrl<T> <S> <greater>		: "\xc5\x9c"	Scircumflex
-+Ctrl<T> <greater> <S>		: "\xc5\x9c"	Scircumflex
-+
-+Ctrl<T> <s> <asciicircum>	: "\xc5\x9d"	scircumflex
-+Ctrl<T> <asciicircum> <s>	: "\xc5\x9d"	scircumflex
-+Ctrl<T> <s> <greater>		: "\xc5\x9d"	scircumflex
-+Ctrl<T> <greater> <s>		: "\xc5\x9d"	scircumflex
-+
-+Ctrl<T> <U> <breve>		: "\xc5\xac"	Ubreve
-+Ctrl<T> <breve> <U>		: "\xc5\xac"	Ubreve
-+Ctrl<T> <U> <u>			: "\xc5\xac"	Ubreve
-+Ctrl<T> <u> <U>			: "\xc5\xac"	Ubreve
-+
-+Ctrl<T> <u> <breve>		: "\xc5\xad"	ubreve
-+Ctrl<T> <breve> <u>		: "\xc5\xad"	ubreve
-+Ctrl<T> <u> <u>			: "\xc5\xad"	ubreve
- XCOMM
--XCOMM ISO 8859-7 (Greek) multi-key and dead key definitions extracted and
--XCOMM converted from the iso8859-7/Compose file.
 +XCOMM Latin-4 sequences
 +Ctrl<T> <N> <N>		: "\xc5\x8a"	ENG
 +Ctrl<T> <U> <a>		: "\xc5\xb2"	Uogonek
@@ -3622,25 +3621,7 @@
 +<SunFA_Tilde> <o>		: "\xc3\xb5"
 +<SunFA_Tilde> <space>		: "\x7e"
 +END_STATE
- 
--<Multi_key> <Greek_ALPHA> <apostrophe>	: "Ά" Greek_ALPHAaccent
--<Multi_key> <apostrophe> <Greek_ALPHA>	: "Ά" Greek_ALPHAaccent
--<Multi_key> <Greek_EPSILON> <apostrophe>: "Έ" Greek_EPSILONaccent
--<Multi_key> <apostrophe> <Greek_EPSILON>: "Έ" Greek_EPSILONaccent
--<Multi_key> <Greek_ETA> <apostrophe>	: "Ή" Greek_ETAaccent
--<Multi_key> <apostrophe> <Greek_ETA>	: "Ή" Greek_ETAaccent
--<Multi_key> <Greek_IOTA> <apostrophe>	: "Ί" Greek_IOTAaccent
--<Multi_key> <apostrophe> <Greek_IOTA>	: "Ί" Greek_IOTAaccent
--<Multi_key> <Greek_OMICRON> <apostrophe>: "Ό" Greek_OMICRONaccent
--<Multi_key> <apostrophe> <Greek_OMICRON>: "Ό" Greek_OMICRONaccent
--<Multi_key> <Greek_UPSILON> <apostrophe>: "Ύ" Greek_UPSILONaccent
--<Multi_key> <apostrophe> <Greek_UPSILON>: "Ύ" Greek_UPSILONaccent
--<Multi_key> <Greek_OMEGA> <apostrophe>	: "Ώ" Greek_OMEGAaccent
--<Multi_key> <apostrophe> <Greek_OMEGA>	: "Ώ" Greek_OMEGAaccent
--<Multi_key> <Greek_IOTA> <quotedbl>	: "Ϊ" Greek_IOTAdieresis
--<Multi_key> <quotedbl> <Greek_IOTA>	: "Ϊ" Greek_IOTAdieresis
--<Multi_key> <Greek_UPSILON> <quotedbl>	: "Ϋ" Greek_UPSILONdieresis
--<Multi_key> <quotedbl> <Greek_UPSILON>	: "Ϋ" Greek_UPSILONdieresis
++
 +STATE "[ Cyrillic ]"
 +Ctrl<space>		: SWITCH_STATE_TO "[ English/European ]"
 +<Multi_key> <g> <g>	: SWITCH_STATE_TO "[ Greek ]"
@@ -3657,25 +3638,7 @@
 +<Multi_key> <s>	<c>	: SWITCH_STATE_TO "[ S-Chinese ]"
 +<Multi_key> <t>	<c>	: SWITCH_STATE_TO "[ T-Chinese ]"
 +<Multi_key> <h>	<k>	: SWITCH_STATE_TO "[ T-Chinese (Hong Kong) ]"
- 
--<Multi_key> <Greek_alpha> <apostrophe>	: "ά" Greek_alphaaccent
--<Multi_key> <apostrophe> <Greek_alpha>	: "ά" Greek_alphaaccent
--<Multi_key> <Greek_epsilon> <apostrophe>: "έ" Greek_epsilonaccent
--<Multi_key> <apostrophe> <Greek_epsilon>: "έ" Greek_epsilonaccent
--<Multi_key> <Greek_eta> <apostrophe>	: "ή" Greek_etaaccent
--<Multi_key> <apostrophe> <Greek_eta>	: "ή" Greek_etaaccent
--<Multi_key> <Greek_iota> <apostrophe>	: "ί" Greek_iotaaccent
--<Multi_key> <apostrophe> <Greek_iota>	: "ί" Greek_iotaaccent
--<Multi_key> <Greek_omicron> <apostrophe>: "ό" Greek_omicronaccent
--<Multi_key> <apostrophe> <Greek_omicron>: "ό" Greek_omicronaccent
--<Multi_key> <Greek_upsilon> <apostrophe>: "ύ" Greek_upsilonaccent
--<Multi_key> <apostrophe> <Greek_upsilon>: "ύ" Greek_upsilonaccent
--<Multi_key> <Greek_omega> <apostrophe>	: "ώ" Greek_omegaaccent
--<Multi_key> <apostrophe> <Greek_omega>	: "ώ" Greek_omegaaccent
--<Multi_key> <Greek_iota> <quotedbl>	: "ϊ" Greek_iotadieresis
--<Multi_key> <quotedbl> <Greek_iota>	: "ϊ" Greek_iotadieresis
--<Multi_key> <Greek_upsilon> <quotedbl>	: "ϋ" Greek_upsilondieresis
--<Multi_key> <quotedbl> <Greek_upsilon>	: "ϋ" Greek_upsilondieresis
++
 +Ctrl<T> <g> <g>		: SWITCH_STATE_TO "[ Greek ]"
 +Ctrl<T> <t> <t>		: SWITCH_STATE_TO "[ Thai ]"
 +Ctrl<T> <a> <r>		: SWITCH_STATE_TO "[ Arabic ]"
@@ -3690,13 +3653,7 @@
 +Ctrl<T> <s> <c>		: SWITCH_STATE_TO "[ S-Chinese ]"
 +Ctrl<T> <t> <c>		: SWITCH_STATE_TO "[ T-Chinese ]"
 +Ctrl<T> <h> <k>		: SWITCH_STATE_TO "[ T-Chinese (Hong Kong) ]"
- 
--<Multi_key> <apostrophe> <quotedbl> <Greek_iota>	: "ΐ" Greek_iotaaccentdieresis
--<Multi_key> <quotedbl> <apostrophe> <Greek_iota>	: "ΐ" Greek_iotaaccentdieresis
--<Multi_key> <apostrophe> <quotedbl> <Greek_upsilon>	: "ΰ" Greek_upsilonaccentdieresis
--<Multi_key> <quotedbl> <apostrophe> <Greek_upsilon>	: "ΰ" Greek_upsilonaccentdieresis
--<Multi_key> <apostrophe> <quotedbl> <space>		: "΅" Greek_accentdieresis
--<Multi_key> <quotedbl> <apostrophe> <space>		: "΅" Greek_accentdieresis
++
 +<at>		: "\x22"	quotedbl
 +<numbersign>	: "\xe2\x84\x96"	numerosign
 +<dollar>	: "\x25"	percent
@@ -3774,26 +3731,7 @@
 +<greater>	: "\xd0\xae"	Cyrillic_YU
 +<question>	: "\xd0\x81"	Cyrillic_IO
 +END_STATE
- 
--<dead_acute> <Greek_alpha>		: "ά"	Greek_alphaaccent
--<dead_acute> <Greek_epsilon>		: "έ"	Greek_epsilonaccent
--<dead_acute> <Greek_eta>		: "ή"	Greek_etaaccent
--<dead_acute> <Greek_iota>		: "ί"	Greek_iotaaccent
--<dead_acute> <Greek_omicron>		: "ό"	Greek_omicronaccent
--<dead_acute> <Greek_upsilon>		: "ύ"	Greek_upsilonaccent
--<dead_acute> <Greek_omega>		: "ώ"	Greek_omegaaccent
--<dead_acute> <Greek_ALPHA>		: "Ά"	Greek_ALPHAaccent
--<dead_acute> <Greek_EPSILON>		: "Έ"	Greek_EPSILONaccent
--<dead_acute> <Greek_ETA>		: "Ή"	Greek_ETAaccent
--<dead_acute> <Greek_IOTA>		: "Ί"	Greek_IOTAaccent
--<dead_acute> <Greek_OMICRON>		: "Ό"	Greek_OMICRONaccent
--<dead_acute> <Greek_UPSILON>		: "Ύ"	Greek_UPSILONaccent
--<dead_acute> <Greek_OMEGA>		: "Ώ"	Greek_OMEGAaccent
--<dead_acute> <space>			: "΄"	U0384
--<dead_acute> <dead_acute>		: "΄"	U0384
--<dead_acute> <period>			: "·"	periodcentered
--<dead_acute> <less>			: "«"	guillemotleft
--<dead_acute> <greater>			: "»"	guillemotright
++
 +STATE "[ Greek ]"
 +Ctrl<space> 		: SWITCH_STATE_TO "[ English/European ]"
 +<Multi_key> <c> <c>	: SWITCH_STATE_TO "[ Cyrillic ]"
@@ -3810,16 +3748,7 @@
 +<Multi_key> <s>	<c>	: SWITCH_STATE_TO "[ S-Chinese ]"
 +<Multi_key> <t>	<c>	: SWITCH_STATE_TO "[ T-Chinese ]"
 +<Multi_key> <h>	<k>	: SWITCH_STATE_TO "[ T-Chinese (Hong Kong) ]"
- 
--<dead_diaeresis> <Greek_iota>		: "ϊ"	Greek_iotadieresis
--<dead_diaeresis> <Greek_upsilon>	: "ϋ"	Greek_upsilondieresis
--<dead_diaeresis> <Greek_IOTA>		: "Ϊ"	Greek_IOTAdieresis
--<dead_diaeresis> <Greek_UPSILON>	: "Ϋ"	Greek_UPSILONdieresis
--<dead_diaeresis> <space>		: "¨"	diaeresis
--<dead_diaeresis> <dead_diaeresis>	: "¨"	diaeresis
--<dead_diaeresis> <period>		: "·"	periodcentered
--<dead_diaeresis> <less>			: "«"	guillemotleft
--<dead_diaeresis> <greater>		: "»"	guillemotright
++
 +Ctrl<T> <c> <c>		: SWITCH_STATE_TO "[ Cyrillic ]"
 +Ctrl<T> <t> <t>		: SWITCH_STATE_TO "[ Thai ]"
 +Ctrl<T> <a> <r>		: SWITCH_STATE_TO "[ Arabic ]"
@@ -3835,10 +3764,10 @@
 +Ctrl<T> <t> <c>		: SWITCH_STATE_TO "[ T-Chinese ]"
 +Ctrl<T> <h> <k>		: SWITCH_STATE_TO "[ T-Chinese (Hong Kong) ]"
  
--<dead_acute> <dead_diaeresis> <Greek_iota>	: "ΐ"	Greek_iotaaccentdieresis
--<dead_acute> <dead_diaeresis> <Greek_upsilon>	: "ΰ"	Greek_upsilonaccentdieresis
--<dead_acute> <dead_diaeresis> <space>		: "΅"	Greek_accentdieresis
-+XCOMM
+-XCOMM Part 3
+ XCOMM
+-XCOMM ISO 8859-7 (Greek) multi-key and dead key definitions extracted and
+-XCOMM converted from the iso8859-7/Compose file.
 +XCOMM Key sequences for euro sign:
 +AltGraph<e>		: "\xe2\x82\xac"
 +AltGraph<E>		: "\xe2\x82\xac"
@@ -3862,6 +3791,85 @@
 +Ctrl<T> <equal> <E>	: "\xe2\x82\xac"
 +<EuroSign>		: "\xe2\x82\xac"
  
+-<Multi_key> <Greek_ALPHA> <apostrophe>	: "Ά" Greek_ALPHAaccent
+-<Multi_key> <apostrophe> <Greek_ALPHA>	: "Ά" Greek_ALPHAaccent
+-<Multi_key> <Greek_EPSILON> <apostrophe>: "Έ" Greek_EPSILONaccent
+-<Multi_key> <apostrophe> <Greek_EPSILON>: "Έ" Greek_EPSILONaccent
+-<Multi_key> <Greek_ETA> <apostrophe>	: "Ή" Greek_ETAaccent
+-<Multi_key> <apostrophe> <Greek_ETA>	: "Ή" Greek_ETAaccent
+-<Multi_key> <Greek_IOTA> <apostrophe>	: "Ί" Greek_IOTAaccent
+-<Multi_key> <apostrophe> <Greek_IOTA>	: "Ί" Greek_IOTAaccent
+-<Multi_key> <Greek_OMICRON> <apostrophe>: "Ό" Greek_OMICRONaccent
+-<Multi_key> <apostrophe> <Greek_OMICRON>: "Ό" Greek_OMICRONaccent
+-<Multi_key> <Greek_UPSILON> <apostrophe>: "Ύ" Greek_UPSILONaccent
+-<Multi_key> <apostrophe> <Greek_UPSILON>: "Ύ" Greek_UPSILONaccent
+-<Multi_key> <Greek_OMEGA> <apostrophe>	: "Ώ" Greek_OMEGAaccent
+-<Multi_key> <apostrophe> <Greek_OMEGA>	: "Ώ" Greek_OMEGAaccent
+-<Multi_key> <Greek_IOTA> <quotedbl>	: "Ϊ" Greek_IOTAdieresis
+-<Multi_key> <quotedbl> <Greek_IOTA>	: "Ϊ" Greek_IOTAdieresis
+-<Multi_key> <Greek_UPSILON> <quotedbl>	: "Ϋ" Greek_UPSILONdieresis
+-<Multi_key> <quotedbl> <Greek_UPSILON>	: "Ϋ" Greek_UPSILONdieresis
+-
+-<Multi_key> <Greek_alpha> <apostrophe>	: "ά" Greek_alphaaccent
+-<Multi_key> <apostrophe> <Greek_alpha>	: "ά" Greek_alphaaccent
+-<Multi_key> <Greek_epsilon> <apostrophe>: "έ" Greek_epsilonaccent
+-<Multi_key> <apostrophe> <Greek_epsilon>: "έ" Greek_epsilonaccent
+-<Multi_key> <Greek_eta> <apostrophe>	: "ή" Greek_etaaccent
+-<Multi_key> <apostrophe> <Greek_eta>	: "ή" Greek_etaaccent
+-<Multi_key> <Greek_iota> <apostrophe>	: "ί" Greek_iotaaccent
+-<Multi_key> <apostrophe> <Greek_iota>	: "ί" Greek_iotaaccent
+-<Multi_key> <Greek_omicron> <apostrophe>: "ό" Greek_omicronaccent
+-<Multi_key> <apostrophe> <Greek_omicron>: "ό" Greek_omicronaccent
+-<Multi_key> <Greek_upsilon> <apostrophe>: "ύ" Greek_upsilonaccent
+-<Multi_key> <apostrophe> <Greek_upsilon>: "ύ" Greek_upsilonaccent
+-<Multi_key> <Greek_omega> <apostrophe>	: "ώ" Greek_omegaaccent
+-<Multi_key> <apostrophe> <Greek_omega>	: "ώ" Greek_omegaaccent
+-<Multi_key> <Greek_iota> <quotedbl>	: "ϊ" Greek_iotadieresis
+-<Multi_key> <quotedbl> <Greek_iota>	: "ϊ" Greek_iotadieresis
+-<Multi_key> <Greek_upsilon> <quotedbl>	: "ϋ" Greek_upsilondieresis
+-<Multi_key> <quotedbl> <Greek_upsilon>	: "ϋ" Greek_upsilondieresis
+-
+-<Multi_key> <apostrophe> <quotedbl> <Greek_iota>	: "ΐ" Greek_iotaaccentdieresis
+-<Multi_key> <quotedbl> <apostrophe> <Greek_iota>	: "ΐ" Greek_iotaaccentdieresis
+-<Multi_key> <apostrophe> <quotedbl> <Greek_upsilon>	: "ΰ" Greek_upsilonaccentdieresis
+-<Multi_key> <quotedbl> <apostrophe> <Greek_upsilon>	: "ΰ" Greek_upsilonaccentdieresis
+-<Multi_key> <apostrophe> <quotedbl> <space>		: "΅" Greek_accentdieresis
+-<Multi_key> <quotedbl> <apostrophe> <space>		: "΅" Greek_accentdieresis
+-
+-<dead_acute> <Greek_alpha>		: "ά"	Greek_alphaaccent
+-<dead_acute> <Greek_epsilon>		: "έ"	Greek_epsilonaccent
+-<dead_acute> <Greek_eta>		: "ή"	Greek_etaaccent
+-<dead_acute> <Greek_iota>		: "ί"	Greek_iotaaccent
+-<dead_acute> <Greek_omicron>		: "ό"	Greek_omicronaccent
+-<dead_acute> <Greek_upsilon>		: "ύ"	Greek_upsilonaccent
+-<dead_acute> <Greek_omega>		: "ώ"	Greek_omegaaccent
+-<dead_acute> <Greek_ALPHA>		: "Ά"	Greek_ALPHAaccent
+-<dead_acute> <Greek_EPSILON>		: "Έ"	Greek_EPSILONaccent
+-<dead_acute> <Greek_ETA>		: "Ή"	Greek_ETAaccent
+-<dead_acute> <Greek_IOTA>		: "Ί"	Greek_IOTAaccent
+-<dead_acute> <Greek_OMICRON>		: "Ό"	Greek_OMICRONaccent
+-<dead_acute> <Greek_UPSILON>		: "Ύ"	Greek_UPSILONaccent
+-<dead_acute> <Greek_OMEGA>		: "Ώ"	Greek_OMEGAaccent
+-<dead_acute> <space>			: "΄"	U0384
+-<dead_acute> <dead_acute>		: "΄"	U0384
+-<dead_acute> <period>			: "·"	periodcentered
+-<dead_acute> <less>			: "«"	guillemotleft
+-<dead_acute> <greater>			: "»"	guillemotright
+-
+-<dead_diaeresis> <Greek_iota>		: "ϊ"	Greek_iotadieresis
+-<dead_diaeresis> <Greek_upsilon>	: "ϋ"	Greek_upsilondieresis
+-<dead_diaeresis> <Greek_IOTA>		: "Ϊ"	Greek_IOTAdieresis
+-<dead_diaeresis> <Greek_UPSILON>	: "Ϋ"	Greek_UPSILONdieresis
+-<dead_diaeresis> <space>		: "¨"	diaeresis
+-<dead_diaeresis> <dead_diaeresis>	: "¨"	diaeresis
+-<dead_diaeresis> <period>		: "·"	periodcentered
+-<dead_diaeresis> <less>			: "«"	guillemotleft
+-<dead_diaeresis> <greater>		: "»"	guillemotright
+-
+-<dead_acute> <dead_diaeresis> <Greek_iota>	: "ΐ"	Greek_iotaaccentdieresis
+-<dead_acute> <dead_diaeresis> <Greek_upsilon>	: "ΰ"	Greek_upsilonaccentdieresis
+-<dead_acute> <dead_diaeresis> <space>		: "΅"	Greek_accentdieresis
+-
 -<dead_diaeresis> <dead_acute> <Greek_iota>	: "ΐ"	Greek_iotaaccentdieresis
 -<dead_diaeresis> <dead_acute> <Greek_upsilon>	: "ΰ"	Greek_upsilonaccentdieresis
 -<dead_diaeresis> <dead_acute> <space>		: "΅"	Greek_accentdieresis
@@ -3879,11 +3887,7 @@
 +XCOMM<asciicircum>	: "\x2c"	comma
 +XCOMM<ampersand>	: "\x2e"	period
 +XCOMM<asterisk>	: "\x3b"	semicolon
- 
--<dead_macron> <space>			: "¯"	macron
--<dead_macron> <dead_macron>		: "¯"	macron
--<dead_breve> <space>			: "˘"	breve
--<dead_breve> <dead_breve>		: "˘"	breve
++
 +<q>		: "\x3b"	semicolon
 +<w>		: "\xcf\x82"	Greek_sigma
 +<e>		: "\xce\xb5"	Greek_epsilon
@@ -3990,9 +3994,60 @@
 +<Greek_MU>	: "\xce\x9c"	Greek_MU
 +<periodcentered> : "\xc2\xb7"	periodcentered
  
+-<dead_macron> <space>			: "¯"	macron
+-<dead_macron> <dead_macron>		: "¯"	macron
+-<dead_breve> <space>			: "˘"	breve
+-<dead_breve> <dead_breve>		: "˘"	breve
+-
 -<dead_grave> <underscore>		: "`"	grave
 -<dead_acute> <underscore>		: "´"	acute
 -<dead_tilde> <underscore>		: "~"	asciitilde
+-
+-<Multi_key> <less> <apostrophe> <space>	: "‘"	leftsinglequotemark
+-<Multi_key> <apostrophe> <less> <space>	: "‘"	leftsinglequotemark
+-<Multi_key> <greater> <apostrophe> <space>	: "’"	rightsinglequotemark
+-<Multi_key> <apostrophe> <greater> <space>	: "’"	rightsinglequotemark
+-<Multi_key> <asciitilde> <asciitilde>	: "―"	Greek_horizbar
+-<Multi_key> <asciicircum> <asciicircum>	: "˘"	breve
+-
+-<Multi_key> <slash> <slash>		: "ʹ"	U0374
+-<Multi_key> <backslash> <backslash>	: "͵"	U0375
+-<Multi_key> <semicolon> <semicolon>	: ";"	U037e
+-<Multi_key> <colon> <colon>		: "·"	U0387
+-
+-<Multi_key> <C> <equal>			: "€"	EuroSign
+-<Multi_key> <equal> <C>			: "€"	EuroSign
+-<Multi_key> <c> <equal>			: "€"	EuroSign
+-<Multi_key> <equal> <c>			: "€"	EuroSign
+-<Multi_key> <E> <equal>			: "€"	EuroSign
+-<Multi_key> <equal> <E>			: "€"	EuroSign
+-<Multi_key> <e> <equal>			: "€"	EuroSign
+-<Multi_key> <equal> <e>			: "€"	EuroSign
+-<Multi_key> <Greek_EPSILON> <equal>	: "€"	EuroSign
+-<Multi_key> <equal> <Greek_EPSILON>	: "€"	EuroSign
+-<Multi_key> <Greek_epsilon> <equal>	: "€"	EuroSign
+-<Multi_key> <equal> <Greek_epsilon>	: "€"	EuroSign
+-
+-<Multi_key> <Greek_DELTA> <Greek_RHO>	: "₯"	U20af
+-<Multi_key> <Greek_DELTA> <Greek_rho>	: "₯"	U20af
+-<Multi_key> <Greek_delta> <Greek_RHO>	: "₯"	U20af
+-<Multi_key> <Greek_delta> <Greek_rho>	: "₯"	U20af
+-
+-<Multi_key> <question> <exclam>         : "‽"   U203D # INTERROBANG
+-<Multi_key> <exclam> <question>         : "‽"   U203D # INTERROBANG
+-
+-<Multi_key> <1> <3>			: "⅓"	U2153 # VULGAR FRACTION ONE THIRD
+-<Multi_key> <2> <3>			: "⅔"	U2154 # VULGAR FRACTION TWO THIRDS
+-<Multi_key> <1> <5>			: "⅕"	U2155 # VULGAR FRACTION ONE FIFTH
+-<Multi_key> <2> <5>			: "⅖"	U2156 # VULGAR FRACTION TWO FIFTHS
+-<Multi_key> <3> <5>			: "⅗"	U2157 # VULGAR FRACTION THREE FIFTHS
+-<Multi_key> <4> <5>			: "⅘"	U2158 # VULGAR FRACTION FOUR FIFTHS
+-<Multi_key> <1> <6>			: "⅙"	U2159 # VULGAR FRACTION ONE SIXTH
+-<Multi_key> <5> <6>			: "⅚"	U215A # VULGAR FRACTION FIVE SIXTHS
+-<Multi_key> <1> <8>			: "⅛"	U215B # VULGAR FRACTION ONE EIGHTH
+-<Multi_key> <3> <8>			: "⅜"	U215C # VULGAR FRACTION THREE EIGHTHS
+-<Multi_key> <5> <8>			: "⅝"	U215D # VULGAR FRACTION FIVE EIGHTHS
+-<Multi_key> <7> <8>			: "⅞"	U215E # VULGAR FRACTION SEVEN EIGHTHS
 +XCOMM
 +XCOMM XK_dead_acute and XK_dead_diaeresis defined in Greece*.kt keytable files.
 +XCOMM XK_Greek_* are not defined in Greece*.kt keytable files. Nonetheless, we
@@ -4011,13 +4066,7 @@
 +<dead_acute> <Greek_OMICRON>	:"\xce\x8c"	Greek_OMICRONaccent
 +<dead_acute> <Greek_UPSILON>	:"\xce\x8e"	Greek_UPSILONaccent
 +<dead_acute> <Greek_OMEGA>	:"\xce\x8f"	Greek_OMEGAaccent
- 
--<Multi_key> <less> <apostrophe> <space>	: "‘"	leftsinglequotemark
--<Multi_key> <apostrophe> <less> <space>	: "‘"	leftsinglequotemark
--<Multi_key> <greater> <apostrophe> <space>	: "’"	rightsinglequotemark
--<Multi_key> <apostrophe> <greater> <space>	: "’"	rightsinglequotemark
--<Multi_key> <asciitilde> <asciitilde>	: "―"	Greek_horizbar
--<Multi_key> <asciicircum> <asciicircum>	: "˘"	breve
++
 +<dead_acute> <a>		:"\xce\xac"	Greek_alphaaccent
 +<dead_acute> <e>		:"\xce\xad"	Greek_epsilonaccent
 +<dead_acute> <h>		:"\xce\xae"	Greek_etaaccent
@@ -4032,11 +4081,7 @@
 +<dead_acute> <O>		:"\xce\x8c"	Greek_OMICRONaccent
 +<dead_acute> <Y>		:"\xce\x8e"	Greek_UPSILONaccent
 +<dead_acute> <V>		:"\xce\x8f"	Greek_OMEGAaccent
- 
--<Multi_key> <slash> <slash>		: "ʹ"	U0374
--<Multi_key> <backslash> <backslash>	: "͵"	U0375
--<Multi_key> <semicolon> <semicolon>	: ";"	U037e
--<Multi_key> <colon> <colon>		: "·"	U0387
++
 +<semicolon> <a>			:"\xce\xac"	Greek_alphaaccent
 +<semicolon> <e>			:"\xce\xad"	Greek_epsilonaccent
 +<semicolon> <h>			:"\xce\xae"	Greek_etaaccent
@@ -4051,57 +4096,27 @@
 +<semicolon> <O>			:"\xce\x8c"	Greek_OMICRONaccent
 +<semicolon> <Y>			:"\xce\x8e"	Greek_UPSILONaccent
 +<semicolon> <V>			:"\xce\x8f"	Greek_OMEGAaccent
- 
--<Multi_key> <C> <equal>			: "€"	EuroSign
--<Multi_key> <equal> <C>			: "€"	EuroSign
--<Multi_key> <c> <equal>			: "€"	EuroSign
--<Multi_key> <equal> <c>			: "€"	EuroSign
--<Multi_key> <E> <equal>			: "€"	EuroSign
--<Multi_key> <equal> <E>			: "€"	EuroSign
--<Multi_key> <e> <equal>			: "€"	EuroSign
--<Multi_key> <equal> <e>			: "€"	EuroSign
--<Multi_key> <Greek_EPSILON> <equal>	: "€"	EuroSign
--<Multi_key> <equal> <Greek_EPSILON>	: "€"	EuroSign
--<Multi_key> <Greek_epsilon> <equal>	: "€"	EuroSign
--<Multi_key> <equal> <Greek_epsilon>	: "€"	EuroSign
++
 +<dead_diaeresis> <Greek_iota>	:"\xcf\x8a"	Greek_iotadieresis
 +<dead_diaeresis> <Greek_upsilon> :"\xcf\x8b"	Greek_upsilondieresis
 +<dead_diaeresis> <Greek_IOTA>	:"\xce\xaa"	Greek_IOTAdiaeresis
 +<dead_diaeresis> <Greek_UPSILON> :"\xce\xab"	Greek_UPSILONdieresis
- 
--<Multi_key> <Greek_DELTA> <Greek_RHO>	: "₯"	U20af
--<Multi_key> <Greek_DELTA> <Greek_rho>	: "₯"	U20af
--<Multi_key> <Greek_delta> <Greek_RHO>	: "₯"	U20af
--<Multi_key> <Greek_delta> <Greek_rho>	: "₯"	U20af
++
 +<dead_diaeresis> <i>		:"\xcf\x8a"	Greek_iotadieresis
 +<dead_diaeresis> <y>		:"\xcf\x8b"	Greek_upsilondieresis
 +<dead_diaeresis> <I>		:"\xce\xaa"	Greek_IOTAdiaeresis
 +<dead_diaeresis> <Y>		:"\xce\xab"	Greek_UPSILONdieresis
- 
--<Multi_key> <question> <exclam>         : "‽"   U203D # INTERROBANG
--<Multi_key> <exclam> <question>         : "‽"   U203D # INTERROBANG
++
 +<colon> <i>			:"\xcf\x8a"	Greek_iotadieresis
 +<colon> <y>			:"\xcf\x8b"	Greek_upsilondieresis
 +<colon> <I>			:"\xce\xaa"	Greek_IOTAdiaeresis
 +<colon> <Y>			:"\xce\xab"	Greek_UPSILONdieresis
- 
--<Multi_key> <1> <3>			: "⅓"	U2153 # VULGAR FRACTION ONE THIRD
--<Multi_key> <2> <3>			: "⅔"	U2154 # VULGAR FRACTION TWO THIRDS
--<Multi_key> <1> <5>			: "⅕"	U2155 # VULGAR FRACTION ONE FIFTH
--<Multi_key> <2> <5>			: "⅖"	U2156 # VULGAR FRACTION TWO FIFTHS
--<Multi_key> <3> <5>			: "⅗"	U2157 # VULGAR FRACTION THREE FIFTHS
--<Multi_key> <4> <5>			: "⅘"	U2158 # VULGAR FRACTION FOUR FIFTHS
--<Multi_key> <1> <6>			: "⅙"	U2159 # VULGAR FRACTION ONE SIXTH
--<Multi_key> <5> <6>			: "⅚"	U215A # VULGAR FRACTION FIVE SIXTHS
--<Multi_key> <1> <8>			: "⅛"	U215B # VULGAR FRACTION ONE EIGHTH
--<Multi_key> <3> <8>			: "⅜"	U215C # VULGAR FRACTION THREE EIGHTHS
--<Multi_key> <5> <8>			: "⅝"	U215D # VULGAR FRACTION FIVE EIGHTHS
--<Multi_key> <7> <8>			: "⅞"	U215E # VULGAR FRACTION SEVEN EIGHTHS
++
 +<dead_acute> <dead_diaeresis> <Greek_upsilon>	:"\xce\xb0"
 +<dead_diaeresis> <dead_acute> <Greek_upsilon>	:"\xce\xb0"
 +<dead_acute> <dead_diaeresis> <Greek_iota>	:"\xce\x90"
 +<dead_diaeresis> <dead_acute> <Greek_iota>	:"\xce\x90"
- 
++
 +<dead_acute> <dead_diaeresis> <y> :"\xce\xb0"
 +<dead_diaeresis> <dead_acute> <y> :"\xce\xb0"
 +<dead_acute> <dead_diaeresis> <i> :"\xce\x90"
@@ -4111,7 +4126,7 @@
 +<colon> <semicolon> <y>		:"\xce\xb0"
 +<semicolon> <colon> <i>		:"\xce\x90"
 +<colon> <semicolon> <i>		:"\xce\x90"
-+
+ 
  XCOMM
 -XCOMM Khmer digraphs
 +XCOMM The following special key sequences are for Tonos, Diaeresis/Dialytica,
@@ -4139,6 +4154,14 @@
 +<ordfeminine> <bracketleft>	:"\xc2\xab"	guillemotleft
 +<ordfeminine> <bracketright>	:"\xc2\xbb"	guillemotright
  XCOMM
+-
+-<U17ff> :   "ាំ"
+-<U17fe> :   "ោះ"
+-<U17fd> :   "េះ"
+-<U17fc> :   "ុំ"
+-<U17fb> :   "ុះ"
+-
+-XCOMM End
 +XCOMM Rules for SunXK_FA_* keysyms:
 +<SunFA_Acute> <A>		:"\xce\x86"
 +<SunFA_Acute> <E>		:"\xce\x88"
@@ -4185,12 +4208,7 @@
 +<SunFA_Diaeresis> <i>		:"\xcf\x8a"
 +<SunFA_Diaeresis> <y>		:"\xcf\x8b"
 +END_STATE
- 
--<U17ff> :   "ាំ"
--<U17fe> :   "ោះ"
--<U17fd> :   "េះ"
--<U17fc> :   "ុំ"
--<U17fb> :   "ុះ"
++
 +STATE "[ Arabic ]"
 +Ctrl<space>		: SWITCH_STATE_TO "[ English/European ]"
 +<Multi_key> <c> <c>	: SWITCH_STATE_TO "[ Cyrillic ]"
@@ -4207,8 +4225,7 @@
 +<Multi_key> <s>	<c>	: SWITCH_STATE_TO "[ S-Chinese ]"
 +<Multi_key> <t>	<c>	: SWITCH_STATE_TO "[ T-Chinese ]"
 +<Multi_key> <h>	<k>	: SWITCH_STATE_TO "[ T-Chinese (Hong Kong) ]"
- 
--XCOMM End
++
 +Ctrl<T> <c> <c>		: SWITCH_STATE_TO "[ Cyrillic ]"
 +Ctrl<T> <g> <g>		: SWITCH_STATE_TO "[ Greek ]"
 +Ctrl<T> <t> <t>		: SWITCH_STATE_TO "[ Thai ]"
--- a/open-src/lib/libX11/compose-en_US.UTF-8.patch	Mon Jun 07 13:50:41 2010 -0700
+++ b/open-src/lib/libX11/compose-en_US.UTF-8.patch	Fri Jun 11 06:38:19 2010 -0700
@@ -21,9 +21,10 @@
 # DEALINGS IN THE SOFTWARE.
 #
 
---- nls/en_US.UTF-8/Compose.pre	2009-10-23 13:53:33.689534403 -0700
-+++ nls/en_US.UTF-8/Compose.pre	2009-11-12 22:38:21.017230553 -0800
-@@ -1,9 +1,69 @@
+diff -urp -x '*~' -x '*.orig' nls/en_US.UTF-8/Compose.pre nls/en_US.UTF-8/Compose.pre
+--- nls/en_US.UTF-8/Compose.pre	2010-04-26 22:00:12.000000000 -0700
++++ nls/en_US.UTF-8/Compose.pre	2010-06-07 15:49:36.457980695 -0700
+@@ -1,8 +1,69 @@
 -XCOMM UTF-8 (Unicode) compose sequence
 +XCOMM
 +XCOMM Copyright (c) 2006, 2009 Oracle and/or its affiliates. All rights reserved.
@@ -58,7 +59,6 @@
 +XCOMM Partially merged with X.Org UTF-8 (Unicode) compose sequence from
  XCOMM [email protected]
  XCOMM
--XCOMM $XFree86: xc/nls/Compose/en_US.UTF-8,v 1.11 2004/01/06 13:14:04 pascal Exp $
  
 -XCOMM Part 1 - Manual definitions
 +STATE "[ English/European ]"
@@ -96,7 +96,7 @@
  
  XCOMM Spacing versions of dead accents
  <dead_tilde> <space>             	: "~"   asciitilde # TILDE
-@@ -23,7 +85,7 @@
+@@ -22,7 +83,7 @@ XCOMM Spacing versions of dead accents
  <dead_abovedot> <space>          	: "˙"   abovedot # DOT ABOVE
  <dead_abovedot> <dead_abovedot>  	: "˙"   abovedot # DOT ABOVE
  <dead_diaeresis> <dead_diaeresis> 	: "¨"   diaeresis # DIAERESIS
@@ -105,7 +105,7 @@
  <dead_doubleacute> <space>       	: "˝"   U2dd # DOUBLE ACUTE ACCENT
  <dead_doubleacute> <dead_doubleacute> 	: "˝"   U2dd # DOUBLE ACUTE ACCENT
  <dead_caron> <space>             	: "ˇ"   caron # CARON
-@@ -93,7 +155,7 @@
+@@ -92,7 +153,7 @@ XCOMM Spaces
  
  <Multi_key> <period> <greater>   	: "›"   U203a # SINGLE RIGHT-POINTING ANGLE QUOTATION MARK
  <Multi_key> <period> <less>      	: "‹"   U2039 # SINGLE LEFT-POINTING ANGLE QUOTATION MARK
@@ -114,7 +114,7 @@
  <Multi_key> <period> <minus>    	: "·"   periodcentered # MIDDLE DOT
  <Multi_key> <period> <equal>    	: "•"   enfilledcircbullet # BULLET
  <Multi_key> <exclam> <asciicircum> 	: "¦"   brokenbar # BROKEN BAR
-@@ -102,12 +165,12 @@
+@@ -101,12 +162,12 @@ XCOMM Spaces
  <Multi_key> <P> <exclam>         	: "¶"   paragraph # PILCROW SIGN
  <Multi_key> <plus> <minus>       	: "±"   plusminus # PLUS-MINUS SIGN
  <Multi_key> <question> <question> 	: "¿"   questiondown # INVERTED QUESTION MARK
@@ -131,7 +131,7 @@
  <Multi_key> <a> <e>              	: "æ"   ae # LATIN SMALL LETTER AE
  <Multi_key> <A> <E>              	: "Æ"   AE # LATIN CAPITAL LETTER AE
  
-@@ -136,12 +199,12 @@
+@@ -135,12 +196,12 @@ XCOMM Per xxx
  
  XCOMM Currencies
  <Multi_key> <C> <E>              	: "₠"   U20a0 # EURO-CURRENCY SIGN
@@ -148,7 +148,7 @@
  <Multi_key> <m> <slash>          	: "₥"   U20a5 # MILL SIGN
  <Multi_key> <slash> <m>          	: "₥"   U20a5 # MILL SIGN
  <Multi_key> <N> <equal>          	: "₦"   U20a6 # NAIRA SIGN
-@@ -151,7 +214,7 @@
+@@ -150,7 +211,7 @@ XCOMM Currencies
  <Multi_key> <W> <equal>          	: "₩"   U20a9 # WON SIGN
  <Multi_key> <equal> <W>          	: "₩"   U20a9 # WON SIGN
  XCOMM "₪" U20aa NEW SHEQEL SIGN
@@ -157,7 +157,7 @@
  <Multi_key> <C> <equal>          	: "€"   EuroSign # EURO SIGN
  <Multi_key> <equal> <C>          	: "€"   EuroSign # EURO SIGN
  <Multi_key> <c> <equal>          	: "€"   EuroSign # EURO SIGN
-@@ -189,8 +252,8 @@
+@@ -188,8 +249,8 @@ XCOMM Long S
  <Multi_key> <f> <S>              	: "ſ"   U017f # LATIN SMALL LETTER LONG S
  
  XCOMM Dashes
@@ -168,7 +168,7 @@
  
  XCOMM Musical alterations
  <Multi_key> <numbersign> <b>     	: "♭"   U266d # MUSIC FLAT SIGN
-@@ -221,5154 +284,2592 @@
+@@ -221,5154 +282,2592 @@ XCOMM Other symbols
  <Multi_key> <colon> <parenright>        : "☺"   U263A # WHITE SMILING FACE
  <Multi_key> <colon> <parenleft>         : "☹"   U2639 # WHITE FROWNING FACE
  
--- a/open-src/lib/libX11/compose-iso8859-13.patch	Mon Jun 07 13:50:41 2010 -0700
+++ b/open-src/lib/libX11/compose-iso8859-13.patch	Fri Jun 11 06:38:19 2010 -0700
@@ -22,9 +22,9 @@
 #
 
 diff -urp -x '*~' -x '*.orig' nls/iso8859-13/Compose.pre nls/iso8859-13/Compose.pre
---- nls/iso8859-13/Compose.pre	2009-03-24 22:23:13.000000000 -0700
-+++ nls/iso8859-13/Compose.pre	2009-04-06 13:46:56.802935000 -0700
-@@ -2,18 +2,107 @@ XCOMM $XFree86: xc/nls/Compose/iso8859-1
+--- nls/iso8859-13/Compose.pre	2010-01-14 17:11:36.000000000 -0800
++++ nls/iso8859-13/Compose.pre	2010-06-07 15:49:34.269131380 -0700
+@@ -1,18 +1,106 @@
  XCOMM
  XCOMM ISO 8859-13 (Latin7) Compose Sequence
  XCOMM
@@ -59,7 +59,6 @@
 +XCOMM
 +
 +XCOMM
-+XCOMM $XConsortium: iso8859-1,v 1.5 95/06/07 18:45:50 kaleb Exp $
 +XCOMM
 +XCOMM ISO 8859-13 (Latin8) Compose Sequence
 +XCOMM
@@ -135,7 +134,7 @@
  <Multi_key> <parenleft> <parenleft>     : "["   bracketleft
  <Multi_key> <slash> <slash>             : "\\"  backslash
  <Multi_key> <slash> <less>              : "\\"  backslash
-@@ -25,29 +115,26 @@ XCOMM are for compose sequences.
+@@ -24,29 +112,26 @@ XCOMM are for compose sequences.
  <Multi_key> <space> <greater>           : "^"   asciicircum
  <Multi_key> <grave> <space>             : "`"   grave
  <Multi_key> <space> <grave>             : "`"   grave
@@ -173,7 +172,7 @@
  <Multi_key> <c> <slash>                 : "\242"        cent
  <Multi_key> <slash> <c>                 : "\242"        cent
  <Multi_key> <C> <slash>                 : "\242"        cent
-@@ -56,6 +143,10 @@ XCOMM are for compose sequences.
+@@ -55,6 +140,10 @@ XCOMM are for compose sequences.
  <Multi_key> <bar> <C>                   : "\242"        cent
  <Multi_key> <c> <bar>                   : "\242"        cent
  <Multi_key> <bar> <c>                   : "\242"        cent
@@ -184,7 +183,7 @@
  <Multi_key> <l> <equal>                 : "\243"        sterling
  <Multi_key> <equal> <l>                 : "\243"        sterling
  <Multi_key> <L> <equal>                 : "\243"        sterling
-@@ -133,6 +224,8 @@ XCOMM are for compose sequences.
+@@ -132,6 +221,8 @@ XCOMM are for compose sequences.
  <Multi_key> <period> <asciicircum>      : "\267"        periodcentered
  <Multi_key> <asciicircum> <period>      : "\267"        periodcentered
  <Multi_key> <period> <period>           : "\267"        periodcentered
@@ -193,7 +192,7 @@
  <Multi_key> <1> <4>                     : "\274"        onequarter
  <Multi_key> <1> <2>                     : "\275"        onehalf
  <Multi_key> <3> <4>                     : "\276"        threequarters
-@@ -167,8 +260,12 @@ XCOMM Accented Alphabet
+@@ -166,8 +257,12 @@ XCOMM Accented Alphabet
  <Multi_key> <L> <cedilla>		: "\317"	Lcedilla
  <Multi_key> <comma> <L>			: "\317"	Lcedilla
  <Multi_key> <cedilla> <L>		: "\317"	Lcedilla
@@ -208,7 +207,7 @@
  <Multi_key> <E> <minus>			: "\307"	Emacron
  <Multi_key> <minus> <E>			: "\307"	Emacron
  <Multi_key> <E> <underscore>		: "\307"	Emacron
-@@ -177,12 +274,11 @@ XCOMM Accented Alphabet
+@@ -176,12 +271,11 @@ XCOMM Accented Alphabet
  <Multi_key> <G> <cedilla>		: "\314"	Gcedilla
  <Multi_key> <comma> <G>			: "\314"	Gcedilla
  <Multi_key> <cedilla> <G>		: "\314"	Gcedilla
@@ -226,7 +225,7 @@
  <Multi_key> <r> <comma>			: "\272"	rcedilla
  <Multi_key> <r> <cedilla>		: "\272"	rcedilla
  <Multi_key> <comma> <r>			: "\272"	rcedilla
-@@ -191,8 +287,10 @@ XCOMM Accented Alphabet
+@@ -190,8 +284,10 @@ XCOMM Accented Alphabet
  <Multi_key> <l> <cedilla>		: "\357"	lcedilla
  <Multi_key> <comma> <l>			: "\357"	lcedilla
  <Multi_key> <cedilla> <l>		: "\357"	lcedilla
@@ -239,7 +238,7 @@
  <Multi_key> <e> <minus>			: "\347"	emacron
  <Multi_key> <minus> <e>			: "\347"	emacron
  <Multi_key> <e> <underscore>		: "\347"	emacron
-@@ -201,8 +299,9 @@ XCOMM Accented Alphabet
+@@ -200,8 +296,9 @@ XCOMM Accented Alphabet
  <Multi_key> <g> <cedilla>		: "\354"	gcedilla
  <Multi_key> <comma> <g>			: "\354"	gcedilla
  <Multi_key> <cedilla> <g>		: "\354"	gcedilla
@@ -251,7 +250,7 @@
  <Multi_key> <A> <underscore>		: "\302"	Amacron
  <Multi_key> <underscore> <A>		: "\302"	Amacron
  <Multi_key> <A> <minus>			: "\302"	Amacron
-@@ -211,23 +310,22 @@ XCOMM Accented Alphabet
+@@ -210,23 +307,22 @@ XCOMM Accented Alphabet
  <Multi_key> <quotedbl> <A>		: "\304"	Adiaeresis
  <Multi_key> <A> <asterisk>		: "\305"	Aring
  <Multi_key> <asterisk> <A>		: "\305"	Aring
@@ -286,7 +285,7 @@
  <Multi_key> <E> <period>		: "\313"	Eabovedot
  <Multi_key> <period> <E>		: "\313"	Eabovedot
  <Multi_key> <I> <minus>			: "\316"	Imacron
-@@ -240,22 +338,25 @@ XCOMM Accented Alphabet
+@@ -239,22 +335,25 @@ XCOMM Accented Alphabet
  <Multi_key> <cedilla> <N>		: "\322"	Ncedilla
  <Multi_key> <O> <underscore>		: "\324"	Omacron
  <Multi_key> <underscore> <O>		: "\324"	Omacron
@@ -318,7 +317,7 @@
  <Multi_key> <U> <quotedbl>		: "\334"	Udiaeresis
  <Multi_key> <quotedbl> <U>		: "\334"	Udiaeresis
  <Multi_key> <U> <underscore>		: "\333"	Umacron
-@@ -271,23 +372,23 @@ XCOMM Accented Alphabet
+@@ -270,23 +369,23 @@ XCOMM Accented Alphabet
  <Multi_key> <quotedbl> <a>		: "\344"	adiaeresis
  <Multi_key> <a> <asterisk>		: "\345"	aring
  <Multi_key> <asterisk> <a>		: "\345"	aring
@@ -354,7 +353,7 @@
  <Multi_key> <e> <period>		: "\353"	eabovedot
  <Multi_key> <period> <e>		: "\353"	eabovedot
  <Multi_key> <i> <minus>			: "\356"	imacron
-@@ -300,22 +401,26 @@ XCOMM Accented Alphabet
+@@ -299,22 +398,26 @@ XCOMM Accented Alphabet
  <Multi_key> <cedilla> <n>		: "\362"	ncedilla
  <Multi_key> <o> <underscore>		: "\364"	omacron
  <Multi_key> <underscore> <o>		: "\364"	omacron
@@ -389,7 +388,7 @@
  <Multi_key> <u> <quotedbl>		: "\374"	udiaeresis
  <Multi_key> <quotedbl> <u>		: "\374"	udiaeresis
  <Multi_key> <u> <underscore>		: "\373"	umacron
-@@ -324,110 +429,384 @@ XCOMM Accented Alphabet
+@@ -323,110 +426,384 @@ XCOMM Accented Alphabet
  <Multi_key> <minus> <u>			: "\373"	umacron
  <Multi_key> <C> <apostrophe>		: "\303"	Cacute
  <Multi_key> <apostrophe> <C>		: "\303"	Cacute
--- a/open-src/lib/libX11/compose-iso8859-2.patch	Mon Jun 07 13:50:41 2010 -0700
+++ b/open-src/lib/libX11/compose-iso8859-2.patch	Fri Jun 11 06:38:19 2010 -0700
@@ -22,14 +22,9 @@
 #
 
 diff -urp -x '*~' -x '*.orig' nls/iso8859-2/Compose.pre nls/iso8859-2/Compose.pre
---- nls/iso8859-2/Compose.pre	2009-04-06 10:49:37.000000000 -0700
-+++ nls/iso8859-2/Compose.pre	2009-04-08 00:21:21.906084000 -0700
-@@ -1,537 +1,719 @@
--XCOMM $Xorg: iso8859-2,v 1.3 2000/08/17 19:46:59 cpqbld Exp $
--XCOMM
--XCOMM ISO 8859-2 (Latin2) Compose Sequence
--XCOMM
--XCOMM $XFree86: xc/nls/Compose/iso8859-2,v 1.6 2001/05/18 23:35:29 dawes Exp $
+--- nls/iso8859-2/Compose.pre	2010-01-14 17:11:36.000000000 -0800
++++ nls/iso8859-2/Compose.pre	2010-06-07 15:49:29.948508516 -0700
+@@ -1,535 +1,719 @@
 +XCOMM   Compose keys configuration file for
 +XCOMM   Czech, Hungarian and Polish SMCC localizations[turlough]
 +XCOMM   Copyright (c) 1994, Oracle and/or its affiliates. All rights reserved.
@@ -37,6 +32,9 @@
 +
 +XCOMM ISO 8859-2 (Latin2) Czech/Polish/Hungarian  Compose Sequence
  XCOMM
+-XCOMM ISO 8859-2 (Latin2) Compose Sequence
+-XCOMM
+-XCOMM
 +
 +XCOMM There are a number of multikeys used in these locales that the user needs
 +XCOMM needs to be aware of to produce cz/pl/hu extended characters
--- a/open-src/lib/libX11/compose-iso8859-5.patch	Mon Jun 07 13:50:41 2010 -0700
+++ b/open-src/lib/libX11/compose-iso8859-5.patch	Fri Jun 11 06:38:19 2010 -0700
@@ -23,13 +23,12 @@
 
 diff -ru nls/iso8859-5/Compose.pre nls.new/iso8859-5/Compose.pre
 diff -urp -x '*~' -x '*.orig' nls/iso8859-5/Compose.pre nls/iso8859-5/Compose.pre
---- nls/iso8859-5/Compose.pre	2009-03-24 22:23:13.000000000 -0700
-+++ nls/iso8859-5/Compose.pre	2009-03-25 01:21:22.724886000 -0700
-@@ -3,13 +3,165 @@ XCOMM ISO 8859-5 Compose Sequence
+--- nls/iso8859-5/Compose.pre	2010-01-14 17:11:36.000000000 -0800
++++ nls/iso8859-5/Compose.pre	2010-06-07 15:49:30.652025458 -0700
+@@ -3,12 +3,165 @@ XCOMM ISO 8859-5 Compose Sequence
  XCOMM
  XCOMM Sequence Definition
  XCOMM
--XCOMM $XFree86: xc/nls/Compose/iso8859-5,v 1.1 1999/08/28 09:00:36 dawes Exp $
 +XCOMM Copyright (c) 2009, 2006, Oracle and/or its affiliates. All rights reserved.
 +XCOMM
 +XCOMM Copyright (C) 1994 X Consortium
--- a/open-src/lib/libX11/compose-iso8859-6.patch	Mon Jun 07 13:50:41 2010 -0700
+++ b/open-src/lib/libX11/compose-iso8859-6.patch	Fri Jun 11 06:38:19 2010 -0700
@@ -22,9 +22,9 @@
 #
 
 diff -urp -x '*~' -x '*.orig' nls/iso8859-6/Compose.pre nls/iso8859-6/Compose.pre
---- nls/iso8859-6/Compose.pre	2007-05-16 08:34:44.000000000 -0700
-+++ nls/iso8859-6/Compose.pre	2008-02-27 21:08:32.561206000 -0800
-@@ -1,15 +1,114 @@
+--- nls/iso8859-6/Compose.pre	2010-01-14 17:11:36.000000000 -0800
++++ nls/iso8859-6/Compose.pre	2010-06-07 15:49:31.352692502 -0700
+@@ -1,14 +1,114 @@
 +XCOMM Arabic input table (Ascii input mode)
  XCOMM
 -XCOMM ISO 8859-6 Compose Sequence
@@ -43,7 +43,6 @@
 -XCOMM Sequence Definition
 +XCOMM Arabic input table (Arabic input mode)
  XCOMM
--XCOMM $XFree86: xc/nls/Compose/iso8859-6,v 1.1 1999/08/28 09:00:36 dawes Exp $
 +
 +
 +STATE   "[ Arabic ]"
--- a/open-src/lib/libX11/compose-iso8859-7.patch	Mon Jun 07 13:50:41 2010 -0700
+++ b/open-src/lib/libX11/compose-iso8859-7.patch	Fri Jun 11 06:38:19 2010 -0700
@@ -23,10 +23,10 @@
 
 diff -ru nls/iso8859-7/Compose.pre nls.new/iso8859-7/Compose.pre
 diff -urp -x '*~' -x '*.orig' nls/iso8859-7/Compose.pre nls/iso8859-7/Compose.pre
---- nls/iso8859-7/Compose.pre	2009-03-24 22:23:13.000000000 -0700
-+++ nls/iso8859-7/Compose.pre	2009-03-25 01:21:51.659578000 -0700
-@@ -1,3 +1,33 @@
-+XCOMM
+--- nls/iso8859-7/Compose.pre	2010-01-14 17:11:36.000000000 -0800
++++ nls/iso8859-7/Compose.pre	2010-06-07 15:49:32.087244734 -0700
+@@ -1,4 +1,34 @@
+ XCOMM
 +XCOMM Copyright (c) 2006, 2009, Oracle and/or its affiliates. All rights reserved.
 +XCOMM
 +XCOMM
@@ -56,10 +56,11 @@
 +XCOMM
 +XCOMM X Window System is a trademark of X Consortium, Inc.
 +XCOMM
- XCOMM $TOG: iso8859-7 /main/7 1998/05/20 15:33:23 kaleb $
++XCOMM
+ XCOMM ISO 8859-7 (Greek) Compose Sequence
  XCOMM
- XCOMM ISO 8859-7 (Greek) Compose Sequence
-@@ -9,216 +40,268 @@ XCOMM Sequence Definition
+ XCOMM
+@@ -7,216 +37,267 @@ XCOMM Sequence Definition
  XCOMM
  XCOMM <Multi_key> Means <Compose>
  XCOMM Special Character
@@ -219,7 +220,6 @@
 -<Multi_key> <quotedbl> <apostrophe> <space>		: "\265" Greek_accentdieresis
  
  XCOMM
-+XCOMM $SunId$         (c) Sun Microsystems, Inc.
  XCOMM
 -XCOMM dead key accent keysyms
 -XCOMM Special Character
--- a/open-src/lib/libX11/compose-iso8859-8.patch	Mon Jun 07 13:50:41 2010 -0700
+++ b/open-src/lib/libX11/compose-iso8859-8.patch	Fri Jun 11 06:38:19 2010 -0700
@@ -22,9 +22,9 @@
 #
 
 diff -urp -x '*~' -x '*.orig' nls/iso8859-8/Compose.pre nls/iso8859-8/Compose.pre
---- nls/iso8859-8/Compose.pre	2007-05-16 08:34:44.000000000 -0700
-+++ nls/iso8859-8/Compose.pre	2008-02-27 21:08:32.570555000 -0800
-@@ -1,15 +1,57 @@
+--- nls/iso8859-8/Compose.pre	2010-01-14 17:11:36.000000000 -0800
++++ nls/iso8859-8/Compose.pre	2010-06-07 15:49:32.801727080 -0700
+@@ -1,14 +1,57 @@
 +XCOMM Arabic input table (Ascii input mode)
  XCOMM
 -XCOMM ISO 8859-8 Compose Sequence
@@ -42,7 +42,6 @@
 +
 +
  XCOMM
--XCOMM $XFree86: xc/nls/Compose/iso8859-8,v 1.1 1999/08/28 09:00:36 dawes Exp $
 +XCOMM Hebrew input table (Hebrew input mode)
  XCOMM
 -XCOMM This file currently has no entries.  It appears that a compose file (even
--- a/open-src/lib/libX11/compose-ko_KR.UTF-8.patch	Mon Jun 07 13:50:41 2010 -0700
+++ b/open-src/lib/libX11/compose-ko_KR.UTF-8.patch	Fri Jun 11 06:38:19 2010 -0700
@@ -22,14 +22,12 @@
 #
 
 diff -urp -x '*~' -x '*.orig' nls/ko_KR.UTF-8/Compose.pre nls/ko_KR.UTF-8/Compose.pre
---- nls/ko_KR.UTF-8/Compose.pre	2007-05-16 08:34:44.000000000 -0700
-+++ nls/ko_KR.UTF-8/Compose.pre	2008-02-27 21:08:32.589576000 -0800
-@@ -0,0 +1,2541 @@
+--- nls/ko_KR.UTF-8/Compose.pre	2010-01-14 17:11:36.000000000 -0800
++++ nls/ko_KR.UTF-8/Compose.pre	2010-06-07 15:49:38.139156903 -0700
+@@ -0,0 +1,2539 @@
 +XCOMM
 +XCOMM Copyright (c) 1996, 2006, Oracle and/or its affiliates. All rights reserved.
 +XCOMM
-+XCOMM ident	$Id: Compose,v 1.15 2006/02/13 07:51:50 bt150191 Exp $
-+XCOMM
 +XCOMM Compose table for the ko.UTF8 locale
 +XCOMM
 +
--- a/open-src/lib/libX11/compose-zh_CN.UTF-8.patch	Mon Jun 07 13:50:41 2010 -0700
+++ b/open-src/lib/libX11/compose-zh_CN.UTF-8.patch	Fri Jun 11 06:38:19 2010 -0700
@@ -22,14 +22,12 @@
 #
 
 diff -urp -x '*~' -x '*.orig' nls/zh_CN.UTF-8/Compose.pre nls/zh_CN.UTF-8/Compose.pre
---- nls/zh_CN.UTF-8/Compose.pre	2007-05-16 08:34:44.000000000 -0700
-+++ nls/zh_CN.UTF-8/Compose.pre	2008-02-27 21:08:32.623903000 -0800
-@@ -0,0 +1,2541 @@
+--- nls/zh_CN.UTF-8/Compose.pre	2010-01-14 17:11:36.000000000 -0800
++++ nls/zh_CN.UTF-8/Compose.pre	2010-06-07 15:49:40.781722582 -0700
+@@ -0,0 +1,2539 @@
 +XCOMM
 +XCOMM Copyright (c) 1996, 2000, Oracle and/or its affiliates. All rights reserved.
 +XCOMM
-+XCOMM ident	$Id: Compose,v 1.16 2006/02/13 07:51:51 bt150191 Exp $
-+XCOMM
 +XCOMM Compose table for the zh.UTF8 locale
 +XCOMM
 +
--- a/open-src/lib/libX11/compose-zh_HK.UTF-8.patch	Mon Jun 07 13:50:41 2010 -0700
+++ b/open-src/lib/libX11/compose-zh_HK.UTF-8.patch	Fri Jun 11 06:38:19 2010 -0700
@@ -22,14 +22,12 @@
 #
 
 diff -urp -x '*~' -x '*.orig' nls/zh_HK.UTF-8/Compose.pre nls/zh_HK.UTF-8/Compose.pre
---- nls/zh_HK.UTF-8/Compose.pre	2007-05-16 08:34:44.000000000 -0700
-+++ nls/zh_HK.UTF-8/Compose.pre	2008-02-27 21:08:32.643402000 -0800
-@@ -0,0 +1,2542 @@
+--- nls/zh_HK.UTF-8/Compose.pre	2010-01-14 17:11:36.000000000 -0800
++++ nls/zh_HK.UTF-8/Compose.pre	2010-06-07 15:49:41.532854761 -0700
+@@ -0,0 +1,2540 @@
 +XCOMM
 +XCOMM Copyright (c) 1996, 2006, Oracle and/or its affiliates. All rights reserved.
 +XCOMM
-+XCOMM ident	$Id: Compose,v 1.7 2006/02/13 07:51:51 bt150191 Exp $
-+XCOMM
 +XCOMM Compose table for the zh_HK.UTF8 locale
 +XCOMM
 +
--- a/open-src/lib/libX11/compose-zh_TW.UTF-8.patch	Mon Jun 07 13:50:41 2010 -0700
+++ b/open-src/lib/libX11/compose-zh_TW.UTF-8.patch	Fri Jun 11 06:38:19 2010 -0700
@@ -22,14 +22,12 @@
 #
 
 diff -urp -x '*~' -x '*.orig' nls/zh_TW.UTF-8/Compose.pre nls/zh_TW.UTF-8/Compose.pre
---- nls/zh_TW.UTF-8/Compose.pre	2007-05-16 08:34:44.000000000 -0700
-+++ nls/zh_TW.UTF-8/Compose.pre	2008-02-27 21:08:32.656875000 -0800
-@@ -0,0 +1,2541 @@
+--- nls/zh_TW.UTF-8/Compose.pre	2010-01-14 17:11:36.000000000 -0800
++++ nls/zh_TW.UTF-8/Compose.pre	2010-06-07 15:49:42.290526710 -0700
+@@ -0,0 +1,2539 @@
 +XCOMM
 +XCOMM Copyright (c) 1996, 2006, Oracle and/or its affiliates. All rights reserved.
 +XCOMM
-+XCOMM ident	$Id: Compose,v 1.15 2006/02/13 07:51:51 bt150191 Exp $
-+XCOMM
 +XCOMM Compose table for the zh_TW.UTF8 locale
 +XCOMM
 +
--- a/open-src/lib/libX11/compose.dir.patch	Mon Jun 07 13:50:41 2010 -0700
+++ b/open-src/lib/libX11/compose.dir.patch	Fri Jun 11 06:38:19 2010 -0700
@@ -22,9 +22,9 @@
 #
 
 diff -urp -x '*~' -x '*.orig' nls/compose.dir.pre nls/compose.dir.pre
---- nls/compose.dir.pre	2009-03-16 17:38:41.000000000 -0700
-+++ nls/compose.dir.pre	2009-04-08 00:20:59.155189000 -0700
-@@ -336,12 +336,12 @@ en_US.UTF-8/Compose:		is_IS.UTF-8
+--- nls/compose.dir.pre	2010-01-14 17:11:36.000000000 -0800
++++ nls/compose.dir.pre	2010-06-07 18:01:10.730751798 -0700
+@@ -337,12 +337,12 @@ en_US.UTF-8/Compose:		is_IS.UTF-8
  en_US.UTF-8/Compose:		it_CH.UTF-8
  en_US.UTF-8/Compose:		it_IT.UTF-8
  en_US.UTF-8/Compose:		iu_CA.UTF-8
@@ -39,7 +39,7 @@
  en_US.UTF-8/Compose:		ks_IN.UTF-8
  en_US.UTF-8/Compose:		[email protected]
  en_US.UTF-8/Compose:		kw_GB.UTF-8
-@@ -400,6 +400,8 @@ en_US.UTF-8/Compose:		vi_VN.UTF-8
+@@ -413,7 +413,9 @@ en_US.UTF-8/Compose:		vi_VN.UTF-8
  en_US.UTF-8/Compose:		wa_BE.UTF-8
  en_US.UTF-8/Compose:		yi_US.UTF-8
  en_US.UTF-8/Compose:		xh_ZA.UTF-8
@@ -49,3 +49,4 @@
 +zh_HK.UTF-8/Compose:		zh_HK.UTF-8
  en_US.UTF-8/Compose:		zu_ZA.UTF-8
  en_US.UTF-8/Compose:		bs_BA.UTF-8
+ en_US.UTF-8/Compose:		ne_NP.UTF-8
--- a/open-src/lib/libX11/lc-jisx0208.patch	Mon Jun 07 13:50:41 2010 -0700
+++ b/open-src/lib/libX11/lc-jisx0208.patch	Fri Jun 11 06:38:19 2010 -0700
@@ -22,13 +22,9 @@
 #
 
 diff -urp -x '*~' -x '*.orig' src/xlibi18n/lcUniConv/jisx0208.h src/xlibi18n/lcUniConv/jisx0208.h
---- src/xlibi18n/lcUniConv/jisx0208.h	2008-10-07 10:18:20.000000000 -0700
-+++ src/xlibi18n/lcUniConv/jisx0208.h	2009-04-08 00:20:13.439661000 -0700
-@@ -1,9 +1,454 @@
--/* $XFree86: xc/lib/X11/lcUniConv/jisx0208.h,v 1.5tsi Exp $ */
-+/* $XFree86: xc/lib/X11/lcUniConv/jisx0208.h,v 1.5 2001/11/21 21:20:56 dawes Exp $ */
- 
- /*
+--- src/xlibi18n/lcUniConv/jisx0208.h	2010-01-14 17:11:36.000000000 -0800
++++ src/xlibi18n/lcUniConv/jisx0208.h	2010-06-07 15:49:24.412325193 -0700
+@@ -3,6 +3,451 @@
   * JISX0208.1990-0
   */
  
@@ -480,7 +476,7 @@
  static const unsigned short jisx0208_2uni_page21[690] = {
    /* 0x21 */
    0x3000, 0x3001, 0x3002, 0xff0c, 0xff0e, 0x30fb, 0xff1a, 0xff1b,
-@@ -1013,11 +1458,19 @@ jisx0208_mbtowc (conv_t conv, ucs4_t *pw
+@@ -1012,11 +1457,19 @@ jisx0208_mbtowc (conv_t conv, ucs4_t *pw
            return 2;
          }
        }
@@ -500,7 +496,7 @@
  }
  
  static const unsigned short jisx0208_2charset[6879] = {
-@@ -2360,7 +2813,7 @@ jisx0208_wctomb (conv_t conv, unsigned c
+@@ -2359,7 +2812,7 @@ jisx0208_wctomb (conv_t conv, unsigned c
  {
    if (n >= 2) {
      const Summary16 *summary = NULL;
@@ -509,7 +505,7 @@
        summary = &jisx0208_uni2indx_page00[(wc>>4)];
      else if (wc >= 0x0300 && wc < 0x0460)
        summary = &jisx0208_uni2indx_page03[(wc>>4)-0x030];
-@@ -2391,7 +2844,11 @@ jisx0208_wctomb (conv_t conv, unsigned c
+@@ -2390,7 +2843,11 @@ jisx0208_wctomb (conv_t conv, unsigned c
          return 2;
        }
      }
--- a/open-src/lib/libX11/lintlib.patch	Mon Jun 07 13:50:41 2010 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,24 +0,0 @@
-diff --git a/configure.ac b/configure.ac
-index d622697..6b8a6ba 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -376,7 +376,6 @@ fi
- dnl Allow checking code with lint, sparse, etc.
- XORG_WITH_LINT
- XORG_LINT_LIBRARY([X11])
--LINT_FLAGS="${LINT_FLAGS} ${X11_CFLAGS} ${XPROTO_CFLAGS}"
- 
- if test "x$GCC" = "xyes"; then
- 	GCC_WARNINGS="-Wall -Wpointer-arith -Wstrict-prototypes \
-diff --git a/src/Makefile.am b/src/Makefile.am
-index 51e1e06..2a59d6f 100644
---- a/src/Makefile.am
-+++ b/src/Makefile.am
-@@ -19,6 +19,7 @@ AM_CPPFLAGS= \
- 	-D_BSD_SOURCE -DX11_t -DTRANS_CLIENT
- 
- AM_CFLAGS= \
-+	$(XPROTO_CFLAGS) \
- 	$(X11_CFLAGS) \
- 	$(BIGFONT_CFLAGS) \
- 	$(XDMCP_CFLAGS) \
--- a/open-src/lib/libX11/locale-en_US.UTF-8.patch	Mon Jun 07 13:50:41 2010 -0700
+++ b/open-src/lib/libX11/locale-en_US.UTF-8.patch	Fri Jun 11 06:38:19 2010 -0700
@@ -22,8 +22,8 @@
 #
 
 diff -urp -x '*~' -x '*.orig' nls/en_US.UTF-8/XI18N_OBJS nls/en_US.UTF-8/XI18N_OBJS
---- nls/en_US.UTF-8/XI18N_OBJS	2008-10-07 10:18:17.000000000 -0700
-+++ nls/en_US.UTF-8/XI18N_OBJS	2009-04-08 00:25:53.116178000 -0700
+--- nls/en_US.UTF-8/XI18N_OBJS	2010-01-14 17:11:36.000000000 -0800
++++ nls/en_US.UTF-8/XI18N_OBJS	2010-06-07 15:49:48.410747016 -0700
 @@ -3,6 +3,10 @@
  #	XI18N objects table for euro locales
  #
@@ -37,9 +37,9 @@
 +XIM	common/ximll            _XimpLocalOpenIM        # XIM_open
 +XIM	common/ximlocal         _XimpLocalOpenIM        # XIM_open
 diff -urp -x '*~' -x '*.orig' nls/en_US.UTF-8/XLC_LOCALE.pre nls/en_US.UTF-8/XLC_LOCALE.pre
---- nls/en_US.UTF-8/XLC_LOCALE.pre	2008-11-26 20:17:22.000000000 -0800
-+++ nls/en_US.UTF-8/XLC_LOCALE.pre	2009-04-08 00:25:53.116644000 -0700
-@@ -54,6 +54,7 @@ fs4	{
+--- nls/en_US.UTF-8/XLC_LOCALE.pre	2010-01-14 17:11:36.000000000 -0800
++++ nls/en_US.UTF-8/XLC_LOCALE.pre	2010-06-07 15:49:48.411369670 -0700
+@@ -53,6 +53,7 @@ fs4	{
  		name	ISO8859-4:GR
  	}
  	font	{
@@ -47,10 +47,18 @@
  		primary	ISO8859-4:GR
  	}
  }
-@@ -67,17 +68,17 @@
+@@ -66,16 +67,16 @@ fs5	{
  	}
  }
  XCOMM	fs6 class (koi8-r)
+-fs6	{
+-	charset	{
+-		name	KOI8-R:GR
+-	}
+-	font	{
+-		primary	KOI8-R:GR
+-	}
+-}
 +XCOMM fs6	{
 +XCOMM	charset	{
 +XCOMM		name	KOI8-R:GR
@@ -59,22 +67,13 @@
 +XCOMM		primary	KOI8-R:GR
 +XCOMM	}
 +XCOMM}
-+XCOMM	fs7 class (ISO8859 families)
- fs6	{
+ XCOMM	fs7 class (ISO8859 families)
+-fs7	{
++fs6	{
  	charset	{
--		name	KOI8-R:GR
--	}
--	font	{
--		primary	KOI8-R:GR
--	}
--}
--XCOMM	fs7 class (ISO8859 families)
--fs7	{
--	charset	{
  		name	ISO8859-7:GR
  	}
- 	font	{
-@@ -85,7 +86,7 @@
+@@ -84,7 +85,7 @@ fs7	{
  	}
  }
  XCOMM	fs9 class (ISO8859 families)
@@ -83,7 +82,7 @@
  	charset	{
  		name	ISO8859-9:GR
  	}
-@@ -94,7 +95,7 @@
+@@ -93,7 +94,7 @@ fs8	{
  	}
  }
  XCOMM	fs13 class (ISO8859 families)
@@ -92,7 +91,7 @@
  	charset	{
  		name	ISO8859-13:GR
  	}
-@@ -103,7 +104,7 @@
+@@ -102,7 +103,7 @@ fs9	{
  	}
  }
  XCOMM	fs14 class (ISO8859 families)
@@ -101,7 +100,7 @@
  	charset	{
  		name	ISO8859-14:GR
  	}
-@@ -112,16 +113,17 @@
+@@ -111,16 +112,17 @@ fs10	{
  	}
  }
  XCOMM	fs15 class (ISO8859 families)
@@ -122,7 +121,7 @@
  	charset	{
  		name	JISX0208.1983-0:GL
  	}
-@@ -130,16 +132,16 @@
+@@ -129,16 +131,16 @@ fs12	{
  	}
  }
  XCOMM   fs17 class (Korean Character)
@@ -143,7 +142,7 @@
  	charset	{
  		name	GB2312.1980-0:GL
  	}
-@@ -148,7 +150,7 @@
+@@ -147,7 +149,7 @@ fs14	{
  	}
  }
  XCOMM	fs20 class (Half Kana)
@@ -152,7 +151,7 @@
  	charset	{
  		name	JISX0201.1976-0:GR
  	}
-@@ -157,9 +159,70 @@
+@@ -156,9 +158,70 @@ fs15	{
  		vertical_rotate	all
  	}
  }
@@ -224,7 +223,7 @@
  	charset	{
  		name	ISO10646-1
  	}
-@@ -221,21 +284,21 @@
+@@ -220,79 +283,120 @@ cs5     {
  }
   
  XCOMM	cs6 class
@@ -254,7 +253,6 @@
          side            GR
          length          1
          ct_encoding     ISO8859-9:GR
-@@ -242,7 +305,7 @@
  }
   
  XCOMM	cs13 class
@@ -263,7 +261,6 @@
          side            GR
          length          1
          ct_encoding     ISO8859-13:GR
-@@ -249,7 +312,7 @@
  }
   
  XCOMM	cs14 class
@@ -272,7 +269,6 @@
          side            GR
          length          1
          ct_encoding     ISO8859-14:GR
-@@ -256,7 +319,7 @@
  }
   
  XCOMM	cs15 class
@@ -281,7 +277,6 @@
          side            GR
          length          1
          ct_encoding     ISO8859-15:GR
-@@ -263,23 +326,22 @@
  }
   
  XCOMM	cs16 class
@@ -311,7 +306,6 @@
          side            GR
          length          2
          ct_encoding     GB2312.1980-0:GL; GB2312.1980-0:GR
-@@ -286,14 +348,56 @@
  }
   
  XCOMM	cs20 class
--- a/open-src/lib/libX11/locale-ja_JP.UTF-8.patch	Mon Jun 07 13:50:41 2010 -0700
+++ b/open-src/lib/libX11/locale-ja_JP.UTF-8.patch	Fri Jun 11 06:38:19 2010 -0700
@@ -22,10 +22,10 @@
 #
 
 diff -urp -x '*~' -x '*.orig' nls/ja_JP.UTF-8/XI18N_OBJS nls/ja_JP.UTF-8/XI18N_OBJS
---- nls/ja_JP.UTF-8/XI18N_OBJS	2008-10-07 10:18:18.000000000 -0700
-+++ nls/ja_JP.UTF-8/XI18N_OBJS	2009-04-08 00:26:30.954518000 -0700
-@@ -5,5 +5,8 @@
- # $XFree86$
+--- nls/ja_JP.UTF-8/XI18N_OBJS	2010-01-14 17:11:36.000000000 -0800
++++ nls/ja_JP.UTF-8/XI18N_OBJS	2010-06-07 15:49:51.158931189 -0700
+@@ -4,5 +4,8 @@
+ #
  #
  XLC	common/xlcUTF8Load	_XlcUtf8Loader	# XLC_open
 -XIM	common/ximcp	_XimOpenIM _XimRegisterIMInstantiateCallback  _XimUnRegisterIMInstantiateCallback # XIM_open	XIM_register XIM_unregister
@@ -35,9 +35,9 @@
 +XIM	common/ximp40	_Ximp_OpenIM		# XIM_open
  XOM	common/xomGeneric 	_XomGenericOpenOM	# XOM_open
 diff -urp -x '*~' -x '*.orig' nls/ja_JP.UTF-8/XLC_LOCALE.pre nls/ja_JP.UTF-8/XLC_LOCALE.pre
---- nls/ja_JP.UTF-8/XLC_LOCALE.pre	2008-10-07 10:18:18.000000000 -0700
-+++ nls/ja_JP.UTF-8/XLC_LOCALE.pre	2009-04-08 00:26:30.954835000 -0700
-@@ -18,7 +18,7 @@ fs0 {
+--- nls/ja_JP.UTF-8/XLC_LOCALE.pre	2010-01-14 17:11:36.000000000 -0800
++++ nls/ja_JP.UTF-8/XLC_LOCALE.pre	2010-06-07 15:49:51.159344368 -0700
+@@ -17,7 +17,7 @@ fs0 {
      name  ISO8859-1:GL
    }
    font  {
@@ -46,7 +46,7 @@
      vertical_rotate all
    }
  }
-@@ -42,18 +42,29 @@ fs2	{
+@@ -41,18 +41,29 @@ fs2	{
  	}
  }
  
@@ -81,7 +81,7 @@
  	charset	{
  		name	GB2312.1980-0:GL
  	}
-@@ -61,8 +72,8 @@ fs4	{
+@@ -60,8 +71,8 @@ fs4	{
  		primary	GB2312.1980-0:GL
  	}
  }
@@ -92,7 +92,7 @@
  	charset	{
  		name	JISX0201.1976-0:GR
  	}
-@@ -76,12 +87,13 @@ XCOMM other fonts are picked up before i
+@@ -75,12 +86,13 @@ XCOMM other fonts are picked up before i
  XCOMM Moreover, some iso10646-1 fonts don't have any glyph at all
  XCOMM in ISO8859-X ranges.
  
@@ -108,7 +108,7 @@
      primary ISO10646-1
    }
  }
-@@ -101,7 +113,7 @@ XCOMM	cs0 class
+@@ -100,7 +112,7 @@ XCOMM	cs0 class
  cs0	{
  	side		GL:Default
  	length		1
@@ -117,7 +117,7 @@
  }
  
  XCOMM	cs1 class
-@@ -120,29 +132,36 @@ cs2	{
+@@ -119,29 +131,36 @@ cs2	{
  }
  
  XCOMM	cs3 class
--- a/open-src/lib/libX11/locale-ko_KR.UTF-8.patch	Mon Jun 07 13:50:41 2010 -0700
+++ b/open-src/lib/libX11/locale-ko_KR.UTF-8.patch	Fri Jun 11 06:38:19 2010 -0700
@@ -22,10 +22,10 @@
 #
 
 diff -urp -x '*~' -x '*.orig' nls/ko_KR.UTF-8/XI18N_OBJS nls/ko_KR.UTF-8/XI18N_OBJS
---- nls/ko_KR.UTF-8/XI18N_OBJS	2008-10-07 10:18:18.000000000 -0700
-+++ nls/ko_KR.UTF-8/XI18N_OBJS	2009-04-08 00:26:54.574738000 -0700
-@@ -5,5 +5,8 @@
- # $XFree86$
+--- nls/ko_KR.UTF-8/XI18N_OBJS	2010-01-14 17:11:36.000000000 -0800
++++ nls/ko_KR.UTF-8/XI18N_OBJS	2010-06-07 15:49:53.100568379 -0700
+@@ -4,5 +4,8 @@
+ #
  #
  XLC	common/xlcUTF8Load	_XlcUtf8Loader	# XLC_open
 +XIM	common/xiiimp		_SwitchOpenIM		# XIM_open
@@ -34,9 +34,9 @@
 +XIM	common/ximlocal		_XimpLocalOpenIM	# XIM_open
  XOM	common/xomGeneric 	_XomGenericOpenOM	# XOM_open
 diff -urp -x '*~' -x '*.orig' nls/ko_KR.UTF-8/XLC_LOCALE.pre nls/ko_KR.UTF-8/XLC_LOCALE.pre
---- nls/ko_KR.UTF-8/XLC_LOCALE.pre	2008-10-07 10:18:18.000000000 -0700
-+++ nls/ko_KR.UTF-8/XLC_LOCALE.pre	2009-04-08 00:26:54.584168000 -0700
-@@ -34,10 +34,10 @@ fs1 {
+--- nls/ko_KR.UTF-8/XLC_LOCALE.pre	2010-01-14 17:11:36.000000000 -0800
++++ nls/ko_KR.UTF-8/XLC_LOCALE.pre	2010-06-07 15:49:53.100967122 -0700
+@@ -33,10 +33,10 @@ fs1 {
  XCOMM   fs2 class (Korean Character)
  fs2	{
  	charset	{
@@ -49,7 +49,7 @@
  	}
  }
  XCOMM 	fs3 class (Kanji)
-@@ -69,20 +69,133 @@ fs5	{
+@@ -68,20 +68,133 @@ fs5	{
  	}
  }
  
@@ -191,7 +191,7 @@
  
  END XLC_FONTSET
  
-@@ -111,10 +224,9 @@ cs1     {
+@@ -110,10 +223,9 @@ cs1     {
  
  XCOMM	cs2 class
  cs2     {
@@ -204,7 +204,7 @@
  }
   
  XCOMM	cs3 class
-@@ -139,10 +251,92 @@ cs5	{
+@@ -138,10 +250,92 @@ cs5	{
  	ct_encoding	JISX0201.1976-0:GR
  }
  
--- a/open-src/lib/libX11/locale-th_TH.UTF-8.patch	Mon Jun 07 13:50:41 2010 -0700
+++ b/open-src/lib/libX11/locale-th_TH.UTF-8.patch	Fri Jun 11 06:38:19 2010 -0700
@@ -22,10 +22,10 @@
 #
 
 diff -urp -x '*~' -x '*.orig' nls/th_TH.UTF-8/XI18N_OBJS nls/th_TH.UTF-8/XI18N_OBJS
---- nls/th_TH.UTF-8/XI18N_OBJS	2008-10-07 10:18:18.000000000 -0700
-+++ nls/th_TH.UTF-8/XI18N_OBJS	2009-04-08 00:27:07.186577000 -0700
-@@ -5,5 +5,9 @@
- # $XFree86$
+--- nls/th_TH.UTF-8/XI18N_OBJS	2010-01-14 17:11:36.000000000 -0800
++++ nls/th_TH.UTF-8/XI18N_OBJS	2010-06-07 15:49:53.964572637 -0700
+@@ -4,5 +4,9 @@
+ #
  #
  XLC	common/xlcUTF8Load	_XlcUtf8Loader	# XLC_open
 +XIM	common/xiiimp		_SwitchOpenIM		# XIM_open
@@ -35,9 +35,9 @@
 +XIM	common/ximlocal		_XimpLocalOpenIM	# XIM_open
  XOM	common/xomGeneric 	_XomGenericOpenOM	# XOM_open
 diff -urp -x '*~' -x '*.orig' nls/th_TH.UTF-8/XLC_LOCALE.pre nls/th_TH.UTF-8/XLC_LOCALE.pre
---- nls/th_TH.UTF-8/XLC_LOCALE.pre	2008-10-07 10:18:18.000000000 -0700
-+++ nls/th_TH.UTF-8/XLC_LOCALE.pre	2009-04-08 00:27:07.187017000 -0700
-@@ -9,27 +9,171 @@ XCOMM 
+--- nls/th_TH.UTF-8/XLC_LOCALE.pre	2010-01-14 17:11:36.000000000 -0800
++++ nls/th_TH.UTF-8/XLC_LOCALE.pre	2010-06-07 15:49:53.964950384 -0700
+@@ -7,27 +7,171 @@ XCOMM 
  XCOMM 	XLC_FONTSET category
  XCOMM 
  XLC_FONTSET
@@ -223,7 +223,7 @@
  END XLC_FONTSET
  
  XCOMM 
-@@ -38,44 +182,138 @@ XCOMM 
+@@ -36,44 +180,138 @@ XCOMM 
  XLC_XLOCALE
  
  encoding_name           UTF-8
--- a/open-src/lib/libX11/locale-zh_CN.UTF-8.patch	Mon Jun 07 13:50:41 2010 -0700
+++ b/open-src/lib/libX11/locale-zh_CN.UTF-8.patch	Fri Jun 11 06:38:19 2010 -0700
@@ -22,19 +22,19 @@
 #
 
 diff -urp -x '*~' -x '*.orig' nls/zh_CN.UTF-8/XI18N_OBJS nls/zh_CN.UTF-8/XI18N_OBJS
---- nls/zh_CN.UTF-8/XI18N_OBJS	2008-10-07 10:18:18.000000000 -0700
-+++ nls/zh_CN.UTF-8/XI18N_OBJS	2009-04-08 00:27:19.563966000 -0700
-@@ -5,5 +5,6 @@
- # $XFree86$
+--- nls/zh_CN.UTF-8/XI18N_OBJS	2010-01-14 17:11:36.000000000 -0800
++++ nls/zh_CN.UTF-8/XI18N_OBJS	2010-06-07 15:49:55.352147612 -0700
+@@ -4,5 +4,6 @@
+ #
  #
  XLC	common/xlcUTF8Load	_XlcUtf8Loader	# XLC_open
 +XIM	common/xiiimp	_SwitchOpenIM
  XIM	common/ximcp	_XimOpenIM _XimRegisterIMInstantiateCallback  _XimUnRegisterIMInstantiateCallback # XIM_open	XIM_register XIM_unregister
  XOM	common/xomGeneric 	_XomGenericOpenOM	# XOM_open
 diff -urp -x '*~' -x '*.orig' nls/zh_CN.UTF-8/XLC_LOCALE.pre nls/zh_CN.UTF-8/XLC_LOCALE.pre
---- nls/zh_CN.UTF-8/XLC_LOCALE.pre	2008-10-07 10:18:18.000000000 -0700
-+++ nls/zh_CN.UTF-8/XLC_LOCALE.pre	2009-04-08 00:27:19.576085000 -0700
-@@ -14,8 +14,7 @@ on_demand_loading      True
+--- nls/zh_CN.UTF-8/XLC_LOCALE.pre	2010-01-14 17:11:36.000000000 -0800
++++ nls/zh_CN.UTF-8/XLC_LOCALE.pre	2010-06-07 15:49:55.352537991 -0700
+@@ -12,8 +12,7 @@ on_demand_loading      True
  
  object_name            generic
  
@@ -44,7 +44,7 @@
  XCOMM  fs0 class (7 bit ASCII)
  fs0    {
         charset {
-@@ -37,6 +36,7 @@ fs1    {
+@@ -35,6 +34,7 @@ fs1    {
         }
  }
  
@@ -52,7 +52,7 @@
  XCOMM  fs2 class (Chinese Han Character)
  fs2    {
         charset {
-@@ -46,7 +46,6 @@ fs2    {
+@@ -44,7 +44,6 @@ fs2    {
                 primary GB2312.1980-0:GL
         }
  }
@@ -60,7 +60,7 @@
  XCOMM  fs3 class (Chinese Han Character GBK)
  fs3    {
         charset {
-@@ -58,15 +57,145 @@ fs3    {
+@@ -56,15 +55,145 @@ fs3    {
         }
  }
  
@@ -214,7 +214,7 @@
  END XLC_FONTSET
  
  XCOMM 
-@@ -91,18 +220,117 @@ cs1     {
+@@ -89,18 +218,117 @@ cs1     {
          length          1
          ct_encoding     ISO8859-1:GR
  }
--- a/open-src/lib/libX11/locale.paths.patch	Mon Jun 07 13:50:41 2010 -0700
+++ b/open-src/lib/libX11/locale.paths.patch	Fri Jun 11 06:38:19 2010 -0700
@@ -1,8 +1,9 @@
 Allow passing multi-directory paths to configure search for locale files
 
---- configure.ac	Fri Dec  4 22:17:54 2009
-+++ configure.ac	Fri Dec  4 23:18:01 2009
-@@ -412,10 +412,15 @@
+diff -urp -x '*~' -x '*.orig' configure.ac configure.ac
+--- configure.ac	2010-06-07 15:49:42.994766047 -0700
++++ configure.ac	2010-06-07 15:49:44.506894780 -0700
+@@ -477,11 +477,16 @@ AC_ARG_WITH(locale-lib-dir,	AS_HELP_STRI
   [Directory where locale libraries files are installed (default: $libdir/X11/locale)]),
  				[ X11_LOCALELIBDIR="$withval" ],
  				[ X11_LOCALELIBDIR="${X11_LIBDIR}/locale" ])
@@ -21,3 +22,4 @@
 +AC_DEFINE_DIR(XLOCALEDIR, XLOCALEDIR, [Location of libX11 locale data])
  AC_SUBST(X11_LOCALEDIR)
  
+ XKEYSYMDB="${X11_DATADIR}/XKeysymDB"
--- a/open-src/lib/libX11/mapfile-vers	Mon Jun 07 13:50:41 2010 -0700
+++ b/open-src/lib/libX11/mapfile-vers	Fri Jun 11 06:38:19 2010 -0700
@@ -2,7 +2,7 @@
 #
 # libX11 version mapfile
 #
-# Copyright (c) 2008, 2009, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
 #
 # Permission is hereby granted, free of charge, to any person obtaining a
 # copy of this software and associated documentation files (the "Software"),
@@ -760,7 +760,7 @@
 	XauGetBestAuthByAddr 	= FUNCTION FILTER libXau.so.6;
 	XauReadAuth 		= FUNCTION FILTER libXau.so.6;
 
-
+	xlocaledir;
 	KeySymToUcs4;
 	XAddExtension;
 	XAddToExtensionList;
--- a/open-src/lib/libX11/sme.patch	Mon Jun 07 13:50:41 2010 -0700
+++ b/open-src/lib/libX11/sme.patch	Fri Jun 11 06:38:19 2010 -0700
@@ -21,10 +21,10 @@
 # DEALINGS IN THE SOFTWARE.
 #
 diff -urp -x '*~' -x '*.orig' include/X11/Xlibint.h include/X11/Xlibint.h
---- include/X11/Xlibint.h	2009-04-08 00:18:36.242153000 -0700
-+++ include/X11/Xlibint.h	2009-04-08 00:18:46.488588000 -0700
-@@ -185,6 +185,10 @@ struct _XDisplay
- 		XGenericEventCookie *   /* in */,
+--- include/X11/Xlibint.h	2010-06-07 15:49:19.999603302 -0700
++++ include/X11/Xlibint.h	2010-06-07 15:49:20.803676676 -0700
+@@ -197,6 +197,10 @@ struct _XDisplay
+ 		XGenericEventCookie *	/* in */,
  		XGenericEventCookie *   /* out*/);
  	void *cookiejar;  /* cookie events returned but not claimed */
 +#ifdef SUNSOFT
@@ -35,9 +35,9 @@
  
  #if defined(XTHREADS) && defined(SUNSOFT)
 diff -urp -x '*~' -x '*.orig' src/ConnDis.c src/ConnDis.c
---- src/ConnDis.c	2008-11-18 22:42:01.000000000 -0800
-+++ src/ConnDis.c	2009-04-08 00:18:46.494720000 -0700
-@@ -137,7 +137,12 @@ _X11TransConnectDisplay (
+--- src/ConnDis.c	2010-06-03 12:45:32.000000000 -0700
++++ src/ConnDis.c	2010-06-07 15:49:20.804309938 -0700
+@@ -136,7 +136,12 @@ _X11TransConnectDisplay (
      char **auth_namep,			/* RETURN */
      int *auth_namelenp,			/* RETURN */
      char **auth_datap,			/* RETURN */
@@ -50,7 +50,7 @@
  {
      int family;
      int saddrlen;
-@@ -164,6 +169,9 @@ _X11TransConnectDisplay (
+@@ -163,6 +168,9 @@ _X11TransConnectDisplay (
      int local_transport_index = -1;
      const char *local_transport[] = { LOCAL_TRANSPORT_LIST, NULL };
  #endif
@@ -60,7 +60,7 @@
  
      p = display_name;
  
-@@ -273,6 +281,13 @@ _X11TransConnectDisplay (
+@@ -272,6 +280,13 @@ _X11TransConnectDisplay (
  	}
      }
  
@@ -74,7 +74,7 @@
      /*
       * At this point, we know the following information:
       *
-@@ -505,13 +520,23 @@ int _XConnectDisplay (
+@@ -504,13 +519,23 @@ int _XConnectDisplay (
      char **auth_namep,			/* RETURN */
      int *auth_namelenp,			/* RETURN */
      char **auth_datap,			/* RETURN */
@@ -98,37 +98,10 @@
  
     if (trans_conn)
     {
-diff -urp -x '*~' -x '*.orig' src/Xintconn.h src/Xintconn.h
---- src/Xintconn.h	2008-10-07 10:18:19.000000000 -0700
-+++ src/Xintconn.h	2009-04-08 00:18:46.530793000 -0700
-@@ -18,7 +18,12 @@ int _XConnectDisplay (
-     char **auth_namep,          /* RETURN */
-     int *auth_namelenp,         /* RETURN */
-     char **auth_datap,          /* RETURN */
-+#ifdef SUNSOFT /* SME */
-+    int *auth_datalenp,         /* RETURN */
-+    int *sme_conn);             /* RETURN */
-+#else
-     int *auth_datalenp);        /* RETURN */
-+#endif /* SME */
- extern int _XDisconnectDisplay(XtransConnInfo trans_conn);
- extern Bool _XSendClientPrefix(Display *dpy, xConnClientPrefix *client,
- 				char *auth_proto, char *auth_string,
-@@ -27,7 +32,11 @@ extern XtransConnInfo _X11TransConnectDi
- 				char **fullnamep, int *dpynump,
- 				int *screenp, char **auth_namep,
- 				int *auth_namelenp, char **auth_datap,
-+#ifdef SUNSOFT /* SME */
-+				int *auth_datalenp, int *sme_conn);
-+#else
- 				int *auth_datalenp);
-+#endif /* SME */
- #endif /* !USE_XCB */
- 
- /* OpenDis.c */
---- src/OpenDis.c	Fri Oct 16 15:10:13 2009
-+++ src/OpenDis.c	Fri Oct 16 15:17:29 2009
-@@ -52,6 +52,11 @@
+diff -urp -x '*~' -x '*.orig' src/OpenDis.c src/OpenDis.c
+--- src/OpenDis.c	2010-06-07 15:49:20.020725240 -0700
++++ src/OpenDis.c	2010-06-07 15:49:20.805475576 -0700
+@@ -50,6 +50,11 @@ in this Software without prior written a
  #include <X11/extensions/XInteractive.h>
  /* end SUNSOFT_INTERACTIVE */
  
@@ -140,7 +113,7 @@
  #if !USE_XCB
  #ifdef X_NOT_POSIX
  #define Size_t unsigned int
-@@ -67,6 +72,13 @@
+@@ -65,6 +70,13 @@ typedef struct {
  } _XBigReqState;
  #endif /* !USE_XCB */
  
@@ -154,7 +127,7 @@
  #if defined(XTHREADS) && defined(SUNSOFT)
  DisplayPtrLink *HeadDisplay=NULL;
  DisplayPtrLink *LastDisplay=NULL;
-@@ -84,6 +96,10 @@
+@@ -82,6 +94,10 @@ void (*_XFreeDisplayLock_fn)(Display *dp
  #define FreeDisplayLock(dis)
  #endif /* XTHREADS */
  
@@ -165,7 +138,7 @@
  static xReq _dummy_request = {
  	0, 0, 0
  };
-@@ -94,6 +110,10 @@
+@@ -92,6 +108,10 @@ static Bool _XBigReqHandler(Display *dpy
  				XPointer data);
  #endif /* !USE_XCB */
  
@@ -176,7 +149,7 @@
  /*
   * Connects to a server, creates a Display object and returns a pointer to
   * the newly created Display back to the caller.
-@@ -131,6 +151,10 @@
+@@ -129,6 +149,10 @@ XOpenDisplay (
  	long setuplength;	/* number of bytes in setup message */
  	long usedbytes = 0;     /* number of bytes we have processed */
  	unsigned long mask;
@@ -184,10 +157,10 @@
 +        int sme_conn = 0;
 +#endif /* SME */
 +
-        long int conn_buf_size;
-        char *xlib_buffer_size;
+ 	long int conn_buf_size;
+ 	char *xlib_buffer_size;
  
-@@ -185,7 +209,11 @@
+@@ -202,7 +226,11 @@ fallback_success:
  					 display_name, &fullname, &idisplay,
  					 &iscreen, &conn_auth_name,
  					 &conn_auth_namelen, &conn_auth_data,
@@ -200,7 +173,7 @@
  		Xfree ((char *) dpy);
  		return(NULL);
  	}
-@@ -776,6 +810,26 @@
+@@ -800,6 +828,26 @@ fallback_success:
  	}
  /* end SUNSOFT_INTERACTIVE */
  
@@ -227,7 +200,7 @@
  /*
   * and return successfully
   */
-@@ -899,8 +953,20 @@
+@@ -934,8 +982,20 @@ void _XFreeDisplayStructure(Display *dpy
  	if (dpy->vendor)
  	   Xfree (dpy->vendor);
  
@@ -248,7 +221,7 @@
  	if (dpy->keysyms)
  	   Xfree ((char *) dpy->keysyms);
  	if (dpy->xdefaults)
-@@ -1063,3 +1129,160 @@
+@@ -1098,3 +1158,160 @@ static void OutOfMemory(Display *dpy, ch
      if (setup) Xfree (setup);
  #endif /* !USE_XCB */
  }
@@ -409,9 +382,38 @@
 +}
 +#endif /* SME */
 +
---- src/XlibInt.c	Fri Oct 16 15:10:13 2009
-+++ src/XlibInt.c	Fri Oct 16 10:43:49 2009
-@@ -54,8 +54,15 @@
+diff -urp -x '*~' -x '*.orig' src/Xintconn.h src/Xintconn.h
+--- src/Xintconn.h	2010-01-14 17:11:36.000000000 -0800
++++ src/Xintconn.h	2010-06-07 15:49:20.804631804 -0700
+@@ -17,7 +17,12 @@ int _XConnectDisplay (
+     char **auth_namep,          /* RETURN */
+     int *auth_namelenp,         /* RETURN */
+     char **auth_datap,          /* RETURN */
++#ifdef SUNSOFT /* SME */
++    int *auth_datalenp,         /* RETURN */
++    int *sme_conn);             /* RETURN */
++#else
+     int *auth_datalenp);        /* RETURN */
++#endif /* SME */
+ extern int _XDisconnectDisplay(XtransConnInfo trans_conn);
+ extern Bool _XSendClientPrefix(Display *dpy, xConnClientPrefix *client,
+ 				char *auth_proto, char *auth_string,
+@@ -26,7 +31,11 @@ extern XtransConnInfo _X11TransConnectDi
+ 				char **fullnamep, int *dpynump,
+ 				int *screenp, char **auth_namep,
+ 				int *auth_namelenp, char **auth_datap,
++#ifdef SUNSOFT /* SME */
++				int *auth_datalenp, int *sme_conn);
++#else
+ 				int *auth_datalenp);
++#endif /* SME */
+ #endif /* !USE_XCB */
+ 
+ /* OpenDis.c */
+diff -urp -x '*~' -x '*.orig' src/XlibInt.c src/XlibInt.c
+--- src/XlibInt.c	2010-06-07 15:49:20.026209260 -0700
++++ src/XlibInt.c	2010-06-07 15:49:20.806893011 -0700
+@@ -52,8 +52,15 @@ from The Open Group.
  #include <direct.h>
  #endif
  
@@ -428,7 +430,7 @@
   * compatibility between X11R6-xtrans and gnuemacs v18.58.
   */
  #include <X11/Xtrans/Xtransint.h>
-@@ -192,6 +199,19 @@
+@@ -181,6 +188,19 @@ xthread_t (*_Xthread_self_fn)(void) = NU
  
  #endif /* MUSTCOPY */
  
@@ -448,7 +450,7 @@
  typedef union {
      xReply rep;
      char buf[BUFSIZE];
-@@ -228,7 +248,141 @@
+@@ -217,6 +237,140 @@ static xReq _dummy_request = {
  	0, 0, 0
  };
  
@@ -482,7 +484,7 @@
 +        } \
 +}
 +
- /*
++/*
 + * Wait for the server to open up enough buffer space for us to
 + * continue writing. Since the inbound connection is shared with client
 + * traffic a condition variable is used to block until the Xserver
@@ -586,11 +588,10 @@
 +
 +#endif /* SME */
 +
-+/*
+ /*
   * This is an OS dependent routine which:
   * 1) returns as soon as the connection can be written on....
-  * 2) if the connection can be read, must enqueue events and handle errors,
-@@ -315,7 +469,7 @@
+@@ -304,7 +458,7 @@ _XWaitForWritable(
  	{
  	    _XAlignedBuffer buf;
  	    BytesReadable_t pend;
@@ -599,14 +600,14 @@
  	    register xReply *rep;
  
  	    /* find out how much data can be read */
-@@ -670,7 +824,25 @@
+@@ -678,6 +832,24 @@ static void _XFlushInt(
  		dpy->trans_conn->fd = dpy->fd;
  	}
  	/* End gnuemacs v18.58 compatability fix. */
 +#ifdef SUNSOFT
 +        if (dpy->smeBuffer) {
 +                smeRegion *smeBp = (smeRegion *) dpy->smeBuffer;
- 
++
 +                size = (long)(dpy->bufptr - dpy->buffer);
 +                if (!size) return;
 +                smeConnQueueIn (dpy,smeBp,dpy->buffer,size,_conn_buf_size);
@@ -621,11 +622,10 @@
 +        }
 +        else {
 +#endif /* SME */
-+
+ 
  	/* This fix resets the bufptr to the front of the buffer so
  	 * additional appends to the bufptr will not corrupt memory. Since
- 	 * the server is down, these appends are no-op's anyway but
-@@ -692,7 +864,7 @@
+@@ -700,7 +872,7 @@ static void _XFlushInt(
  	    }
  	}
  #endif
@@ -634,7 +634,7 @@
  	if (!size) return;
  #ifdef XTHREADS
  	dpy->flags |= XlibDisplayWriting;
-@@ -753,6 +925,11 @@
+@@ -761,6 +933,11 @@ static void _XFlushInt(
  #ifdef XTHREADS
  	dpy->flags &= ~XlibDisplayWriting;
  #endif
@@ -646,7 +646,7 @@
  }
  
  int
-@@ -760,7 +937,7 @@
+@@ -768,7 +945,7 @@ _XEventsQueued(
      register Display *dpy,
      int mode)
  {
@@ -655,7 +655,7 @@
  	BytesReadable_t pend;
  	_XAlignedBuffer buf;
  	register xReply *rep;
-@@ -884,7 +1061,6 @@
+@@ -892,7 +1069,6 @@ _XEventsQueued(
  #endif /* XTHREADS*/
  	{
  	    read_buf = buf.buf;
@@ -663,7 +663,7 @@
  	    if (len < SIZEOF(xReply)
  #ifdef XTHREADS
  		|| dpy->async_handlers
-@@ -956,7 +1132,7 @@
+@@ -964,7 +1140,7 @@ void _XReadEvents(
  {
  	_XAlignedBuffer buf;
  	BytesReadable_t pend;
@@ -672,7 +672,7 @@
  	register xReply *rep;
  	Bool not_yet_flushed = True;
  	char *read_buf;
-@@ -1420,8 +1596,84 @@
+@@ -1428,8 +1604,84 @@ _XSend (
  	long skip, dbufsize, padsize, total, todo;
  	_XExtension *ext;
  
@@ -758,7 +758,7 @@
  #ifdef XTHREADS
  	dpy->flags |= XlibDisplayWriting;
  	/* make sure no one else can put in data */
-@@ -1525,9 +1777,66 @@
+@@ -1533,9 +1785,66 @@ _XSend (
  #ifdef XTHREADS
  	dpy->flags &= ~XlibDisplayWriting;
  #endif
--- a/open-src/lib/libXcomposite/Makefile	Mon Jun 07 13:50:41 2010 -0700
+++ b/open-src/lib/libXcomposite/Makefile	Fri Jun 11 06:38:19 2010 -0700
@@ -29,11 +29,11 @@
 MODULE_NAME=libXcomposite
 
 # Version number (used in path names)
-MODULE_VERSION=0.4.1
+MODULE_VERSION=0.4.2
 
 # Checksums for upstream tarball
-TARBALL_MD5  = 0f1367f57fdf5df17a8dd71d0fa68248
-TARBALL_SHA1 = 959180b067c64f3f7ac06e85400bd265e5579031
+TARBALL_MD5  = e38dc98509149083f6c31b49b484e63c
+TARBALL_SHA1 = d6fade1cb5f9174e702d9e751ddc2b341e946e3a
 
 # Patches to apply to source after unpacking, in order
 SOURCE_PATCHES = 
--- a/open-src/lib/libXdamage/Makefile	Mon Jun 07 13:50:41 2010 -0700
+++ b/open-src/lib/libXdamage/Makefile	Fri Jun 11 06:38:19 2010 -0700
@@ -29,11 +29,11 @@
 MODULE_NAME=libXdamage
 
 # Version number (used in path names)
-MODULE_VERSION=1.1.2
+MODULE_VERSION=1.1.3
 
 # Checksums for upstream tarball
-TARBALL_MD5  = b42780bce703ec202a33e5693991c09d
-TARBALL_SHA1 = dc1fbc938e9bbc859c70cf2087440fc15b00bb1e
+TARBALL_MD5  = 44774e1a065158b52f1a0da5100cebec
+TARBALL_SHA1 = 7d96e8de107fede16951cb47d5e147630fbc7dee
 
 # Patches to apply to source after unpacking, in order
 SOURCE_PATCHES = 
--- a/open-src/lib/libXext/Makefile	Mon Jun 07 13:50:41 2010 -0700
+++ b/open-src/lib/libXext/Makefile	Fri Jun 11 06:38:19 2010 -0700
@@ -29,16 +29,14 @@
 MODULE_NAME=libXext
 
 # Version number (used in path names)
-MODULE_VERSION=1.1.1
+MODULE_VERSION=1.1.2
 
 # Checksums for upstream tarball
-TARBALL_MD5  = c417c0e8df39a067f90a2a2e7133637d
-TARBALL_SHA1 = c2eb8d8d760c6881e51c938812764d1d6cefd51c
+TARBALL_MD5  = 9e51f9cb7e0a38c7099ac1c0de1a1add
+TARBALL_SHA1 = b48a4e55d21e5ce9dd3356281f32e00b17b4c9f7
 
 # Patches to apply to source after unpacking, in order
 SOURCE_PATCHES = \
-	server-compat.patch,-p1 \
-	lint-flags.patch,-p1 \
 	shm.patch \
 	sun-exts.patch
 
--- a/open-src/lib/libXext/lint-flags.patch	Mon Jun 07 13:50:41 2010 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,52 +0,0 @@
-From 8bb6a7c3eaefe9449a1ddf587f57af70635cd1bf Mon Sep 17 00:00:00 2001
-From: Alan Coopersmith <[email protected]>
-Date: Mon, 2 Nov 2009 16:34:14 -0800
-Subject: [PATCH] Fix CFLAGS/CPPFLAGS so lint works properly
-
-Signed-off-by: Alan Coopersmith <[email protected]>
----
- configure.ac    |    2 --
- src/Makefile.am |    4 +++-
- 2 files changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 8c674a9..fa93255 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -36,7 +36,6 @@ XORG_DEFAULT_OPTIONS
- 
- # Checks for pkg-config packages
- PKG_CHECK_MODULES(XEXT, [xproto >= 7.0.13] [x11 >= 1.1.99.1] [xextproto >= 7.0.99.2])
--XEXT_CFLAGS="$CWARNFLAGS $XEXT_CFLAGS"
- AC_SUBST(XEXT_CFLAGS)
- AC_SUBST(XEXT_LIBS)
- 
-@@ -53,7 +52,6 @@ XORG_PROG_RAWCPP
- dnl Allow checking code with lint, sparse, etc.
- XORG_WITH_LINT
- XORG_LINT_LIBRARY([Xext])
--LINT_FLAGS="${LINT_FLAGS} ${XEXT_CFLAGS}"
- 
- AC_OUTPUT([Makefile
-            man/Makefile
-diff --git a/src/Makefile.am b/src/Makefile.am
-index 6a7d379..b9b43f7 100644
---- a/src/Makefile.am
-+++ b/src/Makefile.am
-@@ -1,10 +1,12 @@
- lib_LTLIBRARIES=libXext.la
- 
--AM_CFLAGS=\
-+AM_CPPFLAGS=\
-           -I$(top_srcdir)/include \
-           -I$(top_srcdir)/include/X11/extensions\
-           $(XEXT_CFLAGS) $(MALLOC_ZERO_CFLAGS)
- 
-+AM_CFLAGS=$(CWARNFLAGS)
-+
- libXext_la_LDFLAGS = -version-number $(XEXT_SOREV) -no-undefined
- 
- libXext_la_LIBADD = $(XEXT_LIBS)
--- 
-1.5.6.5
-
--- a/open-src/lib/libXext/server-compat.patch	Mon Jun 07 13:50:41 2010 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,82 +0,0 @@
-From 9f94bf9de7607c11ab82667a73a4160d705e355c Mon Sep 17 00:00:00 2001
-From: Keith Packard <[email protected]>
-Date: Tue, 3 Nov 2009 14:42:35 -0800
-Subject: [PATCH] Make library headers compatible with old server builds
-
-Old servers (1.6 and before) included the extension library headers
-instead of using separate server header files. This patch makes the
-library headers compatibile with the server by hiding the library
-definitions from the server build.
-
-Signed-off-by: Keith Packard <[email protected]>
-Reviewed-by: Peter Hutterer <[email protected]>
----
- include/X11/extensions/XShm.h |    2 ++
- include/X11/extensions/dpms.h |    2 ++
- include/X11/extensions/sync.h |    6 ++++++
- 3 files changed, 10 insertions(+), 0 deletions(-)
-
-diff --git a/include/X11/extensions/XShm.h b/include/X11/extensions/XShm.h
-index b58ca63..44eaf0b 100644
---- a/include/X11/extensions/XShm.h
-+++ b/include/X11/extensions/XShm.h
-@@ -35,6 +35,7 @@ in this Software without prior written authorization from The Open Group.
- #include <X11/Xfuncproto.h>
- #include <X11/extensions/shm.h>
- 
-+#ifndef _XSHM_SERVER_
- typedef unsigned long ShmSeg;
- 
- typedef struct {
-@@ -132,5 +133,6 @@ Pixmap XShmCreatePixmap(
- );
- 
- _XFUNCPROTOEND
-+#endif /* _XSHM_SERVER_ */
- 
- #endif
-diff --git a/include/X11/extensions/dpms.h b/include/X11/extensions/dpms.h
-index db06d47..9091fdc 100644
---- a/include/X11/extensions/dpms.h
-+++ b/include/X11/extensions/dpms.h
-@@ -35,6 +35,7 @@ Equipment Corporation.
- #include <X11/Xmd.h>
- #include <X11/extensions/dpmsconst.h>
- 
-+#ifndef DPMS_SERVER
- _XFUNCPROTOBEGIN
- 
- extern Bool DPMSQueryExtension(Display *, int *, int *);
-@@ -48,6 +49,7 @@ extern Status DPMSForceLevel(Display *, CARD16);
- extern Status DPMSInfo(Display *, CARD16 *, BOOL *);
- 
- _XFUNCPROTOEND
-+#endif
- 
- #endif /* !_X11_EXTENSIONS_DPMS_H */
- 
-diff --git a/include/X11/extensions/sync.h b/include/X11/extensions/sync.h
-index 2de222a..b327f69 100644
---- a/include/X11/extensions/sync.h
-+++ b/include/X11/extensions/sync.h
-@@ -56,6 +56,10 @@ PERFORMANCE OF THIS SOFTWARE.
- #include <X11/Xfuncproto.h>
- #include <X11/extensions/syncconst.h>
- 
-+#ifdef _SYNC_SERVER
-+#include <X11/extensions/syncproto.h>
-+#else
-+
- _XFUNCPROTOBEGIN
- /* get rid of macros so we can define corresponding functions */
- #undef XSyncIntToValue
-@@ -335,4 +339,6 @@ extern Status XSyncGetPriority(
- 
- _XFUNCPROTOEND
- 
-+#endif /* _SYNC_SERVER */
-+
- #endif /* _SYNC_H_ */
--- 
-1.5.6.5
-
--- a/open-src/lib/libXfixes/Makefile	Mon Jun 07 13:50:41 2010 -0700
+++ b/open-src/lib/libXfixes/Makefile	Fri Jun 11 06:38:19 2010 -0700
@@ -29,11 +29,11 @@
 MODULE_NAME=libXfixes
 
 # Version number (used in path names)
-MODULE_VERSION=4.0.4
+MODULE_VERSION=4.0.5
 
 # Checksums for upstream tarball
-TARBALL_MD5  = 7f2c40852eb337b237ad944ca5c30d49
-TARBALL_SHA1 = 3f2d1c473855ba0cf13137a80d585df7fe37111c
+TARBALL_MD5  = 1b4b8386bd5d1751b2c7177223ad4629
+TARBALL_SHA1 = 255dfb9a8c50d795c60711ec4764f76cd0620cbf
 
 # Patches to apply to source after unpacking, in order
 SOURCE_PATCHES = soversion.patch
--- a/open-src/lib/libXrender/Makefile	Mon Jun 07 13:50:41 2010 -0700
+++ b/open-src/lib/libXrender/Makefile	Fri Jun 11 06:38:19 2010 -0700
@@ -29,11 +29,11 @@
 MODULE_NAME=libXrender
 
 # Version number (used in path names)
-MODULE_VERSION=0.9.5
+MODULE_VERSION=0.9.6
 
 # Checksums for upstream tarball
-TARBALL_MD5  = 276dd9e85daf0680616cd9f132b354c9
-TARBALL_SHA1 = 278f762feb8e754aa5214175abf580ff486281f7
+TARBALL_MD5  = 3b3b7d076c2384b6c600c0b5f4ba971f
+TARBALL_SHA1 = 65bd96dc17da6b064f95109da02d9c9d14cb06dc
 
 # Patches to apply to source after unpacking, in order
 SOURCE_PATCHES = 
--- a/open-src/util/util-macros/Makefile	Mon Jun 07 13:50:41 2010 -0700
+++ b/open-src/util/util-macros/Makefile	Fri Jun 11 06:38:19 2010 -0700
@@ -27,11 +27,11 @@
 MODULE_NAME=util-macros
 
 # Version number (used in path names)
-MODULE_VERSION=1.7.0
+MODULE_VERSION=1.8.0
 
 # Checksums for upstream tarball
-TARBALL_MD5  = 0c6d2cedcfc83d2f2d873d489d868230
-TARBALL_SHA1 = 82f832a47ab6ea6aca11f29161e88b14958d883d
+TARBALL_MD5  = 0c9334201b0ed5ec187faab0bb713329
+TARBALL_SHA1 = cbe9920712789ecd25386956649db0d666642f0f
 
 # Patches to apply to source after unpacking, in order
 SOURCE_PATCHES=	
--- a/packages/SUNWxwpmn/prototype	Mon Jun 07 13:50:41 2010 -0700
+++ b/packages/SUNWxwpmn/prototype	Fri Jun 11 06:38:19 2010 -0700
@@ -687,7 +687,7 @@
 f none share/man/man3X11/XkbGetCompatMap.3X11			0444 root bin
 f none share/man/man3X11/XkbGetControls.3X11			0444 root bin
 f none share/man/man3X11/XkbGetControlsChanges.3X11		0444 root bin
-f none share/man/man3X11/XkbGetDetectableAutorepeat.3X11	0444 root bin
+f none share/man/man3X11/XkbGetDetectableAutoRepeat.3X11	0444 root bin
 f none share/man/man3X11/XkbGetDeviceButtonActions.3X11		0444 root bin
 f none share/man/man3X11/XkbGetDeviceInfo.3X11			0444 root bin
 f none share/man/man3X11/XkbGetDeviceInfoChanges.3X11		0444 root bin
@@ -780,7 +780,7 @@
 f none share/man/man3X11/XkbSetCompatMap.3X11			0444 root bin
 f none share/man/man3X11/XkbSetControls.3X11			0444 root bin
 f none share/man/man3X11/XkbSetDebuggingFlags.3X11		0444 root bin
-f none share/man/man3X11/XkbSetDetectableAutorepeat.3X11	0444 root bin
+f none share/man/man3X11/XkbSetDetectableAutoRepeat.3X11	0444 root bin
 f none share/man/man3X11/XkbSetDeviceButtonActions.3X11		0444 root bin
 f none share/man/man3X11/XkbSetDeviceInfo.3X11			0444 root bin
 f none share/man/man3X11/XkbSetIgnoreLockMods.3X11		0444 root bin