summaryrefslogtreecommitdiff
path: root/src/rebar_app_info.erl
diff options
context:
space:
mode:
authorFred Hebert <mononcqc@ferd.ca>2015-07-27 09:39:20 +0100
committerFred Hebert <mononcqc@ferd.ca>2015-07-27 09:39:20 +0100
commit7c46eea294ecce8338bee7e76a13a0390b7c5901 (patch)
treee34c6793fc2324d7011b91ace63c4138e63a9eca /src/rebar_app_info.erl
parent8e5662147f59e52f9384b4daa7dd7c0345d126ef (diff)
parent806f7f9219b43b20f4ed23761019282235b32681 (diff)
Merge pull request #654 from tsloughter/discover_script
include app.src.script in app discover
Diffstat (limited to 'src/rebar_app_info.erl')
-rw-r--r--src/rebar_app_info.erl19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/rebar_app_info.erl b/src/rebar_app_info.erl
index 6e35b8f..6962c5a 100644
--- a/src/rebar_app_info.erl
+++ b/src/rebar_app_info.erl
@@ -11,6 +11,8 @@
config/2,
app_file_src/1,
app_file_src/2,
+ app_file_src_script/1,
+ app_file_src_script/2,
app_file/1,
app_file/2,
app_details/1,
@@ -48,6 +50,7 @@
-record(app_info_t, {name :: binary(),
app_file_src :: file:filename_all() | undefined,
+ app_file_src_script:: file:filename_all() | undefined,
app_file :: file:filename_all() | undefined,
config :: rebar_state:t() | undefined,
original_vsn :: binary() | string() | undefined,
@@ -146,6 +149,22 @@ app_file_src(#app_info_t{app_file_src=AppFileSrc}) ->
app_file_src(AppInfo=#app_info_t{}, AppFileSrc) ->
AppInfo#app_info_t{app_file_src=ec_cnv:to_list(AppFileSrc)}.
+-spec app_file_src_script(t()) -> file:filename_all() | undefined.
+app_file_src_script(#app_info_t{app_file_src_script=undefined, dir=Dir, name=Name}) ->
+ AppFileSrcScript = filename:join([ec_cnv:to_list(Dir), "src", ec_cnv:to_list(Name)++".app.src.script"]),
+ case filelib:is_file(AppFileSrcScript) of
+ true ->
+ AppFileSrcScript;
+ false ->
+ undefined
+ end;
+app_file_src_script(#app_info_t{app_file_src_script=AppFileSrcScript}) ->
+ ec_cnv:to_list(AppFileSrcScript).
+
+-spec app_file_src_script(t(), file:filename_all()) -> t().
+app_file_src_script(AppInfo=#app_info_t{}, AppFileSrcScript) ->
+ AppInfo#app_info_t{app_file_src_script=ec_cnv:to_list(AppFileSrcScript)}.
+
-spec app_file(t()) -> file:filename_all() | undefined.
app_file(#app_info_t{app_file=undefined, out_dir=Dir, name=Name}) ->
AppFile = filename:join([ec_cnv:to_list(Dir), "ebin", ec_cnv:to_list(Name)++".app"]),