guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] gnu: Add hdf4


From: Jeremy Robst
Subject: Re: [PATCH] gnu: Add hdf4
Date: Wed, 25 May 2016 18:42:04 +0100 (BST)
User-agent: Alpine 2.20 (DEB 67 2015-01-07)

Hi,

On Tue, 24 May 2016, Eric Bavier wrote:

Could we apply a variation of the hdf5-config-date.patch?

Ok, I've based a patch on this one, and removed the other unreproduciable output, so I've not got a reproduciable build.

This description is noticeably more verbose than that of the hdf5 package. It seems like the first two sentences are not necessary here. It would also be nice to summarize how hdf4 differs from hdf5.

I've shortened the description, and added a statement that hdf4 is not compatable with hdf5. It's difficult to add more details of the differences without becoming verbose again, but let me know if you think it needs to be tweaked again.

Jeremy
--
address@hidden | (work) 01223 221402 (fax) 01223 362616
Unix System Administrator - British Antarctic Survey
#include <disclaimer.std>

From 41816d45609674bbc62847960522e49a1646f6d3 Mon Sep 17 00:00:00 2001
From: Jeremy Robst <address@hidden>
Date: Mon, 23 May 2016 17:59:00 +0100
Subject: [PATCH]     gnu: Add hdf4

    * gnu/packages/maths.scm (hdf4): New variable
---
 gnu/packages/maths.scm                          |   41 +++++++++++++++++
 gnu/packages/patches/hdf4-config-settings.patch |   55 +++++++++++++++++++++++
 2 files changed, 96 insertions(+)
 create mode 100644 gnu/packages/patches/hdf4-config-settings.patch

diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 19ed44f..ab4785b 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -408,6 +408,47 @@ plotting engine by third-party applications like Octave.")
     (license (license:fsf-free
               
"http://gnuplot.cvs.sourceforge.net/gnuplot/gnuplot/Copyright";))))

+(define-public hdf4
+  (package
+    (name "hdf4")
+    (version "4.2.11")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "http://www.hdfgroup.org/ftp/HDF/releases/HDF"; version
+             "/src/hdf-" version ".tar.bz2"))
+       (sha256
+        (base32
+         "16yr50j845zlfx20skmw3y75ww77akk9gg0affjqkg66ih5r03mv"))
+       (patches (list (search-patch "hdf4-config-settings.patch")))))
+    (build-system gnu-build-system)
+    (native-inputs
+     `(("gfortran" ,gfortran)
+       ("bison" ,bison)
+       ("flex" ,flex)))
+    (inputs
+     `(("zlib" ,zlib)
+       ("libjpeg" ,libjpeg)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-before 'configure 'patch-configure
+          (lambda _
+            (substitute*
+                '("mfhdf/hdfimport/testutil.sh.in" "hdf/util/testutil.sh.in")
+              (("/bin/rm") "rm")
+              (("/bin/mkdir") "mkdir"))
+            #t)))))
+    (home-page "https://www.hdfgroup.org/products/hdf4/";)
+    (synopsis
+     "Library and multi-object file format for storing and managing data")
+    (description "HDF4 is a library and multi-object file format for storing
+and managing data between machines.  HDF4 is an older hiearchical data format,
+incompatible with HDF5.")
+    (license (license:non-copyleft
+              
"https://www.hdfgroup.org/ftp/HDF/HDF_Current/src/unpacked/COPYING";))))
+
 (define-public hdf5
   (package
     (name "hdf5")
diff --git a/gnu/packages/patches/hdf4-config-settings.patch 
b/gnu/packages/patches/hdf4-config-settings.patch
new file mode 100644
index 0000000..e79362e
--- /dev/null
+++ b/gnu/packages/patches/hdf4-config-settings.patch
@@ -0,0 +1,55 @@
+Honor SOURCE_DATE_EPOCH when exporting configuraton date.
+Remove unreproducible configuration data.
+
+--- a/configure
++++ b/configure
+@@ -23169,7 +23169,14 @@
+ + + ## Configuration date
+- CONFIG_DATE="`date`"
++ CONFIG_DATE="`date -u`"
++if test -n "$SOURCE_DATE_EPOCH"; then
++  CONFIG_DATE=`date -u -d "@$SOURCE_DATE_EPOCH" 2>/dev/null \
++               || date -u -r "$SOURCE_DATE_EPOCH" 2>/dev/null`
++  if test -z "$CONFIG_DATE"; then
++    as_fn_error $? "malformed SOURCE_DATE_EPOCH" "$LINENO" 5
++  fi
++fi
+ + ## User doing the configuration
+  CONFIG_USER="address@hidden"
+
+--- a/libhdf4.settings.in
++++ b/libhdf4.settings.in
+@@ -5,17 +5,17 @@
+ -------------------
+                  HDF4 Version: @H4_VERSION@
+                 Configured on: @CONFIG_DATE@
+-                Configured by: @CONFIG_USER@
++                Configured by: guix
+                Configure mode: @CONFIG_MODE@
+-                  Host system: @address@hidden@address@hidden@host_os@
+-              Uname information: @UNAME_INFO@
++                  Host system: guix
++              Uname information: guix
+                     Libraries: @STATIC_SHARED@
+            Installation point: @prefix@
+ + Compiling Options:
+ ------------------
+                Compilation Mode: @CONFIG_MODE@
+-                     C compiler: @CC_VERSION@
++ C compiler: + CFLAGS: @CFLAGS@
+                        CPPFLAGS: @CPPFLAGS@
+                Shared Libraries: @enable_shared@
+@@ -29,7 +29,7 @@
+ Languages:
+ ----------
+                         Fortran: @BUILD_FORTRAN@
address@hidden@               Fortran Compiler: @F77_VERSION@
address@hidden@ Fortran Compiler: + @HDF_BUILD_FORTRAN_TRUE@ FFLAGS: @FFLAGS@ + + Features:
--
1.7.10.4




reply via email to

[Prev in Thread] Current Thread [Next in Thread]