diff options
-rwxr-xr-x | configure | 11 | ||||
-rw-r--r-- | make/common.pm | 4 | ||||
-rw-r--r-- | make/configure.pm | 5 |
3 files changed, 11 insertions, 9 deletions
@@ -126,7 +126,7 @@ our $interactive = !( defined $opt_uid ); -my %version = get_version(); +my %version = get_version $opt_distribution_label; print_format "<|BOLD Configuring InspIRCd $version{FULL} on $^O.|>\n"; our %config; @@ -188,12 +188,6 @@ if (defined $opt_socketengine) { } } -# If the user has specified a distribution label then we use it in -# place of the label from src/version.sh or Git. -if (defined $opt_distribution_label) { - $version{LABEL} = $opt_distribution_label; -} - if (defined $opt_system) { $config{BASE_DIR} = $opt_prefix // '/var/lib/inspircd'; $config{BINARY_DIR} = $opt_binary_dir // '/usr/sbin'; @@ -310,6 +304,9 @@ if (<src/modules/m_ssl_*.cpp> && prompt_bool $interactive, 'Would you like to ge system './tools/genssl', 'auto'; } +# Cache the distribution label so that its not lost when --update is run. +$config{DISTRIBUTION} = $opt_distribution_label if $opt_distribution_label; + write_configure_cache %config; parse_templates \%config, \%compiler, \%version; diff --git a/make/common.pm b/make/common.pm index 53ee3f778..b1608db56 100644 --- a/make/common.pm +++ b/make/common.pm @@ -63,6 +63,10 @@ sub get_version { $version{LABEL} = $4 if defined $4; } + # If the user has specified a distribution label then we use it in + # place of the label from src/version.sh or Git. + $version{LABEL} = shift // $version{LABEL}; + # If any of these fields are missing then the user has deleted the # version file and is not running from Git. Fill in the fields with # dummy data so we don't get into trouble with undef values later. diff --git a/make/configure.pm b/make/configure.pm index e88454658..6b4693d45 100644 --- a/make/configure.pm +++ b/make/configure.pm @@ -159,7 +159,8 @@ MISC OPTIONS --socketengine=[name] Sets the socket engine to be used. Possible values are $SELIST. --uid=[id|name] Sets the user to run InspIRCd as. - --update Updates the build environment. + --update Updates the build environment with the settings + from the cache. FLAGS @@ -180,7 +181,7 @@ sub cmd_update { say 'Updating...'; my %config = read_configure_cache(); my %compiler = get_compiler_info($config{CXX}); - my %version = get_version(); + my %version = get_version $config{DISTRIBUTION}; parse_templates(\%config, \%compiler, \%version); say 'Update complete!'; exit 0; |