anchor.diff:      AbsDir = filename:absname(Dir),
       SrcDir = src(AbsDir),
       IncDir = include(AbsDir),
  -    case file:list_dir(SrcDir) of
  -        {ok, Files} ->
  +    case erl_files(SrcDir) of
  +        [] ->
  +            ok;
  +        Files ->
               EbinDir = ebin(AbsDir),
               exec("mkdir", ["-p", EbinDir]),
  -            lists:foreach(compile_fun(SrcDir, EbinDir, IncDir), Files);
  -        {error, _} ->
  -            ok
  +            lists:foreach(compile_fun(SrcDir, EbinDir, IncDir), Files)
       end.
   
   compile_deps([]) ->
  
positive.code:     SrcDir = src(get_path(Name2)),
      EbinDir = ebin(get_path(Name2)),
      IncDir = include(get_path(Name2)),
      case file:list_dir(SrcDir) of
          {ok, Files} ->
              exec("mkdir", ["-p", EbinDir]),
              lists:foreach(compile_fun(SrcDir, EbinDir, IncDir), Files);
          {error, _} -> ok
      end,
  
      %% check dependencies of the dependency
  
negative.code:             F1 = filename:join([SrcDir, F]),
              case is_app_src(F1) of
                  false ->
                      io:format("Compiling ~s~n", [F1]),
                      compile:file(F1, ?COMPILE_OPTS(IncDir, EbinDir));
                  true ->
                      AppFile = filename:join([EbinDir, app_src_to_app(F1)]),
                      io:format("Writing ~s~n", [AppFile]),
                      exec("cp", [F1, AppFile])
              end,
              code:add_path(EbinDir)
      end.
  