# Module of TWiki Enterprise Collaboration Platform, http://TWiki.org/ # # Copyright (C) 2000-2018 Peter Thoeny, peter[at]thoeny.org # and TWiki Contributors. All Rights Reserved. TWiki Contributors # are listed in the AUTHORS file in the root of this distribution. # NOTE: Please extend that file, not this notice. # # Additional copyrights apply to some or all of the code in this # file as follows: # # This program is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License # as published by the Free Software Foundation; either version 3 # of the License, or (at your option) any later version. For # more details read LICENSE in the root of this distribution. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. # # As per the GPL, removal of this notice is prohibited. package TWiki::Configure::Checkers::MSWin32; use strict; sub check { my $this = shift; # ActivePerl-only function: returns number if # successful, otherwise treated as a literal (bareword). my $isActivePerl= eval 'Win32::BuildNumber !~ /Win32/'; # FIXME: Advice in this section should be reviewed and tested by people # using ActivePerl my $perl5shell = $ENV{PERL5SHELL} || ''; my $n = $perl5shell. $this->NOTE(<recommended if Cygwin is installed).

To use 'bash' with ActiveState or other Win32 Perl you should set the PERL5SHELL environment variable to something like c:/YOURCYGWINDIR/bin/bash.exe -c This should be set in the System Environment, and ideally set directly in the web server (e.g. using the Apache SetEnv directive). HERE if( $isActivePerl ) { $n .= $this->WARN(<highly recommended not to use this particular configuration on a public server (one exposed to the internet) HERE if( Win32::BuildNumber() < 631 ) { $n .= $this->WARN(<