commit:     c35f78590a42a0a0fd110f91b802fec6a05ac109
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Apr  3 03:19:21 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Apr  3 03:19:21 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c35f7859

dev-build/cmake: fix build w/ net-misc/curl-8.13.0

Closes: https://bugs.gentoo.org/953060
Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-build/cmake/cmake-3.31.6-r1.ebuild             |  3 +-
 .../cmake/files/cmake-3.31.6-curl-8.13.0.patch     | 36 ++++++++++++++++++++++
 2 files changed, 38 insertions(+), 1 deletion(-)

diff --git a/dev-build/cmake/cmake-3.31.6-r1.ebuild 
b/dev-build/cmake/cmake-3.31.6-r1.ebuild
index 91497ec73ba9..f94a7b1a1a77 100644
--- a/dev-build/cmake/cmake-3.31.6-r1.ebuild
+++ b/dev-build/cmake/cmake-3.31.6-r1.ebuild
@@ -95,9 +95,10 @@ PATCHES=(
        
"${FILESDIR}"/${PN}-3.27.0_rc1-0004-Ensure-that-the-correct-version-of-Qt-is-always-used.patch
        
"${FILESDIR}"/${PN}-3.27.0_rc1-0005-Respect-Gentoo-s-Python-eclasses.patch
        # Cuda
-       "${FILESDIR}/${PN}-3.30.3-cudahostld.patch"
+       "${FILESDIR}"/${PN}-3.30.3-cudahostld.patch
 
        # Upstream fixes (can usually be removed with a version bump)
+       "${FILESDIR}"/${PN}-3.31.6-curl-8.13.0.patch
 )
 
 cmake_src_bootstrap() {

diff --git a/dev-build/cmake/files/cmake-3.31.6-curl-8.13.0.patch 
b/dev-build/cmake/files/cmake-3.31.6-curl-8.13.0.patch
new file mode 100644
index 000000000000..08bbcf4a3f23
--- /dev/null
+++ b/dev-build/cmake/files/cmake-3.31.6-curl-8.13.0.patch
@@ -0,0 +1,36 @@
+https://bugs.gentoo.org/953060
+https://gitlab.kitware.com/cmake/cmake/-/issues/26754
+https://gitlab.kitware.com/cmake/cmake/-/merge_requests/10449
+
+From 1b0c92a3a1b782ff3e1c4499b6ab8db614d45bcd Mon Sep 17 00:00:00 2001
+From: Brad King <[email protected]>
+Date: Mon, 10 Mar 2025 11:08:42 -0400
+Subject: [PATCH] cmCurl: Avoid using undocumented type for CURLOPT_NETRC
+ values
+
+Since upstream curl commit `2ec00372a1` (curl.h: change some enums to
+defines with L suffix, 2025-02-25), the `CURL_NETRC_*` constants are
+integer literals instead of `enum CURL_NETRC_OPTION`.  It turns out
+that `curl_easy_setopt` has always expected a `long` anyway, and
+that `CURL_NETRC_OPTION` is not documented for public use.
+
+Fixes: #26754
+---
+ Source/cmCurl.cxx | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Source/cmCurl.cxx b/Source/cmCurl.cxx
+index b9133ed7d47..0cf8a71a72d 100644
+--- a/Source/cmCurl.cxx
++++ b/Source/cmCurl.cxx
+@@ -170,7 +170,7 @@ std::string cmCurlSetNETRCOption(::CURL* curl, const 
std::string& netrc_level,
+                                  const std::string& netrc_file)
+ {
+   std::string e;
+-  CURL_NETRC_OPTION curl_netrc_level = CURL_NETRC_LAST;
++  long curl_netrc_level = CURL_NETRC_LAST;
+   ::CURLcode res;
+ 
+   if (!netrc_level.empty()) {
+-- 
+GitLab

Reply via email to