From 0d94f047fb3f02733195ce8c5ed822502611339e Mon Sep 17 00:00:00 2001 From: "mkanat%bugzilla.org" <> Date: Sat, 29 Jul 2006 01:03:43 +0000 Subject: Bug 346270: Eliminate as many BEGIN blocks as possible from checksetup.pl Patch By Max Kanat-Alexander (module owner) a=myk --- checksetup.pl | 59 +++++++++++++++++++---------------------------------------- 1 file changed, 19 insertions(+), 40 deletions(-) (limited to 'checksetup.pl') diff --git a/checksetup.pl b/checksetup.pl index f541fc627..3906ae463 100755 --- a/checksetup.pl +++ b/checksetup.pl @@ -207,35 +207,24 @@ L =cut use strict; - -my ($silent, %switch); - -BEGIN { - if ($^O =~ /MSWin32/i) { - require 5.008001; # for CGI 2.93 or higher - } - require 5.008; - use File::Basename; - chdir dirname($0); -} - +use 5.008; +use File::Basename; +use File::Find; +use Getopt::Long qw(:config bundling); +BEGIN { chdir dirname($0); } use lib "."; use Bugzilla::Constants; +use Bugzilla::Install::Requirements; -BEGIN { - use Getopt::Long qw(:config bundling); - GetOptions(\%switch, 'help|h|?', 'check-modules', 'no-templates|t', - 'verbose|v|no-silent'); +if ($^O =~ /MSWin32/i) { + require 5.008001; # for CGI 2.93 or higher } +my ($silent, %switch); our %answer; -# The use of some Bugzilla modules brings in modules we need to test for -# Check first, via BEGIN -BEGIN { - - # However, don't run under -c (because of tests) - if (!$^C) { +GetOptions(\%switch, 'help|h|?', 'check-modules', 'no-templates|t', + 'verbose|v|no-silent'); ########################################################################### # Check for help request. Display help page if --help/-h/-? was passed. @@ -275,9 +264,6 @@ use Bugzilla::Install::Requirements; exit if !check_requirements(!$silent)->{pass}; -} -} - # Break out if checking the modules is all we have been asked to do. exit if $switch{'check-modules'}; @@ -292,19 +278,13 @@ if ($^O =~ /MSWin/i) { # Global definitions ########################################################################### -# These don't work as a "use," and they don't work as a "require" outside -# of a BEGIN block. However, we're safe to them in a BEGIN block here since -# we've already checked all of the pre-requisites above in the previous -# BEGIN block. -BEGIN { - # We need $::ENV{'PATH'} to remain defined. - my $env = $::ENV{'PATH'}; - require Bugzilla; - $::ENV{'PATH'} = $env; - - require Bugzilla::Config; - import Bugzilla::Config qw(:admin); -} +# We need $::ENV{'PATH'} to remain defined. +my $env = $::ENV{'PATH'}; +require Bugzilla; +$::ENV{'PATH'} = $env; + +require Bugzilla::Config; +import Bugzilla::Config qw(:admin); # 12/17/00 justdave@syndicomm.com - removed declarations of the localconfig # variables from this location. We don't want these declared here. They'll @@ -1239,13 +1219,12 @@ unless ($switch{'no-templates'}) { { print "Precompiling templates ...\n" unless $silent; - use File::Find; require Bugzilla::Template; # Don't hang on templates which use the CGI library eval("use CGI qw(-no_debug)"); - use File::Spec; + require File::Spec; opendir(DIR, $templatedir) || die "Can't open '$templatedir': $!"; my @files = grep { /^[a-z-]+$/i } readdir(DIR); closedir DIR; -- cgit v1.2.3-24-g4f1b