[Pkg-ime-devel] Bug#642317: xim doesn't work; the location to install gtk im modules doesn't consider multiarch

Steve Langasek steve.langasek at canonical.com
Tue Oct 18 06:39:57 UTC 2011


Package: ibus
Version: 1.4.0-1
Followup-For: Bug #642317
User: ubuntu-devel at lists.ubuntu.com
Usertags: origin-ubuntu precise ubuntu-patch

Hi folks,

Please find attached a patch for this issue.  It includes both an upstream
patch, fixing the configure script to always install the gtk module to
*gtk's* configured library path instead of the one passed to ./configure;
and changes to the Debian packaging to always build against the
multiarch-enabled version of gtk.

The changelog for this change in Ubuntu is:

    - configure.ac: look at the gtk+2.0 pkg-config settings for the directory
      we should install the im module to, not our own configured libdir
      setting.
    - debian/control: build-depend on the multiarched gtk+2.0.
    - debian/gtk-ibus.install: look for the gtk module in the multiarch path.
    - mark ibus-gtk Multi-Arch: same.  It won't be coinstallable yet without
      a multiarch libibus, but it doesn't hurt.

Thanks for considering the patch.

-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                    http://www.debian.org/
slangasek at ubuntu.com                                     vorlon at debian.org
-------------- next part --------------
=== modified file 'debian/control'
--- debian/control	2011-09-03 23:17:02 +0000
+++ debian/control	2011-10-18 05:59:37 +0000
@@ -11,7 +11,7 @@
  autoconf,
  automake,
  libtool,
- libgtk2.0-dev,
+ libgtk2.0-dev (>= 2.24.5-4),
  libgtk-3-dev,
  libdbus-glib-1-dev,
  python-dev (>= 2.6.6-3~),
@@ -69,6 +70,7 @@
 
 Package: ibus-gtk
 Architecture: any
+Multi-Arch: same
 Depends: ${shlibs:Depends}, ${misc:Depends}
 Description: Intelligent Input Bus - GTK+2 support
  IBus is an Intelligent Input Bus. It is a new input framework for the Linux

=== modified file 'debian/ibus-gtk.install'
--- debian/ibus-gtk.install	2009-06-26 22:47:52 +0000
+++ debian/ibus-gtk.install	2011-10-18 05:49:19 +0000
@@ -1 +1 @@
-usr/lib/gtk-2.0/2.10.0/immodules/im-ibus.so
+usr/lib/*/gtk-2.0/2.10.0/immodules/im-ibus.so

=== added file 'debian/patches/proper-gtk-plugin-path.patch'
--- debian/patches/proper-gtk-plugin-path.patch	1970-01-01 00:00:00 +0000
+++ debian/patches/proper-gtk-plugin-path.patch	2011-10-18 06:03:53 +0000
@@ -0,0 +1,28 @@
+Index: trunk/configure.ac
+===================================================================
+--- trunk.orig/configure.ac
++++ trunk/configure.ac
+@@ -186,7 +186,8 @@
+ if test x"$enable_gtk2" = x"yes"; then
+     # check for gdk2
+     gtk2_binary_version=`$PKG_CONFIG --variable=gtk_binary_version gtk+-2.0`
+-    GTK2_IM_MODULEDIR="$libdir"/gtk-2.0/$gtk2_binary_version/immodules
++    gtk2_libdir=`$PKG_CONFIG --variable=libdir gtk+-2.0`
++    GTK2_IM_MODULEDIR="$gtk2_libdir"/gtk-2.0/$gtk2_binary_version/immodules
+ 
+     PKG_CHECK_MODULES(GDK2, [
+         gdk-2.0
+Index: trunk/configure
+===================================================================
+--- trunk.orig/configure
++++ trunk/configure
+@@ -15207,7 +15207,8 @@
+ if test x"$enable_gtk2" = x"yes"; then
+     # check for gdk2
+     gtk2_binary_version=`$PKG_CONFIG --variable=gtk_binary_version gtk+-2.0`
+-    GTK2_IM_MODULEDIR="$libdir"/gtk-2.0/$gtk2_binary_version/immodules
++    gtk2_libdir=`$PKG_CONFIG --variable=libdir gtk+-2.0`
++    GTK2_IM_MODULEDIR="$gtk2_libdir"/gtk-2.0/$gtk2_binary_version/immodules
+ 
+ 
+ pkg_failed=no

=== added file 'debian/patches/series'
--- debian/patches/series	1970-01-01 00:00:00 +0000
+++ debian/patches/series	2011-10-18 06:16:39 +0000
@@ -0,0 +1,1 @@
+proper-gtk-plugin-path.patch



More information about the Pkg-ime-devel mailing list