%% -*- erlang -*-
Script = fun(D,S,Vs) ->
		 Scr = filename:join(D, S),
		 case file:script(Scr, orddict:store('SCRIPT', Scr, Vs)) of
		     {ok, Res} -> Res;
		     {error,_} = Err ->
			 io:fwrite("Error evaluating script ~s~n", [S]),
			 Err
		 end
	 end.
CFG1 = case os:getenv("REBAR_DEPS") of
	   false -> CONFIG;
	   [] -> CONFIG;
	   Dir ->
	       lists:keystore(deps_dir, 1, CONFIG, {deps_dir, Dir})
       end.
Priv = filename:join(filename:dirname(SCRIPT), "priv").
CFG2 = case os:getenv("GPROC_DIST") of
	   "true" ->
	       CFG1;
	   F when F=="false"; F==false ->
	       Script(Priv, "remove_deps.script",
		      [{'CONFIG', CFG1}, {'DEPS', [gen_leader]}])
       end.
Script(Priv, "check_edown.script", [{'CONFIG', CFG2}]).