Control: severity -1 serious
Control: block 867713 by -1

Dear maintainer,

On Thu, Jun 29, 2017 at 02:58:55PM +0300, Dmitry Shachnev wrote:
> Uim FTBFS with gnome-panel 3.22 / 3.24, because support for out-of-process
> applets has been dropped there [1].

gnome-panel 3.24 is now in unstable (see #867713), so uim now FTBFS and
blocks the transition.

I am attaching an NMU debdiff that I am uploading to archive with a one-day
delay.

--
Dmitry Shachnev
diff -Nru uim-1.8.6+gh20161003.0.d63dadd/debian/changelog uim-1.8.6+gh20161003.0.d63dadd/debian/changelog
--- uim-1.8.6+gh20161003.0.d63dadd/debian/changelog	2016-11-06 04:10:07.000000000 +0300
+++ uim-1.8.6+gh20161003.0.d63dadd/debian/changelog	2017-07-09 16:42:53.000000000 +0300
@@ -1,3 +1,14 @@
+uim (1:1.8.6+gh20161003.0.d63dadd-2.1) unstable; urgency=medium
+
+  * Non-maintainer upload.
+  * Fix build with gnome-panel 3.24 (closes: #866388).
+    - Backport two upstream commits to use the in-process panel applet
+      (panel_applet_inprocess.patch).
+    - Update debian/uim-applet-gnome.install.
+    - Bump libpanel-applet-dev build-dependency to 3.22.
+
+ -- Dmitry Shachnev <[email protected]>  Sun, 09 Jul 2017 16:42:53 +0300
+
 uim (1:1.8.6+gh20161003.0.d63dadd-2) unstable; urgency=medium
 
   * debian/uim-{qt,gtk3,common,qt5,gtk2.0}.{postinst,prerm}:
diff -Nru uim-1.8.6+gh20161003.0.d63dadd/debian/control uim-1.8.6+gh20161003.0.d63dadd/debian/control
--- uim-1.8.6+gh20161003.0.d63dadd/debian/control	2016-10-03 14:44:10.000000000 +0300
+++ uim-1.8.6+gh20161003.0.d63dadd/debian/control	2017-07-09 16:42:46.000000000 +0300
@@ -26,7 +26,7 @@
 	libgtk-3-dev,
 	libncurses5-dev,
 	libm17n-dev,
-	libpanel-applet-dev,
+	libpanel-applet-dev (>= 3.22),
 	libpango1.0-dev,
 	libqt4-dev (>= 4:4.8.0),
 	libx11-dev,
diff -Nru uim-1.8.6+gh20161003.0.d63dadd/debian/patches/panel_applet_inprocess.patch uim-1.8.6+gh20161003.0.d63dadd/debian/patches/panel_applet_inprocess.patch
--- uim-1.8.6+gh20161003.0.d63dadd/debian/patches/panel_applet_inprocess.patch	1970-01-01 03:00:00.000000000 +0300
+++ uim-1.8.6+gh20161003.0.d63dadd/debian/patches/panel_applet_inprocess.patch	2017-07-09 16:39:01.000000000 +0300
@@ -0,0 +1,123 @@
+Description: make the GNOME Panel applet compatible with libpanel-applet2
+ * Port from out-of-process applet to in-process applet.
+ * Get the applets directory from pkg-config instead of using the
+   hard-coded path.
+Origin: upstream, commits:
+ https://github.com/uim/uim/commit/77253cd439b9ef3c
+ https://github.com/uim/uim/commit/f883892ef6cb8375
+Last-Update: 2017-06-29
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -861,6 +861,14 @@
+ 
+ AM_CONDITIONAL(GNOME3_APPLET, test "x$enable_gnome3_applet" = xyes)
+ 
++if test "x$enable_gnome3_applet" = xyes; then
++  AC_ARG_WITH([libpanel-applet-dir], [], [LIBPANEL_APPLET_DIR=$withval], [LIBPANEL_APPLET_DIR=""])
++  if test "$LIBPANEL_APPLET_DIR" == ""; then
++    LIBPANEL_APPLET_DIR=`$PKG_CONFIG --variable=libpanel_applet_dir libpanel-applet`
++  fi
++  AC_SUBST(LIBPANEL_APPLET_DIR)
++fi
++
+ AC_ARG_ENABLE(debug,
+   AC_HELP_STRING([--enable-debug],
+     [enable debugging]),
+--- a/gtk3/toolbar/Makefile.am
++++ b/gtk3/toolbar/Makefile.am
+@@ -1,51 +1,47 @@
+ EXTRA_DIST = UimApplet.panel-applet.in.in \
+-	     uim-applet-menu.xml \
+-	     org.gnome.panel.applet.UimAppletFactory.service.in
++	     uim-applet-menu.xml
+ 
+ if GNOME3_APPLET
+ helper_defs = -DUIM_DATADIR=\""$(datadir)/@PACKAGE@"\"
+ 
+-libexec_PROGRAMS = uim-toolbar-applet-gnome3
++uim_toolbar_applet_gnome3_libdir = $(pkglibdir)
++uim_toolbar_applet_gnome3_lib_LTLIBRARIES = libuim-toolbar-applet-gnome3.la
+ 
+ xmluidir = $(pkgdatadir)/ui
+ xmlui_DATA = uim-applet-menu.xml
+ 
+-uim_toolbar_applet_gnome3_LDADD = @GTK3_LIBS@ @GNOME3_APPLET_LIBS@ \
++libuim_toolbar_applet_gnome3_la_LIBADD = @GTK3_LIBS@ @GNOME3_APPLET_LIBS@ \
+ 			   $(top_builddir)/uim/libuim-scm.la \
+ 			   $(top_builddir)/uim/libuim.la \
+ 			   $(top_builddir)/uim/libuim-custom.la
+-uim_toolbar_applet_gnome3_CPPFLAGS = \
++libuim_toolbar_applet_gnome3_la_CPPFLAGS = \
+ 			   -DUIM_UIDATADIR="\"${xmluidir}\"" \
+ 			   $(helper_defs) -I$(top_srcdir) -I$(top_builddir)
+-									 
+-uim_toolbar_applet_gnome3_CFLAGS = @GTK3_CFLAGS@ @GNOME3_APPLET_CFLAGS@
++libuim_toolbar_applet_gnome3_la_LDFLAGS = \
++			   -module -avoid-version
+ 
+-uim_toolbar_applet_gnome3_SOURCES = applet-gnome3.c \
++libuim_toolbar_applet_gnome3_la_CFLAGS = @GTK3_CFLAGS@ @GNOME3_APPLET_CFLAGS@
++
++libuim_toolbar_applet_gnome3_la_SOURCES = applet-gnome3.c \
+ 			       ../../gtk2/toolbar/common-gtk.c
+ 
+-appletdir = $(datadir)/gnome-panel/5.0/applets
++APPLET_LOCATION = $(pkglibdir)/libuim-toolbar-applet-gnome3.so
++
++appletdir = $(LIBPANEL_APPLET_DIR)
+ applet_DATA = UimApplet.panel-applet
+ applet_in_files = $(applet_DATA:=.in)
+ applet_in_in_files = $(applet_in_files:=.in)
+ 
+ $(applet_in_files): $(applet_in_in_files) Makefile
+-	$(SED) s,@LIBEXECDIR@,$(libexecdir),g <$< >[email protected]
++	$(SED) s,@APPLET_LOCATION@,$(APPLET_LOCATION),g <$< >[email protected]
+ 	$(SED) s,@UIM_PIXMAPSDIR@,$(uim_pixmapsdir),g <[email protected] >$@
+ 
+ po_files = $(wildcard $(top_srcdir)/po/*.po)
+ $(applet_DATA): $(applet_in_files) $(INTLTOOL_MERGE) $(po_files)
+ 	LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@ 
+ 
+-servicedir = $(datadir)/dbus-1/services
+-service_DATA = org.gnome.panel.applet.UimAppletFactory.service
+-service_in_files = $(service_DATA:=.in)
+-
+-$(service_DATA): $(service_in_files) Makefile
+-	sed s,@LIBEXECDIR@,$(libexecdir),g <$< >$@
+-
+ DISTCLEANFILES = UimApplet.panel-applet.in UimApplet.panel-applet \
+-		 UimApplet.panel-applet.in.tmp \
+-		 org.gnome.panel.applet.UimAppletFactory.service
++		 UimApplet.panel-applet.in.tmp
+ endif
+ 
+ if GTK3
+--- a/gtk3/toolbar/UimApplet.panel-applet.in.in
++++ b/gtk3/toolbar/UimApplet.panel-applet.in.in
+@@ -1,6 +1,7 @@
+ [Applet Factory]
+ Id=UimAppletFactory
+-Location=@LIBEXECDIR@/uim-toolbar-applet-gnome3
++InProcess=true
++Location=@APPLET_LOCATION@
+ _Name=uim Applet Factory
+ _Description=uim applet factory
+ 
+--- a/gtk3/toolbar/applet-gnome3.c
++++ b/gtk3/toolbar/applet-gnome3.c
+@@ -168,7 +168,7 @@
+ 
+ 
+ 
+-PANEL_APPLET_OUT_PROCESS_FACTORY("UimAppletFactory",
++PANEL_APPLET_IN_PROCESS_FACTORY("UimAppletFactory",
+                             PANEL_TYPE_APPLET,
+                             (PanelAppletFactoryCallback)uim_applet_new,
+                             NULL)
+--- a/gtk3/toolbar/org.gnome.panel.applet.UimAppletFactory.service.in
++++ /dev/null
+@@ -1,3 +0,0 @@
+-[D-BUS Service]
+-Name=org.gnome.panel.applet.UimAppletFactory
+-Exec=@LIBEXECDIR@/uim-toolbar-applet-gnome3
diff -Nru uim-1.8.6+gh20161003.0.d63dadd/debian/patches/series uim-1.8.6+gh20161003.0.d63dadd/debian/patches/series
--- uim-1.8.6+gh20161003.0.d63dadd/debian/patches/series	2016-10-03 14:38:11.000000000 +0300
+++ uim-1.8.6+gh20161003.0.d63dadd/debian/patches/series	2017-07-09 16:39:13.000000000 +0300
@@ -7,3 +7,4 @@
 qt5-qt4-coexist.patch
 qt5-disable-debug-flag.patch
 qt5-use-automake-1.11.patch
+panel_applet_inprocess.patch
diff -Nru uim-1.8.6+gh20161003.0.d63dadd/debian/uim-applet-gnome.install uim-1.8.6+gh20161003.0.d63dadd/debian/uim-applet-gnome.install
--- uim-1.8.6+gh20161003.0.d63dadd/debian/uim-applet-gnome.install	2016-06-22 08:06:35.000000000 +0300
+++ uim-1.8.6+gh20161003.0.d63dadd/debian/uim-applet-gnome.install	2017-07-09 16:39:45.000000000 +0300
@@ -1,4 +1,3 @@
-usr/lib/*/uim/uim-toolbar-applet-gnome3
-usr/share/dbus-1/services/org.gnome.panel.applet.UimAppletFactory.service
-usr/share/gnome-panel/5.0/applets/UimApplet.panel-applet
+usr/lib/*/uim/libuim-toolbar-applet-gnome3.so
+usr/share/gnome-panel/applets/UimApplet.panel-applet
 usr/share/uim/ui/uim-applet-menu.xml

Attachment: signature.asc
Description: PGP signature

Reply via email to