summaryrefslogtreecommitdiff
path: root/src/rebar_erlc_compiler.erl
diff options
context:
space:
mode:
authorTristan Sloughter <tristan.sloughter@gmail.com>2014-07-25 14:10:04 -0500
committerTristan Sloughter <tristan.sloughter@gmail.com>2014-07-25 14:10:04 -0500
commit19c215ee9fe0726a1983b36f4f8bcc21d42a5ef8 (patch)
tree8a47941bbc34397269c9b42a84e33db6d0294476 /src/rebar_erlc_compiler.erl
parente8a6cfe04ab0612dcd089c7aed035520e3dd9aee (diff)
parent3fb4a7c540da227382ea0831c0c6424765900123 (diff)
Merge pull request #299 from tuncer/rok-resource-forks
Fix OS X resource fork handling (Reported-by: Richard O'Keefe)
Diffstat (limited to 'src/rebar_erlc_compiler.erl')
-rw-r--r--src/rebar_erlc_compiler.erl16
1 files changed, 10 insertions, 6 deletions
diff --git a/src/rebar_erlc_compiler.erl b/src/rebar_erlc_compiler.erl
index f628433..6ae927d 100644
--- a/src/rebar_erlc_compiler.erl
+++ b/src/rebar_erlc_compiler.erl
@@ -47,6 +47,8 @@
info = {[], []} :: erlc_info()
}).
+-define(RE_PREFIX, "^[^._]").
+
-ifdef(namespaced_types).
%% digraph:graph() exists starting from Erlang 17.
-type rebar_digraph() :: digraph:graph().
@@ -110,14 +112,14 @@ compile(Config, _AppFile) ->
-spec clean(rebar_config:config(), file:filename()) -> 'ok'.
clean(Config, _AppFile) ->
- MibFiles = rebar_utils:find_files("mibs", "^.*\\.mib\$"),
+ MibFiles = rebar_utils:find_files("mibs", ?RE_PREFIX".*\\.mib\$"),
MIBs = [filename:rootname(filename:basename(MIB)) || MIB <- MibFiles],
rebar_file_utils:delete_each(
[filename:join(["include",MIB++".hrl"]) || MIB <- MIBs]),
lists:foreach(fun(F) -> ok = rebar_file_utils:rm_rf(F) end,
["ebin/*.beam", "priv/mibs/*.bin"]),
- YrlFiles = rebar_utils:find_files("src", "^.*\\.[x|y]rl\$"),
+ YrlFiles = rebar_utils:find_files("src", ?RE_PREFIX".*\\.[x|y]rl\$"),
rebar_file_utils:delete_each(
[ binary_to_list(iolist_to_binary(re:replace(F, "\\.[x|y]rl$", ".erl")))
|| F <- YrlFiles ]),
@@ -129,7 +131,7 @@ clean(Config, _AppFile) ->
%% directory structure in ebin with .beam files within. As such, we want
%% to scan whatever is left in the ebin/ directory for sub-dirs which
%% satisfy our criteria.
- BeamFiles = rebar_utils:find_files("ebin", "^.*\\.beam\$"),
+ BeamFiles = rebar_utils:find_files("ebin", ?RE_PREFIX".*\\.beam\$"),
rebar_file_utils:delete_each(BeamFiles),
lists:foreach(fun(Dir) -> delete_dir(Dir, dirs(Dir)) end, dirs("ebin")),
ok.
@@ -140,7 +142,7 @@ clean(Config, _AppFile) ->
test_compile(Config, Cmd, OutDir) ->
%% Obtain all the test modules for inclusion in the compile stage.
- TestErls = rebar_utils:find_files("test", ".*\\.erl\$"),
+ TestErls = rebar_utils:find_files("test", ?RE_PREFIX".*\\.erl\$"),
ErlOpts = rebar_utils:erl_opts(Config),
{Config1, ErlOpts1} = test_compile_config_and_opts(Config, ErlOpts, Cmd),
@@ -151,7 +153,8 @@ test_compile(Config, Cmd, OutDir) ->
SrcDirs = rebar_utils:src_dirs(proplists:append_values(src_dirs, ErlOpts1)),
SrcErls = lists:foldl(
fun(Dir, Acc) ->
- Files = rebar_utils:find_files(Dir, ".*\\.erl\$"),
+ Files = rebar_utils:find_files(
+ Dir, ?RE_PREFIX".*\\.erl\$"),
lists:append(Acc, Files)
end, [], SrcDirs),
@@ -645,7 +648,8 @@ compile_xrl_yrl(Config, Source, Target, Opts, Mod) ->
gather_src([], Srcs) ->
Srcs;
gather_src([Dir|Rest], Srcs) ->
- gather_src(Rest, Srcs ++ rebar_utils:find_files(Dir, ".*\\.erl\$")).
+ gather_src(
+ Rest, Srcs ++ rebar_utils:find_files(Dir, ?RE_PREFIX".*\\.erl\$")).
-spec dirs(file:filename()) -> [file:filename()].
dirs(Dir) ->