QUIC: Build system update
[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..018ae72
--- /dev/null
@@ -0,0 +1,50 @@
+# 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_version := 0.0.1-vpp
+quicly_tarball := quicly_$(quicly_version).tar.gz
+quicly_tarball_md5sum := 60367171ece669c620a12ad0ba65edd5
+quicly_tarball_strip_dirs := 1
+quicly_url := https://github.com/vpp-quic/quicly/releases/download/v$(quicly_version)/quicly_$(quicly_version).tar.gz
+
+picotls_build_dir := $(B)/build-picotls
+
+ifneq ($(shell which cmake3),)
+CMAKE?=cmake3
+else
+CMAKE?=cmake
+endif
+
+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))