diff --git a/.cvsignore b/.cvsignore index 89972c1..160bb6e 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -libxklavier-3.8.tar.bz2 +libxklavier-3.9.tar.bz2 diff --git a/libxklavier-1.14-werror.patch b/libxklavier-1.14-werror.patch deleted file mode 100644 index 0a575ad..0000000 --- a/libxklavier-1.14-werror.patch +++ /dev/null @@ -1,22 +0,0 @@ ---- libxklavier-1.14/libxklavier/Makefile.am.werror 2005-02-01 11:24:34.684925000 -0500 -+++ libxklavier-1.14/libxklavier/Makefile.am 2005-02-01 11:24:44.044556000 -0500 -@@ -14,7 +14,7 @@ - ENABLE_XMM_SUPPORT_CFLAG = -DDISABLE_XMM_SUPPORT=1 - endif - --AM_CFLAGS=-Wall -Werror -DDATA_DIR=\"$(datadir)/$(PACKAGE)\" \ -+AM_CFLAGS=-Wall -DDATA_DIR=\"$(datadir)/$(PACKAGE)\" \ - -I. -I$(includedir) $(XML_CFLAGS) -I$(x_includes) -I$(top_srcdir) \ - $(XKB_HEADERS_PRESENT_CFLAG) \ - $(ENABLE_XKB_SUPPORT_CFLAG) \ ---- libxklavier-1.14/libxklavier/Makefile.in.werror 2005-02-01 11:25:24.981578000 -0500 -+++ libxklavier-1.14/libxklavier/Makefile.in 2005-02-01 11:25:35.528023000 -0500 -@@ -205,7 +205,7 @@ - @ENABLE_XKB_SUPPORT_TRUE@ENABLE_XKB_SUPPORT_CFLAG = -DENABLE_XKB_SUPPORT=1 - @ENABLE_XMM_SUPPORT_FALSE@ENABLE_XMM_SUPPORT_CFLAG = -DDISABLE_XMM_SUPPORT=1 - @ENABLE_XMM_SUPPORT_TRUE@ENABLE_XMM_SUPPORT_CFLAG = -DENABLE_XMM_SUPPORT=1 --AM_CFLAGS = -Wall -Werror -DDATA_DIR=\"$(datadir)/$(PACKAGE)\" \ -+AM_CFLAGS = -Wall -DDATA_DIR=\"$(datadir)/$(PACKAGE)\" \ - -I. -I$(includedir) $(XML_CFLAGS) -I$(x_includes) -I$(top_srcdir) \ - $(XKB_HEADERS_PRESENT_CFLAG) \ - $(ENABLE_XKB_SUPPORT_CFLAG) \ diff --git a/libxklavier-2.1-vnc-bug.patch b/libxklavier-2.1-vnc-bug.patch deleted file mode 100644 index 28a4c23..0000000 --- a/libxklavier-2.1-vnc-bug.patch +++ /dev/null @@ -1,24 +0,0 @@ ---- libxklavier-2.1/libxklavier/xklavier_util.orig Wed Feb 27 20:14:01 2008 -+++ libxklavier-2.1/libxklavier/xklavier_util.c Wed Feb 27 20:16:52 2008 -@@ -114,7 +114,10 @@ xkl_get_debug_window_title(XklEngine * e - static gchar sname[33]; - gchar *name; - strcpy(sname, "NULL"); -- if (win != (Window) NULL) { -+ -+ if (win == (Window *) PointerRoot) { -+ strcpy(sname, "ROOT"); -+ } else if (win != (Window *) None) { - name = xkl_engine_get_window_title(engine, win); - if (name != NULL) { - snprintf(sname, sizeof(sname), "%.32s", name); ---- libxklavier-2.1/libxklavier/xklavier_toplevel.orig Wed Feb 27 20:36:09 2008 -+++ libxklavier-2.1/libxklavier/xklavier_toplevel.c Wed Feb 27 20:36:14 2008 -@@ -205,6 +205,7 @@ xkl_engine_find_toplevel_window(XklEngin - gboolean rv; - - if (win == (Window) NULL -+ || win == (Window *) PointerRoot - || win == xkl_engine_priv(engine, root_window)) { - *toplevel_win_out = (Window) NULL; - xkl_last_error_message = "The window is either 0 or root"; diff --git a/libxklavier-2.1-xkb-path-autogen.patch b/libxklavier-2.1-xkb-path-autogen.patch deleted file mode 100644 index 17bf1d2..0000000 --- a/libxklavier-2.1-xkb-path-autogen.patch +++ /dev/null @@ -1,51 +0,0 @@ -This patch is generated from running autogen.sh after applying -the upstream patch to configure.in (see libxklaver-2.1-xkb-path.patch) -and then removing the portions which are not relevant. These include -changes to whitespace, quoting, line numbers, etc. - -diff -u config.h.in.xkb-path-autogen config.h.in ---- config.h.in.xkb-path-autogen 2005-12-27 13:21:11.000000000 -0400 -+++ config.h.in 2005-12-27 18:02:40.000000000 -0400 -@@ -75,6 +75,9 @@ - /* Base for XKB configuration */ - #undef XKB_BASE - -+/* Base for XKB executables */ -+#undef XKB_BIN_BASE -+ - /* Default XKB set of rules */ - #undef XKB_DEFAULT_RULESET - -diff -u configure.xkb-path-autogen configure ---- configure.xkb-path-autogen 2005-12-27 13:21:11.000000000 -0400 -+++ configure 2005-12-27 18:02:41.000000000 -0400 -@@ -1068,6 +1068,7 @@ - --without-libiconv-prefix don't search for libiconv in includedir and libdir - --with-x use the X Window System - --with-xkb-base=DIR XKB base path (by default it is /usr/X11R6/lib/X11/xkb) -+ --with-xkb-bin-base=DIR XKB executables base path - --with-xkb-default-ruleset=RULES XKB default set of rules (by default it is base) - --with-xmodmap-base=DIR xmodmap base path (by default it is /usr/share/xmodmap) - -@@ -20693,6 +20744,21 @@ - - - -+# Check whether --with-xkb_bin_base or --without-xkb_bin_base was given. -+if test "${with_xkb_bin_base+set}" = set; then -+ withval="$with_xkb_bin_base" -+ xkb_bin_base="$withval" -+else -+ xkb_bin_base="$xkb_base" -+fi; -+ -+ -+cat >>confdefs.h <<_ACEOF -+#define XKB_BIN_BASE "${xkb_bin_base}" -+_ACEOF -+ -+ -+ - # Check whether --with-xkb_default_ruleset or --without-xkb_default_ruleset was given. - if test "${with_xkb_default_ruleset+set}" = set; then - withval="$with_xkb_default_ruleset" diff --git a/libxklavier-2.1-xkb-path.patch b/libxklavier-2.1-xkb-path.patch deleted file mode 100644 index 3947666..0000000 --- a/libxklavier-2.1-xkb-path.patch +++ /dev/null @@ -1,60 +0,0 @@ -Index: configure.in -=================================================================== -RCS file: /cvs/xklavier/libxklavier/configure.in,v -retrieving revision 1.26 -retrieving revision 1.27 -diff -d -u -p -r1.26 -r1.27 ---- configure.in 11 Dec 2005 02:51:19 -0000 1.26 -+++ configure.in 26 Dec 2005 18:55:32 -0000 1.27 -@@ -57,9 +57,16 @@ AC_ARG_WITH( xkb_base, - [ --with-xkb-base=DIR XKB base path (by default it is /usr/X11R6/lib/X11/xkb)], - xkb_base="$withval", - xkb_base="$x_libraries/X11/xkb" ) -- -+ - AC_DEFINE_UNQUOTED(XKB_BASE,"${xkb_base}",Base for XKB configuration) - -+AC_ARG_WITH( xkb_bin_base, -+ [ --with-xkb-bin-base=DIR XKB executables base path], -+ xkb_bin_base="$withval", -+ xkb_bin_base="$xkb_base" ) -+ -+AC_DEFINE_UNQUOTED(XKB_BIN_BASE,"${xkb_bin_base}",Base for XKB executables) -+ - AC_ARG_WITH( xkb_default_ruleset, - [ --with-xkb-default-ruleset=RULES XKB default set of rules (by default it is base)], - xkb_default_ruleset="$withval", -Index: libxklavier/xklavier_config_xkb.c -=================================================================== -RCS file: /cvs/xklavier/libxklavier/libxklavier/xklavier_config_xkb.c,v -retrieving revision 1.30 -retrieving revision 1.31 -diff -d -u -p -r1.30 -r1.31 ---- libxklavier/xklavier_config_xkb.c 3 Dec 2005 13:31:58 -0000 1.30 -+++ libxklavier/xklavier_config_xkb.c 26 Dec 2005 18:55:32 -0000 1.31 -@@ -24,7 +24,7 @@ - /* For "bad" X servers we hold our own copy */ - #define XML_CFG_FALLBACK_PATH ( DATA_DIR "/xfree86.xml" ) - --#define XKBCOMP ( XKB_BASE "/xkbcomp" ) -+#define XKBCOMP ( XKB_BIN_BASE "/xkbcomp" ) - - #define XK_XKB_KEYS - #include -Index: ChangeLog -=================================================================== -RCS file: /cvs/xklavier/libxklavier/ChangeLog,v -retrieving revision 1.31 -retrieving revision 1.32 -diff -d -u -p -r1.31 -r1.32 ---- ChangeLog 11 Dec 2005 02:51:19 -0000 1.31 -+++ ChangeLog 26 Dec 2005 18:55:32 -0000 1.32 -@@ -1,3 +1,8 @@ -+2005-12-26 svu -+ -+ * configure.in, libxklavier/xklavier_config_xkb.c: adding XKB_BIN_BASE, -+ closing https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=174361 -+ - 2005-12-10 svu - - * NEWS: update for 2.1 diff --git a/libxklavier-2.1.0.2006.02.23-trap-x-error.patch b/libxklavier-2.1.0.2006.02.23-trap-x-error.patch deleted file mode 100644 index 7eaa288..0000000 --- a/libxklavier-2.1.0.2006.02.23-trap-x-error.patch +++ /dev/null @@ -1,42 +0,0 @@ ---- libxklavier-2.1.0.2006.02.23/libxklavier/xklavier_config_xkb.c.trap-x-error 2006-03-09 15:10:56.000000000 -0500 -+++ libxklavier-2.1.0.2006.02.23/libxklavier/xklavier_config_xkb.c 2006-03-09 15:35:13.000000000 -0500 -@@ -158,6 +158,20 @@ void _XklXkbConfigCleanupNative( XkbComp - free(componentNamesPtr->symbols); - free(componentNamesPtr->geometry); - } -+static int (* _XklTrapBeforeXkbWriteToServer) (Display *, XErrorEvent *); -+ -+static int _XklXkbWriteToServerTrap (Display *dpy, -+ XErrorEvent *error_event) -+{ -+ if (error_event->error_code != 0 && -+ error_event->error_code != BadValue && -+ _XklTrapBeforeXkbWriteToServer != NULL) -+ { -+ return _XklTrapBeforeXkbWriteToServer (dpy, error_event); -+ } -+ -+ return 0; -+} - - static XkbDescPtr _XklConfigGetKeyboard( XkbComponentNamesPtr componentNamesPtr, Bool activate ) - { -@@ -243,8 +257,17 @@ static XkbDescPtr _XklConfigGetKeyboard( - XklDebug( 150, "Loaded legal keymap\n" ); - if( activate ) - { -+ Bool config_was_written = False; -+ - XklDebug( 150, "Activating it...\n" ); -- if( XkbWriteToServer(&result) ) -+ -+ _XklTrapBeforeXkbWriteToServer = XSetErrorHandler (_XklXkbWriteToServerTrap); -+ -+ config_was_written = XkbWriteToServer (&result); -+ -+ XSetErrorHandler (_XklTrapBeforeXkbWriteToServer); -+ -+ if (config_was_written) - { - XklDebug( 150, "Updating the keyboard...\n" ); - xkb = result.xkb; diff --git a/libxklavier-3.1-crash.patch b/libxklavier-3.1-crash.patch deleted file mode 100644 index f1a1e2f..0000000 --- a/libxklavier-3.1-crash.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- libxklavier-3.1/libxklavier/xklavier_config.c.crash 2006-11-04 22:56:24.000000000 -0500 -+++ libxklavier-3.1/libxklavier/xklavier_config.c 2006-11-04 22:56:54.000000000 -0500 -@@ -280,7 +280,7 @@ - return FALSE; - - nodes = xpath_obj->nodesetval; -- if (nodes != NULL && nodes->nodeTab != NULL) { -+ if (nodes != NULL && nodes->nodeTab != NULL && *nodes->nodeTab != NULL) { - rv = xkl_read_config_item(config, *nodes->nodeTab, pitem); - if (pnode != NULL) { - *pnode = *nodes->nodeTab; diff --git a/libxklavier.spec b/libxklavier.spec index 31c1f86..014531d 100644 --- a/libxklavier.spec +++ b/libxklavier.spec @@ -1,7 +1,7 @@ Summary: High-level API for X Keyboard Extension Name: libxklavier -Version: 3.8 -Release: 4%{?dist} +Version: 3.9 +Release: 1%{?dist} License: LGPLv2+ Group: Development/Libraries URL: http://gswitchit.sourceforge.net/ @@ -13,15 +13,11 @@ BuildRequires: libXi-devel BuildRequires: libxml2-devel BuildRequires: glib2-devel >= 2.6.0 BuildRequires: iso-codes-devel -Source: http://download.gnome.org/sources/libxklavier/3.8/%{name}-%{version}.tar.bz2 -BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) - -# https://bugs.freedesktop.org/show_bug.cgi?id=17651 -Patch0: sax-leak.patch -Patch1: xkbcomp-spew.patch +Source: http://download.gnome.org/sources/libxklavier/3.9/%{name}-%{version}.tar.bz2 +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) %description -libxklavier is a library providing a high-level API for the X Keyboard +libxklavier is a library providing a high-level API for the X Keyboard Extension (XKB). This library is intended to support XFree86 and other commercial X servers. It is useful for creating XKB-related software (layout indicators etc). @@ -40,13 +36,11 @@ needed to develop libxklavier applications. %prep %setup -q -%patch0 -p1 -b .sax-leak -%patch1 -p1 -b .xkbcomp-spew %build %configure --disable-doxygen --with-xkb-base='%{_datadir}/X11/xkb' --with-xkb-bin-base='%{_bindir}' -make +make %install rm -rf $RPM_BUILD_ROOT @@ -65,7 +59,7 @@ rm -rf %{buildroot} %files %defattr(-, root, root) -%doc AUTHORS NEWS README COPYING.LIB +%doc AUTHORS NEWS README COPYING.LIB %{_libdir}/lib*.so.* %files devel @@ -77,6 +71,9 @@ rm -rf %{buildroot} %{_datadir}/gtk-doc/html/libxklavier/ %changelog +* Thu Mar 19 2009 Matthias Clasen - 3.9-1 +- Update to 3.9 + * Sat Mar 7 2009 Matthias Clasen - 3.8-4 - Suppress xkbcomp spew in .xsession-errors diff --git a/sax-leak.patch b/sax-leak.patch deleted file mode 100644 index 314ebe3..0000000 --- a/sax-leak.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff -up libxklavier-3.7/libxklavier/xklavier_config.c.sax-leak libxklavier-3.7/libxklavier/xklavier_config.c ---- libxklavier-3.7/libxklavier/xklavier_config.c.sax-leak 2008-09-19 00:25:10.000000000 -0400 -+++ libxklavier-3.7/libxklavier/xklavier_config.c 2008-09-19 00:25:41.000000000 -0400 -@@ -480,15 +480,13 @@ xkl_config_registry_load_from_file(XklCo - const gchar * file_name) - { - xmlParserCtxtPtr ctxt = xmlNewParserCtxt(); -- xmlSAXHandler *saxh = g_new0(xmlSAXHandler, 1); - xkl_debug(100, "Loading XML registry from file %s\n", file_name); - - /* Filter out all unneeded languages! */ -- xmlSAX2InitDefaultSAXHandler(saxh, TRUE); -- saxh->startElementNs = xkl_xml_sax_start_element_ns; -- saxh->endElementNs = xkl_xml_sax_end_element_ns; -- saxh->characters = xkl_xml_sax_characters; -- ctxt->sax = saxh; -+ xmlSAX2InitDefaultSAXHandler(ctxt->sax, TRUE); -+ ctxt->sax->startElementNs = xkl_xml_sax_start_element_ns; -+ ctxt->sax->endElementNs = xkl_xml_sax_end_element_ns; -+ ctxt->sax->characters = xkl_xml_sax_characters; - - xkl_config_registry_priv(config, doc) = - xmlCtxtReadFile(ctxt, file_name, NULL, XML_PARSE_NOBLANKS); diff --git a/sources b/sources index b5ca1bc..0503d31 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -e4f1b9e600c4159f39d38ab94d56cf9b libxklavier-3.8.tar.bz2 +c8ff3ba6daf899be7ec2a626894852b9 libxklavier-3.9.tar.bz2 diff --git a/vnc-bug.patch b/vnc-bug.patch deleted file mode 100644 index 0c8ff24..0000000 --- a/vnc-bug.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up libxklavier-3.6/libxklavier/xklavier_util.c.vnc-bug libxklavier-3.6/libxklavier/xklavier_util.c ---- libxklavier-3.6/libxklavier/xklavier_util.c.vnc-bug 2008-03-01 16:42:49.000000000 -0500 -+++ libxklavier-3.6/libxklavier/xklavier_util.c 2008-08-30 12:43:27.000000000 -0400 -@@ -118,7 +118,10 @@ xkl_get_debug_window_title(XklEngine * e - static gchar sname[33]; - gchar *name; - strcpy(sname, "NULL"); -- if (win != (Window) NULL) { -+ -+ if (win == (Window *) PointerRoot) { -+ strcpy(sname, "ROOT"); -+ } else if (win != (Window *) None) { - name = xkl_engine_get_window_title(engine, win); - if (name != NULL) { - snprintf(sname, sizeof(sname), "%.32s", name); diff --git a/xkbcomp-spew.patch b/xkbcomp-spew.patch deleted file mode 100644 index bef9a3b..0000000 --- a/xkbcomp-spew.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff -up libxklavier-3.8/libxklavier/xklavier_config_xkb.c.warn-spew libxklavier-3.8/libxklavier/xklavier_config_xkb.c ---- libxklavier-3.8/libxklavier/xklavier_config_xkb.c.warn-spew 2009-03-07 15:11:15.940524703 -0500 -+++ libxklavier-3.8/libxklavier/xklavier_config_xkb.c 2009-03-07 15:14:27.436489725 -0500 -@@ -243,11 +243,11 @@ xkl_config_get_keyboard(XklEngine * engi - case 0: - /* child */ - xkl_debug(160, "Executing %s\n", XKBCOMP); -- xkl_debug(160, "%s %s %s %s %s %s %s\n", -- XKBCOMP, XKBCOMP, "-I", -+ xkl_debug(160, "%s %s %s %s %s %s %s %s\n", -+ XKBCOMP, XKBCOMP, "-w0", "-I", - "-I" XKB_BASE, "-xkm", xkb_fn, - xkm_fn); -- execl(XKBCOMP, XKBCOMP, "-I", -+ execl(XKBCOMP, XKBCOMP, "-w0", "-I", - "-I" XKB_BASE, "-xkm", xkb_fn, - xkm_fn, NULL); - xkl_debug(0, "Could not exec %s: %d\n",