Date: Sun, 15 Nov 2020 17:54:58 +0000 (UTC) From: Sunpoet Po-Chuan Hsieh <sunpoet@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r555241 - in head/www: . ls-qpack ls-qpack/files Message-ID: <202011151754.0AFHswr6001471@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: sunpoet Date: Sun Nov 15 17:54:57 2020 New Revision: 555241 URL: https://svnweb.freebsd.org/changeset/ports/555241 Log: Add ls-qpack 2.2.1 QPACK is the compression mechanism used by HTTP/3 to compress HTTP headers. It is in the process of being standardazed by the QUIC Working Group. The QPACK Internet-Draft is has been stable for some time and we don't expect functional changes to it before the final RFC is released. ls-qpack is a full-featured, tested, and fast QPACK library. The QPACK encoder produces excellent compression results based on an innovative mnemonic technique (to be described in a future article). It boasts the fastest Huffman encoder and decoder. The library is production quality. It is used in OpenLiteSpeed, LiteSpeed Web Server, and LiteSpeed Web ADC. WWW: https://github.com/litespeedtech/ls-qpack Added: head/www/ls-qpack/ head/www/ls-qpack/Makefile (contents, props changed) head/www/ls-qpack/distinfo (contents, props changed) head/www/ls-qpack/files/ head/www/ls-qpack/files/patch-CMakeLists.txt (contents, props changed) head/www/ls-qpack/files/patch-bin-CMakeLists.txt (contents, props changed) head/www/ls-qpack/files/patch-bin-interop-decode.c (contents, props changed) head/www/ls-qpack/pkg-descr (contents, props changed) head/www/ls-qpack/pkg-plist (contents, props changed) Modified: head/www/Makefile Modified: head/www/Makefile ============================================================================== --- head/www/Makefile Sun Nov 15 17:50:50 2020 (r555240) +++ head/www/Makefile Sun Nov 15 17:54:57 2020 (r555241) @@ -315,6 +315,7 @@ SUBDIR += ljdeps SUBDIR += logswan SUBDIR += logtools + SUBDIR += ls-qpack SUBDIR += lua-resty-core SUBDIR += lua-resty-lrucache SUBDIR += luakit Added: head/www/ls-qpack/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/www/ls-qpack/Makefile Sun Nov 15 17:54:57 2020 (r555241) @@ -0,0 +1,39 @@ +# Created by: Po-Chuan Hsieh <sunpoet@FreeBSD.org> +# $FreeBSD$ + +PORTNAME= ls-qpack +PORTVERSION= 2.2.1 +DISTVERSIONPREFIX= v +CATEGORIES= www + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= QPACK compression library for use with HTTP/3 + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE + +LIB_DEPENDS= libxxhash.so:devel/xxhash + +USES= cmake + +CMAKE_OFF= LSQPACK_TESTS +CMAKE_ON= BUILD_SHARED_LIBS LSQPACK_BIN LSQPACK_XXH + +GH_ACCOUNT= litespeedtech +USE_GITHUB= yes + +post-patch: +# Clean up bundled libraries + @${RM} -fr ${WRKSRC}/deps/ + +do-install: + ${INSTALL_PROGRAM} ${INSTALL_WRKSRC}/bin/encode-int ${STAGEDIR}${PREFIX}/bin/ + ${INSTALL_PROGRAM} ${INSTALL_WRKSRC}/bin/fuzz-decode ${STAGEDIR}${PREFIX}/bin/ + ${INSTALL_PROGRAM} ${INSTALL_WRKSRC}/bin/interop-decode ${STAGEDIR}${PREFIX}/bin/ + ${INSTALL_PROGRAM} ${INSTALL_WRKSRC}/bin/interop-encode ${STAGEDIR}${PREFIX}/bin/ + ${INSTALL_DATA} ${WRKSRC}/huff-tables.h ${STAGEDIR}${PREFIX}/include/ + ${INSTALL_DATA} ${WRKSRC}/lsqpack.h ${STAGEDIR}${PREFIX}/include/ + ${INSTALL_DATA} ${WRKSRC}/lsxpack_header.h ${STAGEDIR}${PREFIX}/include/ + ${INSTALL_LIB} ${INSTALL_WRKSRC}/libls-qpack.so ${STAGEDIR}${PREFIX}/lib/ + +.include <bsd.port.mk> Added: head/www/ls-qpack/distinfo ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/www/ls-qpack/distinfo Sun Nov 15 17:54:57 2020 (r555241) @@ -0,0 +1,3 @@ +TIMESTAMP = 1605426299 +SHA256 (litespeedtech-ls-qpack-v2.2.1_GH0.tar.gz) = 4c0419ce49cea00546c23785e90d45c1661ffa7c948c1d693f705c7a2cd45230 +SIZE (litespeedtech-ls-qpack-v2.2.1_GH0.tar.gz) = 705219 Added: head/www/ls-qpack/files/patch-CMakeLists.txt ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/www/ls-qpack/files/patch-CMakeLists.txt Sun Nov 15 17:54:57 2020 (r555241) @@ -0,0 +1,16 @@ +--- CMakeLists.txt.orig 2020-05-28 18:23:09 UTC ++++ CMakeLists.txt +@@ -20,9 +20,11 @@ add_library(ls-qpack "") + target_include_directories(ls-qpack PUBLIC .) + target_sources(ls-qpack PRIVATE lsqpack.c) + +-target_include_directories(ls-qpack PRIVATE deps/xxhash/) + if(LSQPACK_XXH) +- target_sources(ls-qpack PRIVATE deps/xxhash/xxhash.c) ++ find_path(XXHASH_INCLUDE_DIR xxhash.h) ++ find_library(XXHASH_LIBRARY xxhash) ++ include_directories(${XXHASH_INCLUDE_DIR}) ++ link_libraries(${XXHASH_LIBRARY}) + endif() + + if(MSVC) Added: head/www/ls-qpack/files/patch-bin-CMakeLists.txt ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/www/ls-qpack/files/patch-bin-CMakeLists.txt Sun Nov 15 17:54:57 2020 (r555241) @@ -0,0 +1,12 @@ +--- bin/CMakeLists.txt.orig 2020-05-28 18:23:09 UTC ++++ bin/CMakeLists.txt +@@ -2,8 +2,7 @@ function(lsqpack_add_executable TARGET) + add_executable(${TARGET} "") + target_link_libraries(${TARGET} PRIVATE ls-qpack) + +- target_sources(${TARGET} PRIVATE ${TARGET}.c ../deps/xxhash/xxhash.c) +- target_include_directories(${TARGET} PRIVATE ../deps/xxhash) ++ target_sources(${TARGET} PRIVATE ${TARGET}.c) + + if(MSVC) + target_include_directories(${TARGET} PRIVATE ../wincompat) Added: head/www/ls-qpack/files/patch-bin-interop-decode.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/www/ls-qpack/files/patch-bin-interop-decode.c Sun Nov 15 17:54:57 2020 (r555241) @@ -0,0 +1,11 @@ +--- bin/interop-decode.c.orig 2020-05-28 18:23:09 UTC ++++ bin/interop-decode.c +@@ -41,7 +41,7 @@ + + #include "lsqpack.h" + #include "lsxpack_header.h" +-#include "xxhash.h" ++#include <xxhash.h> + #ifndef DEBUG + #include "lsqpack-test.h" + #endif Added: head/www/ls-qpack/pkg-descr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/www/ls-qpack/pkg-descr Sun Nov 15 17:54:57 2020 (r555241) @@ -0,0 +1,14 @@ +QPACK is the compression mechanism used by HTTP/3 to compress HTTP headers. It +is in the process of being standardazed by the QUIC Working Group. The QPACK +Internet-Draft is has been stable for some time and we don't expect functional +changes to it before the final RFC is released. + +ls-qpack is a full-featured, tested, and fast QPACK library. The QPACK encoder +produces excellent compression results based on an innovative mnemonic technique +(to be described in a future article). It boasts the fastest Huffman encoder and +decoder. + +The library is production quality. It is used in OpenLiteSpeed, LiteSpeed Web +Server, and LiteSpeed Web ADC. + +WWW: https://github.com/litespeedtech/ls-qpack Added: head/www/ls-qpack/pkg-plist ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/www/ls-qpack/pkg-plist Sun Nov 15 17:54:57 2020 (r555241) @@ -0,0 +1,8 @@ +bin/encode-int +bin/fuzz-decode +bin/interop-decode +bin/interop-encode +include/huff-tables.h +include/lsqpack.h +include/lsxpack_header.h +lib/libls-qpack.so
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202011151754.0AFHswr6001471>