]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - configure
Fix configure not failing when invalid flags are passed to it.
[user/henk/code/inspircd.git] / configure
index fd39a96f7bf90da1e54487fe4a342cab2547281a..1a89845673ca9f0f195b60bfc34e4f3d96500444 100755 (executable)
--- a/configure
+++ b/configure
@@ -52,6 +52,7 @@ my ($opt_binary_dir,
     $opt_config_dir,
     $opt_data_dir,
     $opt_development,
+    $opt_disable_auto_extras,
     $opt_disable_interactive,
     $opt_distribution_label,
     $opt_gid,
@@ -73,13 +74,14 @@ sub disable_extras (@);
 my @opt_enableextras;
 my @opt_disableextras;
 
-GetOptions(
+exit 1 unless GetOptions(
        'clean'  => \&cmd_clean,
        'help'   => \&cmd_help,
        'update' => \&cmd_update,
 
        'development'          => \$opt_development,
        'disable-interactive'  => \$opt_disable_interactive,
+       'disable-auto-extras'  => \$opt_disable_auto_extras,
        'distribution-label=s' => \$opt_distribution_label,
        'binary-dir=s'         => \$opt_binary_dir,
        'config-dir=s'         => \$opt_config_dir,
@@ -117,6 +119,7 @@ our $interactive = !(
        defined $opt_config_dir ||
        defined $opt_data_dir ||
        defined $opt_development ||
+       defined $opt_disable_auto_extras ||
        defined $opt_disable_interactive ||
        defined $opt_distribution_label ||
        defined $opt_gid ||
@@ -251,27 +254,24 @@ EOW
 $config{USER} = $user[0];
 $config{UID}  = $user[2];
 
-# Clear the screen.
-system 'tput', 'clear' if $interactive;
-
 # Warn the user about clock drifting when running on OpenVZ.
 if (-e '/proc/user_beancounters' || -e '/proc/vz/vzaquota') {
        print_warning <<'EOW';
-You are building InspIRCd inside of an an OpenVZ container. If you
+You are building InspIRCd inside of an OpenVZ container. If you
 plan to use InspIRCd in this container then you should make sure that NTP is
 configured on the Hardware Node. Failure to do so may result in clock drifting!
 EOW
 }
 
 # Check that the user actually wants this version.
-if ($version{LABEL} ne 'release') {
+if (defined $version{REAL_LABEL}) {
        print_warning <<'EOW';
 You are building a development version. This contains code which has
 not been tested as heavily and may contain various faults which could seriously
 affect the running of your server. It is recommended that you use a stable
 version instead.
 
-You can obtain the latest stable version from http://www.inspircd.org/ or by
+You can obtain the latest stable version from https://www.inspircd.org or by
 running `<|GREEN git checkout $(git describe --abbrev=0 --tags insp3)|>` if you are
 installing from Git.
 EOW
@@ -324,12 +324,12 @@ if (prompt_bool $interactive, $question, 0) {
                        enable_extras "$module_name.cpp";
                }
        }
-} else {
+} elsif (!defined $opt_disable_auto_extras) {
        # TODO: finish modulemanager rewrite and replace this code with:
        # system './modulemanager', 'enable', '--auto';
        my %modules = (
                # Missing: m_ldap, m_regex_stdlib, m_ssl_mbedtls
-               'm_geoip.cpp'           => 'pkg-config --exists geoip',
+               'm_geo_maxmind.cpp'     => 'pkg-config --exists libmaxminddb',
                'm_mysql.cpp'           => 'mysql_config --version',
                'm_pgsql.cpp'           => 'pg_config --version',
                'm_regex_pcre.cpp'      => 'pcre-config --version',
@@ -400,7 +400,7 @@ print_format <<"EOM";
 <|GREEN Execution User:|>  $config{USER} ($config{UID})
 <|GREEN Socket Engine:|>   $config{SOCKETENGINE}
 
-To build with these settings run '<|GREEN make -j${\get_cpu_count}|>' now.
+To build with these settings run '<|GREEN make -j${\get_cpu_count} install|>' now.
 
 EOM