@EXPORT_OK = qw();
}
-sub sourcebasedir () {
+sub dotperllibdir () {
my $dir;
for my $dir (@INC) {
if ($dir =~ m/\.perl-lib$/) {
- $dir= "$dir/..";
- last;
+ return $dir;
}
}
- defined $dir or
- die "no source base dir in @INC";
- return $dir;
+ die "no appropriate dotperllib dir in @INC";
+}
+
+sub sourcebasedir () {
+ return dotperllibdir().'/..';
}
-my datadir () {
- my $dir= sourcebasedir();
+sub datadir () {
+ my $edir= $ENV{'YARRG_DATA_DIR'};
+ return $edir if defined $edir;
+ my $dir= dotperllibdir();
if (stat "$dir/DATA") {
return "$dir/DATA";
} elsif ($!==&ENOENT) {
my @ocean_list;
sub ocean_list () {
+ my $datadir= datadir();
if (!@ocean_list) {
- my $fn= "$datadir/master-info.txt";
- my $f= new IO::File $fn or die $!;
+ my $fn= "$datadir/source-info.txt";
+ my $f= new IO::File $fn or die "$fn $!";
my @r;
while (<$f>) {
next unless m/^ocean\s+(\S.*\S)\s*$/;