summaryrefslogtreecommitdiff
path: root/src/ejabberd_config.erl
diff options
context:
space:
mode:
authorPaweł Chmielowski <pchmielowski@process-one.net>2016-09-08 16:29:19 +0200
committerPaweł Chmielowski <pchmielowski@process-one.net>2016-09-08 16:29:45 +0200
commit4bd45bada70fc233bb87bc7ab099fc2407cea30b (patch)
tree671e6aaa5b77a10c515e059be6398af5913ccc52 /src/ejabberd_config.erl
parentFull jid entity subscriptions should include bare jid records (#1284) (diff)
Start elixir config code only if elixir was enabled in configure script
Diffstat (limited to 'src/ejabberd_config.erl')
-rw-r--r--src/ejabberd_config.erl39
1 files changed, 29 insertions, 10 deletions
diff --git a/src/ejabberd_config.erl b/src/ejabberd_config.erl
index 7d5dfbc0..6ca6a40a 100644
--- a/src/ejabberd_config.erl
+++ b/src/ejabberd_config.erl
@@ -37,7 +37,8 @@
prepare_opt_val/4, convert_table_to_binary/5,
transform_options/1, collect_options/1, default_db/2,
convert_to_yaml/1, convert_to_yaml/2, v_db/2,
- env_binary_to_list/2, opt_type/1, may_hide_data/1]).
+ env_binary_to_list/2, opt_type/1, may_hide_data/1,
+ is_elixir_enabled/0]).
-export([start/2]).
@@ -148,13 +149,18 @@ read_file(File) ->
{include_modules_configs, true}]).
read_file(File, Opts) ->
- Terms1 = case 'Elixir.Ejabberd.ConfigUtil':is_elixir_config(File) of
- true ->
- 'Elixir.Ejabberd.Config':init(File),
- 'Elixir.Ejabberd.Config':get_ejabberd_opts();
- false ->
- get_plain_terms_file(File, Opts)
- end,
+ Terms1 = case is_elixir_enabled() of
+ true ->
+ case 'Elixir.Ejabberd.ConfigUtil':is_elixir_config(File) of
+ true ->
+ 'Elixir.Ejabberd.Config':init(File),
+ 'Elixir.Ejabberd.Config':get_ejabberd_opts();
+ false ->
+ get_plain_terms_file(File, Opts)
+ end;
+ false ->
+ get_plain_terms_file(File, Opts)
+ end,
Terms_macros = case proplists:get_bool(replace_macros, Opts) of
true -> replace_macros(Terms1);
false -> Terms1
@@ -1049,9 +1055,22 @@ replace_modules(Modules) ->
%% Elixir module naming
%% ====================
+-ifdef(ELIXIR_ENABLED).
+is_elixir_enabled() ->
+ true.
+-else.
+is_elixir_enabled() ->
+ false.
+-endif.
+
is_using_elixir_config() ->
- Config = get_ejabberd_config_path(),
- 'Elixir.Ejabberd.ConfigUtil':is_elixir_config(Config).
+ case is_elixir_enabled() of
+ true ->
+ Config = get_ejabberd_config_path(),
+ 'Elixir.Ejabberd.ConfigUtil':is_elixir_config(Config);
+ false ->
+ false
+ end.
%% If module name start with uppercase letter, this is an Elixir module:
is_elixir_module(Module) ->