commit: 16b3a7ddda0b6ba62b26268e3fe46a1926cc5148 Author: Okamura Kazuya <gentoo-guru <AT> danceylove <DOT> net> AuthorDate: Tue Jun 27 14:56:55 2023 +0000 Commit: Okamura Kazuya <trakrailysurely <AT> danceylove <DOT> net> CommitDate: Tue Jun 27 14:56:55 2023 +0000 URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=16b3a7dd
dev-libs/lsquic: new package, add 3.2.0 Signed-off-by: Okamura Kazuya <gentoo-guru <AT> danceylove.net> .../files/disable-lsquic-build-deps-libs.patch | 34 ++++++++++++++++++ .../files/fix-lsquic-boringssl-not-found.patch | 30 ++++++++++++++++ dev-libs/lsquic/lsquic-3.2.0.ebuild | 42 ++++++++++++++++++++++ dev-libs/lsquic/metadata.xml | 11 ++++++ 4 files changed, 117 insertions(+) diff --git a/dev-libs/lsquic/files/disable-lsquic-build-deps-libs.patch b/dev-libs/lsquic/files/disable-lsquic-build-deps-libs.patch new file mode 100644 index 000000000..9a9a14c95 --- /dev/null +++ b/dev-libs/lsquic/files/disable-lsquic-build-deps-libs.patch @@ -0,0 +1,34 @@ +--- a/src/liblsquic/CMakeLists.txt ++++ b/src/liblsquic/CMakeLists.txt +@@ -1,6 +1,6 @@ + # Copyright (c) 2017 - 2022 LiteSpeed Technologies Inc. See LICENSE. + SET(lsquic_STAT_SRCS +- ls-qpack/lsqpack.c ++# ls-qpack/lsqpack.c + lsquic_adaptive_cc.c + lsquic_alarmset.c + lsquic_arr.c +@@ -100,10 +100,10 @@ IF(PROJECT_NAME STREQUAL "openlitespeed") + INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/spdy) + ELSE() + INCLUDE_DIRECTORIES(../lshpack) +- SET(lsquic_STAT_SRCS ${lsquic_STAT_SRCS} +- lsquic_xxhash.c +- ../lshpack/lshpack.c +- ) ++# SET(lsquic_STAT_SRCS ${lsquic_STAT_SRCS} ++# lsquic_xxhash.c ++# ../lshpack/lshpack.c ++# ) + ENDIF() + + ADD_CUSTOM_COMMAND( +@@ -119,6 +119,8 @@ SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DXXH_HEADER_NAME=\\\"lsquic_xxhash.h\\\"") + SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DLSQPACK_ENC_LOGGER_HEADER=\\\"lsquic_qpack_enc_logger.h\\\"") + SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DLSQPACK_DEC_LOGGER_HEADER=\\\"lsquic_qpack_dec_logger.h\\\"") + ++link_libraries(ls-qpack ls-hpack) ++ + if(NEED_LIBRT_FOR_clock_getres) + target_link_libraries(lsquic PRIVATE ${RT_LIBRARY}) + endif() diff --git a/dev-libs/lsquic/files/fix-lsquic-boringssl-not-found.patch b/dev-libs/lsquic/files/fix-lsquic-boringssl-not-found.patch new file mode 100644 index 000000000..691edf238 --- /dev/null +++ b/dev-libs/lsquic/files/fix-lsquic-boringssl-not-found.patch @@ -0,0 +1,30 @@ +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -154,7 +154,7 @@ ENDIF() + + IF (NOT DEFINED BORINGSSL_INCLUDE AND DEFINED BORINGSSL_DIR) + FIND_PATH(BORINGSSL_INCLUDE NAMES openssl/ssl.h +- PATHS ${BORINGSSL_DIR}/include ++ PATHS ${BORINGSSL_DIR}/include/boringssl + NO_DEFAULT_PATH) + ENDIF() + # This must be done before adding other include directories to take +--- a/bin/CMakeLists.txt ++++ b/bin/CMakeLists.txt +@@ -1,5 +1,6 @@ + # Copyright (c) 2017 - 2022 LiteSpeed Technologies Inc. See LICENSE. + ++link_directories("/usr/lib64/boringssl") + include_directories(${CMAKE_CURRENT_BINARY_DIR}) + LIST(APPEND LIBS ${EVENT_LIB}) + +--- a/src/liblsquic/CMakeLists.txt ++++ b/src/liblsquic/CMakeLists.txt +@@ -94,6 +94,7 @@ IF(NOT MSVC) + set_source_files_properties(ls-qpack/lsqpack.c PROPERTIES COMPILE_FLAGS ${QPACK_FLAGS}) + ENDIF() + ++link_directories(/usr/lib64/boringssl) + include_directories(ls-qpack) + + IF(PROJECT_NAME STREQUAL "openlitespeed") diff --git a/dev-libs/lsquic/lsquic-3.2.0.ebuild b/dev-libs/lsquic/lsquic-3.2.0.ebuild new file mode 100644 index 000000000..a3942c957 --- /dev/null +++ b/dev-libs/lsquic/lsquic-3.2.0.ebuild @@ -0,0 +1,42 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake git-r3 + +DESCRIPTION="LiteSpeed QUIC (LSQUIC) Library" +HOMEPAGE="https://github.com/litespeedtech/lsquic/" +EGIT_REPO_URI="https://github.com/litespeedtech/lsquic/" +EGIT_COMMIT="3bbf683f25ab84826951350c57ae226c88c54422" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64" +IUSE="static-libs" + +DEPEND=" + dev-libs/boringssl-fips:=[static-libs=] +" + +PATCHES=( + "${FILESDIR}"/disable-${PN}-build-deps-libs.patch + "${FILESDIR}"/fix-${PN}-boringssl-not-found.patch +) + +src_configure() { + local mycmakeargs=( + -DLSQUIC_SHARED_LIB=$(usex !static-libs) + -DBORINGSSL_DIR=/usr + -DBORINGSSL_LIB_ssl=ssl + -DBORINGSSL_LIB_crypto=crypto + ) + cmake_src_configure +} + +pkg_preinst() { + mkdir -p ${D}/usr/include/liblsquic/ + cp -a ${S}/src/liblsquic/lsquic_logger.h ${D}/usr/include/liblsquic/ + cp -a ${S}/src/liblsquic/lsquic_stock_shi.h ${D}/usr/include/liblsquic/ + cp -a ${S}/src/liblsquic/lsquic_shared_support.h ${D}/usr/include/ +} diff --git a/dev-libs/lsquic/metadata.xml b/dev-libs/lsquic/metadata.xml new file mode 100644 index 000000000..a233f9e7f --- /dev/null +++ b/dev-libs/lsquic/metadata.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>gentoo-g...@danceylove.net</email> + <name>Okamura Kazuya</name> + </maintainer> + <upstream> + <remote-id type="github">litespeedtech/lsquic</remote-id> + </upstream> +</pkgmetadata>