diff options
Diffstat (limited to 'deps/setup/src/setup_gen.erl')
-rw-r--r-- | deps/setup/src/setup_gen.erl | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/deps/setup/src/setup_gen.erl b/deps/setup/src/setup_gen.erl index e0137fe..7a74107 100644 --- a/deps/setup/src/setup_gen.erl +++ b/deps/setup/src/setup_gen.erl @@ -171,12 +171,13 @@ run(Options) -> ?if_verbose(io:fwrite("Options = ~p~n", [Options])), Config = read_config(Options), ?if_verbose(io:fwrite("Config = ~p~n", [Config])), - FullOpts = Options ++ Config, + FullOpts = insert_config(Config, Options), + ?if_verbose(io:fwrite("FullOpts = ~p~n", [FullOpts])), {Name, OutDir, RelDir, RelVsn, GenTarget} = name_and_target(FullOpts), ensure_dir(RelDir), Roots = roots(FullOpts), ?if_verbose(io:fwrite("Roots = ~p~n", [Roots])), - check_config(Config), + check_config(FullOpts), Env = env_vars(FullOpts), InstEnv = install_env(Env, FullOpts), add_paths(Roots, FullOpts), @@ -202,6 +203,14 @@ run(Options) -> setup_lib:write_eterm("setup_gen.eterm", FullOpts) end). +insert_config(Conf, Options) -> + lists:flatmap( + fun({conf, _} = C) -> + [C|Conf]; + (Other) -> + [Other] + end, Options). + name_and_target(FullOpts) -> Name = option(name, FullOpts), case proplists:get_value(target, FullOpts, false) of @@ -797,6 +806,7 @@ app_vsn(A, V) -> Path = code:get_path(), Found = [D || D <- Path, is_app(AppStr, D)], Sorted = setup_lib:sort_vsns(lists:usort(Found), AppStr), + ?if_verbose(io:fwrite("Sorted = ~p~n", [Sorted])), match_app_vsn(Sorted, V, AppStr). match_app_vsn(Vsns, latest, App) -> |