# Check if packages to build have been specified, if not, fall back to
# the default, doing them all.
if (! defined $dh{DOPACKAGES} || ! @{$dh{DOPACKAGES}}) {
- push @{$dh{DOPACKAGES}},@allpackages;
+ push @{$dh{DOPACKAGES}}, getpackages('both');
}
# Check to see if -P was specified. If so, we can only act on a single
}
# Returns a list of packages in the control file.
-# Pass "arch" or "indep" to specify arch-dependant or
-# independant. If nothing is specified, returns all packages.
+# Pass "arch" or "indep" to specify arch-dependant (that will be built
+# for the system's arch) or independant. If nothing is specified,
+# returns all packages. Also, "both" returns the union of "arch" and "indep"
+# packages.
# As a side effect, populates %package_arches and %package_types with the
# types of all packages (not only those returned).
my (%package_types, %package_arches);
}
if ($package &&
- (($type eq 'indep' && $arch eq 'all') ||
- ($type eq 'arch' && ($arch eq 'any' ||
+ ((($type eq 'indep' || $type eq 'both') && $arch eq 'all') ||
+ (($type eq 'arch' || $type eq 'both') && ($arch eq 'any' ||
($arch ne 'all' &&
samearch(buildarch(), $arch)))) ||
! $type)) {
not all packages are acted on (due to architecture limits or flags).
Closes: #570373
* Typo. Closes: #571968
+ * If neither -a or -i are specified, debhelper commands used to default
+ to acting on all packages in the control file, which was a guaranteed
+ failure if the control file listed packages that did not build for the
+ target architecture. After recent optimisations, this default behavior
+ can efficiently be changed to the more sane default of acting on only
+ packages that can be built for the current architecture. This change
+ is mostly useful when using minimal rules files with dh. Closes: #572077
-- Joey Hess <joeyh@debian.org> Thu, 18 Feb 2010 17:53:27 -0500
Returns a list of packages in the control file.
Pass "arch" or "indep" to specify arch-dependent or
-independent. If nothing is specified, returns all
- packages.
+ packages (including packages that are not built
+ for this architecture). Pass "both" to get the union
+ of "arch" and "indep" packages.
As a side effect, populates %package_arches and %package_types with
the types of all packages (not only those returned).
inhibit_log()