Filename | /usr/local/src/github.com/foswiki/core/bin/setlib.cfg |
Statements | Executed 24 statements in 976µs |
Calls | P | F | Exclusive Time |
Inclusive Time |
Subroutine |
---|---|---|---|---|---|
1 | 1 | 1 | 5.36ms | 5.99ms | BEGIN@28 | Foswiki::
1 | 1 | 1 | 20µs | 99µs | BEGIN@18 | Foswiki::
Line | State ments |
Time on line |
Calls | Time in subs |
Code |
---|---|---|---|---|---|
1 | # See bottom of file for license and copyright information | ||||
2 | # | ||||
3 | # setlib.cfg: determines the defaults for Foswiki and Perl library paths | ||||
4 | |||||
5 | ########################################################################### | ||||
6 | # DO NOT CHANGE THIS FILE - instead, create a file called LocalLib.cfg # | ||||
7 | # using the LocalLib.cfg.txt template file and customise your settings in # | ||||
8 | # there. They will override any settings in this file. # | ||||
9 | ########################################################################### | ||||
10 | |||||
11 | # for development, you can enable ASSERTS by adding | ||||
12 | # $ENV{FOSWIKI_ASSERTS} = 1; | ||||
13 | # to your bin/LocalLib.cfg | ||||
14 | |||||
15 | # Declare package Foswiki, so globals end up in $Foswiki space | ||||
16 | package Foswiki; | ||||
17 | |||||
18 | 2 | 123µs | 2 | 178µs | # spent 99µs (20+79) within Foswiki::BEGIN@18 which was called:
# once (20µs+79µs) by main::BEGIN@8 at line 18 # spent 99µs making 1 call to Foswiki::BEGIN@18
# spent 79µs making 1 call to vars::import |
19 | |||||
20 | 1 | 2µs | my $LocalLib = __FILE__; # the dir where this setlib.cfg resides | ||
21 | 1 | 16µs | 1 | 6µs | $LocalLib =~ s/setlib.cfg$/LocalLib.cfg/; # spent 6µs making 1 call to Foswiki::CORE:subst |
22 | 1 | 14µs | 1 | 7µs | require $LocalLib if -r $LocalLib; # spent 7µs making 1 call to Foswiki::CORE:fteread |
23 | # if foswikiLibPath isn't defined, then see if $twikiLibPath is | ||||
24 | # for compatibility | ||||
25 | 1 | 2µs | $foswikiLibPath = $twikiLibPath unless defined( $foswikiLibPath ); | ||
26 | |||||
27 | 1 | 3µs | unless (( defined ($foswikiLibPath) ) and (-e $foswikiLibPath)) { | ||
28 | 2 | 559µs | 2 | 6.12ms | # spent 5.99ms (5.36+629µs) within Foswiki::BEGIN@28 which was called:
# once (5.36ms+629µs) by main::BEGIN@8 at line 28 # spent 5.99ms making 1 call to Foswiki::BEGIN@28
# spent 128µs making 1 call to Exporter::import |
29 | 1 | 2µs | my $bindir = __FILE__; | ||
30 | 1 | 9µs | 1 | 3µs | $bindir =~ s/setlib.cfg$//; # spent 3µs making 1 call to Foswiki::CORE:subst |
31 | 1 | 52µs | 2 | 34µs | ( $foswikiLibPath ) = ($foswikiLibPath = Cwd::abs_path( "$bindir../lib" )) =~ /(.*)/; # spent 30µs making 1 call to Cwd::abs_path
# spent 4µs making 1 call to Foswiki::CORE:match |
32 | } | ||||
33 | 1 | 2µs | if ($foswikiLibPath eq "") { | ||
34 | $foswikiLibPath = "../lib"; | ||||
35 | warn "using relative path for libs - some plugins may break"; | ||||
36 | } | ||||
37 | |||||
38 | # Path to local Perl modules | ||||
39 | 1 | 2µs | my $defaultingCPANBASE = !defined($CPANBASE); | ||
40 | 1 | 3µs | $CPANBASE = "$foswikiLibPath/CPAN/lib" unless $CPANBASE; | ||
41 | 1 | 16µs | 1 | 6µs | if ( -e $CPANBASE ) { # spent 6µs making 1 call to Foswiki::CORE:ftis |
42 | 1 | 109µs | require Config; | ||
43 | 1 | 15µs | 1 | 8µs | my $VER = $Config::Config{version}; # spent 8µs making 1 call to Config::FETCH |
44 | 1 | 9µs | 1 | 6µs | my $SITEARCH = $Config::Config{archname}; # spent 6µs making 1 call to Config::FETCH |
45 | 1 | 6µs | push @localPerlLibPath, ( "$CPANBASE/arch", "$CPANBASE/$VER/$SITEARCH", "$CPANBASE/$VER", "$CPANBASE" ); | ||
46 | } | ||||
47 | |||||
48 | # Prepend to @INC, the Perl search path for modules | ||||
49 | 1 | 4µs | unshift @INC, $foswikiLibPath; | ||
50 | 1 | 3µs | if ($defaultingCPANBASE) { | ||
51 | 1 | 3µs | push @INC, @localPerlLibPath if @localPerlLibPath; | ||
52 | } else { | ||||
53 | unshift @INC, @localPerlLibPath if @localPerlLibPath; | ||||
54 | } | ||||
55 | |||||
56 | 1 | 25µs | 1; # Return success for module loading | ||
57 | |||||
58 | __END__ |