aboutsummaryrefslogtreecommitdiff
path: root/plugins/deps_erl_opts.erl
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/deps_erl_opts.erl')
-rw-r--r--plugins/deps_erl_opts.erl12
1 files changed, 12 insertions, 0 deletions
diff --git a/plugins/deps_erl_opts.erl b/plugins/deps_erl_opts.erl
new file mode 100644
index 000000000..725802664
--- /dev/null
+++ b/plugins/deps_erl_opts.erl
@@ -0,0 +1,12 @@
+-module(deps_erl_opts).
+-export([preprocess/2]).
+
+preprocess(Config, Dirs) ->
+ ExtraOpts = rebar_config:get(Config, deps_erl_opts, []),
+ Opts = rebar_config:get(Config, erl_opts, []),
+ NewOpts = lists:foldl(fun(Opt, Acc) when is_tuple(Opt) ->
+ lists:keystore(element(1, Opt), 1, Acc, Opt);
+ (Opt, Acc) ->
+ [Opt | lists:delete(Opt, Acc)]
+ end, Opts, ExtraOpts),
+ {ok, rebar_config:set(Config, erl_opts, NewOpts), []}.