summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Thompson <andrew@hijacked.us>2014-03-05 14:54:27 -0500
committerAndrew Thompson <andrew@hijacked.us>2014-03-05 14:54:27 -0500
commitab571fd2aa4194353bfe408e04253b2f3dab6c1c (patch)
tree75e51db06c0ea2db23d2dcf6fa31b0f272914855
parentb7e727a8f7128d1686090c51a264b0051eac0be2 (diff)
parent03fe5318c6cdc0a9eb1c0a9ee9d9267791ca4dda (diff)
Merge pull request #234 from tuncer/fix-220
Fix #220 (Reported-by: Joseph Norton)
-rw-r--r--src/rebar_erlc_compiler.erl21
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