From b70ab0a462729d261a0205ef943308c2dd5afb07 Mon Sep 17 00:00:00 2001 From: "lpsolit%gmail.com" <> Date: Tue, 12 Feb 2008 01:31:29 +0000 Subject: Bug 414430: On Windows, checksetup.pl should mention the correct PPM repo based on the Perl version - Patch by Frédéric Buclin r=mkanat r=glob a=LpSolit MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Bugzilla/Install/Requirements.pm | 43 ++++++++++++++++++++++++++++++++-------- 1 file changed, 35 insertions(+), 8 deletions(-) (limited to 'Bugzilla/Install/Requirements.pm') diff --git a/Bugzilla/Install/Requirements.pm b/Bugzilla/Install/Requirements.pm index 714bb3871..293740e3f 100644 --- a/Bugzilla/Install/Requirements.pm +++ b/Bugzilla/Install/Requirements.pm @@ -305,6 +305,17 @@ sub _check_missing { return \@missing; } +# Returns the build ID of ActivePerl. If several versions of +# ActivePerl are installed, it won't be able to know which one +# you are currently running. But that's our best guess. +sub _get_activestate_build_id { + eval 'use Win32::TieRegistry'; + return 0 if $@; + my $key = Win32::TieRegistry->new('LMachine\Software\ActiveState\ActivePerl') + or return 0; + return $key->GetValue("CurrentVersion"); +} + sub print_module_instructions { my ($check_results, $output) = @_; @@ -316,14 +327,19 @@ sub print_module_instructions { . ROOT_USER . ".\n\n"; if (ON_WINDOWS) { - print < -1) { + $url_to_theory58S = 'http://cpan.uwinnipeg.ca/PPMPackages/10xx/'; + } + # ActivePerl older than revision 819 require an additional command. + if (_get_activestate_build_id() < 819) { + $repo_up_cmd = <