[Pkg-mono-svn-commits] rev 2372 - in cli-common/trunk: . debian
Mirco Bauer
meebey-guest at costa.debian.org
Sun Apr 2 20:57:46 UTC 2006
Author: meebey-guest
Date: 2006-04-02 20:57:42 +0000 (Sun, 02 Apr 2006)
New Revision: 2372
Modified:
cli-common/trunk/debian/changelog
cli-common/trunk/dh_clideps
cli-common/trunk/dh_makeclilibs
Log:
- fixed shlibs parsing
Modified: cli-common/trunk/debian/changelog
===================================================================
--- cli-common/trunk/debian/changelog 2006-03-28 20:31:22 UTC (rev 2371)
+++ cli-common/trunk/debian/changelog 2006-04-02 20:57:42 UTC (rev 2372)
@@ -6,6 +6,7 @@
+ Added LD_LIBRARY_PATH to "mono" call for internal-mono mode.
+ Fixed dllmap parser regex in dh_clideps and dh_makeclideps, to not use
the full filename but the SONAME.
+ + Fixed shlibs parser regex and cat call to use fullpath.
* Dylan R. E. Moonfire <debian at mfgames.com>
+ Added a late GAC installer framework.
Modified: cli-common/trunk/dh_clideps
===================================================================
--- cli-common/trunk/dh_clideps 2006-03-28 20:31:22 UTC (rev 2371)
+++ cli-common/trunk/dh_clideps 2006-04-02 20:57:42 UTC (rev 2372)
@@ -66,11 +66,11 @@
my $cli = '/usr/bin/cli';
my $cli_version = `$cli --version 2>&1`;
my $cli_parser;
+my $pwd=`pwd`;
+chomp $pwd;
if (defined($ARGV[0]) && $ARGV[0] eq "internal-mono") {
$clr = "mono";
- my $pwd=`pwd`;
- chomp $pwd;
$cli_parser = "LD_LIBRARY_PATH=$pwd/debian/tmp/usr/lib MONO_PATH=$pwd/debian/tmp/usr/lib/mono/1.0:$pwd/debian/tmp/usr/lib/mono/2.0 $pwd/debian/tmp/usr/bin/monodis";
$cli_version = `LD_LIBRARY_PATH=$pwd/debian/tmp/usr/lib $pwd/debian/tmp/usr/bin/mono --version 2>&1`;
verbose_print("Will use built Mono (debian/tmp/usr/bin/monodis) for CIL parsing.");
@@ -186,7 +186,7 @@
$key = $vers . "__" . lc($key);
my $compat = "$name/$key";
if (!defined($libdata{$compat})) {
- warning("Warning! No Debian dependency data for $name ($key)!");
+ warning("Warning: No Debian dependency data for $name ($key)!");
} else {
push(@depkgs, $libdata{$compat});
}
@@ -200,7 +200,7 @@
} elsif ($vers eq "2.0.0.0") {
$needs_net_2_0 = 1;
} else {
- warning("Warning! Unknown mscorlib version: $vers!");
+ warning("Warning: Unknown mscorlib version: $vers!");
}
}
}
@@ -252,9 +252,9 @@
sort {
# beautify the sort order, requested by meebey
my $apkg;
- $a=~/^\S+/;
+ $a =~ /^\S+/;
$apkg=$&;
- $b=~/^\S+/;
+ $b =~ /^\S+/;
if($apkg eq $&) {
return -1 if( ($a=~/>=/) && ($b=~/<</));
return 1 if( ($b=~/>=/) && ($a=~/<</));
@@ -266,41 +266,33 @@
addsubstvar($package, "cli:Depends", $deps);
}
-sub resolveShlib {
- our($file, $name, $outRef) = @_;
- if (!%shlibdata) {
- open($fh, "cat /var/lib/dpkg/info/*.shlibs debian/shlibs.local debian/*/DEBIAN/shlibs 2>/dev/null |");
- while (<$fh>) {
- /(\S+)\s+(\S+)\s+(\w.*)\n?/;
- $shlibdata{"$1.so.$2"} = $3;
- }
- }
-
- if (-r "$file.config" &&
- `cat $file.config` =~ /dll=\W*$name[^>]+\Wtarget\W*=\W*(\w[\w.\-_\d]+)/ &&
- defined( $shlibdata{$1})) {
- $$outRef = $shlibdata{$1};
- return 1;
- }
- return 0;
-}
-
sub extraDeps {
my $config=$_[0].".config";
return undef if (! -r $config);
my $ret=undef;
if (!%shlibdata) {
- open($fh, "cat /var/lib/dpkg/info/*.shlibs debian/shlibs.local debian/*/DEBIAN/shlibs 2>/dev/null |");
+ open($fh, "cat /var/lib/dpkg/info/*.shlibs $pwd/debian/shlibs.local $pwd/debian/*/DEBIAN/shlibs 2>/dev/null |");
while (<$fh>) {
- /(\S+)\s+(\S+)\s+(\w.*)\n?/;
- $shlibdata{"$1.so.$2"} = $3;
+ #/(\S+)\s+(\S+)\s+(\w.*)\n?/;
+ #my ($soname, $soversion, $dependency);
+ chomp;
+ my($soname, $soversion, $dependency) = split(/\s+/, $_, 3);
+ $soname = $1;
+ $soversion = $2;
+ $dependency = $3;
+ $shlibdata{"$soname.so.$soversion"} = $dependency;
}
}
$config = `cat $config`;
- while ($config=~s/\Wtarget\W*=\W*(\w[\w.\-\d]+\.so\.\d+)//) {
- $ret.= (", ".$shlibdata{$1}) if(defined($shlibdata{$1}));
+ while ($config =~ s/\Wtarget\W*=\W*(\w[\w.\-\d]+\.so\.\d+)//) {
+ verbose_print("found $config: '$1'");
+ if (defined($shlibdata{$1})) {
+ $ret .= ", ".$shlibdata{$1};
+ } else {
+ warning("Warning: Missing shlibs entry for $1!");
+ }
}
$ret =~ s/^, // if $ret;
return $ret;
Modified: cli-common/trunk/dh_makeclilibs
===================================================================
--- cli-common/trunk/dh_makeclilibs 2006-03-28 20:31:22 UTC (rev 2371)
+++ cli-common/trunk/dh_makeclilibs 2006-04-02 20:57:42 UTC (rev 2372)
@@ -279,28 +279,6 @@
}
}
-sub extraDeps {
- my $config=$_[0].".config";
- my $ret=undef;
-
- if (!%shlibdata) {
- open($fh, "cat /var/lib/dpkg/info/*.shlibs debian/shlibs.local debian/*/DEBIAN/shlibs 2>/dev/null |");
- while (<$fh>) {
- /(\S+)\s+(\S+)\s+(\w.*)\n?/;
- $shlibdata{"$1.so.$2"} = $3;
- }
- }
-
- if (-r $config) {
- $config = `cat $config`;
- while($config=~s/\Wtarget\W*=\W*(\w[\w.\-\d]+\.so\.\d+)//) {
- $ret.= (", ".$shlibdata{$1}) if(defined($shlibdata{$1}));
- }
- }
- $ret=~s/^, // if $ret;
- return $ret;
-}
-
=head1 SEE ALSO
L<debhelper(7)>
More information about the Pkg-mono-svn-commits
mailing list