GNU bug report logs - #75284
[PATCH] gnu: Add netcdf-cxx4 and netcdf-cxx4-parallel-openmpi.

Previous Next

Package: guix-patches;

Reported by: Lars Bilke <lars.bilke <at> ufz.de>

Date: Thu, 2 Jan 2025 13:53:02 UTC

Severity: normal

Tags: patch

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: tracker <at> debbugs.gnu.org
Subject: bug#75284: closed ([PATCH] gnu: Add netcdf-cxx4 and
 netcdf-cxx4-parallel-openmpi.)
Date: Sun, 19 Jan 2025 23:13:02 +0000
[Message part 1 (text/plain, inline)]
Your message dated Mon, 20 Jan 2025 00:11:46 +0100
with message-id <87ikqao0ul.fsf <at> gnu.org>
and subject line Re: [bug#75284] [PATCH v2] gnu: Add netcdf-cxx4 and netcdf-cxx4-parallel-openmpi.
has caused the debbugs.gnu.org bug report #75284,
regarding [PATCH] gnu: Add netcdf-cxx4 and netcdf-cxx4-parallel-openmpi.
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)


-- 
75284: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=75284
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Lars Bilke <lars.bilke <at> ufz.de>
To: guix-patches <at> gnu.org
Cc: Lars Bilke <lars.bilke <at> ufz.de>
Subject: [PATCH] gnu: Add netcdf-cxx4 and netcdf-cxx4-parallel-openmpi.
Date: Thu, 02 Jan 2025 14:52:10 +0100
* gnu/packages/maths.scm (netcdf-cxx4): New variable.
* gnu/packages/maths.scm (netcdf-cxx4-parallel-openmpi: New variable.

Change-Id: I9781aa31567b80e20c528abb5e9289bc625bb3eb
---
 gnu/packages/maths.scm | 60 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 60 insertions(+)

diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 22e2822c8c..71ea757e0e 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -2381,6 +2381,66 @@ (define-public netcdf-fortran
     (home-page (package-home-page netcdf))
     (license (package-license netcdf))))
 
+(define-public netcdf-cxx4
+  (package
+    (name "netcdf-cxx4")
+    (synopsis "NetCDF C++ interface")
+    (license license:bsd-3)
+    (description "C++ interface for NetCDF.")
+    (home-page "https://github.com/Unidata/netcdf-cxx4")
+    (version "4.3.1")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/Unidata/netcdf-cxx4")
+             (commit (string-append "v" version))))
+       (sha256
+        (base32 "05kydd5z9iil5iv4fp7l11cicda5n5lsg5sdmsmc55xpspnsg7hr"))))
+    (build-system cmake-build-system)
+    (inputs (list netcdf hdf5))
+    (arguments
+     `(#:phases (modify-phases %standard-phases
+                  (add-before 'configure 'patch-configure
+                    (lambda _
+                      (substitute* "libnetcdf-cxx.settings.in"
+                        ;; Don't record the build-time host, time and gcc path to make the
+                        ;; settings file reproducible.
+                        (("@CONFIG_DATE@")
+                         "Not set (Guix build)")
+                        (("@host_cpu@-@host_vendor@-@host_os@")
+                         "Linux")
+                        (("@CC_VERSION@")
+                         "gcc"))
+                      ;; The filter tests fail with 'Caught unexpected exception'.
+                      (substitute* "cxx4/CMakeLists.txt"
+                        (("add_bin_test\\(cxx4 test_filter\\)")
+                         ""))
+                      (substitute* "examples/CMakeLists.txt"
+                        (("add_sh_test\\(examples tst_filter\\)")
+                         ""))))
+                  (add-after 'install 'clear-reference-to-compiler
+                    (lambda* (#:key inputs outputs #:allow-other-keys)
+                      ;; Do not retain a reference to GCC and other build only inputs.
+                      (let ((out (assoc-ref outputs "out")))
+                        (substitute* (string-append out "/bin/ncxx4-config")
+                          (("cc=([[:graph:]]+)/bin/gcc")
+                           "cc=\"gcc")
+                          (("cxx=([[:graph:]]+)/bin/c\\+\\+")
+                           "cxx=\"c++"))))))
+       #:configure-flags (list (string-append "-DHDF5_C_LIBRARY_hdf5="
+                                              (assoc-ref %build-inputs "hdf5")
+                                              "/lib/libhdf5.so"))))))
+
+(define-public netcdf-cxx4-parallel-openmpi
+  (package
+    (inherit netcdf-cxx4)
+    (name "netcdf-cxx4-parallel-openmpi")
+    (inputs (modify-inputs (package-inputs netcdf-cxx4)
+              (prepend openmpi)
+              (replace "hdf5" hdf5-parallel-openmpi)
+              (replace "netcdf" netcdf-parallel-openmpi)))))
+
 (define-public n2p2
   (package
     (name "n2p2")

base-commit: ab43d883a0a88adbcfd3c3ab8d4c097cd9054b90
-- 
2.46.1



[Message part 3 (message/rfc822, inline)]
From: Ludovic Courtès <ludo <at> gnu.org>
To: Lars Bilke <lars.bilke <at> ufz.de>
Cc: Andreas Enge <andreas <at> enge.fr>, 75284-done <at> debbugs.gnu.org,
 Sharlatan Hellseher <sharlatanus <at> gmail.com>, Eric Bavier <bavier <at> posteo.net>
Subject: Re: [bug#75284] [PATCH v2] gnu: Add netcdf-cxx4 and
 netcdf-cxx4-parallel-openmpi.
Date: Mon, 20 Jan 2025 00:11:46 +0100
[Message part 4 (text/plain, inline)]
Hi,

Lars Bilke <lars.bilke <at> ufz.de> skribis:

> * gnu/packages/maths.scm (netcdf-cxx4): New variable.
> * gnu/packages/maths.scm (netcdf-cxx4-parallel-openmpi: New variable.
>
> Change-Id: I9781aa31567b80e20c528abb5e9289bc625bb3eb

Applied with the changes below: addressing a ‘guix lint’ issue, and
following the conventions at
<https://guix.gnu.org/manual/devel/en/html_node/Synopses-and-Descriptions.html>.

Thanks,
Ludo’.

[Message part 5 (text/x-patch, inline)]
diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 5f40f751d3..4e3ea6df26 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -2391,6 +2391,7 @@ (define-public netcdf-cxx4
        (uri (git-reference
              (url "https://github.com/Unidata/netcdf-cxx4")
              (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
        (sha256
         (base32 "05kydd5z9iil5iv4fp7l11cicda5n5lsg5sdmsmc55xpspnsg7hr"))))
     (build-system cmake-build-system)
@@ -2424,18 +2425,22 @@ (define-public netcdf-cxx4
                           (("cxx=([[:graph:]]+)/bin/c\\+\\+")
                            "cxx=\"c++"))))))
        #:configure-flags (list (string-append "-DHDF5_C_LIBRARY_hdf5="
-                                              (assoc-ref %build-inputs "hdf5")
-                                              "/lib/libhdf5.so"))))
+                                              (search-input-file
+                                               %build-inputs
+                                               "/lib/libhdf5.so")))))
     (inputs (list netcdf hdf5))
     (home-page "https://github.com/Unidata/netcdf-cxx4")
     (synopsis "NetCDF C++ interface")
-    (description "C++ interface for NetCDF.")
+    (description
+     "This package provides a C++ interface to the NetCDF library for
+scientific data storage.")
     (license license:bsd-3)))
 
 (define-public netcdf-cxx4-parallel-openmpi
   (package
     (inherit netcdf-cxx4)
     (name "netcdf-cxx4-parallel-openmpi")
+    (synopsis "NetCDF C++ interface (with MPI support)")
     (inputs (modify-inputs (package-inputs netcdf-cxx4)
               (prepend openmpi)
               (replace "hdf5" hdf5-parallel-openmpi)

This bug report was last modified 118 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.