aboutsummaryrefslogtreecommitdiffstats
path: root/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile38
1 files changed, 32 insertions, 6 deletions
diff --git a/Makefile b/Makefile
index 5e88acf..1ac7f2c 100644
--- a/Makefile
+++ b/Makefile
@@ -2,21 +2,27 @@
PROJECT = cowboy
PROJECT_DESCRIPTION = Small, fast, modern HTTP server.
-PROJECT_VERSION = 2.12.0
+PROJECT_VERSION = 2.13.0
PROJECT_REGISTERED = cowboy_clock
# Options.
PLT_APPS = public_key ssl # ct_helper gun common_test inets
CT_OPTS += -ct_hooks cowboy_ct_hook [] # -boot start_sasl
+#CT_OPTS += +JPperf true +S 1
# Dependencies.
LOCAL_DEPS = crypto
DEPS = cowlib ranch
-dep_cowlib = git https://github.com/ninenines/cowlib 2.13.0
-dep_ranch = git https://github.com/ninenines/ranch 1.8.0
+dep_cowlib = git https://github.com/ninenines/cowlib master
+dep_ranch = git https://github.com/ninenines/ranch 1.8.1
+
+ifeq ($(COWBOY_QUICER),1)
+DEPS += quicer
+dep_quicer = git https://github.com/emqx/quic main
+endif
DOC_DEPS = asciideck
@@ -38,14 +44,17 @@ define HEX_TARBALL_EXTRA_METADATA
#{
licenses => [<<"ISC">>],
links => #{
- <<"User guide">> => <<"https://ninenines.eu/docs/en/cowboy/2.12/guide/">>,
- <<"Function reference">> => <<"https://ninenines.eu/docs/en/cowboy/2.12/manual/">>,
+ <<"User guide">> => <<"https://ninenines.eu/docs/en/cowboy/2.13/guide/">>,
+ <<"Function reference">> => <<"https://ninenines.eu/docs/en/cowboy/2.13/manual/">>,
<<"GitHub">> => <<"https://github.com/ninenines/cowboy">>,
<<"Sponsor">> => <<"https://github.com/sponsors/essen">>
}
}
endef
+hex_req_ranch = >= 1.8.0 and < 3.0.0
+hex_req_cowlib = >= 2.14.0 and < 3.0.0
+
# Standard targets.
include erlang.mk
@@ -53,7 +62,13 @@ include erlang.mk
# Don't run the examples/autobahn test suites by default.
ifndef FULL
-CT_SUITES := $(filter-out examples ws_autobahn,$(CT_SUITES))
+CT_SUITES := $(filter-out examples http_perf ws_autobahn ws_perf,$(CT_SUITES))
+endif
+
+# Don't run HTTP/3 test suites on Windows.
+
+ifeq ($(PLATFORM),msys2)
+CT_SUITES := $(filter-out rfc9114 rfc9204 rfc9220,$(CT_SUITES))
endif
# Compile options.
@@ -61,10 +76,20 @@ endif
ERLC_OPTS += +warn_missing_spec +warn_untyped_record # +bin_opt_info
TEST_ERLC_OPTS += +'{parse_transform, eunit_autoexport}'
+ifeq ($(COWBOY_QUICER),1)
+ERLC_OPTS += -D COWBOY_QUICER=1
+TEST_ERLC_OPTS += -D COWBOY_QUICER=1
+endif
+
# Generate rebar.config on build.
app:: rebar.config
+# Fix quicer compilation for HTTP/3.
+
+autopatch-quicer::
+ $(verbose) printf "%s\n" "all: ;" > $(DEPS_DIR)/quicer/c_src/Makefile.erlang.mk
+
# Dialyze the tests.
#DIALYZER_OPTS += --src -r test
@@ -113,6 +138,7 @@ prepare_tag:
$(verbose) echo "Dependencies:"
$(verbose) grep ^DEPS Makefile || echo "DEPS ="
$(verbose) grep ^dep_ Makefile || true
+ $(verbose) grep ^hex_req_ Makefile || true
$(verbose) echo
$(verbose) echo "rebar.config:"
$(verbose) cat rebar.config || true