Commit | Line | Data |
---|---|---|
86530b38 AT |
1 | # NOTE: Derived from blib/lib/Inline.pm. |
2 | # Changes made here will be lost when autosplit is run again. | |
3 | # See AutoSplit.pm. | |
4 | package Inline; | |
5 | ||
6 | #line 874 "blib/lib/Inline.pm (autosplit into blib/lib/auto/Inline/install.al)" | |
7 | #============================================================================== | |
8 | # Set things up so that the extension gets installed into the blib/arch. | |
9 | # Then 'make install' will do the right thing. | |
10 | #============================================================================== | |
11 | sub install { | |
12 | my ($module, $DIRECTORY); | |
13 | my $o = shift; | |
14 | ||
15 | croak M64_install_not_c($o->{API}{language_id}) | |
16 | unless uc($o->{API}{language_id}) =~ /^(C|CPP)$/ ; | |
17 | croak M36_usage_install_main() | |
18 | if ($o->{API}{pkg} eq 'main'); | |
19 | croak M37_usage_install_auto() | |
20 | if $o->{CONFIG}{AUTONAME}; | |
21 | croak M38_usage_install_name() | |
22 | unless $o->{CONFIG}{NAME}; | |
23 | croak M39_usage_install_version() | |
24 | unless $o->{CONFIG}{VERSION}; | |
25 | croak M40_usage_install_badname($o->{CONFIG}{NAME}, $o->{API}{pkg}) | |
26 | unless $o->{CONFIG}{NAME} eq $o->{API}{pkg}; | |
27 | # $o->{CONFIG}{NAME} =~ /^$o->{API}{pkg}::\w(\w|::)+$/ | |
28 | # ); | |
29 | ||
30 | my ($mod_name, $mod_ver, $ext_name, $ext_ver) = | |
31 | ($o->{API}{pkg}, $ARGV[0], @{$o->{CONFIG}}{qw(NAME VERSION)}); | |
32 | croak M41_usage_install_version_mismatch($mod_name, $mod_ver, | |
33 | $ext_name, $ext_ver) | |
34 | unless ($mod_ver eq $ext_ver); | |
35 | $o->{INLINE}{INST_ARCHLIB} = $ARGV[1]; | |
36 | ||
37 | $o->{API}{version} = $o->{CONFIG}{VERSION}; | |
38 | $o->{API}{module} = $o->{CONFIG}{NAME}; | |
39 | my @modparts = split(/::/,$o->{API}{module}); | |
40 | $o->{API}{modfname} = $modparts[-1]; | |
41 | $o->{API}{modpname} = File::Spec->catdir(@modparts); | |
42 | $o->{API}{suffix} = $o->{INLINE}{ILSM_suffix}; | |
43 | $o->{API}{build_dir} = File::Spec->catdir($o->{INLINE}{DIRECTORY},'build', | |
44 | $o->{API}{modpname}); | |
45 | $o->{API}{directory} = $o->{INLINE}{DIRECTORY}; | |
46 | my $cwd = Cwd::cwd(); | |
47 | $o->{API}{install_lib} = | |
48 | File::Spec->catdir($cwd,$o->{INLINE}{INST_ARCHLIB}); | |
49 | $o->{API}{location} = | |
50 | File::Spec->catfile($o->{API}{install_lib},"auto",$o->{API}{modpname}, | |
51 | "$o->{API}{modfname}.$o->{INLINE}{ILSM_suffix}"); | |
52 | unshift @::INC, $o->{API}{install_lib}; | |
53 | $o->{INLINE}{object_ready} = 0; | |
54 | } | |
55 | ||
56 | # end of Inline::install | |
57 | 1; |