Current section

Files

Jump to
gpb rebar.config
Raw

rebar.config

%% -*- erlang -*-
{require_otp_vsn, ".*"}.
%% Erlang compiler options
{erl_opts, [debug_info]}.
%% This line is useful if you have gpb_eqc.erl symlinked to
%% the symlink in the test/ directory.
{eunit_compile_opts, [{i,"../include"}]}.
{post_hooks,
[{compile,
%"sh -exv -c '" %% use this line for debugging
"sh -e -c '"
"is_up_to_date () {\n"
" target=\"$1\"\n"
" shift\n"
" test ! -f \"$target\" && return 1\n"
" for f in \"$@\"\n"
" do\n"
" test \"$f\" -nt \"$target\" && return 1\n"
" done\n"
" return 0\n"
"}\n"
"\n"
"is_up_to_date descr_src/gpb_descriptor.erl \\\n"
" descr_src/gpb_descriptor.proto || \\\n"
" ( echo \"Compiling gpb_descriptor.proto...\"\n"
" erl +B -noinput -pa ebin \\\n"
" -I `pwd`/descr_src -o descr_src \\\n"
" -s gpb_compile c `pwd`/descr_src/gpb_descriptor.proto ) || exit $?\n"
"is_up_to_date ebin/gpb_descriptor.beam \\\n"
" descr_src/gpb_descriptor.erl || \\\n"
" ( echo \"Compiling gpb_descriptor.erl...\"\n"
" erlc -Idescr_src -Iinclude -o `pwd`/ebin +debug_info \\\n"
" descr_src/gpb_descriptor.erl ) || exit $?\n"
"is_up_to_date ebin/gpb_compile_descr.beam \\\n"
" descr_src/gpb_compile_descr.erl \\\n"
" descr_src/gpb_descriptor.hrl || \\\n"
" ( echo \"Compiling gpb_compile_descr.erl...\"\n"
" erlc -Idescr_src -Iinclude -o `pwd`/ebin +debug_info \\\n"
" descr_src/gpb_compile_descr.erl ) || exit $? \\\n"
"'"
%% The || exit $? is needed, if sh is a bash, then with some
%% versions of bash with -e, execution does not terminte if a
%% subshell exits with non-zero exit code
}]}.
%% XRef checks to perform
{xref_checks, [undefined_function_calls]}.
%% Clean files
{clean_files, [".eunit", "ebin/*.beam", "include/gpb_version.hrl",
"descr_src/gpb_descriptor.erl", "descr_src/gpb_descriptor.hrl"]}.