← Back to team overview

launchpad-reviewers team mailing list archive

[Merge] lp:~adconrad/launchpad-buildd/chroot-dpkg into lp:launchpad-buildd

 

Adam Conrad has proposed merging lp:~adconrad/launchpad-buildd/chroot-dpkg into lp:launchpad-buildd.

Requested reviews:
  Launchpad code reviewers (launchpad-reviewers)

For more details, see:
https://code.launchpad.net/~adconrad/launchpad-buildd/chroot-dpkg/+merge/83730

Make sbuild use the chroot's dpkg-architecture instead of the host's.
-- 
https://code.launchpad.net/~adconrad/launchpad-buildd/chroot-dpkg/+merge/83730
Your team Launchpad code reviewers is requested to review the proposed merge of lp:~adconrad/launchpad-buildd/chroot-dpkg into lp:launchpad-buildd.
=== modified file 'debian/changelog'
--- debian/changelog	2011-11-21 05:29:09 +0000
+++ debian/changelog	2011-11-29 06:06:24 +0000
@@ -1,3 +1,9 @@
+launchpad-buildd (108) hardy; urgency=low
+
+  * Use the chroot's dpkg-architecture instead of the base system.
+
+ -- Adam Conrad <adconrad@xxxxxxxxxx>  Mon, 28 Nov 2011 22:59:31 -0700
+
 launchpad-buildd (107) hardy; urgency=low
 
   * Correction to generate-translation-templates for the new file location.

=== modified file 'sbuild'
--- sbuild	2011-11-11 00:08:23 +0000
+++ sbuild	2011-11-29 06:06:24 +0000
@@ -912,7 +912,9 @@
 	else {
 		my $valid_arch;
 		for my $a (split(/\s+/, $dscarchs)) {
-			if (system('dpkg-architecture', '-a' . $main::arch, '-i' . $a) eq 0) {
+			if (system("$conf::sudo", "/usr/sbin/chroot",
+			    "$main::cwd/$main::chroot_dir", 
+			    "dpkg-architecture", "-a".$main::arch, "-i".$a) eq 0) {
 				$valid_arch = 1;
 				last;
 			}
@@ -2810,10 +2812,19 @@
 					# Use 'dpkg-architecture' to support architecture
 					# wildcards.
 					if (/^!/) {
-						$ignore_it = 1 if system('dpkg-architecture', '-a' . $main::arch, '-i' . substr($_, 1)) eq 0;
+						if (system("$conf::sudo", "/usr/sbin/chroot",
+						    "$main::cwd/$main::chroot_dir",
+						    "dpkg-architecture", "-a".$main::arch, "-i".substr($_, 1)) eq 0) {
+							$ignore_it = 1
+						}
 					}
 					else {
-						$use_it = 1 if system('dpkg-architecture', '-a' . $main::arch, '-i' . $_) eq 0;
+						if (system("$conf::sudo", "/usr/sbin/chroot",    
+						    "$main::cwd/$main::chroot_dir",
+						    "dpkg-architecture", "-a".$main::arch, "-i".$_) eq 0) {
+							$use_it = 1
+						}
+
 						$include = 1;
 					}
 				}


Follow ups