diff options
author | mkanat%bugzilla.org <> | 2006-07-29 03:02:26 +0200 |
---|---|---|
committer | mkanat%bugzilla.org <> | 2006-07-29 03:02:26 +0200 |
commit | be4ea608880b0da1f2013dfe8e0cbbcecdf664a0 (patch) | |
tree | 0b6436b1efd55a65fd459e62e18dde54319f0e5d /checksetup.pl | |
parent | a20055928c25b42b9ece85949f99f7c9e93306f4 (diff) | |
download | bugzilla-be4ea608880b0da1f2013dfe8e0cbbcecdf664a0.tar.gz bugzilla-be4ea608880b0da1f2013dfe8e0cbbcecdf664a0.tar.xz |
Bug 346265: checksetup.pl should use Getopt::Long instead of its current hack
Patch By Max Kanat-Alexander <mkanat@bugzilla.org> (module owner) a=myk
Diffstat (limited to 'checksetup.pl')
-rwxr-xr-x | checksetup.pl | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/checksetup.pl b/checksetup.pl index 44451bbf8..f541fc627 100755 --- a/checksetup.pl +++ b/checksetup.pl @@ -208,6 +208,8 @@ L<Bugzilla::Install::Requirements> use strict; +my ($silent, %switch); + BEGIN { if ($^O =~ /MSWin32/i) { require 5.008001; # for CGI 2.93 or higher @@ -220,11 +222,13 @@ BEGIN { use lib "."; use Bugzilla::Constants; -our %answer; -my ($silent, %switch); +BEGIN { + use Getopt::Long qw(:config bundling); + GetOptions(\%switch, 'help|h|?', 'check-modules', 'no-templates|t', + 'verbose|v|no-silent'); +} -$switch{'no_templates'} = grep(/^--no-templates$/, @ARGV) - || grep(/^-t$/, @ARGV); +our %answer; # The use of some Bugzilla modules brings in modules we need to test for # Check first, via BEGIN @@ -237,8 +241,7 @@ BEGIN { # Check for help request. Display help page if --help/-h/-? was passed. ########################################################################### use Pod::Usage; -my $help = grep(/^--help$/, @ARGV) || grep (/^-h$/, @ARGV) || grep (/^-\?$/, @ARGV) || 0; -pod2usage({-verbose => 1, -exitval => 1}) if $help; +pod2usage({-verbose => 1, -exitval => 1}) if $switch{'help'}; ########################################################################### # Non-interactive override. Pass a filename on the command line which is @@ -251,7 +254,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) && !grep(/^--verbose$/, @ARGV); + $silent = !$switch{'verbose'}; } ########################################################################### @@ -276,7 +279,7 @@ exit if !check_requirements(!$silent)->{pass}; } # Break out if checking the modules is all we have been asked to do. -exit if grep(/^--check-modules$/, @ARGV); +exit if $switch{'check-modules'}; # If we're running on Windows, reset the input line terminator so that # console input works properly - loading CGI tends to mess it up @@ -1200,7 +1203,7 @@ if ($newinstall) { WriteParams(); my $templatedir = bz_locations()->{'templatedir'}; -unless ($switch{'no_templates'}) { +unless ($switch{'no-templates'}) { if (-e "$datadir/template") { print "Removing existing compiled templates ...\n" unless $silent; |