our $cache_loaded = getcache();
$config{ME} = resolve_directory($topdir); # Present Working Directory
-$config{BASE_DIR} = $config{ME}."/run";
+$config{BASE_DIR} ||= $config{ME}."/run";
if (defined $opt_base_dir) {
$config{BASE_DIR} = $opt_base_dir;
$config{DATA_DIR} = '/var/inspircd';
$config{LOG_DIR} = '/var/log/inspircd';
} else {
- $config{UID} = $opt_uid || $<;
- $config{CONFIG_DIR} = resolve_directory($config{BASE_DIR}."/conf"); # Configuration Directory
- $config{MODULE_DIR} = resolve_directory($config{BASE_DIR}."/modules"); # Modules Directory
- $config{BINARY_DIR} = resolve_directory($config{BASE_DIR}."/bin"); # Binary Directory
- $config{BUILD_DIR} = resolve_directory($config{ME}."/build"); # Build Directory
- $config{DATA_DIR} = resolve_directory($config{BASE_DIR}."/data"); # Data directory
- $config{LOG_DIR} = resolve_directory($config{BASE_DIR}."/logs"); # Log directory
+ $config{UID} = $opt_uid || $config{UID} || $<;
+ $config{CONFIG_DIR} ||= resolve_directory($config{BASE_DIR}."/conf"); # Configuration Directory
+ $config{MODULE_DIR} ||= resolve_directory($config{BASE_DIR}."/modules"); # Modules Directory
+ $config{BINARY_DIR} ||= resolve_directory($config{BASE_DIR}."/bin"); # Binary Directory
+ $config{BUILD_DIR} ||= resolve_directory($config{ME}."/build"); # Build Directory
+ $config{DATA_DIR} ||= resolve_directory($config{BASE_DIR}."/data"); # Data directory
+ $config{LOG_DIR} ||= resolve_directory($config{BASE_DIR}."/logs"); # Log directory
}
if (defined $opt_config_dir) {
chomp(our $gnutls_ver = $config{HAS_GNUTLS});
chomp(our $openssl_ver = $config{HAS_OPENSSL});
-$config{USE_GNUTLS} = "n";
+$config{USE_GNUTLS} ||= "n";
if (defined $opt_use_gnutls)
{
$config{USE_GNUTLS} = "y"; # Use gnutls.
}
-$config{USE_OPENSSL} = "n"; # Use openssl.
+$config{USE_OPENSSL} ||= "n"; # Use openssl.
if (defined $opt_use_openssl)
{
$config{USE_OPENSSL} = "y";
elsif ($config{OSNAME} =~ /freebsd/i)
{
chomp(my $fbsd_version = `uname -r`);
- $config{CC} = $fbsd_version ge '10.0' ? 'clang++' : 'g++';
+ $fbsd_version =~ s/^(\d+\.\d+).*/$1/g;
+ $config{CC} = $fbsd_version >= 10.0 ? 'clang++' : 'g++';
}
else
{
$config{USE_FREEBSD_BASE_SSL} = "y" if ($^O eq "freebsd");
}
- $config{USE_SSL} = "n";
- $config{MODUPDATE} = 'n';
+ $config{USE_SSL} ||= "n";
+ $config{MODUPDATE} ||= 'n';
if ($config{HAS_GNUTLS} eq "y" || $config{HAS_OPENSSL} eq "y")
{
if (($config{USE_GNUTLS} eq "y") && ($config{HAS_GNUTLS} ne "y"))
{
- print "Sorry, but I couldn't detect GnuTLS. Make sure gnutls-config is in your path.\n";
+ print "Sorry, but I couldn't detect GnuTLS. Make sure pkg-config is in your path.\n";
exit(0);
}
if (($config{USE_OPENSSL} eq "y") && ($config{HAS_OPENSSL} ne "y"))
{
- print "Sorry, but I couldn't detect OpenSSL. Make sure openssl is in your path.\n";
+ print "Sorry, but I couldn't detect OpenSSL. Make sure pkg-config and openssl are in your path.\n";
exit(0);
}
our $failed = 0;
for my $var (qw(
CC SYSTEM BASE_DIR CONFIG_DIR MODULE_DIR BINARY_DIR BUILD_DIR DATA_DIR UID
- STARTSCRIPT DESTINATION SOCKETENGINE
+ STARTSCRIPT DESTINATION SOCKETENGINE LOG_DIR
)) {
s/\@$var\@/$config{$var}/g;
}