Integrate first QUIC protocol implementation
[vpp.git] / build / external / packages / quicly.mk
diff --git a/build/external/packages/quicly.mk b/build/external/packages/quicly.mk
new file mode 100644 (file)
index 0000000..246c73f
--- /dev/null
@@ -0,0 +1,42 @@
+# Copyright (c) 2019 Cisco and/or its affiliates.
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at:
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+quicly_repository := https://github.com/h2o/quicly.git
+quicly_version := f25b70d37f8974af9cc48a4a565d13a9cdc5fd75
+quicly_patch_dir := $(CURDIR)/patches/quicly
+
+picotls_build_dir := $(B)/build-picotls
+
+define  quicly_build_cmds
+       @cd $(quicly_build_dir) && \
+               cmake -DCMAKE_INSTALL_PREFIX:PATH=$(quicly_install_dir) \
+               $(quicly_src_dir) > $(quicly_build_log)
+       @$(MAKE) $(MAKE_ARGS) -C $(quicly_build_dir) > $(quicly_build_log)
+
+       @mkdir -p $(picotls_build_dir)
+       @cd $(picotls_build_dir) && \
+               cmake -DCMAKE_INSTALL_PREFIX:PATH=$(quicly_install_dir) \
+               $(quicly_src_dir)/deps/picotls > $(quicly_build_log)
+endef
+
+define  quicly_config_cmds
+       @true
+endef
+
+define  quicly_install_cmds
+       @$(MAKE) $(MAKE_ARGS) -C $(quicly_build_dir) install > $(quicly_install_log)
+       @$(MAKE) $(MAKE_ARGS) -C $(picotls_build_dir) install > $(quicly_install_log)
+endef
+
+
+$(eval $(call package,quicly))