print "none\n";
}
-my $is_as = 0;
+my $as_perl = eval {
+ require ActivePerl;
+ defined &ActivePerl::BUILD ? ActivePerl::BUILD() : undef
+};
+
+my $is_as_822 = 0;
print "Checking if this is ActiveState Perl 5.8.8 build 822 or higher... ";
-if ($^V eq v5.8.8) {
- eval {
- require ActivePerl;
- 1;
- } and do {
- if (defined &ActivePerl::BUILD) {
- my $build = int ActivePerl::BUILD();
- if ($build >= 822) {
- $is_as = 1;
- push @DEFINES, '-DVMG_COMPAT_ARRAY_PUSH_NOLEN=1';
- }
- }
- }
+if ($^V eq v5.8.8 and defined $as_perl and $as_perl >= 822) {
+ $is_as_822 = 1;
+ push @DEFINES, '-DVMG_COMPAT_ARRAY_PUSH_NOLEN=1';
}
-print $is_as ? "yes\n" : "no\n";
+print $is_as_822 ? "yes\n" : "no\n";
my $is_5110rel = 0;
print "Checking if this is a released perl 5.11.0 or higher... ";
# Threads, Windows and 5.8.x don't seem to be best friends
if ($^O eq 'MSWin32' && $^V lt v5.9.0) {
push @DEFINES, '-DVMG_MULTIPLICITY=0';
+ print "Thread safety disabled for perl 5.8.x on Windows.\n"
}
# Fork emulation got "fixed" in 5.10.1
if ($^O eq 'MSWin32' && $^V lt v5.10.1) {
push @DEFINES, '-DVMG_FORKSAFE=0';
+ print "Fork safety not ensured for perl 5.8.x and 5.10.0 on Windows.\n";
}
@DEFINES = (DEFINE => join ' ', @DEFINES) if @DEFINES;