r32801 - in /desktop/experimental/glib2.0/debian: changelog dh_listmissing.pl rules

biebl at users.alioth.debian.org biebl at users.alioth.debian.org
Tue Mar 6 01:26:26 UTC 2012


Author: biebl
Date: Tue Mar  6 01:26:26 2012
New Revision: 32801

URL: http://svn.debian.org/wsvn/pkg-gnome/?sc=1&rev=32801
Log:
Override list-missing target with an implementation that better handles
multiple flavors (copied from the gtk+3.0 package).

Added:
    desktop/experimental/glib2.0/debian/dh_listmissing.pl
Modified:
    desktop/experimental/glib2.0/debian/changelog
    desktop/experimental/glib2.0/debian/rules

Modified: desktop/experimental/glib2.0/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/experimental/glib2.0/debian/changelog?rev=32801&op=diff
==============================================================================
--- desktop/experimental/glib2.0/debian/changelog [utf-8] (original)
+++ desktop/experimental/glib2.0/debian/changelog [utf-8] Tue Mar  6 01:26:26 2012
@@ -3,6 +3,8 @@
   * New upstream development release.
   * debian/patches/61_glib-compile-binaries-path.patch: Refreshed.
   * debian/libglib2.0-0.symbols: Add new symbols.
+  * Override list-missing target with an implementation that better handles
+    multiple flavors (copied from the gtk+3.0 package).
 
  -- Michael Biebl <biebl at debian.org>  Tue, 06 Mar 2012 02:21:33 +0100
 

Added: desktop/experimental/glib2.0/debian/dh_listmissing.pl
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/experimental/glib2.0/debian/dh_listmissing.pl?rev=32801&op=file
==============================================================================
--- desktop/experimental/glib2.0/debian/dh_listmissing.pl (added)
+++ desktop/experimental/glib2.0/debian/dh_listmissing.pl [utf-8] Tue Mar  6 01:26:26 2012
@@ -1,0 +1,79 @@
+#!/bin/false /usr/bin/perl -w
+# shebang disabled while this script resides in debian/
+
+# similar to dh_install; needs some documentation
+
+use strict;
+use File::Find;
+use Debian::Debhelper::Dh_Lib;
+
+init();
+
+# list of sourcedirs
+my @sourcedirs = @ARGV;
+
+my @installed;
+
+my $srcdir = '.';
+
+# dh_install code, but not doing any installation, just building @installed
+# and stripping sourcedirs from these
+foreach my $package (@{$dh{DOPACKAGES}}) {
+    my $tmp=tmpdir($package);
+    my $file=pkgfile($package,"install");
+
+    my @install;
+    if ($file) {
+        @install=filedoublearray($file); # no globbing yet
+    }
+
+    # Support for -X flag.
+    my $exclude = '';
+    if ($dh{EXCLUDE_FIND}) {
+        $exclude = '! \( '.$dh{EXCLUDE_FIND}.' \)';
+    }
+
+    foreach my $set (@install) {
+        if (! defined $dh{AUTODEST} && @$set > 1) {
+            pop @$set;
+        }
+        foreach my $src (map { glob "$srcdir/$_" } @$set) {
+            next if excludefile($src);
+
+            # strip source dir
+            foreach my $d (@sourcedirs) {
+                $src=~s/^\Q$srcdir\E\/\Q$d\E\///;
+            }
+
+            # Keep track of what's installed.
+            # Kill any extra slashes. Makes the @installed stuff more robust.
+            $src=~y:/:/:s;
+            $src=~s:/+$::;
+            $src=~s:^(\./)*::;
+            push @installed, "\Q$src\E\/.*|\Q$src\E";
+        }
+    }
+}
+
+# dh_install code, but stripping sourcedirs
+my @missing;
+my $installed=join("|", @installed);
+$installed=qr{^($installed)$};
+find(sub {
+    -f || -l || return;
+    $_="$File::Find::dir/$_";
+    foreach my $d (@sourcedirs) {
+        s/^\Q$d\E\///;
+    }
+    if (! /$installed/ && ! excludefile($_)) {
+        my $file=$_;
+        push @missing, $file;
+    }
+}, @sourcedirs);
+if (@missing) {
+    warning "$_ has been installed upstream but is not in any package" foreach @missing;
+    if ($dh{FAIL_MISSING}) {
+        error("missing files, aborting");
+    }
+}
+

Modified: desktop/experimental/glib2.0/debian/rules
URL: http://svn.debian.org/wsvn/pkg-gnome/desktop/experimental/glib2.0/debian/rules?rev=32801&op=diff
==============================================================================
--- desktop/experimental/glib2.0/debian/rules [utf-8] (original)
+++ desktop/experimental/glib2.0/debian/rules [utf-8] Tue Mar  6 01:26:26 2012
@@ -101,3 +101,8 @@
 		-e "s#@GNOME_TEAM@#$(UPLOADERS)#g" \
 		-e "s#@REFDBG_PKG@#$(REFDBG_PKG)#g" \
 		debian/control.in > debian/control
+
+list-missing:
+	# FIXME: remove this when CDBS' list-missing works with multiple flavors
+	perl -w debian/dh_listmissing.pl $(foreach f,$(DEB_MAKE_FLAVORS),debian/install/$(f)) 2>&1 | \
+	    egrep -v '(\.la|\.pyc|\.pyo) has been installed' >&2




More information about the pkg-gnome-commits mailing list