[Pkg-mono-svn-commits] rev 1030 - mono/trunk/debian

Eduard Bloch blade@haydn.debian.org
Wed, 16 Jun 2004 14:49:42 -0600


Author: blade
Date: 2004-06-16 14:49:38 -0600 (Wed, 16 Jun 2004)
New Revision: 1030

Modified:
   mono/trunk/debian/changelog
   mono/trunk/debian/dh_netdeps
   mono/trunk/debian/rules
Log:
Jackson's patch to make monodis not segfault, and dh_netdeps hacks to
read data from STDERR as well


Modified: mono/trunk/debian/changelog
===================================================================
--- mono/trunk/debian/changelog	2004-06-16 19:41:00 UTC (rev 1029)
+++ mono/trunk/debian/changelog	2004-06-16 20:49:38 UTC (rev 1030)
@@ -10,6 +10,9 @@
     + mono-common.preinst now moves /usr/lib/mono directory (if exists) to
       /usr/share/dotnet
     + moved the check for mono-vs.-mint priority to debian/rules
+    + applied the patch (as dpatch) from Jackson Harper,
+      http://bugzilla.ximian.com/showattachment.cgi?attach_id=8206 to fix the
+      monodis segfault while operating on unresolved assembly references
   * Mirco 'meebey' Bauer
     + New upstream release updates
     + enabled preview features (.NET 1.2, generics)

Modified: mono/trunk/debian/dh_netdeps
===================================================================
--- mono/trunk/debian/dh_netdeps	2004-06-16 19:41:00 UTC (rev 1029)
+++ mono/trunk/debian/dh_netdeps	2004-06-16 20:49:38 UTC (rev 1030)
@@ -57,8 +57,6 @@
 # my $python_major;
 my $mono_version = `$cli -V 2>&1`;
 
-print "fsck, $mono_version\n";
-
 if ( !-x "/usr/bin/monodis" ) {
     error(
 "Package mono-utils is not installed, aborting. (Probably forgot to Build-Depend on mono-utils.)"
@@ -171,16 +169,19 @@
         return unless -f and /\.(exe|dll)$/;
         local *F;
         my $file = $_;
-        return unless open F, "monodis --assemblyref $file |";
+        return unless open F, "LANG=C monodis --assemblyref $file 2>&1 |";
         if ( my $extra = extraDeps ($file) ) {
            push ( @depkgs, $extra );
         }
         our( $vers, $name, $key );
         while (<F>) {
             $vers = $1 if /Version=(.*)\n/;
+            $name = $1 if /Could not find assembly ([^,]+),/;
             $name = $1 if /Name=(.*)\n/;
+            $vers = "$1.$2" if /Major\/Minor:\s*(\d+),(\d+)/;
+            $vers .= ".$1.$2" if /Build:\s*(\d+),(\d+)/;
 
-            if (/0x\S+:.([ABCDEF0123456789 ]+)\n/) {
+            if (/0x\S+:.([ABCDEF0123456789 ]+)\n/ || /Token:\s*(\w+)/) {
                 $key = $1;
                 $key =~ s/\ //g;
                 $key = $vers . "__" . lc($key);

Modified: mono/trunk/debian/rules
===================================================================
--- mono/trunk/debian/rules	2004-06-16 19:41:00 UTC (rev 1029)
+++ mono/trunk/debian/rules	2004-06-16 20:49:38 UTC (rev 1030)
@@ -10,15 +10,15 @@
 JIT="--with-jit=no"
 endif
 
-# include /usr/share/dpatch/dpatch.make
+include /usr/share/dpatch/dpatch.make
 VERSION = $(shell dpkg-parsechangelog | grep ^Vers | cut -d\  -f2)
 UPVERSION = $(shell echo $(VERSION) | sed 's,-.*,,')
 
 cli-wrapper: debian/cli-wrapper.c
 	$(CC) -o cli-wrapper debian/cli-wrapper.c `pkg-config glib-2.0 --cflags --libs`
 
-#build: patch build-stamp
-build: build-stamp
+build: patch build-stamp
+#build: build-stamp
 build-stamp: cli-wrapper
 	dh_testdir
 	# using a better dllmap
@@ -38,8 +38,8 @@
 	( cat debian/mono-jit.postinst.head; ARCH= ; case `dpkg-architecture -qDEB_HOST_ARCH` in i386|powerpc|s390) cat debian/mono-jit.postinst.mono-setup ;; *) cat debian/mono-jit.postinst.mint-setup ;; esac ) > debian/mono-jit.postinst
 	touch build-stamp
 
-#clean: unpatch
-clean:
+clean: unpatch
+#clean:
 	dh_testdir
 	dh_testroot
 	rm -f build-stamp autogen.sh