dev-cpp/yaml-cpp: fix cmake warning

Closes: https://bugs.gentoo.org/951842
Signed-off-by: Alexey Sokolov <alexey+gentoo@asokolov.org>
Closes: https://github.com/gentoo/gentoo/pull/41226
Signed-off-by: Sam James <sam@gentoo.org>
This commit is contained in:
Alexey Sokolov
2025-03-22 21:31:58 +00:00
committed by Sam James
parent 44c3b0ad1f
commit 6e886a6029
2 changed files with 69 additions and 0 deletions

View File

@@ -0,0 +1,32 @@
https://bugs.gentoo.org/951842
https://github.com/jbeder/yaml-cpp/pull/1211
From 8153a1add19018f65527faad3c4d3941705baf39 Mon Sep 17 00:00:00 2001
From: Craig Scott <craig.scott@crascit.com>
Date: Wed, 16 Aug 2023 15:55:44 +1000
Subject: [PATCH] Specify CMake policy range to avoid deprecation warning
CMake 3.27 started issuing a deprecation warning for any
cmake_minimum_required() call that specified a minimum
version older than 3.5. Specifying a version range instead of
a simple minimum version avoids that warning without
raising the minimum supported CMake version. The NEW
policy behavior will be used for all policies introduced up to
CMake 3.14 with this change.
---
CMakeLists.txt | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 46dc18059..1ae92e2b7 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, but this a good minimum.
+# 3.14 as the upper policy limit avoids CMake deprecation warnings.
+cmake_minimum_required(VERSION 3.4...3.14)
# enable MSVC_RUNTIME_LIBRARY target property
# see https://cmake.org/cmake/help/latest/policy/CMP0091.html

View File

@@ -0,0 +1,37 @@
# 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-cmake.patch"
)
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
}