commit:     3dbe9ae69b369fc6dba4e7882edb3cdd248ad37e
Author:     Giuseppe Foti <foti.giuseppe <AT> gmail <DOT> com>
AuthorDate: Sun Sep  7 08:25:39 2025 +0000
Commit:     Florian Schmaus <flow <AT> gentoo <DOT> org>
CommitDate: Sat Sep 13 15:03:00 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3dbe9ae6

net-analyzer/gvm-libs: add 22.28.0

Signed-off-by: Giuseppe Foti <foti.giuseppe <AT> gmail.com>
Part-of: https://github.com/gentoo/gentoo/pull/43698
Closes: https://github.com/gentoo/gentoo/pull/43698
Signed-off-by: Florian Schmaus <flow <AT> gentoo.org>

 net-analyzer/gvm-libs/Manifest                     |   1 +
 ...vm-libs-22.28.0-add-missing-link-to-cjson.patch |  13 ++
 .../gvm-libs-22.28.0-remove-unworking-tests.patch  | 206 +++++++++++++++++++++
 net-analyzer/gvm-libs/gvm-libs-22.28.0.ebuild      | 132 +++++++++++++
 4 files changed, 352 insertions(+)

diff --git a/net-analyzer/gvm-libs/Manifest b/net-analyzer/gvm-libs/Manifest
index e2f9dcc970ad..759fd972205c 100644
--- a/net-analyzer/gvm-libs/Manifest
+++ b/net-analyzer/gvm-libs/Manifest
@@ -2,3 +2,4 @@ DIST gvm-libs-22.11.0.tar.gz 331231 BLAKE2B 
0dbd92f1d87b711a08941851dea7044d4d28
 DIST gvm-libs-22.15.1.tar.gz 360077 BLAKE2B 
46d8bc6f701afd8d8b78004f67e13b4a2472e4ab872fd8c1cc5b870b09a21582979d0167c5d4623979d2628535c21d9c9f5201ff2d080afcd184e5ee9ae5daff
 SHA512 
1d57cd1614100c3c24e3bc291a0d00c10e988830bf25fb1bb35632759d05ca62688ae19a7169d702f6e79547cbcddf687f03a18e54ecae7eff78ce2c90107e89
 DIST gvm-libs-22.21.0.tar.gz 370293 BLAKE2B 
b539569a1cbacc30d4ac74b00f2a51f4b3852437a0ff17f1923ac72f472bc9a0abd97d75dcf4b320622a98b2d610569dfb48505dd888391c1ddfe81b6a45320d
 SHA512 
e547da2ad274ab4c63431f48570e5e540bbd5b2d40cf4f4f3b652f0be89d7a52ec3926dfea9df937b2bb2c262e4a64f5ddab68c9bcf3110aae476b1e484e438f
 DIST gvm-libs-22.23.0.tar.gz 385838 BLAKE2B 
4ed3456b2949fd82a1f0b72e212ded5bd843c2c5466a37899fe14c7df1f19817bd41e8bb41162fab6fc6e8b53bcb8e2ad399f6be6baa0816fd1b3a68cd7b8677
 SHA512 
16d5562a74b1f6587b1dc7a42fa309873e725cd53216ed02b625cdaf0fdd8fdc8fb8956feae00bd9494f3f5480dee96c9133096425339212c70c409f83c7dfc8
+DIST gvm-libs-22.28.0.tar.gz 399457 BLAKE2B 
4fbe6a8b0b2a70af7c209691d2f406df63f4566a2ac620e85d2b62e489312da079865c0f43abbdee7c1f955122816cfba78de3e450e6d90a607473842a87d584
 SHA512 
bbe0942c8ba1d45d847724bef59c55d7040c1460ff9438fc0fa8d28e4d2178605a4910f7cce08139f1aa1bf638622ecf1d2030c35f5b83639a21473aca6f4f6e

diff --git 
a/net-analyzer/gvm-libs/files/gvm-libs-22.28.0-add-missing-link-to-cjson.patch 
b/net-analyzer/gvm-libs/files/gvm-libs-22.28.0-add-missing-link-to-cjson.patch
new file mode 100644
index 000000000000..41c52c8b4855
--- /dev/null
+++ 
b/net-analyzer/gvm-libs/files/gvm-libs-22.28.0-add-missing-link-to-cjson.patch
@@ -0,0 +1,13 @@
+# Upstream: https://github.com/greenbone/gvm-libs/pull/961
+# Fix build error on clang with  -Wl,--no-allow-shlib-undefined
+
+--- a/http_scanner/CMakeLists.txt
++++ b/http_scanner/CMakeLists.txt
+@@ -67,6 +67,7 @@ if(BUILD_SHARED)
+       gvm_util_shared
+       ${GLIB_LDFLAGS}
+       ${CURL_LDFLAGS}
++      ${CJSON_LDFLAGS}
+       ${LINKER_HARDENING_FLAGS}
+   )
+ endif(BUILD_SHARED)

diff --git 
a/net-analyzer/gvm-libs/files/gvm-libs-22.28.0-remove-unworking-tests.patch 
b/net-analyzer/gvm-libs/files/gvm-libs-22.28.0-remove-unworking-tests.patch
new file mode 100644
index 000000000000..4f42143e9598
--- /dev/null
+++ b/net-analyzer/gvm-libs/files/gvm-libs-22.28.0-remove-unworking-tests.patch
@@ -0,0 +1,206 @@
+# Remove tests that don't work in the network sandbox
+
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -230,27 +230,27 @@ if(BUILD_TESTS AND NOT SKIP_SRC)
+   set(
+     TESTS
+     array-test
+-    boreas-alivedetection-test
+-    boreas-cli-test
++    #boreas-alivedetection-test
++    #boreas-cli-test
+     boreas-error-test
+     boreas-io-test
+-    boreas-ping-test
+-    boreas-sniffer-test
++    #boreas-ping-test
++    #boreas-sniffer-test
+     compressutils-test
+     cpeutils-test
+     cvss-test
+     hosts-test
+     json-test
+     jsonpull-test
+-    logging-test
++    #logging-test
+     logging-domain-test
+-    networking-test
++    #networking-test
+     nvti-test
+     osp-test
+     passwordbasedauthentication-test
+     streamvalidator-test
+     test-hosts
+-    util-test
++    #util-test
+     version-test
+     versionutils-test
+     xmlutils-test
+@@ -266,11 +266,11 @@ if(BUILD_TESTS AND NOT SKIP_SRC)
+       vtparser-test
+     )
+   endif(OPENVASD)
+-
++#[===[
+   if(ENABLE_AGENTS)
+     list(APPEND TESTS agent-controller-test)
+   endif(ENABLE_AGENTS)
+-
++]===]
+   add_custom_target(tests DEPENDS ${TESTS})
+ 
+   # Code coverage
+--- a/agent_controller/CMakeLists.txt
++++ b/agent_controller/CMakeLists.txt
+@@ -58,6 +58,7 @@ endif()
+ ## Tests
+ 
+ if(BUILD_TESTS)
++#[===[
+   add_unit_test(
+     agent-controller-test
+     agent_controller_tests.c
+@@ -69,6 +70,7 @@ if(BUILD_TESTS)
+     ${CURL_LDFLAGS}
+     ${LINKER_HARDENING_FLAGS}
+   )
++]===]
+ endif()
+ 
+ ## Install
+--- a/base/CMakeLists.txt
++++ b/base/CMakeLists.txt
+@@ -134,6 +134,7 @@ if(BUILD_TESTS)
+     NETWORKING_TEST_LINKER_WRAP_OPTIONS
+     "-Wl,-wrap,g_io_channel_new_file,-wrap,g_io_channel_shutdown"
+   )
++#[===[
+   add_unit_test(
+     networking-test
+     networking_tests.c
+@@ -143,6 +144,7 @@ if(BUILD_TESTS)
+     ${LINKER_HARDENING_FLAGS}
+     ${NETWORKING_TEST_LINKER_WRAP_OPTIONS}
+   )
++]===]
+   add_unit_test(
+     pwpolicy-test
+     pwpolicy_tests.c
+@@ -176,6 +178,7 @@ if(BUILD_TESTS)
+     ${GLIB_LDFLAGS}
+     ${LINKER_HARDENING_FLAGS}
+   )
++#[===[
+   add_unit_test(
+     logging-test
+     logging_tests.c
+@@ -183,6 +186,7 @@ if(BUILD_TESTS)
+     ${GLIB_LDFLAGS}
+     ${LINKER_HARDENING_FLAGS}
+   )
++]===]
+ endif(BUILD_TESTS)
+ 
+ ## Install
+--- a/boreas/CMakeLists.txt
++++ b/boreas/CMakeLists.txt
+@@ -136,6 +136,7 @@ set(LIBGVM_BOREAS_NAME ${LIBGVM_BOREAS_NAME} PARENT_SCOPE)
+ ## Tests
+ 
+ if(BUILD_TESTS)
++#[===[
+   add_unit_test(
+     boreas-alivedetection-test
+     alivedetection_tests.c
+@@ -148,6 +149,7 @@ if(BUILD_TESTS)
+     ${LINKER_HARDENING_FLAGS}
+     ${CMAKE_THREAD_LIBS_INIT}
+   )
++]===]
+   add_unit_test(
+     boreas-error-test
+     boreas_error_tests.c
+@@ -167,6 +169,7 @@ if(BUILD_TESTS)
+     ${LINKER_HARDENING_FLAGS}
+     ${CMAKE_THREAD_LIBS_INIT}
+   )
++#[===[
+   add_unit_test(
+     boreas-cli-test
+     cli_tests.c
+@@ -202,8 +205,9 @@ if(BUILD_TESTS)
+     ${LINKER_HARDENING_FLAGS}
+     ${CMAKE_THREAD_LIBS_INIT}
+   )
+-
++]===]
+   set(UTIL_TEST_LINKER_WRAP_OPTIONS "-Wl,-wrap,socket,-wrap,setsockopt")
++#[===[
+   add_unit_test(
+     util-test
+     util_tests.c
+@@ -213,6 +217,7 @@ if(BUILD_TESTS)
+     ${CMAKE_THREAD_LIBS_INIT}
+     ${UTIL_TEST_LINKER_WRAP_OPTIONS}
+   )
++]===]
+ endif(BUILD_TESTS)
+ 
+ ## Install
+--- a/cmake/MacroAddUnitTest.cmake
++++ b/cmake/MacroAddUnitTest.cmake
+@@ -2,12 +2,12 @@ macro(add_unit_test _testName _testSource)
+   add_executable(${_testName} ${_testSource})
+   target_link_libraries(${_testName} ${CGREEN_LIBRARIES} ${ARGN})
+   target_include_directories(${_testName} PRIVATE ${CGREEN_INCLUDE_DIRS})
+-  target_compile_options(${_testName} PRIVATE "-fsanitize=address")
+-  target_link_options(${_testName} PRIVATE "-fsanitize=address")
++#  target_compile_options(${_testName} PRIVATE "-fsanitize=address")
++#  target_link_options(${_testName} PRIVATE "-fsanitize=address")
+   add_test(NAME ${_testName} COMMAND ${CMAKE_CURRENT_BINARY_DIR}/${_testName})
+-  set_tests_properties(
+-    ${_testName}
+-    PROPERTIES
+-      ENVIRONMENT 
"ASAN_OPTIONS=detect_leaks=1:halt_on_error=1:abort_on_error=1"
+-  )
++#  set_tests_properties(
++#    ${_testName}
++#    PROPERTIES
++#      ENVIRONMENT 
"ASAN_OPTIONS=detect_leaks=1:halt_on_error=1:abort_on_error=1"
++#  )
+ endmacro()
+--- a/util/CMakeLists.txt
++++ b/util/CMakeLists.txt
+@@ -258,6 +258,7 @@ if(BUILD_TESTS)
+     ${UUID_LDFLAGS}
+     ${LINKER_HARDENING_FLAGS}
+   )
++#[===[
+   add_unit_test(
+     mqtt-test
+     mqtt_tests.c
+@@ -268,6 +269,7 @@ if(BUILD_TESTS)
+     ${UUID_LDFLAGS}
+     ${LINKER_HARDENING_FLAGS}
+   )
++]===]
+   add_unit_test(
+     kb-test
+     kb_tests.c
+@@ -276,6 +278,7 @@ if(BUILD_TESTS)
+     ${REDIS_LDFLAGS}
+     ${LINKER_HARDENING_FLAGS}
+   )
++#[===[
+   add_unit_test(
+     radiusutils-test
+     radiusutils_tests.c
+@@ -295,6 +298,7 @@ if(BUILD_TESTS)
+     ${GNUTLS_LDFLAGS}
+     ${LINKER_HARDENING_FLAGS}
+   )
++]===]
+   add_unit_test(
+     streamvalidator-test
+     streamvalidator_tests.c

diff --git a/net-analyzer/gvm-libs/gvm-libs-22.28.0.ebuild 
b/net-analyzer/gvm-libs/gvm-libs-22.28.0.ebuild
new file mode 100644
index 000000000000..9870703e51e5
--- /dev/null
+++ b/net-analyzer/gvm-libs/gvm-libs-22.28.0.ebuild
@@ -0,0 +1,132 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake toolchain-funcs
+
+DESCRIPTION="Greenbone Vulnerability Management (GVM) libraries"
+HOMEPAGE="https://www.greenbone.net https://github.com/greenbone/gvm-libs/";
+SRC_URI="https://github.com/greenbone/gvm-libs/archive/v${PV}.tar.gz -> 
${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="doc ldap test radius"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+       acct-user/gvm
+       >=app-crypt/gpgme-1.7.0:=
+       >=dev-libs/glib-2.42:2
+       >=dev-libs/hiredis-1.1.0:=
+       dev-libs/libgcrypt:=
+       dev-libs/libgpg-error
+       >=dev-libs/cJSON-1.7.14
+       >=dev-libs/libxml2-2.0:2=
+       >=net-libs/gnutls-3.2.15:=
+       net-libs/libnet:1.1
+       net-libs/libpcap
+       >=net-libs/libssh-0.6.0:=
+       >=sys-apps/util-linux-2.25.0
+       sys-libs/libxcrypt:=
+       >=sys-libs/zlib-1.2.8
+       net-libs/paho-mqtt-c:1.3
+       >=net-misc/curl-7.83.0
+       ldap? ( net-nds/openldap:= )
+       radius? ( net-dialup/freeradius-client )
+"
+RDEPEND="${DEPEND}"
+BDEPEND="
+       dev-vcs/git
+       app-alternatives/yacc
+       app-alternatives/lex
+       virtual/pkgconfig
+       doc? (
+               app-text/doxygen[dot]
+               app-text/xmltoman
+               app-text/htmldoc
+               dev-perl/CGI
+               dev-perl/SQL-Translator
+       )
+       test? ( dev-libs/cgreen )
+"
+
+PATCHES=(
+       # Remove tests that don't work in the network sandbox
+       "${FILESDIR}/${P}-remove-unworking-tests.patch"
+       # Issue: https://github.com/greenbone/gvm-libs/issues/960
+       "${FILESDIR}/${P}-add-missing-link-to-cjson.patch"
+)
+
+pkg_setup() {
+       if tc-is-clang; then
+               local clang_major_version=$(clang-major-version);
+               if ! has_version 
"llvm-runtimes/compiler-rt-sanitizers:${clang_major_version}[profile]"; then
+                       eerror "Compiling this package with clang requires 
llvm-runtimes/compiler-rt-sanitizers to be built with 'profile' USE flag 
enabled"
+                       die "Clang detected, but 
llvm-runtimes/compiler-rt-sanitizers not build with 'profile' USE flag enabled"
+               fi
+       fi
+       if tc-is-gcc; then
+               local gcc_major_version=$(gcc-major-version);
+               if ! has_version 
"sys-devel/gcc:${gcc_major_version}[sanitize]"; then
+                       eerror "Compiling this package with gcc requires 
sys-devel/gcc to be built with 'sanitize' USE flag enabled"
+                       die "Gcc detected, but sys-devel/gcc not build with 
'sanitize' USE flag enabled"
+               fi
+       fi
+}
+
+src_prepare() {
+       cmake_src_prepare
+       # QA-Fix | Remove -Werror compiler flag | Bug: #909558
+       sed -i -e "s/-Werror//" "${S}"/CMakeLists.txt || die
+       # QA-Fix | Remove doxygen warnings for !CLANG
+       if use doc; then
+               if ! tc-is-clang; then
+                  local f
+                  for f in doc/*.in; do
+                       sed -i \
+                               -e "s*CLANG_ASSISTED_PARSING = 
NO*#CLANG_ASSISTED_PARSING = NO*g" \
+                               -e "s*CLANG_OPTIONS*#CLANG_OPTIONS*g" \
+                               "${f}" || die "couldn't disable CLANG parsing"
+                  done
+               fi
+       fi
+}
+
+src_configure() {
+       local mycmakeargs=(
+               "-DLOCALSTATEDIR=${EPREFIX}/var"
+               "-DSYSCONFDIR=${EPREFIX}/etc"
+               "-DGVM_RUN_DIR=${EPREFIX}/var/lib/gvm"
+               "-DBUILD_TESTS=$(usex test)"
+               "-DBUILD_WITH_RADIUS=$(usex radius)"
+               "-DBUILD_WITH_LDAP=$(usex ldap)"
+       )
+       cmake_src_configure
+}
+
+src_compile() {
+       cmake_src_compile
+       if use doc; then
+               cmake_build -C "${BUILD_DIR}" doc
+               cmake_build doc-full -C "${BUILD_DIR}" doc
+       fi
+       cmake_build rebuild_cache
+       if use test; then
+               cmake_build tests
+       fi
+}
+
+src_install() {
+       if use doc; then
+               local HTML_DOCS=( "${BUILD_DIR}"/doc/generated/html/. )
+       fi
+       cmake_src_install
+
+       # Set proper permissions on required files/directories
+       keepdir /var/lib/gvm
+       if ! use prefix; then
+               fowners -R gvm:gvm /var/lib/gvm
+       fi
+}

Reply via email to