[debhelper-devel] Bug#816720: Bug##816720: gail-common: provide udeb for accessibility

Samuel Thibault sthibault at debian.org
Wed Apr 27 16:59:58 UTC 2016


Hello,

Ping?

Samuel

Samuel Thibault, on Sun 20 Mar 2016 17:48:05 +0100, wrote:
> Samuel Thibault, on Sun 20 Mar 2016 17:20:19 +0100, wrote:
> > Michael Biebl, on Sun 20 Mar 2016 03:05:55 +0100, wrote:
> > > Related to  that, the generated shlibs file for libgail8 has
> > > 
> > > > libgailutil 18 libgail18 (>= 2.24.0), libgail-common (>= 2.24.0)
> > > > udeb: libgailutil 18 libgail18-udeb (>= 2.24.0), libgail-common (>= 2.24.0)
> > > 
> > > The udeb line is broken, as it produces a dependency on a non-udeb package.
> > 
> > Uh. The rules file indeed uses
> > 
> >         dh_makeshlibs -plibgail18 \
> >                 -X$(MODULES_BASE_PATH) \
> >                 -V"libgail18 (>= $(SHVER)), libgail-common (>= $(SHVER))" \
> >                 -- -c4
> > 
> > My addition of --add-udeb=libgail18-udeb replaces libgail18 by
> > libgail18-udeb on the udeb line, but I don't see any way to make
> > dh_makeshlibs either drop the libgail-common dependency or replace it
> > with libgaim-common-udeb... Debhelper maintainers, any idea?
> > In the meanwhile, we can use a horrible sed hack :/
> 
> It works with the attached patch.
> 
> Samuel
-------------- next part --------------
Index: debian/control
===================================================================
--- debian/control	(r?vision 47627)
+++ debian/control	(copie de travail)
@@ -254,6 +254,22 @@
  .
  This package contains the shared library.
 
+Package: libgail18-udeb
+Package-Type: udeb
+Architecture: any
+Depends: ${misc:Depends},
+         ${shlibs:Depends},
+         libgtk2.0-0-udeb (= ${binary:Version})
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Description: GNOME Accessibility Implementation Library -- shared libraries
+ Gail implements ATK interfaces for GTK+ widgets which are dynamically
+ loadable at runtime by a GTK+ application. Once loaded, those parts of
+ an application that use standard GTK+ widgets will have a basic level
+ of accessibility, without the need to modify the application at all.
+ .
+ This package contains the shared library for the Debian installer.
+
 Package: libgail-common
 Architecture: any
 Depends: ${misc:Depends},
Index: debian/control.in
===================================================================
--- debian/control.in	(r?vision 47627)
+++ debian/control.in	(copie de travail)
@@ -254,6 +254,22 @@
  .
  This package contains the shared library.
 
+Package: libgail18-udeb
+Package-Type: udeb
+Architecture: any
+Depends: ${misc:Depends},
+         ${shlibs:Depends},
+         @UDEB_PKG@ (= ${binary:Version})
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Description: GNOME Accessibility Implementation Library -- shared libraries
+ Gail implements ATK interfaces for GTK+ widgets which are dynamically
+ loadable at runtime by a GTK+ application. Once loaded, those parts of
+ an application that use standard GTK+ widgets will have a basic level
+ of accessibility, without the need to modify the application at all.
+ .
+ This package contains the shared library for the Debian installer.
+
 Package: libgail-common
 Architecture: any
 Depends: ${misc:Depends},
Index: debian/libgail18-udeb.install.in
===================================================================
--- debian/libgail18-udeb.install.in	(nonexistent)
+++ debian/libgail18-udeb.install.in	(copie de travail)
@@ -0,0 +1,2 @@
+debian/install/shared_udeb/@LIBDIR@/libgail*.so.* @LIBDIR@
+debian/install/shared_udeb/@LIBDIR@/gtk- at APIVER@/modules/*.so @LIBDIR@/gtk- at APIVER@/modules
Index: debian/rules
===================================================================
--- debian/rules	(r?vision 47627)
+++ debian/rules	(copie de travail)
@@ -81,7 +81,7 @@
 
 # package groups, used in rule dependencies and in cleanup
 BINARY_INDEP_PKGS := $(COMMON_PKG) $(DOC_PKG) libgail-doc
-BINARY_ARCH_PKGS := $(SHARED_PKG) $(BIN_PKG) $(UDEB_PKG) $(DEV_PKG) $(DEBUG_PKG) $(EXAMPLES_PKG) $(PIXBUF_PKG) gir1.2-gtk-2.0 libgail18 libgail-dbg libgail-dev libgail-common
+BINARY_ARCH_PKGS := $(SHARED_PKG) $(BIN_PKG) $(UDEB_PKG) $(DEV_PKG) $(DEBUG_PKG) $(EXAMPLES_PKG) $(PIXBUF_PKG) gir1.2-gtk-2.0 libgail18 libgail18-udeb libgail-dbg libgail-dev libgail-common
 ALL_PKGS := $(BINARY_INDEP_PKGS) $(BINARY_ARCH_PKGS)
 
 # list of flavors we build; each gets a builddir, a configure pass (configure
@@ -287,9 +287,9 @@
 	dh_installman -s
 	dh_installexamples -s
 	dh_link -s
-	dh_strip -s --dbg-package=$(DEBUG_PKG) -N$(UDEB_PKG) -Nlibgail18 -Nlibgail-common
+	dh_strip -s --dbg-package=$(DEBUG_PKG) -N$(UDEB_PKG) -Nlibgail18 -Nlibgail18-udeb -Nlibgail-common
 	dh_strip -plibgail18 -plibgail-common --dbg-package=libgail-dbg
-	dh_strip -p$(UDEB_PKG)
+	dh_strip -p$(UDEB_PKG) -plibgail18-udeb
 	dh_compress -s -X.sgml -X.devhelp
 	dh_fixperms -s -X$(LIBDIR)/$(SHARED_PKG)
 	dh_makeshlibs -p$(SHARED_PKG) \
@@ -300,7 +300,9 @@
 	dh_makeshlibs -plibgail18 \
 		-X$(MODULES_BASE_PATH) \
 		-V"libgail18 (>= $(SHVER)), libgail-common (>= $(SHVER))" \
+		--add-udeb=libgail18-udeb \
 		-- -c4
+	sed -i debian/libgail18/DEBIAN/shlibs -e '/^udeb: /s/, libgail-common (>= $(SHVER))//'
 	dh_girepository -pgir1.2-gtk-2.0
 	dh_installdeb -s
 	# override shlibs for libraries from this source before computing


More information about the debhelper-devel mailing list