%%% -*- Erlang -*-
%%% -*- coding: utf-8 -*-
%%% -*- erlang-indent-level: 2 -*-
%%% -------------------------------------------------------------------
%%% Copyright 2010-2020 Manolis Papadakis <manopapad@gmail.com>,
%%%                     Eirini Arvaniti <eirinibob@gmail.com>
%%%                 and Kostis Sagonas <kostis@cs.ntua.gr>
%%%
%%% This file is part of PropEr.
%%%
%%% PropEr is free software: you can redistribute it and/or modify
%%% it under the terms of the GNU General Public License as published by
%%% the Free Software Foundation, either version 3 of the License, or
%%% (at your option) any later version.
%%%
%%% PropEr is distributed in the hope that it will be useful,
%%% but WITHOUT ANY WARRANTY; without even the implied warranty of
%%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
%%% GNU General Public License for more details.
%%%
%%% You should have received a copy of the GNU General Public License
%%% along with PropEr.  If not, see <http://www.gnu.org/licenses/>.

%%% Author(s):   Manolis Papadakis, Kostis Sagonas
%%% Description: Options for rebar/rebar3

{minimum_otp_vsn, "20.0"}.

{erl_first_files, ["src/vararg.erl"]}.

{eunit_first_files, ["src/vararg.erl",
		     "src/proper_transformer.erl",
		     "src/proper_prop_remover.erl",
		     "src/proper_typeserver.erl"]}.

{erl_opts, [debug_info,
	    report_warnings, {warn_format,1},
	    warn_export_vars, warn_unused_vars,
	    warn_obsolete_guard, warn_unused_import,
	    warn_missing_spec, warn_untyped_record,
	    {platform_define, "^2", 'AT_LEAST_20'}]}.

{profiles,
 [{test,
   [{erl_opts, [nowarn_untyped_record,
                nowarn_missing_spec]},
    {extra_src_dirs, ["examples"]},
    {cover_excl_mods, [proper_array,
                       proper_dict,
                       proper_gb_sets,
                       proper_gb_trees,
                       proper_orddict,
                       proper_ordsets,
                       proper_prop_remover,
                       proper_queue,
                       proper_sets,
                       proper_transformer,
                       proper_unused_imports_remover,
                       vararg]}]}]}.

{post_hooks, [{clean, "./scripts/clean_doc.sh"}]}.

{dialyzer, [{warnings, [unmatched_returns, unknown]},
            {plt_extra_apps, [erts, kernel, stdlib, compiler, crypto, syntax_tools, eunit]}]}.

{plugins, [covertool]}.
{cover_export_enabled, true}.
{covertool, [{coverdata_files, ["eunit.coverdata"]}]}.
