diff options
author | Andrew Thompson <andrew@hijacked.us> | 2014-03-05 14:54:27 -0500 |
---|---|---|
committer | Andrew Thompson <andrew@hijacked.us> | 2014-03-05 14:54:27 -0500 |
commit | ab571fd2aa4194353bfe408e04253b2f3dab6c1c (patch) | |
tree | 75e51db06c0ea2db23d2dcf6fa31b0f272914855 | |
parent | b7e727a8f7128d1686090c51a264b0051eac0be2 (diff) | |
parent | 03fe5318c6cdc0a9eb1c0a9ee9d9267791ca4dda (diff) |
Merge pull request #234 from tuncer/fix-220
Fix #220 (Reported-by: Joseph Norton)
-rw-r--r-- | src/rebar_erlc_compiler.erl | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/src/rebar_erlc_compiler.erl b/src/rebar_erlc_compiler.erl index a1740b0..75d47fb 100644 --- a/src/rebar_erlc_compiler.erl +++ b/src/rebar_erlc_compiler.erl @@ -146,12 +146,13 @@ test_compile(Config, Cmd, OutDir) -> lists:append(Acc, Files) end, [], SrcDirs), - %% If it is not the first time rebar eunit is executed, there will be source - %% files already present in OutDir. Since some SCMs (like Perforce) set - %% the source files as being read only (unless they are checked out), we - %% need to be sure that the files already present in OutDir are writable - %% before doing the copy. This is done here by removing any file that was - %% already present before calling rebar_file_utils:cp_r. + %% If it is not the first time rebar eunit or rebar qc is executed, + %% there will be source files already present in OutDir. Since some + %% SCMs (like Perforce) set the source files as being read only (unless + %% they are checked out), we need to be sure that the files already + %% present in OutDir are writable before doing the copy. This is done + %% here by removing any file that was already present before calling + %% rebar_file_utils:cp_r. %% Get the full path to a file that was previously copied in OutDir ToCleanUp = fun(F, Acc) -> @@ -172,7 +173,7 @@ test_compile(Config, Cmd, OutDir) -> %% with appropriate defines for eunit, and include all the test modules %% as well. ok = doterl_compile(test_compile_config(Config, ErlOpts, Cmd), - OutDir, TestErls), + OutDir, TestErls, ErlOpts), {ok, SrcErls}. @@ -271,11 +272,11 @@ is_lib_avail(Config, DictKey, Mod, Hrl, Name) -> -spec doterl_compile(rebar_config:config(), file:filename()) -> 'ok'. doterl_compile(Config, OutDir) -> - doterl_compile(Config, OutDir, []). + ErlOpts = rebar_utils:erl_opts(Config), + doterl_compile(Config, OutDir, [], ErlOpts). -doterl_compile(Config, OutDir, MoreSources) -> +doterl_compile(Config, OutDir, MoreSources, ErlOpts) -> ErlFirstFiles = rebar_config:get_list(Config, erl_first_files, []), - ErlOpts = rebar_utils:erl_opts(Config), ?DEBUG("erl_opts ~p~n", [ErlOpts]), %% Support the src_dirs option allowing multiple directories to %% contain erlang source. This might be used, for example, should |