[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Ubuntu dpkg 1.16.1.2ubuntu2



This e-mail has been sent due to an upload to Ubuntu that contains Ubuntu
changes.  It contains the difference between the new version and the
previous version of the same source package in Ubuntu.
Format: 1.8
Date: Fri, 02 Dec 2011 12:24:40 -0700
Source: dpkg
Binary: libdpkg-dev dpkg dpkg-dev libdpkg-perl dselect
Architecture: source
Version: 1.16.1.2ubuntu2
Distribution: precise
Urgency: low
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Changed-By: Adam Conrad <adconrad@ubuntu.com>
Description: 
 dpkg       - Debian package management system
 dpkg-dev   - Debian package development tools
 dselect    - Debian package management front-end
 libdpkg-dev - Debian package management static library
 libdpkg-perl - Dpkg perl modules
Changes: 
 dpkg (1.16.1.2ubuntu2) precise; urgency=low
 .
   * Apply patch from Steve McIntyre to special-case armhf/armel ELF
     objects in Shlibs/Objdump.pm, so we don't get incorrect deps.
Checksums-Sha1: 
 6a660cb3810a2a1351393fdfb8aedd3465569887 1311 dpkg_1.16.1.2ubuntu2.dsc
 090db9ab1516fd6b6dcbdef04df15e53eb288e83 5453061 dpkg_1.16.1.2ubuntu2.tar.bz2
Checksums-Sha256: 
 864782d582b10d8a364d41d1a24bff93131cfcde5cd7a25c95cfde0c3c66de79 1311 dpkg_1.16.1.2ubuntu2.dsc
 b22519f71ead607c447107fd23c9dfb2713fef7c35233180e1f646ff543e4e96 5453061 dpkg_1.16.1.2ubuntu2.tar.bz2
Files: 
 0d9f2584a9686bfdce493fd6e6c2391d 1311 admin required dpkg_1.16.1.2ubuntu2.dsc
 7bf786fd5130cc2ee5c9a61fd901cdcf 5453061 admin required dpkg_1.16.1.2ubuntu2.tar.bz2
Original-Maintainer: Dpkg Developers <debian-dpkg@lists.debian.org>
diff -pruN 1.16.1.2ubuntu1/debian/changelog 1.16.1.2ubuntu2/debian/changelog
--- 1.16.1.2ubuntu1/debian/changelog	2011-11-27 09:49:10.000000000 +0000
+++ 1.16.1.2ubuntu2/debian/changelog	2011-12-02 19:25:40.000000000 +0000
@@ -1,3 +1,10 @@
+dpkg (1.16.1.2ubuntu2) precise; urgency=low
+
+  * Apply patch from Steve McIntyre to special-case armhf/armel ELF
+    objects in Shlibs/Objdump.pm, so we don't get incorrect deps.
+
+ -- Adam Conrad <adconrad@ubuntu.com>  Fri, 02 Dec 2011 12:24:40 -0700
+
 dpkg (1.16.1.2ubuntu1) precise; urgency=low
 
   * Resynchronise with Debian.  Remaining changes:
diff -pruN 1.16.1.2ubuntu1/scripts/Dpkg/Shlibs/Objdump.pm 1.16.1.2ubuntu2/scripts/Dpkg/Shlibs/Objdump.pm
--- 1.16.1.2ubuntu1/scripts/Dpkg/Shlibs/Objdump.pm	2010-08-16 11:29:12.000000000 +0000
+++ 1.16.1.2ubuntu2/scripts/Dpkg/Shlibs/Objdump.pm	2011-12-02 19:24:28.000000000 +0000
@@ -82,6 +82,28 @@ sub has_object {
     return exists $self->{objects}{$objid};
 }
 
+sub is_armhf {
+    my ($file) = @_;
+    my ($output, %opts, $pid, $res);
+    my $hf = 0;
+    $pid = spawn(exec => [ "readelf", "-A", "--", $file ],
+		 env => { "LC_ALL" => "C" },
+		 to_pipe => \$output, %opts);
+    while (<$output>) {
+	chomp;
+	if (/Tag_ABI_VFP_args: VFP registers/) {
+	    $hf = 1;
+	    last;
+	}
+    }
+    close($output);
+    wait_child($pid, nocheck => 1);
+    if ($?) {
+	subprocerr("readelf");
+    }
+    return $hf;
+}
+
 {
     my %format; # Cache of result
     sub get_format {
@@ -112,6 +134,14 @@ sub has_object {
 		local $OBJDUMP = "objdump";
 		$res = get_format($file);
 	    }
+	    if ($res eq "elf32-littlearm") {
+		if (is_armhf($file)) {
+		    $res = "elf32-littlearm-hfabi";
+		} else {
+		    $res = "elf32-littlearm-sfabi";
+		}
+		$format{$file} = $res;
+	    }
 	    return $res;
 	}
     }
@@ -243,6 +273,13 @@ sub parse_objdump_output {
 	} elsif ($section eq "none") {
 	    if (/^\s*.+:\s*file\s+format\s+(\S+)\s*$/) {
 		$self->{format} = $1;
+		if ($self->{format} eq "elf32-littlearm") {
+		    if (Dpkg::Shlibs::Objdump::is_armhf($self->{file})) {
+			$self->{format} = "elf32-littlearm-hfabi";
+		    } else {
+			$self->{format} = "elf32-littlearm-sfabi";
+		    }
+		}
 	    } elsif (/^architecture:\s*\S+,\s*flags\s*\S+:\s*$/) {
 		# Parse 2 lines of "-f"
 		# architecture: i386, flags 0x00000112:

Reply to: