Subject: [PATCH] gnu: Add cmake-3.30.
From: John Kehayias <[email-masked]>
To: [email-masked]
Cc: John Kehayias <[email-masked]>
Date: Thu, 12 Sep 2024 19:16:35 +0000
List-Id: <debbugs-submit.debbugs.gnu.org>

Hi Guix,

Here is a patch to add a new cmake version without updating the
default. The only wrinkle was that (at least by default?) there is a
new requirement on cppdap which I think makes a circular dependency. I
believe this is worked around in the patch, but figured I'd send for
review, thanks!

Add newer version of cmake for packages that will need it (for instance, new
features like finding EGL2), without yet updating the default and rebuilding
all cmake packages.

* gnu/packages/cmake.scm (cmake-3.30): New variable.

Change-Id: I345e9cab7a79624ff0012f493c18426bd843e0d6
---
 gnu/packages/cmake.scm | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/gnu/packages/cmake.scm b/gnu/packages/cmake.scm
index 0c780fe420..0241594667 100644
--- a/gnu/packages/cmake.scm
+++ b/gnu/packages/cmake.scm
@@ -12,6 +12,7 @@
 ;;; Copyright © 2019 Pierre-Moana Levesque <[email-masked]>
 ;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen <[email-masked]>
 ;;; Copyright © 2021 Ricardo Wurmus <[email-masked]>
+;;; Copyright © 2024 John Kehayias <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -409,6 +410,24 @@ (define-public cmake
                texinfo)))
     (properties (alist-delete 'hidden? (package-properties cmake-minimal)))))

+(define-public cmake-3.30
+  (package
+    (inherit cmake)
+    (version "3.30.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://cmake.org/files/v"
+                                  (version-major+minor version)
+                                  "/cmake-" version ".tar.gz"))
+              (sha256
+               (base32
+                "1qa6ng6083i6iw23srzh9w41z3bxzz7faly2nz0w716fwd9kr6yz"))))
+    (native-inputs
+     (modify-inputs (package-native-inputs cmake)
+       ;; Avoid circular dependency with (gnu packages debug).
+       (prepend (module-ref (resolve-interface '(gnu packages debug))
+                            'cppdap))))))
+
 (define-public cmake-minimal-cross
   (package
     (inherit cmake-minimal)

base-commit: b2f5a9dd67352e035121c70cfdb34cd440c42e98
--
2.46.0