commit:     911ba8c9007c1979d7bef4c92e1020741c62745b
Author:     Sergey Torokhov <torokhov-s-a <AT> yandex <DOT> ru>
AuthorDate: Sun Nov 23 22:15:51 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Nov 24 13:28:51 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=911ba8c9

sci-libs/highfive: 3.2.0 version bump

This version isn't affected by QA Notice:
"Compatibility with CMake < 3.5 has been removed from CMake 4"
and compatible to build with boost-1.89.0

Bug: https://bugs.gentoo.org/965414
Signed-off-by: Sergey Torokhov <torokhov-s-a <AT> yandex.ru>
Part-of: https://github.com/gentoo/gentoo/pull/44750
Signed-off-by: Sam James <sam <AT> gentoo.org>

 sci-libs/highfive/Manifest                         |  1 +
 ...0_use_system_catch2_fix_QA_cmake4_warning.patch | 40 +++++++++++++
 sci-libs/highfive/highfive-3.2.0.ebuild            | 66 ++++++++++++++++++++++
 3 files changed, 107 insertions(+)

diff --git a/sci-libs/highfive/Manifest b/sci-libs/highfive/Manifest
index 522f112f5571..933575a1bcc9 100644
--- a/sci-libs/highfive/Manifest
+++ b/sci-libs/highfive/Manifest
@@ -1,2 +1,3 @@
 DIST HighFive-2.10.1.tar.gz 559344 BLAKE2B 
e605eb336c740ad2665130af35b05c92c9aa54c50e2b811ae97e56446b6f67047bc65278a1260850971b0ff5ec19daf48fb266f699636da63a5268987c839e43
 SHA512 
3daf16c2ced165ddc7a8f1e9a0d3bf3388836e3878c86f8bf3faf2c42996d5bfd449e71e75a871447c1e7ea9a3e87d4f4a80a2382f1b24095d6051b89f27d6d3
 DIST HighFive-2.8.0.tar.gz 538050 BLAKE2B 
ad856be95365c6d94add457d76366e0a3143fd09bbb6354048f896e16f5445d1037367eaaeaa233a3b5f9c45d2a2611173e051d2bd9e7aff4a3472665d96ec7f
 SHA512 
cabcf8f1507b4466b7438249a813ea36de5e5d220c5caf7656312e24dbe09042bf9573388ca7c3caa22f71bd3b8106923710f9459127f87c341e2b0ab953eede
+DIST highfive-3.2.0.tar.gz 216218 BLAKE2B 
2eb449f2dbcbdfd621e1807559de4554c026e42aa45c2d324c2b2751ef6eafdf3568e6aa731035e4eb97b74e79896599f1a56ecd9ddffeaf61dbae5900f077c6
 SHA512 
0f72eadfff9b0dd8bcf70654ae5ac526565df58be47d432e5f44fbc5b36b47989061308629ea34d403b9b96362abc2e42e9cbd6eaa78d1ba0326737493468d05

diff --git 
a/sci-libs/highfive/files/highfive-3.2.0_use_system_catch2_fix_QA_cmake4_warning.patch
 
b/sci-libs/highfive/files/highfive-3.2.0_use_system_catch2_fix_QA_cmake4_warning.patch
new file mode 100644
index 000000000000..f7ca80c2b9c1
--- /dev/null
+++ 
b/sci-libs/highfive/files/highfive-3.2.0_use_system_catch2_fix_QA_cmake4_warning.patch
@@ -0,0 +1,40 @@
+# Force to use system Catch2 (dev-cpp/catch) and supress QA cmake4 warning
+# "Policy CMP0167 is not set: The FindBoost module is removed".
+
+diff '--color=auto' -Naur a/CMakeLists.txt b/CMakeLists.txt
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -180,8 +180,7 @@
+ endif()
+ 
+ if(HIGHFIVE_UNIT_TESTS)
+-  add_subdirectory(deps/catch2 EXCLUDE_FROM_ALL)
+-  list(APPEND CMAKE_MODULE_PATH 
${CMAKE_CURRENT_SOURCE_DIR}/deps/catch2/contrib)
++  find_package(Catch2)
+   enable_testing()
+   add_subdirectory(tests/unit)
+ endif()
+diff '--color=auto' -Naur a/cmake/HighFiveOptionalDependencies.cmake 
b/cmake/HighFiveOptionalDependencies.cmake
+--- a/cmake/HighFiveOptionalDependencies.cmake
++++ b/cmake/HighFiveOptionalDependencies.cmake
+@@ -1,7 +1,7 @@
+ if(NOT TARGET HighFiveBoostDependency)
+   add_library(HighFiveBoostDependency INTERFACE)
+   if(HIGHFIVE_TEST_BOOST)
+-    find_package(Boost REQUIRED)
++    find_package(Boost CONFIG REQUIRED)
+     target_link_libraries(HighFiveBoostDependency INTERFACE Boost::headers)
+     # TODO check if we need Boost::disable_autolinking to cause:
+     # -DBOOST_ALL_NO_LIB (does something on MSVC).
+diff '--color=auto' -Naur a/tests/unit/CMakeLists.txt 
b/tests/unit/CMakeLists.txt
+--- a/tests/unit/CMakeLists.txt
++++ b/tests/unit/CMakeLists.txt
+@@ -6,7 +6,7 @@
+ endif()
+ 
+ ## Base tests
+-foreach(test_name tests_high_five_base tests_high_five_easy test_all_types 
test_high_five_selection tests_high_five_data_type test_boost test_empty_arrays 
test_legacy test_nothrow_movable test_opencv test_string test_stl test_xtensor)
++foreach(test_name tests_high_five_base tests_high_five_easy test_all_types 
test_high_five_selection tests_high_five_data_type test_boost test_empty_arrays 
test_legacy test_nothrow_movable test_opencv test_string test_stl)
+   add_executable(${test_name} "${test_name}.cpp")
+   target_link_libraries(${test_name} HighFive HighFiveWarnings HighFiveFlags 
Catch2::Catch2WithMain)
+   target_link_libraries(${test_name} HighFiveOptionalDependencies)

diff --git a/sci-libs/highfive/highfive-3.2.0.ebuild 
b/sci-libs/highfive/highfive-3.2.0.ebuild
new file mode 100644
index 000000000000..5badaecb6b25
--- /dev/null
+++ b/sci-libs/highfive/highfive-3.2.0.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DOCS_BUILDER="doxygen"
+DOCS_DEPEND="app-text/doxygen[dot]"
+DOCS_DIR="doc"
+
+inherit cmake docs
+
+## The development of HighFive will continue at 
https://github.com/highfive-devs/highfive
+## instead of https://github.com/BlueBrain/HighFive
+DESCRIPTION="Header-only C++ interface for libhdf5"
+HOMEPAGE="https://highfive-devs.github.io/highfive/";
+SRC_URI="https://github.com/${PN}-devs/${PN}/archive/refs/tags/v${PV}.tar.gz 
-> ${P}.tar.gz"
+
+LICENSE="Boost-1.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="mpi test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+       sci-libs/hdf5[mpi?]
+"
+DEPEND="
+       ${RDEPEND}
+       test? (
+               >=dev-cpp/catch-3.4.0:0
+               dev-libs/boost
+               dev-cpp/eigen
+               media-libs/opencv
+       )
+"
+
+DOCS=( {README,CHANGELOG}.md )
+
+PATCHES="${FILESDIR}/${P}_use_system_catch2_fix_QA_cmake4_warning.patch"
+
+src_configure() {
+       default
+       local mycmakeargs=(
+               -DHDF5_IS_PARALLEL=$(usex mpi)
+
+               -DHIGHFIVE_TEST_BOOST=$(usex test)
+               -DHIGHFIVE_TEST_EIGEN=$(usex test)
+               -DHIGHFIVE_TEST_OPENCV=$(usex test)
+               -DHIGHFIVE_TEST_XTENSOR=OFF
+
+               -DHIGHFIVE_EXAMPLES=$(usex test)
+               -DHIGHFIVE_UNIT_TESTS=$(usex test)
+       )
+       cmake_src_configure
+}
+
+src_compile() {
+       default
+       use test && cmake_src_compile
+       use doc && doxygen_compile
+}
+
+src_test() {
+       # Set -j1 to prevent race
+       cmake_src_test -j1
+}

Reply via email to