r25806 - in /packages/experimental/gobject-introspection/debian: changelog control control.in dh_girepository gir1.0-freedesktop.install gir1.0-glib-2.0.install gir1.2-freedesktop.install gir1.2-glib-2.0.install policy.txt
pochu at users.alioth.debian.org
pochu at users.alioth.debian.org
Wed Dec 8 00:22:46 UTC 2010
Author: pochu
Date: Wed Dec 8 00:22:44 2010
New Revision: 25806
URL: http://svn.debian.org/wsvn/pkg-gnome/?sc=1&rev=25806
Log:
* debian/policy:
- Require that gir packages are named properly according to the gir
format (e.g. gir1.2* for gir 1.2 format).
- Require that a gir package's dependencies have the same format
as the package itself.
- Update examples to use the 1.2 format.
* debian/dh_girepository:
- Implement the above changes, aborting if the package name is not
correct or if the dependencies don't have the same format.
* debian/control.in,
debian/gir1.*:
- Rename the gir packages to gir1.2* to follow the new policy.
Added:
packages/experimental/gobject-introspection/debian/gir1.2-freedesktop.install
- copied unchanged from r25777, packages/experimental/gobject-introspection/debian/gir1.0-freedesktop.install
packages/experimental/gobject-introspection/debian/gir1.2-glib-2.0.install
- copied unchanged from r25777, packages/experimental/gobject-introspection/debian/gir1.0-glib-2.0.install
Removed:
packages/experimental/gobject-introspection/debian/gir1.0-freedesktop.install
packages/experimental/gobject-introspection/debian/gir1.0-glib-2.0.install
Modified:
packages/experimental/gobject-introspection/debian/changelog
packages/experimental/gobject-introspection/debian/control
packages/experimental/gobject-introspection/debian/control.in
packages/experimental/gobject-introspection/debian/dh_girepository
packages/experimental/gobject-introspection/debian/policy.txt
Modified: packages/experimental/gobject-introspection/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-gnome/packages/experimental/gobject-introspection/debian/changelog?rev=25806&op=diff
==============================================================================
--- packages/experimental/gobject-introspection/debian/changelog [utf-8] (original)
+++ packages/experimental/gobject-introspection/debian/changelog [utf-8] Wed Dec 8 00:22:44 2010
@@ -1,3 +1,20 @@
+gobject-introspection (0.9.12-4) UNRELEASED; urgency=low
+
+ * debian/policy:
+ - Require that gir packages are named properly according to the gir
+ format (e.g. gir1.2* for gir 1.2 format).
+ - Require that a gir package's dependencies have the same format
+ as the package itself.
+ - Update examples to use the 1.2 format.
+ * debian/dh_girepository:
+ - Implement the above changes, aborting if the package name is not
+ correct or if the dependencies don't have the same format.
+ * debian/control.in,
+ debian/gir1.*:
+ - Rename the gir packages to gir1.2* to follow the new policy.
+
+ -- Emilio Pozuelo Monfort <pochu at debian.org> Wed, 08 Dec 2010 00:38:18 +0100
+
gobject-introspection (0.9.12-3) experimental; urgency=low
* debian/control.in: Add missing replaces on gir-repository-dev.
Modified: packages/experimental/gobject-introspection/debian/control
URL: http://svn.debian.org/wsvn/pkg-gnome/packages/experimental/gobject-introspection/debian/control?rev=25806&op=diff
==============================================================================
--- packages/experimental/gobject-introspection/debian/control [utf-8] (original)
+++ packages/experimental/gobject-introspection/debian/control [utf-8] Wed Dec 8 00:22:44 2010
@@ -113,7 +113,7 @@
This package contains tools for extracting introspection data from libraries
and transforming it to different formats.
-Package: gir1.0-glib-2.0
+Package: gir1.2-glib-2.0
Architecture: any
Section: libs
Depends: ${gir:Depends},
@@ -132,7 +132,7 @@
This package contains the introspection data for the GLib, GObject,
GModule and Gio libraries.
-Package: gir1.0-freedesktop
+Package: gir1.2-freedesktop
Architecture: any
Section: libs
Depends: ${gir:Depends},
Modified: packages/experimental/gobject-introspection/debian/control.in
URL: http://svn.debian.org/wsvn/pkg-gnome/packages/experimental/gobject-introspection/debian/control.in?rev=25806&op=diff
==============================================================================
--- packages/experimental/gobject-introspection/debian/control.in [utf-8] (original)
+++ packages/experimental/gobject-introspection/debian/control.in [utf-8] Wed Dec 8 00:22:44 2010
@@ -108,12 +108,13 @@
This package contains tools for extracting introspection data from libraries
and transforming it to different formats.
-Package: gir1.0-glib-2.0
+Package: gir1.2-glib-2.0
Architecture: any
Section: libs
Depends: ${gir:Depends},
${misc:Depends}
-Conflicts: gobject-introspection-glib-2.0
+Conflicts: gobject-introspection-glib-2.0,
+ gir1.0-glib-2.0
Description: Introspection data for GLib, GObject, Gio and GModule
GObject Introspection is a project for providing machine readable
introspection data of the API of C libraries. This introspection
@@ -127,12 +128,13 @@
This package contains the introspection data for the GLib, GObject,
GModule and Gio libraries.
-Package: gir1.0-freedesktop
+Package: gir1.2-freedesktop
Architecture: any
Section: libs
Depends: ${gir:Depends},
${misc:Depends}
-Conflicts: gobject-introspection-freedesktop
+Conflicts: gobject-introspection-freedesktop,
+ gir1.0-freedesktop
Description: Introspection data for some FreeDesktop components
GObject Introspection is a project for providing machine readable
introspection data of the API of C libraries. This introspection
Modified: packages/experimental/gobject-introspection/debian/dh_girepository
URL: http://svn.debian.org/wsvn/pkg-gnome/packages/experimental/gobject-introspection/debian/dh_girepository?rev=25806&op=diff
==============================================================================
--- packages/experimental/gobject-introspection/debian/dh_girepository [utf-8] (original)
+++ packages/experimental/gobject-introspection/debian/dh_girepository [utf-8] Wed Dec 8 00:22:44 2010
@@ -41,7 +41,7 @@
=head1 CONFORMS TO
-GObject introspection mini policy as of 2009-10-18.
+GObject introspection mini policy as of 2010-12-07.
=cut
@@ -62,6 +62,7 @@
my $arch_triplet = `dpkg-architecture -qDEB_BUILD_GNU_TYPE`;
chomp $arch_triplet;
my @libdirs = ("/lib/$arch_triplet", "/lib", "/usr/lib/$arch_triplet", "/usr/lib");
+my $format;
# Get Build-Depends in an array
my @bdeps;
@@ -132,6 +133,7 @@
foreach my $otherpkg (@archpackages) {
if (-f tmpdir($otherpkg)."$fullpath") {
verbose_print (" found in $otherpkg");
+ error("Dependency on $otherpkg with a different format than $format") unless $otherpkg =~ /^gir$format/;
addsubstvar ($package, "gir:Depends", $otherpkg, "= $bin_version");
return;
}
@@ -140,6 +142,7 @@
my @output = (split ':', `dpkg -S $fullpath 2>/dev/null`);
error("$fullpath does not belong to any package") unless @output;
my $deppkg = $output[0];
+ error("Dependency on $deppkg with a different format than $format") unless $deppkg =~ /^gir$format/;
# Look for version information in build-dependencies
my $found = 0;
foreach my $bdep (@bdeps) {
@@ -225,7 +228,10 @@
while (<$f>) {
# "Parse" the XML file
chomp;
- if (/<include\s+name="(.*?)"\s+version="(.*?)"\/>/) {
+ if (/<repository\s+version="(.*?)"/) {
+ # gir format version
+ $format="$1";
+ } elsif (/<include\s+name="(.*?)"\s+version="(.*?)"\/>/) {
# Dependency on another typelib file
my $deptypelib="$1-$2.typelib";
verbose_print (" Dependency: $deptypelib");
@@ -253,6 +259,8 @@
}
}
close $f;
+ error("Unable to determine gir format") unless $format;
+ error("Package name $package doesn't match gir format $format") unless $package =~ /^gir$format/;
verbose_print(sprintf(" %d symbols found", $#symbols+1));
if (@libraries or @symbols) {
my $c_file = "$typelibdir/$typelib.c";
Modified: packages/experimental/gobject-introspection/debian/policy.txt
URL: http://svn.debian.org/wsvn/pkg-gnome/packages/experimental/gobject-introspection/debian/policy.txt?rev=25806&op=diff
==============================================================================
--- packages/experimental/gobject-introspection/debian/policy.txt [utf-8] (original)
+++ packages/experimental/gobject-introspection/debian/policy.txt [utf-8] Wed Dec 8 00:22:44 2010
@@ -11,9 +11,10 @@
2. Binary introspection packages
The binary typelib file must be put in an architecture-dependent package
-named after its namespace. The name should be gir1.0-NAMESPACE-VERSION.
+named after its namespace. The name must be girFORMAT-NAMESPACE-VERSION.
For example, the package containing WebKit-1.0.typelib will be named
-gir1.0-webkit-1.0.
+gir1.0-webkit-1.0 for the gir 1.0 format and gir1.2-webkit-1.0 for the
+gir 1.2 format.
Giant repositories of unrelated introspection data should be avoided.
However, related libraries that are known to evolve together can live in
@@ -56,7 +57,8 @@
Introspection packages must depend on other introspection packages that
are referenced through <include> statements. The helper generates such
dependencies as well. Build-dependencies on packages containing them
-must be set, with sufficient version information.
+must be set, with sufficient version information. The dependencies must
+be in the same gir format as the source package.
Packages containing the XML data don’t need any specific new
dependencies.
@@ -70,7 +72,7 @@
Generating dependencies automatically for interpreted languages is not
reliable. Therefore, these packages must depend by hand on the
-appropriate gir1.0-* packages. The interpreters themselves don’t need to
+appropriate gir* packages. The interpreters themselves don’t need to
depend on packages they don’t use directly.
@@ -81,15 +83,15 @@
libfoo-2.0-3 /usr/lib/libfoo-2.0.so.3*
libfoo-2.0-dev /usr/lib/libfoo-2.0.so (and other usual stuff)
libfoo-2.0-dev /usr/share/gir-1.0/Foo-2.0.gir
- gir1.0-foo-2.0 /usr/lib/girepository-1.0/Foo-2.0.typelib
+ gir1.2-foo-2.0 /usr/lib/girepository-1.0/Foo-2.0.typelib
libfoo-2.0-dev Depends: libfoo-2.0-3, libbar-3.0-dev
-gir1.0-foo-2.0 Depends: ${gir:Depends} which expands to:
-libfoo-2.0-3, gir1.0-bar-3.0
+gir1.2-foo-2.0 Depends: ${gir:Depends} which expands to:
+libfoo-2.0-3, gir1.2-bar-3.0
If foobar is a package containing the following JS script:
#! /usr/bin/seed
Foo = imports.gi.Foo;
// Stuff that uses the Foo 2.0 API
-Then foobar Depends: gir1.0-foo-2.0
+Then foobar Depends: gir1.2-foo-2.0
More information about the pkg-gnome-commits
mailing list