mirror of
https://github.com/correl/rebar.git
synced 2024-11-27 11:09:55 +00:00
Add support for embedding VCS info into the version data
This commit is contained in:
parent
518d30d7ad
commit
02bc52fc6a
2 changed files with 10 additions and 2 deletions
|
@ -6,6 +6,9 @@ main(Args) ->
|
||||||
%% Get a string repr of build time
|
%% Get a string repr of build time
|
||||||
Built = build_time(),
|
Built = build_time(),
|
||||||
|
|
||||||
|
%% Get a string repr of hg changeset
|
||||||
|
HgInfo = "hg " ++ string:strip(os:cmd("hg identify -i"), both, $\n),
|
||||||
|
|
||||||
%% Check for force=1 flag to force a rebuild
|
%% Check for force=1 flag to force a rebuild
|
||||||
case lists:member("force=1", Args) of
|
case lists:member("force=1", Args) of
|
||||||
true ->
|
true ->
|
||||||
|
@ -17,7 +20,8 @@ main(Args) ->
|
||||||
|
|
||||||
%% Compile all src/*.erl to ebin
|
%% Compile all src/*.erl to ebin
|
||||||
case make:files(filelib:wildcard("src/*.erl"), [{outdir, "ebin"}, {i, "include"},
|
case make:files(filelib:wildcard("src/*.erl"), [{outdir, "ebin"}, {i, "include"},
|
||||||
{d, 'BUILD_TIME', Built}]) of
|
{d, 'BUILD_TIME', Built},
|
||||||
|
{d, 'VCS_INFO', HgInfo}]) of
|
||||||
up_to_date ->
|
up_to_date ->
|
||||||
ok;
|
ok;
|
||||||
error ->
|
error ->
|
||||||
|
|
|
@ -38,6 +38,10 @@
|
||||||
-define(BUILD_TIME, "undefined").
|
-define(BUILD_TIME, "undefined").
|
||||||
-endif.
|
-endif.
|
||||||
|
|
||||||
|
-ifndef(VCS_INFO).
|
||||||
|
-define(VCS_INFO, "undefined").
|
||||||
|
-endif.
|
||||||
|
|
||||||
%% ===================================================================
|
%% ===================================================================
|
||||||
%% Public API
|
%% Public API
|
||||||
%% ===================================================================
|
%% ===================================================================
|
||||||
|
@ -231,7 +235,7 @@ version Show version information
|
||||||
%%
|
%%
|
||||||
version() ->
|
version() ->
|
||||||
{ok, Vsn} = application:get_key(rebar, vsn),
|
{ok, Vsn} = application:get_key(rebar, vsn),
|
||||||
?CONSOLE("Version ~s built ~s\n", [Vsn, ?BUILD_TIME]).
|
?CONSOLE("rebar version: ~s date: ~s vcs: ~s\n", [Vsn, ?BUILD_TIME, ?VCS_INFO]).
|
||||||
|
|
||||||
%%
|
%%
|
||||||
%% options accepted via getopt
|
%% options accepted via getopt
|
||||||
|
|
Loading…
Reference in a new issue