From 3c16f21413290a00f63ec2549bb4b03b888464fd Mon Sep 17 00:00:00 2001 From: Michael Slezak Date: Tue, 16 Feb 2021 10:28:30 -0700 Subject: [PATCH] Allow ejabberd to be compatible as a dependency for an Erlang project using rebar3 --- configure.ac | 3 +-- src/ejabberd.app.src.in | 17 --------------- src/ejabberd.app.src.script | 41 +++++++++++++++++++++++++++++++++++++ vars.config.in | 2 ++ 4 files changed, 44 insertions(+), 19 deletions(-) delete mode 100644 src/ejabberd.app.src.in create mode 100644 src/ejabberd.app.src.script diff --git a/configure.ac b/configure.ac index 0551c3130..fe64d38d7 100644 --- a/configure.ac +++ b/configure.ac @@ -67,8 +67,7 @@ fi AC_PREFIX_DEFAULT(/usr/local) AC_CONFIG_FILES([Makefile - vars.config - src/ejabberd.app.src]) + vars.config]) AC_ARG_ENABLE(all, [AC_HELP_STRING([--enable-all], [same as --enable-odbc --enable-mysql --enable-pgsql --enable-sqlite --enable-pam --enable-zlib --enable-redis --enable-elixir --enable-stun --enable-sip --enable-debug --enable-tools (useful for Dialyzer checks, default: no)])], diff --git a/src/ejabberd.app.src.in b/src/ejabberd.app.src.in deleted file mode 100644 index f1d08b8c7..000000000 --- a/src/ejabberd.app.src.in +++ /dev/null @@ -1,17 +0,0 @@ -%% $Id$ - -{application, ejabberd, - [{description, "@PACKAGE_NAME@"}, - {vsn, "@PACKAGE_VERSION@"}, - {modules, []}, - {registered, []}, - {applications, [kernel, stdlib, sasl, ssl]}, - {included_applications, [os_mon, lager, mnesia, inets, p1_utils, fast_yaml, fast_tls, pkix, xmpp, cache_tab, eimp]}, - {env, [{enabled_backends, [@enabled_backends@]}]}, - {mod, {ejabberd_app, []}}]}. - - -%% Local Variables: -%% mode: erlang -%% End: -%% vim: set filetype=erlang tabstop=8: diff --git a/src/ejabberd.app.src.script b/src/ejabberd.app.src.script new file mode 100644 index 000000000..aed4d2158 --- /dev/null +++ b/src/ejabberd.app.src.script @@ -0,0 +1,41 @@ +%% $Id$ +Vars = case file:consult(filename:join([filename:dirname(SCRIPT), "..", "vars.config"])) of + {ok, Terms} -> + Terms; + _Err -> + [] + end, + +Env = case lists:keyfind(enabled_backends, 1, Vars) of + false -> + {env, []}; + Backends -> + {env, [Backends]} + end, + +{application, ejabberd, + [{description, "ejabberd"}, + lists:keyfind(vsn, 1, Vars), + {modules, []}, + {registered, []}, + {applications, [kernel, stdlib, sasl, ssl]}, + {included_applications, + [os_mon, + lager, + mnesia, + inets, + p1_utils, + fast_yaml, + fast_tls, + pkix, + xmpp, + cache_tab, + eimp]}, + Env, + {mod, {ejabberd_app, []}}]}. + + +%% Local Variables: +%% mode: erlang +%% End: +%% vim: set filetype=erlang tabstop=8: diff --git a/vars.config.in b/vars.config.in index 3287ecde6..824e1e59d 100644 --- a/vars.config.in +++ b/vars.config.in @@ -45,6 +45,8 @@ {vsn, "@PACKAGE_VERSION@"}. %% Variables for overlay template files +{package_name, "@PACKAGE_NAME@"}. +{enabled_backends, [@enabled_backends@]}. %% Platform-specific installation paths {release, true}.