PLDelphi
view release on metacpan or search on metacpan
basiclib/Config.pm-txt view on Meta::CPAN
version='5.6.1'
versiononly='undef'
vi=''
voidflags='15'
xlibpth='/usr/lib/386 /lib/386'
xs_apiversion='5.6.0'
zcat=''
zip='zip'
!END!
my $summary = <<'!END!';
Summary of my $package (revision $baserev version $PERL_VERSION subversion $PERL_SUBVERSION) configuration:
Platform:
osname=$osname, osvers=$osvers, archname=$archname
uname='$myuname'
config_args='$config_args'
hint=$hint, useposix=$useposix, d_sigaction=$d_sigaction
usethreads=$usethreads use5005threads=$use5005threads useithreads=$useithreads usemultiplicity=$usemultiplicity
useperlio=$useperlio d_sfio=$d_sfio uselargefiles=$uselargefiles usesocks=$usesocks
use64bitint=$use64bitint use64bitall=$use64bitall uselongdouble=$uselongdouble
Compiler:
cc='$cc', ccflags ='$ccflags',
optimize='$optimize',
cppflags='$cppflags'
ccversion='$ccversion', gccversion='$gccversion', gccosandvers='$gccosandvers'
intsize=$intsize, longsize=$longsize, ptrsize=$ptrsize, doublesize=$doublesize, byteorder=$byteorder
d_longlong=$d_longlong, longlongsize=$longlongsize, d_longdbl=$d_longdbl, longdblsize=$longdblsize
ivtype='$ivtype', ivsize=$ivsize, nvtype='$nvtype', nvsize=$nvsize, Off_t='$lseektype', lseeksize=$lseeksize
alignbytes=$alignbytes, usemymalloc=$usemymalloc, prototype=$prototype
Linker and Libraries:
ld='$ld', ldflags ='$ldflags'
libpth=$libpth
libs=$libs
perllibs=$perllibs
libc=$libc, so=$so, useshrplib=$useshrplib, libperl=$libperl
Dynamic Linking:
dlsrc=$dlsrc, dlext=$dlext, d_dlsymun=$d_dlsymun, ccdlflags='$ccdlflags'
cccdlflags='$cccdlflags', lddlflags='$lddlflags'
!END!
my $summary_expanded = 0;
sub myconfig {
return $summary if $summary_expanded;
$summary =~ s{\$(\w+)}
{ my $c = $Config{$1}; defined($c) ? $c : 'undef' }ge;
$summary_expanded = 1;
$summary;
}
sub FETCH {
# check for cached value (which may be undef so we use exists not defined)
return $_[0]->{$_[1]} if (exists $_[0]->{$_[1]});
# Search for it in the big string
my($value, $start, $marker, $quote_type);
$quote_type = "'";
# Virtual entries.
if ($_[1] eq 'byteorder') {
# byteorder does exist on its own but we overlay a virtual
# dynamically recomputed value.
my $t = $Config{ivtype};
my $s = $Config{ivsize};
my $f = $t eq 'long' ? 'L!' : $s == 8 ? 'Q': 'I';
if ($s == 4 || $s == 8) {
my $i = 0;
foreach my $c (reverse(2..$s)) { $i |= ord($c); $i <<= 8 }
$i |= ord(1);
$value = join('', unpack('a'x$s, pack($f, $i)));
} else {
$value = '?'x$s;
}
} elsif ($_[1] =~ /^((?:cc|ld)flags|libs(?:wanted)?)_nolargefiles/) {
# These are purely virtual, they do not exist, but need to
# be computed on demand for largefile-incapable extensions.
my $key = "${1}_uselargefiles";
$value = $Config{$1};
my $withlargefiles = $Config{$key};
if ($key =~ /^(?:cc|ld)flags_/) {
$value =~ s/\Q$withlargefiles\E\b//;
} elsif ($key =~ /^libs/) {
my @lflibswanted = split(' ', $Config{libswanted_uselargefiles});
if (@lflibswanted) {
my %lflibswanted;
@lflibswanted{@lflibswanted} = ();
if ($key =~ /^libs_/) {
my @libs = grep { /^-l(.+)/ &&
not exists $lflibswanted{$1} }
split(' ', $Config{libs});
$Config{libs} = join(' ', @libs);
} elsif ($key =~ /^libswanted_/) {
my @libswanted = grep { not exists $lflibswanted{$_} }
split(' ', $Config{libswanted});
$Config{libswanted} = join(' ', @libswanted);
}
}
}
} else {
$marker = "$_[1]=";
# return undef unless (($value) = $config_sh =~ m/^$_[1]='(.*)'\s*$/m);
# Check for the common case, ' delimeted
$start = index($config_sh, "\n$marker$quote_type");
# If that failed, check for " delimited
if ($start == -1) {
$quote_type = '"';
$start = index($config_sh, "\n$marker$quote_type");
}
return undef if ( ($start == -1) && # in case it's first
(substr($config_sh, 0, length($marker)) ne $marker) );
if ($start == -1) {
# It's the very first thing we found. Skip $start forward
# and figure out the quote mark after the =.
$start = length($marker) + 1;
$quote_type = substr($config_sh, $start - 1, 1);
}
else {
$start += length($marker) + 2;
}
$value = substr($config_sh, $start,
index($config_sh, "$quote_type\n", $start) - $start);
( run in 1.969 second using v1.01-cache-2.11-cpan-39bf76dae61 )