File: Paths.pm.in

package info (click to toggle)
globus-common 15.26-3
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 3,648 kB
  • ctags: 3,162
  • sloc: ansic: 36,114; sh: 11,654; makefile: 407; perl: 351; xml: 322
file content (71 lines) | stat: -rw-r--r-- 1,757 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
# Copyright 1999-2010 University of Chicago
# 
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# 
# http://www.apache.org/licenses/LICENSE-2.0
# 
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# 
package Globus::Core::Paths;

require Exporter;

@ISA = qw(Exporter);

@EXPORT = qw($exec_prefix $prefix
             $sbindir $bindir
             $libexecdir $includedir
             $datarootdir
             $mandir
             $datadir $sysconfdir $sharedstatedir
             $localstatedir $perlmoduledir);

sub eval_path
{
    my $path = shift;
    my $last = $path;

    while ($path =~ m/\$\{([^}]*)\}/)
    {
        my $varname = $1;
        my $evaluated;
        eval "\$evaluated = \${$1}";

        $path =~ s/\${$varname}/$evaluated/g;
        if ($path eq $last)
        {
            die "Error evaluating $last\n";
        }
        $last = $path;
    }
    return $path;
}

if (exists $ENV{GLOBUS_LOCATION})
{
    $prefix = $ENV{GLOBUS_LOCATION};
}
else
{
    $prefix = "@prefix@";
}
$exec_prefix = "@exec_prefix@";
$sbindir = "@sbindir@";
$bindir = "@bindir@";
$includedir = "@includedir@";
$datarootdir = "@datarootdir@";
$datadir = "@datadir@";
$mandir = "@mandir@";
$libexecdir = "@libexecdir@";
$sysconfdir = "@sysconfdir@";
$sharedstatedir = "@sharedstatedir@";
$localstatedir = "@localstatedir@";
$perlmoduledir = "@perlmoduledir@";

1;