%% -*- erlang -*- %% %% If the environment variable X_COMP is set, it is an indication that self is being compiled %% as a dependency under exodev. Since exodev lists all dependency in its root rebar.config %% file in order to have a flat view of the dependency tree, we should nil out our local %% deps list provided by our local rebar.config %% C0 = case os:getenv("EXODEV_COMP") of false -> CONFIG; _ -> case lists:keytake(deps, 1, CONFIG) of { value, _, Remainder } -> Remainder; _ -> CONFIG end end, C1 = case os:getenv("REBAR_DEPS") of false -> C0; [] -> C0; Dir -> lists:keystore(deps_dir, 1, C0, {deps_dir, Dir}) end. C3 = case os:getenv("TGT") of false -> C1; [] -> C1; Tgt -> io:fwrite("Tgt = ~p~n", [Tgt]), {_, Opts} = lists:keyfind(edoc_opts, 1, C1), {_, {F,URL}} = lists:keyfind(top_level_readme, 1, Opts), Name = lists:last(string:tokens(URL, "/")), io:fwrite("Name = ~s~n", [Name]), NewURL = re:replace(URL, "[^/]+/" ++ Name, Tgt ++ "/" ++ Name, [{return, list}]), C2 = lists:keyreplace( edoc_opts, 1, C1, {edoc_opts, lists:keyreplace(top_level_readme, 1, Opts, {top_level_readme, {F, NewURL}})}), io:fwrite("CONFIG1 = ~p~n", [C2]), C2 end. Script = escript:script_name(), REBAR = case filename:basename(Script) of "rebar3" -> "make"; _ -> Script end, case lists:keyfind(post_hooks, 1, C3) of {_, PostHooks} -> PH1 = lists:map( fun({compile, "make escriptize"}) -> {compile, REBAR ++ " escriptize"}; (X) -> X end, PostHooks), lists:keyreplace( post_hooks, 1, C3, {post_hooks, PH1}); false -> C3 end.