%% -*- mode: erlang;erlang-indent-level: 4;indent-tabs-mode: nil -*-
%% ex: ts=4 sw=4 ft=erlang et
%% This is a sample rebar.conf file that shows examples of some of rebar's
%% options.

%% == Core ==

%% Extend list of always recursive commands
{recursive_cmds, []}.

%% Check required ERTS or OTP release version
{require_erts_vsn, ".*"}.
{require_otp_vsn, ".*"}.
{require_min_otp_vsn, ".*"}.

%% Additional library directories to add to the code path
{lib_dirs, []}.

%% == Erlang Compiler ==

%% Erlang files to compile before the rest. Rebar automatically compiles
%% parse_transforms and custom behaviours before anything other than the files
%% in this list.
{erl_first_files, ["src/mymib1.erl", "src/mymib2.erl"]}.

%% Erlang compiler options
{erl_opts, [no_debug_info,
            {i, "myinclude"},
            {src_dirs, ["src", "src2", "src3"]},
            {platform_define,
             "(linux|solaris|freebsd|darwin)", 'HAVE_SENDFILE'},
            {platform_define, "(linux|freebsd)", 'BACKLOG', 128},
            {platform_define, "R13", 'old_inets'}]}.

%% MIB Options?
{mib_opts, []}.

%% SNMP mibs to compile first?
{mib_first_files, []}.

%% leex options
{xrl_opts, []}.

%% leex files to compile first
{xrl_first_files, []}.

%% yecc options
{yrl_opts, []}.

%% yecc files to compile first
{yrl_first_files, []}.

%% == EDoc ==

%% EDoc options
{edoc_opts, []}.

%% == Port Compiler ==

%% Port compilation environment variables. See rebar_port_compiler.erl for
%% more info. Default is `[]'
{port_env, [{"CFLAGS", "$CFLAGS -Ifoo"},
            {"freebsd", "LDFLAGS", "$LDFLAGS -lfoo"}]}.

%% port_specs
%% List of filenames or wildcards to be compiled. May also contain a tuple
%% consisting of a regular expression to be applied against the system
%% architecture as a filter.
{port_specs, [{"priv/so_name.so", ["c_src/*.c"]},
              {"linux", "priv/hello_linux", ["c_src/hello_linux.c"]},
              {"linux", "priv/hello_linux", ["c_src/*.c"], [{env, []}]}]}.

%% == escriptize ==
{escript_name, "application"}.
{escript_incl_apps, []}.
{escript_shebang, "#!/usr/bin/env escript\n"}.
{escript_comment, "%%\n"}.
{escript_emu_args, "%%! -pa application/application/ebin\n"}.

%% == LFE Compiler ==

%% LFE files to compile before the rest
{lfe_first_files, []}.

%% Options for the LFE compiler: reuse {erl_opts, []}

%% == ErlyDTL Compiler ==

%% Options for the ErlyDTL compiler
{erlydtl_opts, []}.

%% == Proto compiler ==
{proto_opts, [
              {compiler, protobuffs},
              {src_dirs, ["src"]}
             ]}.
%% Available compilers for protocol buffer files (*.proto):
%%   protobuffs  (default)
%%   gpb
%% Optional src_dirs which is a list of directories where
%% to look for .proto files, default is src

%% Options for the gpb protocol buffer compiler,
%% if selected by the proto_compiler option
{gpb_opts, []}.

%% == Diameter compiler ==

%% Diameter files to compile before the rest
{dia_first_files, []}.

%% Options for the diameter compiler
{dia_opts, []}.

%% == EUnit ==

%% Options for eunit:test()
{eunit_opts, []}.

%% Additional compile options for eunit. erl_opts is also used
{eunit_compile_opts, []}.

%% Same as erl_first_files, but used only when running 'eunit'
{eunit_first_files, []}.

%% == Cover ==

%% Whether to enable coverage reporting. Default is `false'
{cover_enabled, false}.

%% Whether to print coverage report to console. Default is `false'
{cover_print_enabled, false}.

%% Whether to export coverage report to file. Default is `false'
{cover_export_enabled, false}.

%% == Common Test ==

%% Override the default "test" directory in which SUITEs are located
{ct_dir, "itest"}.

%% Override the default "logs" directory in which SUITEs are logged
{ct_log_dir, "test/logs"}.

%% Option to pass extra parameters when launching Common Test
{ct_extra_params, "-boot start_sasl -s myapp"}.

%% Option to use short names (i.e., -sname test) when starting ct
{ct_use_short_names, true}.

%% == QuickCheck ==

%% If qc_mod is unspecified, rebar tries to detect Triq or EQC
{qc_opts, [{qc_mod, module()}, Options]}.

%% Additional compile options for qc. erl_opts is also used
{qc_compile_opts, []}.

%% Same as erl_first_files, but used only when running 'qc'
{qc_first_files, []}.

%% == Cleanup ==

%% Which files to cleanup
{clean_files, ["file", "file2"]}.

%% == OTP Applications ==

%% Enable validation of the OTP app module list. Default is 'true'
{validate_app_modules, true}.

%% == Dependencies ==

%% Where to put any downloaded dependencies. Default is "deps"
{deps_dir, "deps"}.

%% What dependencies we have, dependencies can be of 3 forms, an application
%% name as an atom, eg. mochiweb, a name and a version (from the .app file), or
%% an application name, a version and the SCM details on how to fetch it (SCM
%% type, location and revision).
%% Rebar currently supports git, hg, bzr, svn, rsync, fossil, and p4.
{deps, [app_name,
        {rebar, "1.0.*"},
        {rebar, ".*",
         {git, "git://github.com/rebar/rebar.git"}},
        {rebar, ".*",
         {git, "git://github.com/rebar/rebar.git", "Rev"}},
        {rebar, "1.0.*",
         {git, "git://github.com/rebar/rebar.git", {branch, "master"}}},
        {rebar, "1.0.0",
         {git, "git://github.com/rebar/rebar.git", {tag, "1.0.0"}}},
        %% Dependencies can be marked as 'raw'. Rebar does not require
        %% such dependencies to have a standard Erlang/OTP layout
        %% which assumes the presence of either
        %% "src/dependency_name.app.src" or "ebin/dependency_name.app"
        %% files.
        %%
        %% 'raw' dependencies can still contain 'rebar.config' and
        %% even can have the proper OTP directory layout, but they
        %% won't be compiled.
        %%
        %% Only a subset of rebar commands will be executed on the
        %% 'raw' subdirectories: get-deps, update-deps, check-deps,
        %% list-deps and delete-deps.
        {rebar, "",
         {git, "git://github.com/rebar/rebar.git", {branch, "master"}},
         [raw]},
        {app_name, ".*", {hg, "https://www.example.org/url"}},
        {app_name, ".*", {rsync, "Url"}},
        {app_name, ".*", {svn, "https://www.example.org/url"}},
        {app_name, ".*", {svn, "svn://svn.example.org/url"}},
        {app_name, ".*", {bzr, "https://www.example.org/url", "Rev"}},
        {app_name, ".*", {fossil, "https://www.example.org/url"}},
        {app_name, ".*", {fossil, "https://www.example.org/url", "Vsn"}},
        {app_name, ".*", {p4, "//depot/subdir/app_dir"}}]}.

%% == Subdirectories ==

%% Subdirectories?
{sub_dirs, ["dir1", "dir2"]}.

%% == Plugins ==

%% Plugins you wish to include.
%% These can include any module on the code path, including deps.
%% Alternatively, plugins can be placed as source files in the plugin_dir, in
%% which case they will be compiled and loaded dynamically at runtime.
{plugins, [plugin1, plugin2]}.

%% Override the directory in which plugin sources can be found.
%% Defaults to ./plugins
{plugin_dir, "some_other_directory"}.


%% == Pre/Post Command Hooks ==

{pre_hooks, [{clean, "./prepare_package_files.sh"},
             {"linux", compile, "c_src/build_linux.sh"},
             {compile, "escript generate_headers"},
             {compile, "escript check_headers"}]}.

{post_hooks, [{clean, "touch file1.out"},
              {"freebsd", compile, "c_src/freebsd_tweaks.sh"},
              {eunit, "touch file2.out"},
              {compile, "touch postcompile.out"}]}.

%% == xref ==

{xref_warnings, false}.

%% optional extra paths to include in xref:set_library_path/2.
%% specified relative location of rebar.config.
%% e.g. {xref_extra_paths,["../gtknode/src"]}
{xref_extra_paths,[]}.

%% xref checks to run
{xref_checks, [undefined_function_calls, undefined_functions,
               locals_not_used, exports_not_used,
               deprecated_function_calls, deprecated_functions]}.

%% Optional custom xref queries (xref manual has details) specified as
%%     {xref_queries, [{query_string(), expected_query_result()},...]}
%% The following for example removes all references to mod:*foo/4
%% functions from undefined external function calls as those are in a
%% generated module
{xref_queries,
 [{"(XC - UC) || (XU - X - B"
   " - (\"mod\":\".*foo\"/\"4\"))",[]}]}.

%% == Dialyzer ==

{dialyzer,
 [
  %% Store PLT locally inside the project in .rebar (Default)
  {plt_location, local},
  %% Store PLT in custom directory
  {plt_location, "custom_dir"},
  %% Extra apps to include in the PLT
  {plt_extra_apps, [app1, app2]},
  {warnings, [unmatched_returns, error_handling]}
 ]}.
