The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Perl::Exactly - ensures exactly version of perl

SYNOPSIS

use Perl::Exactly 5.005; # ensures perl is 5.005
use Perl::Exactly 5.016; # ensures perl is 5.016, but doesn't "use strict" and "use feature"

DESCRIPTION

Perl::Exactly ensures that perl interpreter matches to required version exactly. If running perl doesn't match required version then Perl::Exactly finds it using Perl/Exactly.pm.conf, and executes script again on it. When exactly version of perl not found, script will die.

INSTALLATION

Copy Perl/Exactly.pm and Perl/Exactly.pm.conf to @INC directory.

CONFIGURATION

Edit Perl/Exactly.pm.conf to define paths of perls.

SAMPLE of Perl/Exactly.pm.conf

# Configuration file of Perl/Exactly.pm
+{
    # DOS-like system
    ($^O =~ m/\A (?: MSWin32 | NetWare | symbian | dos ) \z/oxms) ?
    (
        5.005 => 'C:/Perl/bin/perl.exe',
        5.006 => 'C:/Perl56/bin/perl.exe',
        5.008 => 'C:/Perl58/bin/perl.exe',
        5.010 => 'C:/Perl510/bin/perl.exe',
        5.012 => 'C:/Perl512/bin/perl.exe',
        5.014 => 'C:/Perl514/bin/perl.exe',
        5.016 => 'C:/Perl516/bin/perl.exe',
        5.018 => 'C:/Perl518/bin/perl.exe',
        5.020 => 'C:/Perl520/bin/perl.exe',
        5.022 => 'C:/Perl522/bin/perl.exe',
        5.024 => 'C:/Perl524/bin/perl.exe',
        5.026 => 'C:/Perl526/bin/perl.exe',
        5.028 => 'C:/Perl528/bin/perl.exe',
        5.030 => 'C:/Perl530/bin/perl.exe',
        5.032 => 'C:/Perl532/bin/perl.exe',
        5.034 => 'C:/Perl534/bin/perl.exe',
        5.036 => 'C:/Perl536/bin/perl.exe',
        5.038 => 'C:/Perl538/bin/perl.exe',
    ) :

    # UNIX-like system
    (
        5.005 => '/path/to/perl/5.005/bin/perl',
        5.006 => '/path/to/perl/5.006/bin/perl',
        5.008 => '/path/to/perl/5.008/bin/perl',
        5.010 => '/path/to/perl/5.010/bin/perl',
        5.012 => '/path/to/perl/5.012/bin/perl',
        5.014 => '/path/to/perl/5.014/bin/perl',
        5.016 => '/path/to/perl/5.016/bin/perl',
        5.018 => '/path/to/perl/5.018/bin/perl',
        5.020 => '/path/to/perl/5.020/bin/perl',
        5.022 => '/path/to/perl/5.022/bin/perl',
        5.024 => '/path/to/perl/5.024/bin/perl',
        5.026 => '/path/to/perl/5.026/bin/perl',
        5.028 => '/path/to/perl/5.028/bin/perl',
        5.030 => '/path/to/perl/5.030/bin/perl',
        5.032 => '/path/to/perl/5.032/bin/perl',
        5.034 => '/path/to/perl/5.034/bin/perl',
        5.036 => '/path/to/perl/5.036/bin/perl',
        5.038 => '/path/to/perl/5.038/bin/perl',
    )
}
__END__

AUTHOR

INABA Hitoshi <ina@cpan.org> in a CPAN

This project was originated by INABA Hitoshi.

LICENSE AND COPYRIGHT

This software is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See perlartistic.

This software 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.

SEE ALSO

ina - CPAN
http://search.cpan.org/~ina/

BackPAN - A Complete History of CPAN
http://backpan.perl.org/authors/id/I/IN/INA/