anchor.diff:      %% Re-create target
       ok = rebar_file_utils:mkdir_p(AppDir),
   
  -    %% By default we copy the ebin, include, src and priv directories
  -    ok = rebar_file_utils:cp_r(["ebin", "src", "priv", "include"],
  -                               AppDir),
  +    %% By default we copy the ebin, include, src and priv directories (if they exist)
  +    Files = [F || F <- ["ebin", "src", "priv", "include"],
  +                  filelib:last_modified(F) /= 0],
  +    ok = rebar_file_utils:cp_r(Files, AppDir),
   
       %% Check the config to see if we have any binaries that need to be
       %% linked into the erlang path
  
positive.code:     FqBin = filename:join([AppDir, Bin]),
      rebar_file_utils:ln_sf(FqBin, BinDir),
      install_binaries(Rest, AppDir, BinDir).
   
  validate_name(AppName, File) ->
      %% Convert the .app file name to an atom -- check it against the identifier within the file
  
negative.code:     %% Load the app name and version from the .app file and construct
      %% the app identifier
      {ok, AppName, AppData} = rebar_app_utils:load_app_file(File),
  
      %% Validate the .app file prior to installation
      validate_name(AppName, File),
      validate_modules(AppName, proplists:get_value(modules, AppData)),
  
      %% Pull out the vsn and construct identifier
      Vsn = proplists:get_value(vsn, AppData),
      AppId = ?FMT("~s-~s", [AppName, Vsn]),
      ?CONSOLE("Installing: ~s\n", [AppId]),
  