You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

97 lines
4.0 KiB

7 years ago
7 years ago
7 years ago
  1. %% -*- mode: erlang;erlang-indent-level: 4;indent-tabs-mode: nil -*-
  2. %% ex: ts=4 sw=4 ft=erlang et
  3. {deps, [{erlware_commons, "1.3.1"},
  4. {ssl_verify_fun, "1.1.6"},
  5. {certifi, "2.5.2"},
  6. {parse_trans, "3.3.0"}, % force otp-21 compat
  7. {providers, "1.8.1"},
  8. {getopt, "1.0.1"},
  9. {bbmustache, "1.10.0"},
  10. {relx, "4.0.2"},
  11. {cf, "0.3.1"},
  12. {cth_readable, "1.4.9"},
  13. {eunit_formatters, "0.5.0"}]}.
  14. {post_hooks, [{"(linux|darwin|solaris|freebsd|netbsd|openbsd)",
  15. escriptize,
  16. "cp \"$REBAR_BUILD_DIR/bin/rebar3\" ./rebar3"},
  17. {"win32",
  18. escriptize,
  19. "robocopy \"%REBAR_BUILD_DIR%/bin/\" ./ rebar3* "
  20. "/njs /njh /nfl /ndl & exit /b 0"} % silence things
  21. ]}.
  22. {escript_name, rebar3}.
  23. {escript_wrappers_windows, ["cmd", "powershell"]}.
  24. {escript_comment, "%%Rebar3 3.14.1\n"}.
  25. {escript_emu_args, "%%! +sbtu +A1\n"}.
  26. %% escript_incl_extra is for internal rebar-private use only.
  27. %% Do not use outside rebar. Config interface is not stable.
  28. {escript_incl_extra, [{"relx/priv/templates/*", "_build/default/lib/"},
  29. {"rebar/priv/templates/*", "_build/default/lib/"}]}.
  30. {overrides, [{add, relx, [{erl_opts, [{d, 'RLX_LOG', rebar_log}]}]}]}.
  31. {erl_opts, [{platform_define, "^(19|2)", rand_only},
  32. {platform_define, "^18", no_maps_update_with},
  33. {platform_define, "^2", unicode_str},
  34. {platform_define, "^(2[1-9])|(20\\\\.3)", filelib_find_source},
  35. {platform_define, "^(R|1|20)", fun_stacktrace},
  36. warnings_as_errors
  37. ]}.
  38. {edoc_opts, [preprocess]}.
  39. %% Use OTP 23+ when dialyzing rebar3
  40. {dialyzer, [
  41. {warnings, [unknown]},
  42. {exclude_mods, [rebar_prv_alias]},
  43. {plt_extra_apps, [parsetools, public_key]}
  44. ]}.
  45. %% Keep only the logs of the last 5 runs
  46. {ct_opts, [{keep_logs, 5}]}.
  47. %% Profiles
  48. {profiles, [{test, [
  49. {deps, [{meck, "0.8.13"}]},
  50. {erl_opts, [debug_info, nowarn_export_all]}
  51. ]
  52. },
  53. {systest, [
  54. {erl_opts, [debug_info, nowarn_export_all]},
  55. {ct_opts, [{dir, "systest"}]}
  56. ]},
  57. {bootstrap, []},
  58. {prod, [
  59. {escript_incl_extra, [
  60. {"relx/priv/templates/*", "_build/prod/lib/"},
  61. {"rebar/priv/templates/*", "_build/prod/lib/"}
  62. ]},
  63. {erl_opts, [no_debug_info]},
  64. {overrides, [
  65. {override, erlware_commons, [
  66. {erl_opts, [{platform_define, "^[0-9]+", namespaced_types},
  67. {platform_define, "^R1[4|5]", deprecated_crypto},
  68. {platform_define, "^((1[8|9])|2)", rand_module},
  69. {platform_define, "^2", unicode_str},
  70. {platform_define, "^(R|1|20)", fun_stacktrace},
  71. no_debug_info,
  72. warnings_as_errors]},
  73. {deps, []}, {plugins, []}]},
  74. {add, ssl_verify_hostname, [{erl_opts, [no_debug_info]}]},
  75. {add, certifi, [{erl_opts, [no_debug_info]}]},
  76. {add, cf, [{erl_opts, [no_debug_info]}]},
  77. {add, cth_readable, [{erl_opts, [no_debug_info]}]},
  78. {add, eunit_formatters, [{erl_opts, [no_debug_info]}]},
  79. {override, bbmustache, [
  80. {erl_opts, [no_debug_info, {platform_define, "^[0-9]+", namespaced_types}]},
  81. {deps, []}, {plugins, []}]},
  82. {add, getopt, [{erl_opts, [no_debug_info]}]},
  83. {add, providers, [{erl_opts, [no_debug_info]}]},
  84. {add, relx, [{erl_opts, [no_debug_info]}]}]}
  85. ]}
  86. ]}.