diff options
| author | Alexey Sokolov <alexey+gentoo@asokolov.org> | 2025-08-03 15:55:21 +0100 |
|---|---|---|
| committer | Sam James <sam@gentoo.org> | 2025-09-04 21:46:56 +0100 |
| commit | 485ea72f644fc219c93830b75675e048186e7dbc (patch) | |
| tree | b1bc2bdded6001684cf8aafee5645ead7b560ff6 /dev-cpp/yaml-cpp | |
| parent | bb351ac2a359eab5c75e172cc67d0dee0a68cc03 (diff) | |
| download | gentoo-485ea72f644fc219c93830b75675e048186e7dbc.tar.gz gentoo-485ea72f644fc219c93830b75675e048186e7dbc.tar.bz2 gentoo-485ea72f644fc219c93830b75675e048186e7dbc.zip | |
dev-cpp/yaml-cpp: fix cmake4 compatibility
Removed bundled gtest; it wasn't used, but its existence was triggering cmake QA warning
Closes: https://bugs.gentoo.org/957557
Signed-off-by: Alexey Sokolov <alexey+gentoo@asokolov.org>
Part-of: https://github.com/gentoo/gentoo/pull/43303
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'dev-cpp/yaml-cpp')
| -rw-r--r-- | dev-cpp/yaml-cpp/files/yaml-cpp-0.8.0-cmake2.patch | 39 | ||||
| -rw-r--r-- | dev-cpp/yaml-cpp/yaml-cpp-0.8.0-r2.ebuild | 43 |
2 files changed, 82 insertions, 0 deletions
diff --git a/dev-cpp/yaml-cpp/files/yaml-cpp-0.8.0-cmake2.patch b/dev-cpp/yaml-cpp/files/yaml-cpp-0.8.0-cmake2.patch new file mode 100644 index 000000000000..220dc5452772 --- /dev/null +++ b/dev-cpp/yaml-cpp/files/yaml-cpp-0.8.0-cmake2.patch @@ -0,0 +1,39 @@ +https://bugs.gentoo.org/957557 +From c9371de7836d113c0b14bfa15ca70f00ebb3ac6f Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Christoph=20Gr=C3=BCninger?= <foss@grueninger.de> +Date: Mon, 24 Mar 2025 08:32:25 +0100 +Subject: [PATCH] [cmake] Require minimum CMake version 3.5 + +Soon CMake 4.0 will be released. It requires that projects +set a minimum required CMake version of 3.5. There is a +workaround with an additional flag, but it would is better +to increase the minimum required version. +--- + CMakeLists.txt | 6 +++--- + test/CMakeLists.txt | 1 - + 2 files changed, 3 insertions(+), 4 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 7e8a528d8..0df533a5a 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -1,5 +1,6 @@ +-# 3.5 is actually available almost everywhere, but this a good minimum +-cmake_minimum_required(VERSION 3.4) ++# 3.5 is actually available almost everywhere. ++# 3.30 as the upper policy limit avoids CMake deprecation warnings. ++cmake_minimum_required(VERSION 3.5...3.30) + + # enable MSVC_RUNTIME_LIBRARY target property + # see https://cmake.org/cmake/help/latest/policy/CMP0091.html +diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt +index 1c60c07c5..6949d29c1 100644 +--- a/test/CMakeLists.txt ++++ b/test/CMakeLists.txt +@@ -3,6 +3,5 @@ find_package(Threads REQUIRED) + set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) + set(BUILD_MOCK ON CACHE BOOL "" FORCE) +-set(CMAKE_POLICY_DEFAULT_CMP0048 NEW) + + if(YAML_USE_SYSTEM_GTEST) + find_package(GTest) diff --git a/dev-cpp/yaml-cpp/yaml-cpp-0.8.0-r2.ebuild b/dev-cpp/yaml-cpp/yaml-cpp-0.8.0-r2.ebuild new file mode 100644 index 000000000000..552cf0c1d8d4 --- /dev/null +++ b/dev-cpp/yaml-cpp/yaml-cpp-0.8.0-r2.ebuild @@ -0,0 +1,43 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake-multilib + +DESCRIPTION="YAML parser and emitter in C++" +HOMEPAGE="https://github.com/jbeder/yaml-cpp" +SRC_URI="https://github.com/jbeder/yaml-cpp/archive/refs/tags/${PV}.tar.gz -> ${P}.gh.tar.gz" + +LICENSE="MIT" +SLOT="0/0.8" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux" +IUSE="test" +RESTRICT="!test? ( test )" + +DEPEND=" + test? ( dev-cpp/gtest[${MULTILIB_USEDEP}] ) +" + +PATCHES=( + "${FILESDIR}/yaml-cpp-0.8.0-gtest.patch" + "${FILESDIR}/yaml-cpp-0.8.0-gcc13.patch" + "${FILESDIR}/yaml-cpp-0.8.0-include-cstdint.patch" + "${FILESDIR}/yaml-cpp-0.8.0-cmake2.patch" +) + +src_prepare() { + rm -r test/gtest-1.11.0 || die + + cmake_src_prepare +} + +src_configure() { + local mycmakeargs=( + -DYAML_BUILD_SHARED_LIBS=ON + -DYAML_CPP_BUILD_TOOLS=OFF # Don't have install rule + -DYAML_CPP_BUILD_TESTS=$(usex test) + ) + + cmake-multilib_src_configure +} |
