]> git.ipfire.org Git - thirdparty/bugzilla.git/commitdiff
Bug 346343: Clean up all of checksetup prior to localconfig code
authormkanat%bugzilla.org <>
Sat, 29 Jul 2006 03:34:00 +0000 (03:34 +0000)
committermkanat%bugzilla.org <>
Sat, 29 Jul 2006 03:34:00 +0000 (03:34 +0000)
Patch By Max Kanat-Alexander <mkanat@bugzilla.org> (module owner) a=myk

Bugzilla/Constants.pm
Bugzilla/Install/Requirements.pm
checksetup.pl

index 0bbbfa7d5e201a42fe61a5251b65d656beea6597..15595c269c468f7fb8a733e1942467cadb3074c9 100644 (file)
@@ -110,6 +110,7 @@ use File::Basename;
 
     DB_MODULE
     ROOT_USER
+    ON_WINDOWS
 );
 
 @Bugzilla::Constants::EXPORT_OK = qw(contenttypes);
@@ -299,8 +300,13 @@ use constant DB_MODULE => {
                 name => 'PostgreSQL'},
 };
 
+# The user who should be considered "root" when we're giving
+# instructions to Bugzilla administrators.
 use constant ROOT_USER => $^O =~ /MSWin32/i ? 'Administrator' : 'root';
 
+# True if we're on Win32.
+use constant ON_WINDOWS => ($^O =~ /MSWin32/i);
+
 sub bz_locations {
     # We know that Bugzilla/Constants.pm must be in %INC at this point.
     # So the only question is, what's the name of the directory
index 6d119044c2c3f2ab12a582e0af9931189e3462f7..8893b0ff877ec9cc739624aa2d6b91a92ed5b9a1 100644 (file)
@@ -220,6 +220,10 @@ sub check_requirements {
             have_vers($module->{name}, $module->{version}, $output);
     }
 
+    # If we're running on Windows, reset the input line terminator so that
+    # console input works properly - loading CGI tends to mess it up
+    $/ = "\015\012" if ON_WINDOWS;
+
     if ($output) {
         print "\n";
 
index 7ca2a5852294966d58ce99fefdf2ede6dd32abda..837bdb674a693403400437b9606300fc09e5178b 100755 (executable)
@@ -262,38 +262,25 @@ pod2usage({-verbose => 1, -exitval => 1}) if $switch{'help'};
 our %answer = %{read_answers_file()};
 my $silent = scalar(keys %answer) && !$switch{'verbose'};
 
-###########################################################################
 # Display version information
-###########################################################################
-
-printf "\n*** This is Bugzilla " . BUGZILLA_VERSION . " on perl %vd ***\n", $^V unless $silent;
-
-###########################################################################
-# Check required module
-###########################################################################
-
-use Bugzilla::Install::Requirements;
-
-#
-# Here we check for --MODULES--
-#
-
-exit if !check_requirements(!$silent)->{pass};
+printf "\n*** This is Bugzilla " . BUGZILLA_VERSION . " on perl %vd ***\n", 
+    $^V unless $silent;
 
+# Check required --MODULES--
+my $module_results = check_requirements(!$silent);
+exit if !$module_results->{pass};
 # Break out if checking the modules is all we have been asked to do.
 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
-
-if ($^O =~ /MSWin/i) {
-    $/ = "\015\012";
-}
-
 ###########################################################################
-# Global definitions
+# Load Bugzilla Modules
 ###########################################################################
 
+# It's never safe to "use" a Bugzilla module in checksetup. If a module
+# prerequisite is missing, and you "use" a module that requires it,
+# then instead of our nice normal checksetup message, the user would
+# get a cryptic perl error about the missing module.
+
 # We need $::ENV{'PATH'} to remain defined.
 my $env = $::ENV{'PATH'};
 require Bugzilla;
@@ -302,11 +289,18 @@ $::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
-# automatically get declared in the process of reading in localconfig, and
-# this way we can look in the symbol table to see if they've been declared
-# yet or not.
+require Bugzilla::User::Setting;
+import Bugzilla::User::Setting qw(add_setting);
+
+require Bugzilla::Util;
+import Bugzilla::Util qw(bz_crypt trim html_quote is_7bit_clean
+                         clean_text url_quote);
+
+require Bugzilla::User;
+import Bugzilla::User qw(insert_new_user);
+
+require Bugzilla::Bug;
+import Bugzilla::Bug qw(is_open_state);
 
 ###########################################################################
 # Check and update local configuration
@@ -1423,32 +1417,6 @@ if ($^O !~ /MSWin32/i) {
     }
 }
 
-###########################################################################
-# Global Utility Library
-###########################################################################
-
-# This is done here, because some modules require params to be set up, which
-# won't have happened earlier.
-
-# It's never safe to "use" a Bugzilla module in checksetup. If a module
-# prerequisite is missing, and you "use" a module that requires it,
-# then instead of our nice normal checksetup message the user would
-# get a cryptic perl error about the missing module.
-
-# This is done so we can add new settings as developers need them.
-require Bugzilla::User::Setting;
-import Bugzilla::User::Setting qw(add_setting);
-
-require Bugzilla::Util;
-import Bugzilla::Util qw(bz_crypt trim html_quote is_7bit_clean
-                         clean_text url_quote);
-
-require Bugzilla::User;
-import Bugzilla::User qw(insert_new_user);
-
-require Bugzilla::Bug;
-import Bugzilla::Bug qw(is_open_state);
-
 ###########################################################################
 # Check GraphViz setup
 ###########################################################################