]> git.ipfire.org Git - thirdparty/bugzilla.git/commitdiff
Bug 256151: provide --help for checksetup.pl, and change --no-silent to --verbose
authorjustdave%bugzilla.org <>
Fri, 14 Jan 2005 11:42:51 +0000 (11:42 +0000)
committerjustdave%bugzilla.org <>
Fri, 14 Jan 2005 11:42:51 +0000 (11:42 +0000)
Patch by GavinS <bugzilla@chimpychompy.org
r=vladd,a=justdave

checksetup.pl

index ec7aaa6a82b050e7795b2ff1070dcb90a449b501..6942f8a8dd1ece7be1f65b988e64bce025f6a083 100755 (executable)
@@ -128,6 +128,33 @@ BEGIN {
     # However, don't run under -c (because of tests)
     if (!$^C) {
 
+###########################################################################
+# Check for help request. Display help page if --help/-h/-? was passed.
+###########################################################################
+my $help = grep(/^--help$/, @ARGV) || grep (/^-h$/, @ARGV) || grep (/^-\?$/, @ARGV) || 0;
+help_page() if $help;
+
+sub help_page {
+    my $programname = $0;
+    $programname =~ s#^\./##;
+    print "$programname - checks your setup and updates your Bugzilla installation\n";
+    print "\nUsage: $programname [SCRIPT [--verbose]] [--check-modules|--help]\n";
+    print "\n";
+    print "   --help           Display this help text.\n";
+    print "   --check-modules  Only check for correct module dependencies and quit thereafter;\n";
+    print "                    does not perform any changes.\n";
+    print "    SCRIPT          Name of script to drive non-interactive mode.\n";
+    print "                    This script should define an \%answer hash whose\n"; 
+    print "                    keys are variable names and the values answers to\n";
+    print "                    all the questions checksetup.pl asks.\n";
+    print "                    (See comments at top of $programname for more info.)\n";
+    print "   --verbose        Output results of SCRIPT being processed.\n";
+
+        
+print "\n";
+    exit 1;
+}
+
 ###########################################################################
 # Non-interactive override. Pass a filename on the command line which is
 # a Perl script. This script defines a %answer hash whose names are tags
@@ -139,7 +166,7 @@ if ($ARGV[0] && ($ARGV[0] !~ /^--/)) {
     do $ARGV[0] 
         or ($@ && die("Error $@ processing $ARGV[0]"))
         or die("Error $! processing $ARGV[0]");
-    $silent = !grep(/^--no-silent$/, @ARGV);
+    $silent = !grep(/^--no-silent$/, @ARGV) && !grep(/^--verbose$/, @ARGV);
 }
 
 ###########################################################################