Acme-CPANAuthors-Czech
view release on metacpan or search on metacpan
inc/Module/Install.pm view on Meta::CPAN
505152535455565758596061626364656667686970
# all of the following checks should be included in import(),
# to allow "eval 'require Module::Install; 1' to test
# installation of Module::Install. (RT #51267)
#-------------------------------------------------------------
# Whether or not inc::Module::Install is actually loaded, the
# $INC{inc/Module/Install.pm} is what will still get set as long as
# the caller loaded module this in the documented manner.
# If not set, the caller may NOT have loaded the bundled version, and thus
# they may not have a MI version that works with the Makefile.PL. This would
# result in false errors or unexpected behaviour. And we don't want that.
my
$file
=
join
(
'/'
,
'inc'
,
split
/::/, __PACKAGE__ ) .
'.pm'
;
unless
(
$INC
{
$file
} ) {
die
<<
"END_DIE"
}
Please invoke ${\__PACKAGE__}
with
:
not:
use
${\__PACKAGE__};
inc/Module/Install.pm view on Meta::CPAN
8384858687888990919293949596979899100101102103
# is unreliable on some platforms and requires write permissions)
# for now we should catch this and refuse to run.
if
( -f $0 ) {
my
$s
= (
stat
($0))[9];
# If the modification time is only slightly in the future,
# sleep briefly to remove the problem.
my
$a
=
$s
-
time
;
if
(
$a
> 0 and
$a
< 5 ) {
sleep
5 }
# Too far in the future, throw an error.
my
$t
=
time
;
if
(
$s
>
$t
) {
die
<<
"END_DIE"
}
Your installer $0
has
a modification
time
in the future (
$s
>
$t
).
This is known to create infinite loops in make.
Please correct this, then run $0 again.
END_DIE
inc/Module/Install.pm view on Meta::CPAN
165166167168169170171172173174175176177178179180181182183184185
goto
&$code
unless
$cwd
eq
$pwd
;
}
unless
(
$$sym
=~ s/([^:]+)$//) {
# XXX: it looks like we can't retrieve the missing function
# via $$sym (usually $main::AUTOLOAD) in this case.
# I'm still wondering if we should slurp Makefile.PL to
# get some context or not ...
my
(
$package
,
$file
,
$line
) =
caller
;
die
<<"EOT";
Unknown function is found at $file line $line.
Execution of $file aborted due to runtime errors.
If you're a contributor to a project, you may need to install
some Module::Install extensions from CPAN (or other repository).
If you're a user of a module, please contact the author.
EOT
}
my
$method
= $1;
if
(
uc
(
$method
) eq
$method
) {
# Do nothing
return
;
( run in 0.232 second using v1.01-cache-2.11-cpan-cba739cd03b )