Here are the two diffs, pulled out of my git tree.
The first is a simple update to libgusb 0.1.5. The second additionally multiarchs the library, and enables the hardening flags.
diff --git a/debian/changelog b/debian/changelog index 0bdbcfa..eb92169 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,15 @@ +libgusb (0.1.5-1) UNRELEASED; urgency=low + + * New upstream release + + Adds gobject-introspection support + * Multiarch the library + + Bump debhelper dependency + + Bump compat to 9 + * Enable hardening flags + + Add lintian-override for no-fortify-functions false-positive + + -- Christopher James Halse Rogers <r...@ubuntu.com> Wed, 06 Feb 2013 13:57:28 +0800 + libgusb (0.1.3-5) unstable; urgency=low * Fix upstream homepage link. diff --git a/debian/compat b/debian/compat index 45a4fb7..ec63514 100644 --- a/debian/compat +++ b/debian/compat @@ -1 +1 @@ -8 +9 diff --git a/debian/control b/debian/control index 66ced89..5e6d0fb 100644 --- a/debian/control +++ b/debian/control @@ -1,11 +1,14 @@ Source: libgusb Priority: extra Maintainer: Michal Čihař <ni...@debian.org> -Build-Depends: debhelper (>= 8.0.0), +Build-Depends: debhelper (>= 9.0.0), autotools-dev, libgudev-1.0-dev, libusb-1.0-0-dev, - gtk-doc-tools + gtk-doc-tools, + gobject-introspection, + libgirepository1.0-dev, + valac Standards-Version: 3.9.3 Section: libs Homepage: http://www.hughski.com/downloads.html @@ -18,7 +21,8 @@ Architecture: any Depends: libgusb2 (= ${binary:Version}), ${misc:Depends}, libgudev-1.0-dev, - libusb-1.0-0-dev + libusb-1.0-0-dev, + gir1.2-gusb-1.0, Description: GLib wrapper around libusb1 - development files GUsb is a GObject wrapper for libusb1 that makes it easy to do asynchronous control, bulk and interrupt transfers with proper @@ -42,9 +46,26 @@ Description: GLib wrapper around libusb1 - documentation Package: libgusb2 Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends} +Pre-Depends: ${misc:Pre-Depends} +Multi-Arch: same Description: GLib wrapper around libusb1 GUsb is a GObject wrapper for libusb1 that makes it easy to do asynchronous control, bulk and interrupt transfers with proper cancellation and integration into a mainloop. . This package contains the GUsb shared library. + +Package: gir1.2-gusb-1.0 +Section: introspection +Architecture: any +Depends: ${gir:Depends}, + ${shlibs:Depends}, + ${misc:Depends} +Description: GObject introspection data for the gusb library + This package contains introspection data for libgusb, a GObject + wrapper for libusb1 that makes it easy to do asynchronous control, + bulk and interrupt transfers with proper cancellation and integration + into a mainloop. + . + It can be used by packages using the GIRepository format to generate + dynamic bindings. diff --git a/debian/gir1.2-gusb-1.0.install b/debian/gir1.2-gusb-1.0.install new file mode 100644 index 0000000..d6c0270 --- /dev/null +++ b/debian/gir1.2-gusb-1.0.install @@ -0,0 +1 @@ +usr/lib/*/girepository-1.0 usr/lib diff --git a/debian/libgusb-dev.install b/debian/libgusb-dev.install index 6cd8ddd..072e031 100644 --- a/debian/libgusb-dev.install +++ b/debian/libgusb-dev.install @@ -1,4 +1,6 @@ usr/include/* -usr/lib/lib*.a -usr/lib/lib*.so -usr/lib/pkgconfig/* +usr/lib/*/lib*.a +usr/lib/*/lib*.so +usr/lib/*/pkgconfig/* +usr/share/gir-1.0/GUsb-1.0.gir +usr/share/vala diff --git a/debian/libgusb2.install b/debian/libgusb2.install index d0dbfd1..3ddde58 100644 --- a/debian/libgusb2.install +++ b/debian/libgusb2.install @@ -1 +1 @@ -usr/lib/lib*.so.* +usr/lib/*/lib*.so.* diff --git a/debian/libgusb2.lintian-overrides b/debian/libgusb2.lintian-overrides new file mode 100644 index 0000000..45af659 --- /dev/null +++ b/debian/libgusb2.lintian-overrides @@ -0,0 +1 @@ +libgusb2 binary: hardening-no-fortify-functions usr/lib/*/libgusb.* diff --git a/debian/libgusb2.symbols b/debian/libgusb2.symbols index 0e57d44..4fa661f 100644 --- a/debian/libgusb2.symbols +++ b/debian/libgusb2.symbols @@ -35,6 +35,8 @@ libgusb.so.2 libgusb2 #MINVER# g_usb_device_list_new@Base 0.1.3 g_usb_device_open@Base 0.1.3 g_usb_device_release_interface@Base 0.1.3 + g_usb_device_reset@Base 0.1.5 g_usb_device_set_configuration@Base 0.1.3 g_usb_source_error_quark@Base 0.1.3 g_usb_source_set_callback@Base 0.1.3 + g_usb_strerror@Base 0.1.5 diff --git a/debian/rules b/debian/rules index 45c11b5..5947e5d 100755 --- a/debian/rules +++ b/debian/rules @@ -9,13 +9,24 @@ # Uncomment this to turn on verbose mode. #export DH_VERBOSE=1 +export DEB_BUILD_MAINT_OPTIONS = hardening=+all + override_dh_install: - rm debian/tmp/usr/lib/libgusb.la + rm debian/tmp/usr/lib/*/libgusb.la dh_install --fail-missing override_dh_installchangelogs: dh_installchangelogs NEWS +override_dh_auto_configure: + dh_auto_configure -- --enable-gtk-doc \ + --enable-introspection \ + --enable-vala + +override_dh_gencontrol: + dh_girepository + dh_gencontrol + override_dh_auto_test: # dh_auto_test echo "Skipping tests as they fail in build environment due to USB bus not available"
diff --git a/debian/changelog b/debian/changelog index 0bdbcfa..35cf698 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +libgusb (0.1.5-1) UNRELEASED; urgency=low + + * New upstream release + + Adds gobject-introspection support + + -- Christopher James Halse Rogers <r...@ubuntu.com> Wed, 06 Feb 2013 09:42:38 +0800 + libgusb (0.1.3-5) unstable; urgency=low * Fix upstream homepage link. diff --git a/debian/control b/debian/control index 66ced89..79d4df8 100644 --- a/debian/control +++ b/debian/control @@ -5,7 +5,10 @@ Build-Depends: debhelper (>= 8.0.0), autotools-dev, libgudev-1.0-dev, libusb-1.0-0-dev, - gtk-doc-tools + gtk-doc-tools, + gobject-introspection, + libgirepository1.0-dev, + valac Standards-Version: 3.9.3 Section: libs Homepage: http://www.hughski.com/downloads.html @@ -18,7 +21,8 @@ Architecture: any Depends: libgusb2 (= ${binary:Version}), ${misc:Depends}, libgudev-1.0-dev, - libusb-1.0-0-dev + libusb-1.0-0-dev, + gir1.2-gusb-1.0, Description: GLib wrapper around libusb1 - development files GUsb is a GObject wrapper for libusb1 that makes it easy to do asynchronous control, bulk and interrupt transfers with proper @@ -48,3 +52,18 @@ Description: GLib wrapper around libusb1 cancellation and integration into a mainloop. . This package contains the GUsb shared library. + +Package: gir1.2-gusb-1.0 +Section: introspection +Architecture: any +Depends: ${gir:Depends}, + ${shlibs:Depends}, + ${misc:Depends} +Description: GObject introspection data for the gusb library + This package contains introspection data for libgusb, a GObject + wrapper for libusb1 that makes it easy to do asynchronous control, + bulk and interrupt transfers with proper cancellation and integration + into a mainloop. + . + It can be used by packages using the GIRepository format to generate + dynamic bindings. diff --git a/debian/gir1.2-gusb-1.0.install b/debian/gir1.2-gusb-1.0.install new file mode 100644 index 0000000..d6c0270 --- /dev/null +++ b/debian/gir1.2-gusb-1.0.install @@ -0,0 +1 @@ +usr/lib/*/girepository-1.0 usr/lib diff --git a/debian/libgusb-dev.install b/debian/libgusb-dev.install index 6cd8ddd..724a80a 100644 --- a/debian/libgusb-dev.install +++ b/debian/libgusb-dev.install @@ -2,3 +2,5 @@ usr/include/* usr/lib/lib*.a usr/lib/lib*.so usr/lib/pkgconfig/* +usr/share/gir-1.0/GUsb-1.0.gir +usr/share/vala diff --git a/debian/libgusb2.symbols b/debian/libgusb2.symbols index 0e57d44..4fa661f 100644 --- a/debian/libgusb2.symbols +++ b/debian/libgusb2.symbols @@ -35,6 +35,8 @@ libgusb.so.2 libgusb2 #MINVER# g_usb_device_list_new@Base 0.1.3 g_usb_device_open@Base 0.1.3 g_usb_device_release_interface@Base 0.1.3 + g_usb_device_reset@Base 0.1.5 g_usb_device_set_configuration@Base 0.1.3 g_usb_source_error_quark@Base 0.1.3 g_usb_source_set_callback@Base 0.1.3 + g_usb_strerror@Base 0.1.5 diff --git a/debian/rules b/debian/rules index 45c11b5..05eb64b 100755 --- a/debian/rules +++ b/debian/rules @@ -16,6 +16,15 @@ override_dh_install: override_dh_installchangelogs: dh_installchangelogs NEWS +override_dh_auto_configure: + dh_auto_configure -- --enable-gtk-doc \ + --enable-introspection \ + --enable-vala + +override_dh_gencontrol: + dh_girepository + dh_gencontrol + override_dh_auto_test: # dh_auto_test echo "Skipping tests as they fail in build environment due to USB bus not available"