QUIC: Build system update
Download a single tarball with the sources of quicly and its dependencies from github instead of cloning submodules. Change-Id: Id9955565d46f595b3a14ba3408c24045d4acd296 Signed-off-by: Aloys Augustin <aloaugus@cisco.com>
This commit is contained in:
Aloys Augustin
committed by
Dave Wallace
parent
02ad5bc0a8
commit
7cae003a68
3
build/external/Makefile
vendored
3
build/external/Makefile
vendored
@ -30,6 +30,7 @@ I := $(INSTALL_DIR)
|
||||
include packages.mk
|
||||
include packages/nasm.mk
|
||||
include packages/ipsec-mb.mk
|
||||
include packages/quicly.mk
|
||||
include packages/dpdk.mk
|
||||
include packages/rdma-core.mk
|
||||
|
||||
@ -38,7 +39,7 @@ clean:
|
||||
@rm -rf $(B) $(I)
|
||||
|
||||
.PHONY: install
|
||||
install: dpdk-install rdma-core-install
|
||||
install: dpdk-install rdma-core-install quicly-install
|
||||
|
||||
.PHONY: config
|
||||
config: dpdk-config rdma-core-config
|
||||
|
50
build/external/packages/quicly.mk
vendored
Normal file
50
build/external/packages/quicly.mk
vendored
Normal file
@ -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))
|
57
build/external/patches/quicly_0.0.1-vpp/0001-cmake-install.patch
vendored
Normal file
57
build/external/patches/quicly_0.0.1-vpp/0001-cmake-install.patch
vendored
Normal file
@ -0,0 +1,57 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 202cc52..b5c2bee 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -40,6 +40,8 @@ SET(UNITTEST_SOURCE_FILES
|
||||
t/stream-concurrency.c
|
||||
t/test.c)
|
||||
|
||||
+SET(CMAKE_POSITION_INDEPENDENT_CODE ON)
|
||||
+
|
||||
ADD_LIBRARY(quicly ${QUICLY_LIBRARY_FILES})
|
||||
|
||||
ADD_EXECUTABLE(cli ${PICOTLS_OPENSSL_FILES} src/cli.c)
|
||||
@@ -50,6 +52,16 @@ TARGET_LINK_LIBRARIES(test.t quicly ${OPENSSL_LIBRARIES} ${CMAKE_DL_LIBS})
|
||||
|
||||
ADD_EXECUTABLE(udpfw t/udpfw.c)
|
||||
|
||||
+INSTALL (
|
||||
+ DIRECTORY ${CMAKE_SOURCE_DIR}/include/
|
||||
+ DESTINATION include
|
||||
+ FILES_MATCHING PATTERN "*.h")
|
||||
+
|
||||
+INSTALL(TARGETS quicly
|
||||
+ RUNTIME DESTINATION bin
|
||||
+ LIBRARY DESTINATION lib
|
||||
+ ARCHIVE DESTINATION lib)
|
||||
+
|
||||
ADD_CUSTOM_TARGET(check env BINARY_DIR=${CMAKE_CURRENT_BINARY_DIR} prove --exec "sh -c" -v ${CMAKE_CURRENT_BINARY_DIR}/*.t t/*.t
|
||||
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
DEPENDS cli test.t)
|
||||
Submodule deps/picotls contains untracked content
|
||||
Submodule deps/picotls contains modified content
|
||||
diff --git a/deps/picotls/CMakeLists.txt b/deps/picotls/CMakeLists.txt
|
||||
index cda6aad..62b23b7 100644
|
||||
--- a/deps/picotls/CMakeLists.txt
|
||||
+++ b/deps/picotls/CMakeLists.txt
|
||||
@@ -5,6 +5,7 @@ PROJECT(picotls)
|
||||
|
||||
FIND_PACKAGE(PkgConfig REQUIRED)
|
||||
|
||||
+SET(CMAKE_POSITION_INDEPENDENT_CODE ON)
|
||||
SET(CMAKE_C_FLAGS "-std=c99 -Wall -O2 -g ${CC_WARNING_FLAGS} ${CMAKE_C_FLAGS}")
|
||||
INCLUDE_DIRECTORIES(${OPENSSL_INCLUDE_DIR} deps/cifra/src/ext deps/cifra/src deps/micro-ecc deps/picotest include)
|
||||
SET(MINICRYPTO_LIBRARY_FILES
|
||||
@@ -97,3 +98,12 @@ IF (BUILD_FUZZER)
|
||||
|
||||
|
||||
ENDIF()
|
||||
+
|
||||
+INSTALL (DIRECTORY ${CMAKE_SOURCE_DIR}/include/
|
||||
+ DESTINATION include
|
||||
+ FILES_MATCHING PATTERN "*.h")
|
||||
+
|
||||
+INSTALL(TARGETS picotls-core picotls-openssl
|
||||
+ RUNTIME DESTINATION bin
|
||||
+ LIBRARY DESTINATION lib
|
||||
+ ARCHIVE DESTINATION lib)
|
Reference in New Issue
Block a user