diff mbox series

[bug#73209] gnu: Add cmake-3.30.

Message ID 6e22d48a7ef4acc8e8e1a8ce0197e500fe5ae8f1.1726168379.git.john.kehayias@protonmail.com
State New
Headers show
Series [bug#73209] gnu: Add cmake-3.30. | expand

Commit Message

John Kehayias Sept. 12, 2024, 7:16 p.m. UTC
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(+)


base-commit: b2f5a9dd67352e035121c70cfdb34cd440c42e98
--
2.46.0

Comments

John Kehayias Sept. 16, 2024, 2:33 a.m. UTC | #1
Hello,

On Thu, Sep 12, 2024 at 07:16 PM, John Kehayias wrote:

> 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!
>

I ended up pushing as 2db055a4e56eab134852a16a24443148dc32b5a2 after
verifying no issues with guix pull locally, updating to latest version
(3.30.3), building, and adding a note that since cppdap uses
cmake-build-system, we will have to deal with that circular dependency
when updating the default cmake.

Changes/corrections/etc. welcome.

John

>
> 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 <pierre.moana.levesque@gmail.com>
>  ;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
>  ;;; Copyright © 2021 Ricardo Wurmus <rekado@elephly.net>
> +;;; Copyright © 2024 John Kehayias <john.kehayias@protonmail.com>
>  ;;;
>  ;;; 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
diff mbox series

Patch

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 <pierre.moana.levesque@gmail.com>
 ;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
 ;;; Copyright © 2021 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2024 John Kehayias <john.kehayias@protonmail.com>
 ;;;
 ;;; 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)