]> git.donarmstrong.com Git - debhelper.git/blobdiff - Debian/Debhelper/Dh_Getopt.pm
cmake: Pass CPPFLAGS in CFLAGS. Closes: #668813 Thanks, Simon Ruderich for the patch...
[debhelper.git] / Debian / Debhelper / Dh_Getopt.pm
index f27775b47823833e47ae3c3f65e76db1798e33fd..e4f3e4718fcab4b2e229c2e50c493348662d952a 100644 (file)
@@ -70,6 +70,10 @@ sub getoptions {
        my $array=shift;
        my %params=@_;
 
+       if (! exists $params{bundling} || $params{bundling}) {
+               Getopt::Long::config("bundling");
+       }
+
        my @test;
        my %options=(   
                "v" => \$dh{VERBOSE},
@@ -155,9 +159,11 @@ sub getoptions {
        }
 
        foreach my $opt (@test) {
-               # Try to parse an option, but ignore it
+               # Try to parse an option, and skip it
                # if it is not known.
-               if (getoptions([$opt], %params, test => 1)) {
+               if (getoptions([$opt], %params,
+                               ignore_unknown_options => 0,
+                               test => 1)) {
                        getoptions([$opt], %params);
                }
        }
@@ -182,7 +188,7 @@ sub parseopts {
        # dh through an override target to a command.
        if (defined $ENV{DH_INTERNAL_OPTIONS}) {
                @ARGV_extra=split(/\x1e/, $ENV{DH_INTERNAL_OPTIONS});
-               getoptions(\@ARGV_extra, %params, ignore_unknown_options => 1);
+               getoptions(\@ARGV_extra, %params);
 
                # Avoid forcing acting on packages specified in
                # DH_INTERNAL_OPTIONS. This way, -p can be specified
@@ -212,8 +218,9 @@ sub parseopts {
 
        my $ret=getoptions(\@ARGV, %params);
        if (!$ret) {
-               warning("warning: unknown options will be a fatal error in a future debhelper release");
-               #error("unknown option; aborting");
+               if (! compat(7)) {
+                       error("unknown option; aborting");
+               }
        }
 
        # Check to see if -V was specified. If so, but no parameters were
@@ -229,10 +236,12 @@ sub parseopts {
                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.");
+                       if (! $dh{BLOCK_NOOP_WARNINGS}) {
+                               warning("You asked that all arch in(dep) packages be built, but there are none of that type.");
+                       }
                        exit(0);
                }
-               push @{$dh{DOPACKAGES}},getpackages();
+               push @{$dh{DOPACKAGES}},getpackages("both");
        }
 
        # Remove excluded packages from the list of packages to act on.
@@ -256,7 +265,9 @@ sub parseopts {
        @{$dh{DOPACKAGES}}=@package_list;
 
        if (! defined $dh{DOPACKAGES} || ! @{$dh{DOPACKAGES}}) {
-               warning("No packages to build.");
+               if (! $dh{BLOCK_NOOP_WARNINGS}) {
+                       warning("No packages to build.");
+               }
                exit(0);
        }
 
@@ -274,9 +285,4 @@ sub parseopts {
        @ARGV=@{$dh{ARGV}} if exists $dh{ARGV};
 }
 
-sub import {
-       # Enable bundling of short command line options.
-       Getopt::Long::config("bundling");
-}              
-
 1