Просмотр исходного кода

Dpkg::Build::Types: Add new build_has_any function

Fix regression introduced in commit d122537d6df899dc1d0599e0a24ee3b27f0d9e18.

These instances need to trigger whenever there is any bit set.
Guillem Jover лет назад: 10
Родитель
Сommit
dd064b2138
3 измененных файлов с 20 добавлено и 5 удалено
  1. 17 2
      scripts/Dpkg/Build/Types.pm
  2. 2 2
      scripts/dpkg-buildpackage.pl
  3. 1 1
      scripts/dpkg-genchanges.pl

+ 17 - 2
scripts/Dpkg/Build/Types.pm

@@ -27,6 +27,7 @@ our @EXPORT = qw(
     BUILD_ARCH_INDEP
     BUILD_BINARY
     BUILD_FULL
+    build_has_any
     build_has
     build_has_not
     build_is
@@ -103,10 +104,24 @@ my $current_option = undef;
 
 =over 4
 
+=item build_has_any($bits)
+
+Return a boolean indicating whether the current build type has any of the
+specified $bits.
+
+=cut
+
+sub build_has_any
+{
+    my ($bits) = @_;
+
+    return $current_type & $bits;
+}
+
 =item build_has($bits)
 
-Return a boolean indicating whether the current build type has the specified
-$bits.
+Return a boolean indicating whether the current build type has all the
+specified $bits.
 
 =cut
 

+ 2 - 2
scripts/dpkg-buildpackage.pl

@@ -504,7 +504,7 @@ if (build_has(BUILD_SOURCE)) {
     chdir($dir) or syserr("chdir $dir");
 }
 
-run_hook('build', build_has(BUILD_BINARY));
+run_hook('build', build_has_any(BUILD_BINARY));
 
 if ($buildtarget ne 'build' and scalar(@debian_rules) == 1) {
     # Verify that build-{arch,indep} are supported. If not, fallback to build.
@@ -524,7 +524,7 @@ if ($buildtarget ne 'build' and scalar(@debian_rules) == 1) {
     }
 }
 
-if (build_has(BUILD_BINARY)) {
+if (build_has_any(BUILD_BINARY)) {
     withecho(@debian_rules, $buildtarget);
     run_hook('binary', 1);
     withecho(@rootcommand, @debian_rules, $binarytarget);

+ 1 - 1
scripts/dpkg-genchanges.pl

@@ -289,7 +289,7 @@ if (build_has(BUILD_SOURCE)) {
     $origsrcmsg = g_('binary-only upload (no source code included)');
 }
 
-if (build_has(BUILD_BINARY)) {
+if (build_has_any(BUILD_BINARY)) {
     my $dist_count = 0;
 
     $dist_count = $dist->load($fileslistfile) if -e $fileslistfile;