Current section

Files

Jump to
kafka_protocol rebar.config.script
Raw

rebar.config.script

{_, ErlOpts} = lists:keyfind(erl_opts, 1, CONFIG).
Rel = try erlang:system_info(otp_release) of
Vsn ->
{match,[Maj]} = re:run(Vsn, "^R?([0-9]+)", [{capture,[1],list}]),
list_to_integer(Maj)
catch _:_ ->
"OLD"
end,
Macros = if Rel < 19 ->
[{d, 'OLD_TIME_UNITS'}];
true ->
[]
end,
CONFIG1 = lists:keystore(erl_opts, 1, CONFIG, {erl_opts, Macros ++ ErlOpts}),
IsRebar3 = erlang:function_exported(rebar3, main, 1),
case IsRebar3 of
true ->
CONFIG1;
false ->
URLs = [ {snappyer, "https://github.com/zmstone/snappyer"}
, {crc32cer, "https://github.com/zmstone/crc32cer"}
],
Rebar3Deps = proplists:get_value(deps, CONFIG1),
Rebar2Deps =
lists:map(
fun({Name, URL}) ->
Tag = proplists:get_value(Name, Rebar3Deps),
{Name, ".*", {git, URL, {tag, Tag}}}
end, URLs),
lists:keyreplace(deps, 1, CONFIG1, {deps, Rebar2Deps})
end.