diff options
-rw-r--r-- | Debian/Debhelper/Dh_Getopt.pm | 10 | ||||
-rw-r--r-- | Debian/Debhelper/Dh_Lib.pm | 8 | ||||
-rw-r--r-- | debhelper.pod | 12 | ||||
-rw-r--r-- | debian/changelog | 13 | ||||
-rw-r--r-- | doc/PROGRAMMING | 4 | ||||
-rw-r--r-- | doc/TODO | 1 |
6 files changed, 22 insertions, 26 deletions
diff --git a/Debian/Debhelper/Dh_Getopt.pm b/Debian/Debhelper/Dh_Getopt.pm index 6e5cacdd..edb3be76 100644 --- a/Debian/Debhelper/Dh_Getopt.pm +++ b/Debian/Debhelper/Dh_Getopt.pm @@ -28,17 +28,14 @@ sub AddPackage { my($option,$value)=@_; push @{$dh{DOPACKAGES}}, getpackages('indep'); $dh{DOINDEP}=1; } - elsif ($option eq 'a' or $option eq 'arch') { + elsif ($option eq 'a' or $option eq 'arch' or + $option eq 's' or $option eq 'same-arch') { push @{$dh{DOPACKAGES}}, getpackages('arch'); $dh{DOARCH}=1; } elsif ($option eq 'p' or $option eq 'package') { push @{$dh{DOPACKAGES}}, $value; } - elsif ($option eq 's' or $option eq 'same-arch') { - push @{$dh{DOPACKAGES}}, getpackages('same'); - $dh{DOSAME}=1; - } else { error("bad option $option - should never happen!\n"); } @@ -186,7 +183,6 @@ sub parseopts { delete $dh{DOPACKAGES}; delete $dh{DOINDEP}; delete $dh{DOARCH}; - delete $dh{DOSAME}; } # DH_OPTIONS can contain additional options @@ -216,7 +212,7 @@ sub parseopts { # want us to act on them all. Note we have to do this before excluding # packages out, below. if (! defined $dh{DOPACKAGES} || ! @{$dh{DOPACKAGES}}) { - if ($dh{DOINDEP} || $dh{DOARCH} || $dh{DOSAME}) { + if ($dh{DOINDEP} || $dh{DOARCH}) { # User specified that all arch (in)dep package be # built, and there are none of that type. warning("You asked that all arch in(dep) packages be built, but there are none of that type."); diff --git a/Debian/Debhelper/Dh_Lib.pm b/Debian/Debhelper/Dh_Lib.pm index 4ccd12ae..5a0b7947 100644 --- a/Debian/Debhelper/Dh_Lib.pm +++ b/Debian/Debhelper/Dh_Lib.pm @@ -667,9 +667,8 @@ sub sourcepackage { } # Returns a list of packages in the control file. -# Must pass "arch" or "indep" or "same" to specify arch-dependant or -# -independant or same arch packages. If nothing is specified, returns all -# packages. +# Pass "arch" or "indep" to specify arch-dependant or +# independant. If nothing is specified, returns all 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); @@ -717,8 +716,7 @@ sub getpackages { if ($package && (($type eq 'indep' && $arch eq 'all') || - ($type eq 'arch' && $arch ne 'all') || - ($type eq 'same' && ($arch eq 'any' || + ($type eq 'arch' && ($arch eq 'any' || ($arch ne 'all' && samearch(buildarch(), $arch)))) || ! $type)) { diff --git a/debhelper.pod b/debhelper.pod index cea52836..a903620c 100644 --- a/debhelper.pod +++ b/debhelper.pod @@ -93,7 +93,8 @@ will output what it would have done. =item B<-a>, B<--arch> -Act on all architecture dependent packages. +Act on architecture dependent packages that should be built for the +build architecture. =item B<-i>, B<--indep> @@ -106,13 +107,8 @@ times to make debhelper operate on a given set of packages. =item B<-s>, B<--same-arch> -This is a smarter version of the -a flag, that is used in some rare -circumstances. It understands that if the control file lists "Architecture: i386" -for the package, the package should not be acted on on other architectures. So -this flag makes the command act on all "Architecture: any" packages, as well -as on any packages that have the current architecture explicitly specified. -Contrast to the -a flag, which makes the command work on all packages that -are not architecture independent. +This used to be a smarter version of the -a flag, but the -a flag is now +equally smart. =item B<-N>I<package>, B<--no-package=>I<package> diff --git a/debian/changelog b/debian/changelog index c0fdd8bd..e45de8dd 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,9 +1,14 @@ -debhelper (7.3.17) UNRELEASED; urgency=low +debhelper (7.3.17) unstable; urgency=low - * Optimise -s handling to avoid running dpkg-architecture if the package - is arch all. + * Optimise -s handling to avoid running dpkg-architecture if a package + is arch all. This was, suprisingly, the only overhead of using the -s + flag with arch all/any packages. + * The -a flag now does the same thing as the -s flag, so debhelper users + do not need to worry about using the -s flag when building a package + that only builds for some architectures, and dh will also work in that + situation. Closes: #540794 - -- Joey Hess <joeyh@debian.org> Tue, 01 Sep 2009 13:19:55 -0400 + -- Joey Hess <joeyh@debian.org> Tue, 01 Sep 2009 13:41:16 -0400 debhelper (7.3.16) unstable; urgency=low diff --git a/doc/PROGRAMMING b/doc/PROGRAMMING index 5f236ebd..0fca4722 100644 --- a/doc/PROGRAMMING +++ b/doc/PROGRAMMING @@ -232,8 +232,8 @@ udeb_filename($package) Returns the filename of the udeb package. getpackages($type) Returns a list of packages in the control file. - Must pass "arch" or "indep" or "same" to specify arch-dependent or - -independent or same arch packages. If nothing is specified, returns all + Pass "arch" or "indep" to specify arch-dependent or + -independent. If nothing is specified, returns all packages. As a side effect, populates %package_arches and %package_types with the types of all packages (not only those returned). @@ -31,3 +31,4 @@ Deprecated: Need to wait a while (from Oct 2008) to ensure that most rules files that pass unknown options to commands are fixed. * dh_desktop, dh_scrollkeeper. Remove eventually.. +* -s flag, not formally deprecated yet; remove eventually |