anchor.diff:                         
   
   run_reltool(Config, ReltoolConfig) ->
  -    {ok, Server} = reltool:start_server([{sys, ReltoolConfig}]),
  +    {ok, Server} = reltool:start_server([sys_tuple(ReltoolConfig)]),
       case reltool:get_target_spec(Server) of
           {ok, Spec} ->
               dump_spec(Spec),
  -            TargetDir = target_dir(Config, ReltoolConfig),
  -            case file:make_dir(TargetDir) of
  -                ok ->
  -                    ok;
  -                {error, eexist} ->
  -                    %% Output directory already exists; if force=1, wipe it out
  -                    case rebar_config:get_global(force, "0") of
  -                        "1" ->
  -                            rebar_file_utils:rm_rf(TargetDir),
  -                            ok = file:make_dir(TargetDir);
  -                        _ ->
  -                            ?ERROR("Release target directory ~p already exists!\n", [TargetDir]),
  -                            ?FAIL
  -                    end
  -            end,            
  -            case reltool:eval_target_spec(Spec, code:root_dir(), TargetDir) of
  +            TargetDir = target_dir(Config, sys_tuple(ReltoolConfig)),
  +            mk_target_dir(TargetDir),
  +
  +            %% Post process the specification with rebar directives (if any exist)
  +            FinalSpec = case lists:keysearch(rebar, 1, ReltoolConfig) of
  +                            {value, {rebar, RebarConfig}} ->
  +                                process_rebar_specs(RebarConfig, Spec);
  +                            false ->
  +                                Spec
  +                        end,
  +
  +            case reltool:eval_target_spec(FinalSpec, code:root_dir(), TargetDir) of
                   ok ->
                       ok;
                   {error, Reason} ->
  
positive.code:     ReltoolConfig = load_config(ReltoolFile),
  
      %% Spin up reltool server and load our config into it
      {ok, Server} = reltool:start_server([{sys, ReltoolConfig}]),
  
      %% Do some validation of the reltool configuration; error messages out of
      %% reltool are still pretty cryptic
      validate_rel_apps(Server, ReltoolConfig),
  
      %% Finally, run reltool
      case catch(run_reltool(Config, ReltoolConfig)) of
  
negative.code:           Name
    end.
  
  validate_rel_apps(ReltoolServer, {sys, ReltoolConfig}) ->
      case lists:keysearch(rel, 1, ReltoolConfig) of
          {value, {rel, _Name, _Vsn, Apps}} ->
              %% Identify all the apps that do NOT exist, based on what's available
  