Makefile 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. # See LICENSE for licensing information.
  2. PROJECT = ranch
  3. PROJECT_DESCRIPTION = Socket acceptor pool for TCP protocols.
  4. PROJECT_VERSION = 1.7.1
  5. PROJECT_REGISTERED = ranch_server
  6. # Options.
  7. CT_OPTS += -pa test -ct_hooks ranch_ct_hook [] # -boot start_sasl
  8. PLT_APPS = crypto public_key tools
  9. # Dependencies.
  10. LOCAL_DEPS = ssl
  11. DOC_DEPS = asciideck
  12. TEST_DEPS = $(if $(CI_ERLANG_MK),ci.erlang.mk) ct_helper havoc
  13. dep_ct_helper = git https://github.com/ninenines/ct_helper master
  14. dep_havoc = git https://github.com/ankhers/havoc master
  15. # CI configuration.
  16. dep_ci.erlang.mk = git https://github.com/ninenines/ci.erlang.mk master
  17. DEP_EARLY_PLUGINS = ci.erlang.mk
  18. AUTO_CI_OTP ?= OTP-21+
  19. AUTO_CI_HIPE ?= OTP-LATEST
  20. # AUTO_CI_ERLLVM ?= OTP-LATEST
  21. AUTO_CI_WINDOWS ?= OTP-21+
  22. # Standard targets.
  23. include erlang.mk
  24. # Don't run the havoc test suite by default.
  25. ifndef FULL
  26. CT_SUITES := $(filter-out havoc,$(CT_SUITES))
  27. endif
  28. # Compile options.
  29. TEST_ERLC_OPTS += +'{parse_transform, eunit_autoexport}'
  30. # Dialyze the tests.
  31. DIALYZER_OPTS += --src -r test
  32. # Use erl_make_certs from the tested release during CI
  33. # and ensure that ct_helper is always recompiled.
  34. #
  35. # Note that erl_make_certs was removed from OTP-20.1. For now
  36. # we are fine using the most recent version from OTP-20.
  37. ci-setup:: $(DEPS_DIR)/ct_helper
  38. $(gen_verbose) cp ~/.kerl/builds/$(CI_OTP_RELEASE)/otp_src_git/lib/ssl/test/erl_make_certs.erl deps/ct_helper/src/ || true
  39. $(gen_verbose) $(MAKE) -C $(DEPS_DIR)/ct_helper clean app