Release commit for 2012.08002
[scpubgit/Rakudo-Star.git] / lib / Rakudo / Star / Paths.pm
CommitLineData
1612b73d 1package Rakudo::Star::Paths;
2
3use strict;
4use warnings FATAL => 'all';
5use File::Basename qw(dirname);
6use File::Spec::Functions qw(catdir);
7
8sub base_path {
9 catdir(dirname(__FILE__), 'Install')
10}
11
12sub bin_path {
13 my $class = shift;
14 catdir($class->base_path, 'bin');
15}
16
17sub env_PATH {
18 my $class = shift;
19 'export PATH='.join(':', $class->bin_path, $ENV{PATH}?$ENV{PATH}:())."\n";
20}
21
22sub import {
23 if ($0 eq '-') {
24 print shift->env_PATH;
25 exit 0;
26 }
27}
28
29=head1 NAME
30
31Rakudo::Star::Paths - find your rakudo install
32
33=head1 SYNOPSIS
34
35 bash$ perl -MRakudo::Star::Paths
36 export PATH=/path/to/rakudo/star/bin:...
37
38 bash$ eval $(perl -MRakudo::Star::Paths)
39 # PATH env var is now set
40
41 bash$ perl -MRakudo::Star::Paths -e 'print Rakudo::Star::Paths->bin_path'
42 /path/to/rakudo/star/bin
43
44=head1 COPYRIGHT
45
46See L<Rakudo::Star/COPYRIGHT>
47
48=head1 LICENSE
49
50See L<Rakudo::Star/LICENSE>
51
52=cut
53
541;