From 4ab999dfcab8b999d6256e328667a07aa7cb5e76 Mon Sep 17 00:00:00 2001
From: r0man <roman@burningswell.com>
Date: Sat, 10 Dec 2022 12:18:20 +0100
Subject: [PATCH 4/4] gnu: netcdf: Update to 4.9.0.
* gnu/packages/maths.scm (netcdf): Update to 4.9.0.
* gnu/packages/patches/netcdf-4.9.0-fix-cmake-typo.patch
---
gnu/packages/maths.scm | 46 +++++++++++++------
.../patches/netcdf-4.9.0-fix-cmake-typo.patch | 23 ++++++++++
2 files changed, 55 insertions(+), 14 deletions(-)
create mode 100644 gnu/packages/patches/netcdf-4.9.0-fix-cmake-typo.patch
@@ -1850,16 +1850,16 @@ (define-public itpp
(define-public netcdf
(package
(name "netcdf")
- (version "4.7.4")
+ (version "4.9.0")
(source
(origin
(method url-fetch)
(uri (string-append
- "https://www.unidata.ucar.edu/downloads/netcdf/ftp/"
- "netcdf-c-" version ".tar.gz"))
+ "https://downloads.unidata.ucar.edu/netcdf-c/" version
+ "/netcdf-c-" version ".tar.gz"))
(sha256
(base32
- "1a2fpp15a2rl1m50gcvvzd9y6bavl6vjf9zzf63sz5gdmq06yiqf"))
+ "0j8b814mjdqvqanzmrxpq8hn33n22cdzb3gf9vhya24wnwi615ac"))
(modules '((guix build utils)))
(snippet
;; Make sure this variable is defined only once. Failing to do so
@@ -1867,20 +1867,35 @@ (define-public netcdf
;; multiple-definition link error with GCC 10.
'(substitute* "ncdump/ocprint.c"
(("^int ocdebug") "static int ocdebug")))
- (patches (search-patches "netcdf-date-time.patch"))))
- (build-system gnu-build-system)
+ (patches (search-patches "netcdf-date-time.patch"
+ "netcdf-4.9.0-fix-cmake-typo.patch"))))
+ (build-system cmake-build-system)
(native-inputs
- (list m4 doxygen graphviz))
+ (list m4 doxygen graphviz unzip))
(inputs
`(("hdf4" ,hdf4-alt)
- ("hdf5" ,hdf5)
+ ("hdf5" ,hdf5-1.12)
("curl" ,curl)
("zlib" ,zlib)
- ("libjpeg" ,libjpeg-turbo)))
+ ("libjpeg" ,libjpeg-turbo)
+ ("libxml2" ,libxml2)))
(arguments
- `(#:configure-flags '("--enable-doxygen" "--enable-dot" "--enable-hdf4")
-
- #:phases (modify-phases %standard-phases
+ `(#:configure-flags
+ '("-DENABLE_BYTERANGE=ON"
+ "-DENABLE_CDF5=ON"
+ "-DENABLE_DAP_LONG_TESTS=OFF"
+ "-DENABLE_DAP_REMOTE_TESTS=OFF"
+ "-DENABLE_EXAMPLE_TESTS=OFF"
+ "-DENABLE_EXTRA_TESTS=OFF"
+ "-DENABLE_FILTER_TESTING=OFF"
+ "-DENABLE_LARGE_FILE_TESTS=OFF"
+ "-DENABLE_UNIT_TESTS=OFF"
+ "-DSOURCE_DATE_EPOCH=0")
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'configure 'disable-nc-byterange-test
+ (lambda _
+ (invoke "sed" "-i" "/test_byterange/d" "nc_test/CMakeLists.txt")))
(add-before 'configure 'fix-source-date
(lambda _
;; As we ${SOURCE_DATE_EPOCH} evaluates to "1" in the build
@@ -1900,8 +1915,11 @@ (define-public netcdf
(substitute* "libnetcdf.settings"
(("(/gnu/store/)([0-9A-Za-z]*)" all prefix hash)
(string-append prefix (string-take hash 10) "...")))
- #t)))
-
+ #t))
+ (add-before 'check 'fix-test-rcmerge
+ (lambda _
+ ;; Set HOME, to fix the test-rcmerge.
+ (setenv "HOME" "/tmp"))))
#:parallel-tests? #f)) ;various race conditions
(home-page "https://www.unidata.ucar.edu/software/netcdf/")
(synopsis "Library for scientific data")
new file mode 100644
@@ -0,0 +1,23 @@
+From 80a6611cfca98a5979c5ac69cba56a49af8c1e48 Mon Sep 17 00:00:00 2001
+From: Yuriy Chernyshov <thegeorg@yandex-team.com>
+Date: Sun, 19 Jun 2022 19:29:20 +0300
+Subject: [PATCH] Fix typo in CMakeLists.txt
+
+At the time generated dynamic library is named `libnetcdf.so.19}` which looks like a typo.
+---
+ CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 7bf8641bec..18366d24ad 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -39,5 +39,5 @@ SET(NC_VERSION ${netCDF_VERSION})
+ SET(PACKAGE_VERSION ${VERSION})
+
+ # These values should match those in configure.ac
+-SET(netCDF_LIB_VERSION 19})
++SET(netCDF_LIB_VERSION 19)
+ SET(netCDF_SO_VERSION 19)
+
+ # Version of the dispatch table. This must match the value in
--
2.38.1