X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;ds=sidebyside;f=make%2Fconfigure.pm;h=9b8e2d0e4b411f8c4174686d35565f5120168f94;hb=68211809ee3111bdc9609fbd46dc3c875fbb5ea6;hp=230bd39345d9f61c5615b83247b7a30a5ad63b4a;hpb=ed1cdbef159f2e6a33eff966946fccfc08c37568;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/make/configure.pm b/make/configure.pm index 230bd3934..9b8e2d0e4 100644 --- a/make/configure.pm +++ b/make/configure.pm @@ -1,14 +1,25 @@ -# +------------------------------------+ -# | Inspire Internet Relay Chat Daemon | -# +------------------------------------+ # -# InspIRCd: (C) 2002-2010 InspIRCd Development Team -# See: http://wiki.inspircd.org/Credits +# InspIRCd -- Internet Relay Chat Daemon # -# This program is free but copyrighted software; see -# the file COPYING for details. +# Copyright (C) 2012 Peter Powell +# Copyright (C) 2008 Robin Burchell +# Copyright (C) 2007-2008 Craig Edwards +# Copyright (C) 2008 Thomas Stagner +# Copyright (C) 2007 Dennis Friis # -# --------------------------------------------------- +# This file is part of InspIRCd. InspIRCd is free software: you can +# redistribute it and/or modify it under the terms of the GNU General Public +# License as published by the Free Software Foundation, version 2. +# +# This program is distributed in the hope that it will be useful, but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS +# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more +# details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . +# + package make::configure; @@ -20,7 +31,7 @@ use warnings FATAL => qw(all); use Exporter 'import'; use POSIX; use make::utilities; -our @EXPORT = qw(promptnumeric dumphash is_dir getmodules getrevision getcompilerflags getlinkerflags getdependencies 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 module_installed); my $no_git = 0; @@ -70,7 +81,7 @@ sub getcompilerflags { my ($file) = @_; open(FLAGS, $file) or return ""; while () { - if ($_ =~ /^\/\* \$CompileFlags: (.+) \*\/$/) { + if ($_ =~ /^\/\* \$CompileFlags: (.+) \*\/\r?$/) { my $x = translate_functions($1, $file); next if ($x eq ""); close(FLAGS); @@ -85,7 +96,7 @@ sub getlinkerflags { my ($file) = @_; open(FLAGS, $file) or return ""; while () { - if ($_ =~ /^\/\* \$LinkerFlags: (.+) \*\/$/) { + if ($_ =~ /^\/\* \$LinkerFlags: (.+) \*\/\r?$/) { my $x = translate_functions($1, $file); next if ($x eq ""); close(FLAGS); @@ -100,7 +111,7 @@ sub getdependencies { my ($file) = @_; open(FLAGS, $file) or return ""; while () { - if ($_ =~ /^\/\* \$ModDep: (.+) \*\/$/) { + if ($_ =~ /^\/\* \$ModDep: (.+) \*\/\r?$/) { my $x = translate_functions($1, $file); next if ($x eq ""); close(FLAGS); @@ -115,7 +126,7 @@ sub nopedantic { my ($file) = @_; open(FLAGS, $file) or return ""; while () { - if ($_ =~ /^\/\* \$NoPedantic \*\/$/) { + if ($_ =~ /^\/\* \$NoPedantic \*\/\r?$/) { my $x = translate_functions($_, $file); next if ($x eq ""); close(FLAGS); @@ -182,6 +193,13 @@ sub promptnumeric($$) } } +sub module_installed($) +{ + my $module = shift; + eval("use $module;"); + return !$@; +} + sub promptstring_s($$) { my ($prompt,$default) = @_; @@ -258,7 +276,6 @@ InspIRCd 1.0.x, are also allowed. to select() [not set] --disable-kqueue Do not enable kqueue(), fall back to select() [not set] - --disable-ipv6 Do not build IPv6 native InspIRCd [not set] --with-cc=[filename] Use an alternative compiler to build InspIRCd [g++] --with-maxbuf=[n] Change the per message buffer size [512] @@ -269,13 +286,16 @@ InspIRCd 1.0.x, are also allowed. and library dirs as subdirectories of prefix) [$PWD] --config-dir=[directory] Config file directory for config and SSL certs - [$PWD/conf] + [$PWD/run/conf] + --log-dir=[directory] Log file directory for logs + [$PWD/run/logs] + --data-dir=[directory] Data directory for variable data, such as the + permchannel configuration and the XLine database + [$PWD/run/data] --module-dir=[directory] Modules directory for loadable modules - [$PWD/modules] + [$PWD/run/modules] --binary-dir=[directory] Binaries directory for core binary - [$PWD/bin] - --library-dir=[directory] Library directory for core libraries - [$PWD/lib] + [$PWD/run/bin] --list-extras Show current status of extra modules --enable-extras=[extras] Enable the specified list of extras --disable-extras=[extras] Disable the specified list of extras