From e860cdcf5935c3a169f050e613312bb265121c7c Mon Sep 17 00:00:00 2001 From: Takuya Wakazono Date: Sun, 2 Feb 2025 17:27:45 +0900 Subject: [PATCH] dev-libs/ls-qpack: add 2.6.0 Signed-off-by: Takuya Wakazono --- dev-libs/ls-qpack/Manifest | 1 + .../files/ls-qpack-2.6.0-fix-rpath.patch | 26 ++++++++++++++ dev-libs/ls-qpack/ls-qpack-2.6.0.ebuild | 35 +++++++++++++++++++ dev-libs/ls-qpack/metadata.xml | 3 ++ 4 files changed, 65 insertions(+) create mode 100644 dev-libs/ls-qpack/files/ls-qpack-2.6.0-fix-rpath.patch create mode 100644 dev-libs/ls-qpack/ls-qpack-2.6.0.ebuild diff --git a/dev-libs/ls-qpack/Manifest b/dev-libs/ls-qpack/Manifest index d631a08307..c620ca3661 100644 --- a/dev-libs/ls-qpack/Manifest +++ b/dev-libs/ls-qpack/Manifest @@ -1 +1,2 @@ DIST ls-qpack-2.5.4.gh.tar.gz 708563 BLAKE2B 780e26e54d78f74cd5ce88073b4c34b5b34abbab0314bf4b39ce47a20433e6ccae093ee030c69ce83e6b71ce416b57956550cabbf11fa6d36cc7309426c81d7d SHA512 7677f673b4b23a68ad5e899706f17536777b30d7e91c63d3ea97504a6a2885cf7f431c191ac0581631723151050f914ec31bcb84e2b6e3fcdf4140cde0a18063 +DIST ls-qpack-2.6.0.gh.tar.gz 709165 BLAKE2B e4fa906b30c29bfcb1c9ba4fee2a6c969962ef5d1de8f57d6c56a28ceacf70ad0bd75e9841d182745ca99b79c6dccf559ebf8dfeb767d8728f7552f2cdb16480 SHA512 951056564be6f2a2562001ad1a83731df41a1c8b8d91bf44e138c962befe2af1919daf0d94b57b05b49bb83656334c00ed2c642d81075f1e0cece1a46b31006b diff --git a/dev-libs/ls-qpack/files/ls-qpack-2.6.0-fix-rpath.patch b/dev-libs/ls-qpack/files/ls-qpack-2.6.0-fix-rpath.patch new file mode 100644 index 0000000000..380e6a5174 --- /dev/null +++ b/dev-libs/ls-qpack/files/ls-qpack-2.6.0-fix-rpath.patch @@ -0,0 +1,26 @@ +https://github.com/litespeedtech/ls-qpack/pull/75 +Fix binary rpath handling + +Binaries should be installed using `install(TARGETS)` instead of +`install(FILES)`, so that CMake properly handles runtime path stripping. +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -147,12 +147,12 @@ install(FILES lsqpack.h lsxpack_header.h + DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) + + if(LSQPACK_BIN) +- install(FILES +- ${CMAKE_CURRENT_BINARY_DIR}/bin/encode-int +- ${CMAKE_CURRENT_BINARY_DIR}/bin/fuzz-decode +- ${CMAKE_CURRENT_BINARY_DIR}/bin/interop-decode +- ${CMAKE_CURRENT_BINARY_DIR}/bin/interop-encode +- DESTINATION ${CMAKE_INSTALL_BINDIR}) ++ install(TARGETS ++ encode-int ++ fuzz-decode ++ interop-decode ++ interop-encode ++ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) + endif() + + if(WIN32 OR EMSCRIPTEN) diff --git a/dev-libs/ls-qpack/ls-qpack-2.6.0.ebuild b/dev-libs/ls-qpack/ls-qpack-2.6.0.ebuild new file mode 100644 index 0000000000..a8b4e3aea0 --- /dev/null +++ b/dev-libs/ls-qpack/ls-qpack-2.6.0.ebuild @@ -0,0 +1,35 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake + +DESCRIPTION="QPACK compression library for use with HTTP/3" +HOMEPAGE="https://github.com/litespeedtech/ls-qpack/" +SRC_URI="https://github.com/litespeedtech/${PN}/archive/v${PV}.tar.gz -> ${P}.gh.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm64" +IUSE="static-libs test tools" +RESTRICT="!test? ( test )" + +PATCHES=( + "${FILESDIR}/${P}-fix-rpath.patch" +) + +src_prepare() { + cmake_src_prepare + # fix test cases path + sed -i "s|\.\./\.\.|${S}|" test/test_dyn_table_cap_mismatch.c || die +} + +src_configure() { + local mycmakeargs=( + -DBUILD_SHARED_LIBS=$(usex !static-libs) + -DLSQPACK_BIN=$(usex tools) + -DLSQPACK_TESTS=$(usex test) + ) + cmake_src_configure +} diff --git a/dev-libs/ls-qpack/metadata.xml b/dev-libs/ls-qpack/metadata.xml index 381a71ee4c..a78138fb1f 100644 --- a/dev-libs/ls-qpack/metadata.xml +++ b/dev-libs/ls-qpack/metadata.xml @@ -8,4 +8,7 @@ litespeedtech/ls-qpack + + Build testing tools +