I made the NMU and uploaded it to DELAYED/10. I fixed the most obvious
problems, there are still a few things that can be improved (I'm in
particular not so happy about the -common package) but I think it's
better not to touch more things.

Berto
diff -Nru goocanvas-2.0.2/debian/changelog goocanvas-2.0.2/debian/changelog
--- goocanvas-2.0.2/debian/changelog	2014-02-28 17:04:57.000000000 +0200
+++ goocanvas-2.0.2/debian/changelog	2014-07-18 13:34:33.000000000 +0300
@@ -1,3 +1,32 @@
+goocanvas (2.0.2-1.1) experimental; urgency=medium
+
+  * Non-maintainer upload.
+  * debian/patches/fix-g-i-path.patch:
+    - Install .typelib files in the correct directory (Closes: #751969).
+  * debian/libgoocanvas-2.0-9.shlibs:
+    - Add shlibs file.
+  * debian/gir1.2-goocanvas-2.0.install:
+    - Update path for .typelib files.
+  * debian/libgoocanvas-2.0-dev.install:
+    - Install .gir file.
+  * debian/libgoocanvas-2.0-common.links:
+    - Fix link to documentation.
+  * debian/libgoocanvas-2.0-common.doc-base.goocanvas2:
+    - Register documentation using doc-base.
+  * debian/rules:
+    - Build with autoreconf.
+    - Run dh_girepository after dh_shlibdeps.
+    - Enable parallel builds.
+  * debian/control:
+    - Add build dependencies on dh-autoreconf and gobject-introspection.
+    - Make libgoocanvas-2.0-dev depend on gir1.2-goocanvas-2.0 and
+      recommend pkg-config.
+    - Remove Multi-Arch: same header from libgoocanvas-2.0-dev and
+      gir1.2-goocanvas-2.0.
+    - Update package descriptions.
+
+ -- Alberto Garcia <be...@igalia.com>  Fri, 18 Jul 2014 12:21:22 +0300
+
 goocanvas (2.0.2-1) experimental; urgency=medium
 
   * New upstream release (Closes: #588177)
diff -Nru goocanvas-2.0.2/debian/control goocanvas-2.0.2/debian/control
--- goocanvas-2.0.2/debian/control	2014-02-28 17:04:15.000000000 +0200
+++ goocanvas-2.0.2/debian/control	2014-07-18 13:34:33.000000000 +0300
@@ -3,9 +3,9 @@
 Maintainer: Debian Ruby Extras Maintainers <pkg-ruby-extras-maintain...@lists.alioth.debian.org>
 Uploaders: Jose Carlos Garcia Sogo <js...@debian.org>,
            Hideki Yamane <henr...@debian.org>
-Build-Depends: debhelper (>= 9), libglib2.0-dev (>= 2.28), 
+Build-Depends: debhelper (>= 9), libglib2.0-dev (>= 2.28), dh-autoreconf,
  autotools-dev, gtk-doc-tools, libgtk-3-dev, libcairo2-dev (>= 1.10),
- libgirepository1.0-dev
+ libgirepository1.0-dev, gobject-introspection
 Standards-Version: 3.9.5
 Section: libs
 Vcs-Git: git://anonscm.debian.org/collabmaint/goocanvas.git
@@ -15,52 +15,56 @@
 Package: libgoocanvas-2.0-dev
 Section: libdevel
 Architecture: any
-Multi-Arch: same
-Depends: libgoocanvas-2.0-9 (= ${binary:Version}), ${misc:Depends}, libgtk-3-dev
-Description: development libraries, include files and documentation for goocanvas
- GooCanvas is a canvas widget for GTK+ that uses the cairo 2D library for 
- drawing. It has a model/view split, and uses interfaces for canvas items and 
+Depends: libgoocanvas-2.0-9 (= ${binary:Version}),
+         gir1.2-goocanvas-2.0 (= ${binary:Version}),
+         libgtk-3-dev,
+         ${shlib:Depends},
+         ${misc:Depends}
+Recommends: pkg-config
+Description: Canvas widget for GTK+ that uses the Cairo 2D library - development files
+ GooCanvas is a canvas widget for GTK+ that uses the Cairo 2D library for
+ drawing. It has a model/view split, and uses interfaces for canvas items and
  views, so you can easily turn any application object into canvas items.
  .
- This package contains the development libraries, include files 
- and documentation
+ This package contains the development files.
 
 Package: libgoocanvas-2.0-common
 Architecture: all
 Multi-Arch: foreign
 Depends: ${misc:Depends}
-Description: translations for goocanvas
- GooCanvas is a canvas widget for GTK+ that uses the cairo 2D library for 
- drawing. It has a model/view split, and uses interfaces for canvas items and 
+Description: Canvas widget for GTK+ that uses the Cairo 2D library - common files
+ GooCanvas is a canvas widget for GTK+ that uses the Cairo 2D library for
+ drawing. It has a model/view split, and uses interfaces for canvas items and
  views, so you can easily turn any application object into canvas items.
  .
- This package contains the translations
+ This package contains the translations and the documentation.
 
 Package: libgoocanvas-2.0-9
 Architecture: any
 Pre-Depends: ${misc:Pre-Depends}
 Multi-Arch: same
-Depends: ${shlibs:Depends}, ${misc:Depends}, libgoocanvas-2.0-common (= ${source:Version})
-Description: canvas widget for GTK+ that uses the cairo 2D library
- GooCanvas is a canvas widget for GTK+ that uses the cairo 2D library for 
- drawing. It has a model/view split, and uses interfaces for canvas items and 
+Depends: ${shlibs:Depends},
+         ${misc:Depends},
+         libgoocanvas-2.0-common (= ${source:Version})
+Description: Canvas widget for GTK+ that uses the Cairo 2D library - shared library
+ GooCanvas is a canvas widget for GTK+ that uses the Cairo 2D library for
+ drawing. It has a model/view split, and uses interfaces for canvas items and
  views, so you can easily turn any application object into canvas items.
  .
- This package contains the shared library
+ This package contains the shared library.
 
 Package: gir1.2-goocanvas-2.0
 Architecture: any
-Multi-Arch: same
 Section: introspection
-Depends: ${gir:Depends}, ${misc:Depends}
-Description: GObject introspection data for the GooCanvas libraries
+Depends: ${gir:Depends},
+         ${misc:Depends}
+Description: GObject introspection data for the GooCanvas library - gir bindings
  This IDE for C/C++ and GNOME/Gtk+ applications has features that enable easy
  debugging, management of code and GUI design by providing a simple and
  usable user interface. It also integrates with version control systems
  like CVS, Git or Subversion.
  .
- This package contains introspection data for the GooCanvas libraries.
+ This package contains the GObject introspection data.
  .
  It can be used by packages using the GIRepository format to generate
  dynamic bindings.
-
diff -Nru goocanvas-2.0.2/debian/gir1.2-goocanvas-2.0.install goocanvas-2.0.2/debian/gir1.2-goocanvas-2.0.install
--- goocanvas-2.0.2/debian/gir1.2-goocanvas-2.0.install	2014-02-02 05:36:21.000000000 +0200
+++ goocanvas-2.0.2/debian/gir1.2-goocanvas-2.0.install	2014-07-07 22:12:05.000000000 +0300
@@ -1 +1 @@
-usr/lib/*/girepository-*/GooCanvas-*.typelib
+usr/lib/girepository-*/GooCanvas-*.typelib
diff -Nru goocanvas-2.0.2/debian/libgoocanvas-2.0-9.shlibs goocanvas-2.0.2/debian/libgoocanvas-2.0-9.shlibs
--- goocanvas-2.0.2/debian/libgoocanvas-2.0-9.shlibs	1970-01-01 02:00:00.000000000 +0200
+++ goocanvas-2.0.2/debian/libgoocanvas-2.0-9.shlibs	2014-07-18 10:55:06.000000000 +0300
@@ -0,0 +1 @@
+libgoocanvas-2.0 9 libgoocanvas-2.0-9 (>= 2.0.2)
diff -Nru goocanvas-2.0.2/debian/libgoocanvas-2.0-common.doc-base.goocanvas2 goocanvas-2.0.2/debian/libgoocanvas-2.0-common.doc-base.goocanvas2
--- goocanvas-2.0.2/debian/libgoocanvas-2.0-common.doc-base.goocanvas2	1970-01-01 02:00:00.000000000 +0200
+++ goocanvas-2.0.2/debian/libgoocanvas-2.0-common.doc-base.goocanvas2	2014-07-18 13:34:33.000000000 +0300
@@ -0,0 +1,13 @@
+Document: goocanvas2
+Title: GooCanvas reference manual
+Author: GooCanvas development team
+Abstract: This manual contains the developer documentation of
+ GooCanvas, a canvas widget for GTK+ that uses the Cairo 2D library
+ for drawing. It has a model/view split, and uses interfaces for
+ canvas items and views, so you can easily turn any application object
+ into canvas items.
+Section: Programming/C
+
+Format: HTML
+Index: /usr/share/gtk-doc/html/goocanvas2/index.html
+Files: /usr/share/gtk-doc/html/goocanvas2/*.html
diff -Nru goocanvas-2.0.2/debian/libgoocanvas-2.0-common.links goocanvas-2.0.2/debian/libgoocanvas-2.0-common.links
--- goocanvas-2.0.2/debian/libgoocanvas-2.0-common.links	2014-01-12 16:18:30.000000000 +0200
+++ goocanvas-2.0.2/debian/libgoocanvas-2.0-common.links	2014-07-18 13:34:33.000000000 +0300
@@ -1 +1 @@
-usr/share/gtk-doc/html/goocanvas/ usr/share/doc/libgoocanvas2.0-common/html
+usr/share/gtk-doc/html/goocanvas2/ usr/share/doc/libgoocanvas-2.0-common/html
diff -Nru goocanvas-2.0.2/debian/libgoocanvas-2.0-dev.install goocanvas-2.0.2/debian/libgoocanvas-2.0-dev.install
--- goocanvas-2.0.2/debian/libgoocanvas-2.0-dev.install	2014-02-02 05:36:26.000000000 +0200
+++ goocanvas-2.0.2/debian/libgoocanvas-2.0-dev.install	2014-07-18 13:34:33.000000000 +0300
@@ -2,3 +2,4 @@
 usr/lib/*/libgoocanvas-2.0.so
 usr/lib/*/pkgconfig
 usr/include
+usr/share/gir-1.0
diff -Nru goocanvas-2.0.2/debian/patches/fix-g-i-path.patch goocanvas-2.0.2/debian/patches/fix-g-i-path.patch
--- goocanvas-2.0.2/debian/patches/fix-g-i-path.patch	1970-01-01 02:00:00.000000000 +0200
+++ goocanvas-2.0.2/debian/patches/fix-g-i-path.patch	2014-07-07 22:12:05.000000000 +0300
@@ -0,0 +1,39 @@
+From: Alberto Garcia <be...@igalia.com>
+Subject: Fix installation path of gobject-introspection files
+Bug: https://bugzilla.gnome.org/show_bug.cgi?id=731839
+Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=751969
+Index: goocanvas-2.0.2/configure.in
+===================================================================
+--- goocanvas-2.0.2.orig/configure.in
++++ goocanvas-2.0.2/configure.in
+@@ -50,6 +50,13 @@ GLIB_MKENUMS=`$PKG_CONFIG --variable=gli
+ AC_SUBST(GLIB_MKENUMS)
+ 
+ GOBJECT_INTROSPECTION_CHECK([0.6.7])
++if test "x$found_introspection" = "xyes"; then
++   INTROSPECTION_GIRDIR=`$PKG_CONFIG --define-variable=prefix='${prefix}' --variable=girdir gobject-introspection-1.0`
++   AC_SUBST(INTROSPECTION_GIRDIR)
++
++   INTROSPECTION_TYPELIBDIR=`$PKG_CONFIG --define-variable=prefix='${prefix}' --variable=typelibdir gobject-introspection-1.0`
++   AC_SUBST(INTROSPECTION_TYPELIBDIR)
++fi
+ 
+ AC_ARG_ENABLE(rebuilds,
+               [AC_HELP_STRING([--disable-rebuilds],
+Index: goocanvas-2.0.2/src/Makefile.am
+===================================================================
+--- goocanvas-2.0.2.orig/src/Makefile.am
++++ goocanvas-2.0.2/src/Makefile.am
+@@ -162,10 +162,10 @@ GooCanvas_2_0_gir_LIBS = goocanvas-2.0
+ GooCanvas_2_0_gir_FILES = $(introspection_sources)
+ INTROSPECTION_GIRS += GooCanvas-2.0.gir
+ 
+-girdir = $(datadir)/gir-1.0
++girdir = @INTROSPECTION_GIRDIR@
+ gir_DATA = $(INTROSPECTION_GIRS)
+ 
+-typelibdir = $(libdir)/girepository-1.0
++typelibdir = @INTROSPECTION_TYPELIBDIR@
+ typelib_DATA = $(INTROSPECTION_GIRS:.gir=.typelib)
+ 
+ CLEANFILES += $(gir_DATA) $(typelib_DATA)
diff -Nru goocanvas-2.0.2/debian/patches/series goocanvas-2.0.2/debian/patches/series
--- goocanvas-2.0.2/debian/patches/series	1970-01-01 02:00:00.000000000 +0200
+++ goocanvas-2.0.2/debian/patches/series	2014-07-17 21:20:54.000000000 +0300
@@ -0,0 +1 @@
+fix-g-i-path.patch
diff -Nru goocanvas-2.0.2/debian/rules goocanvas-2.0.2/debian/rules
--- goocanvas-2.0.2/debian/rules	2014-01-10 16:09:44.000000000 +0200
+++ goocanvas-2.0.2/debian/rules	2014-07-07 22:12:05.000000000 +0300
@@ -1,4 +1,8 @@
 #!/usr/bin/make -f
 
 %:
-	dh $@ --with autotools-dev
+	dh $@ --with autoreconf --parallel
+
+override_dh_shlibdeps:
+	dh_shlibdeps
+	dh_girepository

Reply via email to