diff options
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/override_opts.erl | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/plugins/override_opts.erl b/plugins/override_opts.erl index 1d321fc87..818f53e87 100644 --- a/plugins/override_opts.erl +++ b/plugins/override_opts.erl @@ -9,6 +9,11 @@ override_opts(add, Config, Opts) -> lists:foldl(fun({Opt, Value}, Conf) -> V = rebar_config:get_local(Conf, Opt, []), rebar_config:set(Conf, Opt, V ++ Value) + end, Config, Opts); +override_opts(del, Config, Opts) -> + lists:foldl(fun({Opt, Value}, Conf) -> + V = rebar_config:get_local(Conf, Opt, []), + rebar_config:set(Conf, Opt, V -- Value) end, Config, Opts). preprocess(Config, _Dirs) -> @@ -24,6 +29,8 @@ preprocess(Config, _Dirs) -> lists:foldl(fun({Type, AppName2, Opts}, Conf1) when AppName2 == AppName -> override_opts(Type, Conf1, Opts); + ({Type, Opts}, Conf1a) -> + override_opts(Type, Conf1a, Opts); (_, Conf2) -> Conf2 end, C, TopOverrides); |