]> git.donarmstrong.com Git - debhelper.git/blobdiff - Debian/Debhelper/Dh_Getopt.pm
r2033: * Add --ignore option. This is intended to ease dealing with upstream
[debhelper.git] / Debian / Debhelper / Dh_Getopt.pm
index 7d82eea5b92525956c83eb8036bec57b553deede..d1e052affba85501c5ca5fc72189f76f432c05b4 100644 (file)
@@ -29,18 +29,18 @@ sub showhelp {
 # order.
 sub AddPackage { my($option,$value)=@_;
        if ($option eq 'i' or $option eq 'indep') {
-               push @{$options{DOPACKAGES}}, GetPackages('indep');
+               push @{$options{DOPACKAGES}}, getpackages('indep');
                $options{DOINDEP}=1;
        }
        elsif ($option eq 'a' or $option eq 'arch') {
-               push @{$options{DOPACKAGES}}, GetPackages('arch');
+               push @{$options{DOPACKAGES}}, getpackages('arch');
                $options{DOARCH}=1;
        }
        elsif ($option eq 'p' or $option eq 'package') {
                push @{$options{DOPACKAGES}}, $value;
        }
        elsif ($option eq 's' or $option eq 'same-arch') {
-               push @{$options{DOPACKAGES}}, GetPackages('same');
+               push @{$options{DOPACKAGES}}, getpackages('same');
                $options{DOSAME}=1;
        }
        else {
@@ -48,6 +48,11 @@ sub AddPackage { my($option,$value)=@_;
        }
 }
 
+# Adds packages to the list of debug packages.
+sub AddDebugPackage { my($option,$value)=@_;
+       push @{$options{DEBUGPACKAGES}}, $value;
+}
+
 # Add a package to a list of packages that should not be acted on.
 sub ExcludePackage { my($option,$value)=@_;
        $exclude_package{$value}=1;
@@ -58,6 +63,11 @@ sub AddExclude { my($option,$value)=@_;
        push @{$options{EXCLUDE}},$value;
 }
 
+# Add a file to the ignore list.
+sub AddIgnore { my($option,$file)=@_;
+       $options{IGNORE}->{$file}=1;
+}
+
 # This collects non-options values.
 sub NonOption {
        push @{$options{ARGV}}, @_;
@@ -80,6 +90,8 @@ sub parseopts {
                "p=s" => \&AddPackage,
                "package=s" => \&AddPackage,
        
+               "dbg-package=s" => \&AddDebugPackage,
+               
                "s" => \&AddPackage,
                "same-arch" => \&AddPackage,
        
@@ -88,12 +100,16 @@ sub parseopts {
        
                "n" => \$options{NOSCRIPTS},
                "noscripts" => \$options{NOSCRIPTS},
+               "o" => \$options{ONLYSCRIPTS},
+               "onlyscripts" => \$options{ONLYSCRIPTS},
 
                "x" => \$options{INCLUDE_CONFFILES}, # is -x for some unknown historical reason..
                "include-conffiles" => \$options{INCLUDE_CONFFILES},
        
                "X=s" => \&AddExclude,
                "exclude=s" => \&AddExclude,
+               
+               "ignore=s" => \&AddIgnore,
        
                "d" => \$options{D_FLAG},
                "remove-d" => \$options{D_FLAG},
@@ -135,7 +151,7 @@ sub parseopts {
 
                "filename=s" => \$options{FILENAME},
                
-               "priority=i" => \$options{PRIORITY},
+               "priority=s" => \$options{PRIORITY},
                
                "flavor=s" => \$options{FLAVOR},
 
@@ -153,6 +169,14 @@ sub parseopts {
                
                "name=s" => \$options{NAME},
                
+               "keep-debug" => \$options{KEEP_DEBUG},
+               
+               "error-handler=s" => \$options{ERROR_HANDLER},
+               
+               "add-udeb=s" => \$options{SHLIBS_UDEB},
+               
+               "language=s" => \$options{LANGUAGE},
+
                "<>" => \&NonOption,
        );
 
@@ -173,9 +197,10 @@ sub parseopts {
                if ($options{DOINDEP} || $options{DOARCH} || $options{DOSAME}) {
                        # User specified that all arch (in)dep package be
                        # built, and there are none of that type.
-                       error("I have no package to build");
+                       warning("I have no package to build");
+                       exit(0);
                }
-               push @{$options{DOPACKAGES}},GetPackages();
+               push @{$options{DOPACKAGES}},getpackages();
        }
 
        # Remove excluded packages from the list of packages to act on.