summaryrefslogtreecommitdiff
path: root/src/rebar_app_info.erl
diff options
context:
space:
mode:
Diffstat (limited to 'src/rebar_app_info.erl')
-rw-r--r--src/rebar_app_info.erl18
1 files changed, 17 insertions, 1 deletions
diff --git a/src/rebar_app_info.erl b/src/rebar_app_info.erl
index a08ca92..698ebd7 100644
--- a/src/rebar_app_info.erl
+++ b/src/rebar_app_info.erl
@@ -86,14 +86,30 @@ config(AppInfo=#app_info_t{}, Config) ->
AppInfo#app_info_t{config=Config}.
-spec app_file_src(t()) -> file:name().
+app_file_src(#app_info_t{app_file_src=undefined, dir=Dir, name=Name}) ->
+ AppFileSrc = filename:join([Dir, "src", <<Name/binary, ".app.src">>]),
+ case filelib:is_file(AppFileSrc) of
+ true ->
+ ec_cnv:to_list(AppFileSrc);
+ false ->
+ undefined
+ end;
app_file_src(#app_info_t{app_file_src=AppFileSrc}) ->
- AppFileSrc.
+ ec_cnv:to_list(AppFileSrc).
-spec app_file_src(t(), file:name()) -> t().
app_file_src(AppInfo=#app_info_t{}, AppFileSrc) ->
AppInfo#app_info_t{app_file_src=AppFileSrc}.
-spec app_file(t()) -> file:name().
+app_file(#app_info_t{app_file=undefined, dir=Dir, name=Name}) ->
+ AppFile = filename:join([Dir, "ebin", <<Name/binary, ".app">>]),
+ case filelib:is_file(AppFile) of
+ true ->
+ AppFile;
+ false ->
+ undefined
+ end;
app_file(#app_info_t{app_file=AppFile}) ->
AppFile.