rebar.config 3.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. %% This config file is the very basic config to compile emqx
  2. %% This allows emqx to be used as a dependency for other applications
  3. %% such as emqx module/plugin develpments and tests.
  4. %% With the help of EMQ's rebar3 fork, the config is extended
  5. %% with rebar.config.erl module. Final result is written to
  6. %% rebar.config.rendered if environment DEBUG is set.
  7. {edoc_opts, [{preprocess,true}]}.
  8. {erl_opts, [warn_unused_vars,warn_shadow_vars,warn_unused_import,
  9. warn_obsolete_guard,compressed,
  10. {d, snk_kind, msg}]}.
  11. {extra_src_dirs, [{"etc", [{recursive,true}]}]}.
  12. {xref_checks,[undefined_function_calls,undefined_functions,locals_not_used,
  13. deprecated_function_calls,warnings_as_errors,deprecated_functions]}.
  14. {dialyzer, [
  15. {warnings, [unmatched_returns, error_handling]},
  16. {plt_location, "."},
  17. {plt_prefix, "emqx_dialyzer"},
  18. {plt_apps, all_apps},
  19. {statistics, true}
  20. ]
  21. }.
  22. {cover_opts, [verbose]}.
  23. {cover_export_enabled, true}.
  24. {cover_excl_mods, [emqx_exproto_pb, emqx_exhook_pb]}.
  25. {provider_hooks, [{pre, [{release, {relup_helper, gen_appups}}]}]}.
  26. {post_hooks,[]}.
  27. {erl_first_files, ["src/emqx_logger.erl", "src/emqx_rule_actions_trans.erl"]}.
  28. {deps,
  29. [ {gpb, "4.11.2"} %% gpb only used to build, but not for release, pin it here to avoid fetching a wrong version due to rebar plugins scattered in all the deps
  30. , {ehttpc, {git, "https://github.com/emqx/ehttpc", {tag, "0.1.14"}}}
  31. , {eredis_cluster, {git, "https://github.com/emqx/eredis_cluster", {tag, "0.6.5"}}}
  32. , {gproc, {git, "https://github.com/uwiger/gproc", {tag, "0.8.0"}}}
  33. , {jiffy, {git, "https://github.com/emqx/jiffy", {tag, "1.0.5"}}}
  34. , {cowboy, {git, "https://github.com/emqx/cowboy", {tag, "2.8.2"}}}
  35. , {esockd, {git, "https://github.com/emqx/esockd", {tag, "5.8.4"}}}
  36. , {ekka, {git, "https://github.com/emqx/ekka", {tag, "0.8.1.8"}}}
  37. , {gen_rpc, {git, "https://github.com/emqx/gen_rpc", {tag, "2.5.1"}}}
  38. , {cuttlefish, {git, "https://github.com/emqx/cuttlefish", {tag, "v3.3.6"}}}
  39. , {minirest, {git, "https://github.com/emqx/minirest", {tag, "0.3.7"}}}
  40. , {ecpool, {git, "https://github.com/emqx/ecpool", {tag, "0.5.2"}}}
  41. , {replayq, {git, "https://github.com/emqx/replayq", {tag, "0.3.2"}}}
  42. , {pbkdf2, {git, "https://github.com/emqx/erlang-pbkdf2.git", {branch, "2.0.4"}}}
  43. , {emqtt, {git, "https://github.com/emqx/emqtt", {tag, "1.2.3.1"}}}
  44. , {rulesql, {git, "https://github.com/emqx/rulesql", {tag, "0.1.2"}}}
  45. , {recon, {git, "https://github.com/ferd/recon", {tag, "2.5.1"}}}
  46. , {observer_cli, "1.6.1"} % NOTE: depends on recon 2.5.1
  47. , {getopt, "1.0.1"}
  48. , {snabbkaffe, {git, "https://github.com/kafka4beam/snabbkaffe.git", {tag, "0.15.0"}}}
  49. ]}.
  50. {xref_ignores,
  51. [ %% schema registry is for enterprise
  52. {emqx_schema_registry,get_all_schemas,0},
  53. {emqx_schema_api,format_schema,1},
  54. {emqx_schema_api,make_schema_params,1},
  55. {emqx_schema_parser,decode,3},
  56. {emqx_schema_parser,encode,3},
  57. {emqx_schema_registry,add_schema,1},
  58. emqx_exhook_pb, % generated code for protobuf
  59. emqx_exproto_pb % generated code for protobuf
  60. ]}.