# | Inspire Internet Relay Chat Daemon |
# +------------------------------------+
#
-# InspIRCd: (C) 2002-2007 InspIRCd Development Team
-# See: http://www.inspircd.org/wiki/index.php/Credits
+# InspIRCd: (C) 2002-2009 InspIRCd Development Team
+# See: http://wiki.inspircd.org/Credits
#
# This program is free but copyrighted software; see
# the file COPYING for details.
use Exporter 'import';
use POSIX;
use make::utilities;
-our @EXPORT = qw(promptnumeric dumphash is_dir getmodules getrevision getcompilerflags getlinkerflags getdependencies getmodversion nopedantic resolve_directory yesno showhelp promptstring_s);
+our @EXPORT = qw(promptnumeric dumphash is_dir getmodules getrevision getcompilerflags getlinkerflags getdependencies nopedantic resolve_directory yesno showhelp promptstring_s);
my $no_svn = 0;
{
return "0";
}
- my $data = `svn info`;
+ my $data = `svn info 2>/dev/null`;
if ($data eq "")
{
- $data = `git-svn info`;
+ $data = `git describe --tags 2>/dev/null`;
if ($data eq "")
{
$no_svn = 1;
- my $rev = "0";
- return $rev;
+ return '0';
}
+ chomp $data; # remove \n
+ return $data;
}
$data =~ /Revision: (\d+)/;
my $rev = $1;
return "";
}
-sub getmodversion {
- my ($file) = @_;
- open(FLAGS, $file) or return "";
- while (<FLAGS>) {
- if ($_ =~ /^\/\* \$ModVersion: (.+) \*\/$/) {
- my $x = translate_functions($1, $file);
- next if ($x eq "");
- close(FLAGS);
- return $x;
- }
- }
- close(FLAGS);
- return "";
-}
-
sub nopedantic {
my ($file) = @_;
open(FLAGS, $file) or return "";
sub getmodules
{
+ my ($silent) = @_;
+
my $i = 0;
- print "Detecting modules ";
+
+ if (!$silent)
+ {
+ print "Detecting modules ";
+ }
+
opendir(DIRHANDLE, "src/modules") or die("WTF, missing src/modules!");
foreach my $name (sort readdir(DIRHANDLE))
{
{
my $mod = $1;
$main::modlist[$i++] = $mod;
- print ".";
+ if (!$silent)
+ {
+ print ".";
+ }
}
}
closedir(DIRHANDLE);
- print "\nOk, $i modules.\n";
+
+ if (!$silent)
+ {
+ print "\nOk, $i modules.\n";
+ }
}
sub promptnumeric($$)
print "\e[0mGCC Version Found:\e[1;32m\t\t$main::config{GCCVER}.$main::config{GCCMINOR}\e[0m\n";
print "\e[0mCompiler program:\e[1;32m\t\t$main::config{CC}\e[0m\n";
print "\e[0mIPv6 Support:\e[1;32m\t\t\t$main::config{IPV6}\e[0m\n";
- print "\e[0mIPv6 to IPv4 Links:\e[1;32m\t\t$main::config{SUPPORT_IP6LINKS}\e[0m\n";
print "\e[0mGnuTLS Support:\e[1;32m\t\t\t$main::config{USE_GNUTLS}\e[0m\n";
print "\e[0mOpenSSL Support:\e[1;32m\t\t$main::config{USE_OPENSSL}\e[0m\n\n";
print "\e[1;32mImportant note: The maximum length values are now configured in the\e[0m\n";
Arguments with a single \"-\" symbol, as in
InspIRCd 1.0.x, are also allowed.
- --disable-interactive Sets no options intself, but
+ --disable-interactive Sets no options itself, but
will disable any interactive prompting.
--disable-rpath Disable runtime paths. DO NOT USE UNLESS
YOU KNOW WHAT YOU ARE DOING!
to select() [not set]
--disable-kqueue Do not enable kqueue(), fall back
to select() [not set]
- --enable-ipv6 Build ipv6 native InspIRCd [no]
- --enable-remote-ipv6 Build with ipv6 support for remote
- servers on the network [yes]
- --disable-remote-ipv6 Do not allow remote ipv6 servers [not set]
+ --disable-ipv6 Do not build ipv6 native InspIRCd [not set]
--with-cc=[filename] Use an alternative g++ binary to
build InspIRCd [g++]
--with-maxbuf=[n] Change the per message buffer size [512]