Lines 334-339
my $target_map = {
Link Here
|
334 |
'./koha-tmpl/opac-tmpl' => {target => 'OPAC_TMPL_DIR', trimdir => -1}, |
334 |
'./koha-tmpl/opac-tmpl' => {target => 'OPAC_TMPL_DIR', trimdir => -1}, |
335 |
'./kohaversion.pl' => 'INTRANET_CGI_DIR', |
335 |
'./kohaversion.pl' => 'INTRANET_CGI_DIR', |
336 |
'./labels' => 'INTRANET_CGI_DIR', |
336 |
'./labels' => 'INTRANET_CGI_DIR', |
|
|
337 |
'./lib' => {target => 'PERL_MODULE_LIB_DIR', trimdir => -1}, |
337 |
'./mainpage.pl' => 'INTRANET_CGI_DIR', |
338 |
'./mainpage.pl' => 'INTRANET_CGI_DIR', |
338 |
'./Makefile.PL' => 'NONE', |
339 |
'./Makefile.PL' => 'NONE', |
339 |
'./MANIFEST.SKIP' => 'NONE', |
340 |
'./MANIFEST.SKIP' => 'NONE', |
Lines 1433-1438
sub get_target_directories {
Link Here
|
1433 |
$dirmap{'OPAC_TMPL_DIR'} = File::Spec->catdir(@basedir, $package, 'opac', 'htdocs', 'opac-tmpl'); |
1434 |
$dirmap{'OPAC_TMPL_DIR'} = File::Spec->catdir(@basedir, $package, 'opac', 'htdocs', 'opac-tmpl'); |
1434 |
$dirmap{'OPAC_WWW_DIR'} = File::Spec->catdir(@basedir, $package, 'opac', 'htdocs'); |
1435 |
$dirmap{'OPAC_WWW_DIR'} = File::Spec->catdir(@basedir, $package, 'opac', 'htdocs'); |
1435 |
$dirmap{'PERL_MODULE_DIR'} = File::Spec->catdir(@basedir, $package, 'lib'); |
1436 |
$dirmap{'PERL_MODULE_DIR'} = File::Spec->catdir(@basedir, $package, 'lib'); |
|
|
1437 |
$dirmap{'PERL_MODULE_LIB_DIR'} = File::Spec->catdir(@basedir, $package, 'lib'); |
1436 |
$dirmap{'KOHA_CONF_DIR'} = File::Spec->catdir(@basedir, $package, 'etc'); |
1438 |
$dirmap{'KOHA_CONF_DIR'} = File::Spec->catdir(@basedir, $package, 'etc'); |
1437 |
$dirmap{'ZEBRA_CONF_DIR'} = File::Spec->catdir(@basedir, $package, 'etc', 'zebradb'); |
1439 |
$dirmap{'ZEBRA_CONF_DIR'} = File::Spec->catdir(@basedir, $package, 'etc', 'zebradb'); |
1438 |
$dirmap{'Z3950_CONF_DIR'} = File::Spec->catdir(@basedir, $package, 'etc', 'z3950'); |
1440 |
$dirmap{'Z3950_CONF_DIR'} = File::Spec->catdir(@basedir, $package, 'etc', 'z3950'); |
Lines 1464-1471
sub get_target_directories {
Link Here
|
1464 |
$skipdirs{'OPAC_TMPL_DIR'} = 1; |
1466 |
$skipdirs{'OPAC_TMPL_DIR'} = 1; |
1465 |
$dirmap{'OPAC_WWW_DIR'} = File::Spec->catdir($curdir, 'koha-tmpl'); |
1467 |
$dirmap{'OPAC_WWW_DIR'} = File::Spec->catdir($curdir, 'koha-tmpl'); |
1466 |
$skipdirs{'OPAC_WWW_DIR'} = 1; |
1468 |
$skipdirs{'OPAC_WWW_DIR'} = 1; |
|
|
1469 |
#NOTE: We're hacking the dirmap here, so that PERL_MODULE_DIR tokens get rewritten correctly for git installs |
1467 |
$dirmap{'PERL_MODULE_DIR'} = File::Spec->catdir($curdir); |
1470 |
$dirmap{'PERL_MODULE_DIR'} = File::Spec->catdir($curdir); |
1468 |
$skipdirs{'PERL_MODULE_DIR'} = 1; |
1471 |
$skipdirs{'PERL_MODULE_DIR'} = 1; |
|
|
1472 |
$dirmap{'PERL_MODULE_LIB_DIR'} = File::Spec->catdir($curdir,'lib'); |
1473 |
$skipdirs{'PERL_MODULE_LIB_DIR'} = 1; |
1469 |
$dirmap{'KOHA_CONF_DIR'} = File::Spec->catdir(@basedir, $package, 'etc'); |
1474 |
$dirmap{'KOHA_CONF_DIR'} = File::Spec->catdir(@basedir, $package, 'etc'); |
1470 |
$dirmap{'ZEBRA_CONF_DIR'} = File::Spec->catdir(@basedir, $package, 'etc', 'zebradb'); |
1475 |
$dirmap{'ZEBRA_CONF_DIR'} = File::Spec->catdir(@basedir, $package, 'etc', 'zebradb'); |
1471 |
$dirmap{'Z3950_CONF_DIR'} = File::Spec->catdir(@basedir, $package, 'etc', 'z3950'); |
1476 |
$dirmap{'Z3950_CONF_DIR'} = File::Spec->catdir(@basedir, $package, 'etc', 'z3950'); |
Lines 1494-1499
sub get_target_directories {
Link Here
|
1494 |
$dirmap{'OPAC_TMPL_DIR'} = File::Spec->catdir(@basedir, $package, 'opac', 'htdocs', 'opac-tmpl'); |
1499 |
$dirmap{'OPAC_TMPL_DIR'} = File::Spec->catdir(@basedir, $package, 'opac', 'htdocs', 'opac-tmpl'); |
1495 |
$dirmap{'OPAC_WWW_DIR'} = File::Spec->catdir(@basedir, $package, 'opac', 'htdocs'); |
1500 |
$dirmap{'OPAC_WWW_DIR'} = File::Spec->catdir(@basedir, $package, 'opac', 'htdocs'); |
1496 |
$dirmap{'PERL_MODULE_DIR'} = File::Spec->catdir(@basedir, $package, 'lib'); |
1501 |
$dirmap{'PERL_MODULE_DIR'} = File::Spec->catdir(@basedir, $package, 'lib'); |
|
|
1502 |
$dirmap{'PERL_MODULE_LIB_DIR'} = File::Spec->catdir(@basedir, $package, 'lib'); |
1497 |
$dirmap{'KOHA_CONF_DIR'} = File::Spec->catdir(File::Spec->rootdir(), 'etc', $package); |
1503 |
$dirmap{'KOHA_CONF_DIR'} = File::Spec->catdir(File::Spec->rootdir(), 'etc', $package); |
1498 |
$dirmap{'ZEBRA_CONF_DIR'} = File::Spec->catdir(File::Spec->rootdir(), 'etc', $package, 'zebradb'); |
1504 |
$dirmap{'ZEBRA_CONF_DIR'} = File::Spec->catdir(File::Spec->rootdir(), 'etc', $package, 'zebradb'); |
1499 |
$dirmap{'Z3950_CONF_DIR'} = File::Spec->catdir(File::Spec->rootdir(), 'etc', $package, 'z3950'); |
1505 |
$dirmap{'Z3950_CONF_DIR'} = File::Spec->catdir(File::Spec->rootdir(), 'etc', $package, 'z3950'); |
Lines 1646-1651
sub install {
Link Here
|
1646 |
# This means that we're completely overriding EU::MM's default |
1652 |
# This means that we're completely overriding EU::MM's default |
1647 |
# installation and uninstallation targets. |
1653 |
# installation and uninstallation targets. |
1648 |
|
1654 |
|
|
|
1655 |
my $perl5lib_dirs = _build_perl5lib_string({ target_dirs => $target_directories }); |
1656 |
|
1649 |
# If installation is on Win32, we need to do permissions different from *nix |
1657 |
# If installation is on Win32, we need to do permissions different from *nix |
1650 |
if ( $^O =~ /darwin|linux|cygwin|freebsd|solaris/ ) { # this value needs to be verified for each platform and modified accordingly |
1658 |
if ( $^O =~ /darwin|linux|cygwin|freebsd|solaris/ ) { # this value needs to be verified for each platform and modified accordingly |
1651 |
foreach my $key (sort keys %$target_directories) { |
1659 |
foreach my $key (sort keys %$target_directories) { |
Lines 1700-1706
install :: all install_koha set_koha_ownership set_koha_permissions warn_koha_en
Link Here
|
1700 |
$install .= "\t\$(NOECHO) \$(ECHO) you should set the following environment variables:\n"; |
1708 |
$install .= "\t\$(NOECHO) \$(ECHO) you should set the following environment variables:\n"; |
1701 |
$install .= "\t\$(NOECHO) \$(ECHO)\n"; |
1709 |
$install .= "\t\$(NOECHO) \$(ECHO)\n"; |
1702 |
$install .= "\t\$(NOECHO) \$(ECHO) export KOHA_CONF=\$(KOHA_DEST_KOHA_CONF_DIR)/koha-conf.xml\n"; |
1710 |
$install .= "\t\$(NOECHO) \$(ECHO) export KOHA_CONF=\$(KOHA_DEST_KOHA_CONF_DIR)/koha-conf.xml\n"; |
1703 |
$install .= "\t\$(NOECHO) \$(ECHO) export PERL5LIB=$target_directories->{'PERL_MODULE_DIR'}\n"; |
1711 |
$install .= "\t\$(NOECHO) \$(ECHO) export PERL5LIB=$perl5lib_dirs\n"; |
1704 |
$install .= "\t\$(NOECHO) \$(ECHO)\n"; |
1712 |
$install .= "\t\$(NOECHO) \$(ECHO)\n"; |
1705 |
$install .= "\t\$(NOECHO) \$(ECHO) For other post-installation tasks, please consult the README.\n"; |
1713 |
$install .= "\t\$(NOECHO) \$(ECHO) For other post-installation tasks, please consult the README.\n"; |
1706 |
$install .= "\t\$(NOECHO) \$(ECHO)\n"; |
1714 |
$install .= "\t\$(NOECHO) \$(ECHO)\n"; |
Lines 1767-1775
sub postamble {
Link Here
|
1767 |
# rewrite-confg.PL |
1775 |
# rewrite-confg.PL |
1768 |
|
1776 |
|
1769 |
my $env; |
1777 |
my $env; |
|
|
1778 |
|
1779 |
#NOTE: Build __PERL5LIB_DIRS__ for rewrite-config.PL |
1780 |
my $perl5lib_dirs = _build_perl5lib_string({ target_dirs => $target_directories }); |
1781 |
if ($perl5lib_dirs){ |
1782 |
$env .= "export __PERL5LIB_DIRS__ := $perl5lib_dirs\n" |
1783 |
} |
1784 |
|
1770 |
# Hereagain, we must alter syntax per platform... |
1785 |
# Hereagain, we must alter syntax per platform... |
1771 |
{ |
1786 |
{ |
1772 |
$env = join("\n", map { "export __${_}__ := $target_directories->{$_}" } keys %$target_directories); |
1787 |
$env .= join("\n", map { "export __${_}__ := $target_directories->{$_}" } keys %$target_directories); |
1773 |
$env .= "\n\n"; |
1788 |
$env .= "\n\n"; |
1774 |
$env .= join("\n", map { "export __${_}__ := $config{$_}" } keys %config); |
1789 |
$env .= join("\n", map { "export __${_}__ := $config{$_}" } keys %config); |
1775 |
} |
1790 |
} |
Lines 1777-1782
sub postamble {
Link Here
|
1777 |
return "$env\n"; |
1792 |
return "$env\n"; |
1778 |
} |
1793 |
} |
1779 |
|
1794 |
|
|
|
1795 |
sub _build_perl5lib_string { |
1796 |
my ($args) = @_; |
1797 |
my %unique_map = (); |
1798 |
my $perl5lib_str; |
1799 |
my $target_dirs = $args->{target_dirs}; |
1800 |
my @dir_codes = ("PERL_MODULE_DIR","PERL_MODULE_LIB_DIR"); |
1801 |
if ($target_dirs){ |
1802 |
foreach my $code (@dir_codes){ |
1803 |
my $path = $target_dirs->{ $code }; |
1804 |
if ($path){ |
1805 |
$unique_map{$path} = 1 unless $unique_map{$path}; |
1806 |
} |
1807 |
} |
1808 |
my @paths = sort keys %unique_map; |
1809 |
if (@paths){ |
1810 |
$perl5lib_str = join(':',@paths); |
1811 |
} |
1812 |
} |
1813 |
return $perl5lib_str; |
1814 |
} |
1780 |
|
1815 |
|
1781 |
__END__ |
1816 |
__END__ |
1782 |
|
1817 |
|