[PATCH] gnu: hdf4, hdf4-alt: Update to 4.2.16-2.

  • Done
  • quality assurance status badge
Details
One participant
  • Andreas Enge
Owner
unassigned
Submitted by
Andreas Enge
Severity
normal
A
A
Andreas Enge wrote on 21 Aug 2023 22:18
(address . guix-patches@gnu.org)(name . Andreas Enge)(address . andreas@enge.fr)
318fea2ce6c0e1fc1b268b526de2e0b2a89d27db.1692649110.git.andreas@enge.fr
* gnu/packages/maths.scm (hdf4)[source]: Update to 4.2.16-2. Drop patches
that do not apply any more.
[arguments]: Drop configure flag related to libtirpc. Add configure flag
to build xdr library and drop unneeded substitutions.
* gnu/packages/patches/hdf4-architectures.patch,
gnu/packages/patches/hdf4-tirpc.patch: Remove files.
* gnu/local.mk (dist_patch_DATA): Unregister patches.
---
gnu/local.mk | 2 -
gnu/packages/maths.scm | 28 +-
gnu/packages/patches/hdf4-architectures.patch | 632 ------------------
gnu/packages/patches/hdf4-tirpc.patch | 33 -
4 files changed, 8 insertions(+), 687 deletions(-)
delete mode 100644 gnu/packages/patches/hdf4-architectures.patch
delete mode 100644 gnu/packages/patches/hdf4-tirpc.patch

Toggle diff (535 lines)
diff --git a/gnu/local.mk b/gnu/local.mk
index 011ababfb7..a9acd493e9 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1363,10 +1363,8 @@ dist_patch_DATA = \
%D%/packages/patches/gtksourceview-2-add-default-directory.patch \
%D%/packages/patches/gzdoom-search-in-installed-share.patch \
%D%/packages/patches/gzdoom-find-system-libgme.patch \
- %D%/packages/patches/hdf4-architectures.patch \
%D%/packages/patches/hdf4-reproducibility.patch \
%D%/packages/patches/hdf4-shared-fortran.patch \
- %D%/packages/patches/hdf4-tirpc.patch \
%D%/packages/patches/hdf5-config-date.patch \
%D%/packages/patches/hdf-eos2-build-shared.patch \
%D%/packages/patches/hdf-eos2-remove-gctp.patch \
diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 1666d6e420..b90746f7f6 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013, 2014, 2015, 2016, 2019, 2020 Andreas Enge <andreas@enge.fr>
+;;; Copyright © 2013, 2014, 2015, 2016, 2019, 2020, 2023 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2014, 2016, 2017 John Darrington <jmd@gnu.org>
;;; Copyright © 2014-2022 Eric Bavier <bavier@posteo.net>
@@ -1321,18 +1321,16 @@ (define-public gctp
(define-public hdf4
(package
(name "hdf4")
- (version "4.2.14")
+ (version "4.2.16-2")
(source
(origin
(method url-fetch)
(uri (string-append "https://support.hdfgroup.org/ftp/HDF/releases/HDF"
version "/src/hdf-" version ".tar.bz2"))
(sha256
- (base32 "0n29klrrbwan9307np0d9hr128dlpc4nnlf57a140080ll3jmp8l"))
- (patches (search-patches "hdf4-architectures.patch"
- "hdf4-reproducibility.patch"
- "hdf4-shared-fortran.patch"
- "hdf4-tirpc.patch"))))
+ (base32 "0b395czhqr43mmbiifmg2mhb488wnd4zccj45vpql98ja15j7hy5"))
+ (patches (search-patches "hdf4-reproducibility.patch"
+ "hdf4-shared-fortran.patch"))))
(build-system gnu-build-system)
(native-inputs
(list gfortran bison flex))
@@ -1345,9 +1343,7 @@ (define-public hdf4
#:configure-flags (list "--enable-shared"
"FCFLAGS=-fallow-argument-mismatch"
"FFLAGS=-fallow-argument-mismatch"
- (string-append "CPPFLAGS=-I"
- (assoc-ref %build-inputs "libtirpc")
- "/include/tirpc"))
+ "--enable-hdf4-xdr")
#:phases
(modify-phases %standard-phases
;; This is inspired by two of Debian's patches.
@@ -1362,14 +1358,7 @@ (define-public hdf4
(substitute*
'("mfhdf/hdfimport/testutil.sh.in" "hdf/util/testutil.sh.in")
(("/bin/rm") "rm")
- (("/bin/mkdir") "mkdir"))
- (substitute* (find-files "." "^Makefile\\.in$")
- (("@HDF_BUILD_XDR_TRUE@XDR_ADD = \
--R\\$\\(abs_top_builddir\\)/mfhdf/xdr/\\.libs") "")
- (("@HDF_BUILD_SHARED_TRUE@AM_LDFLAGS = \
--R\\$\\(abs_top_builddir\\)/mfhdf/libsrc/\\.libs \
--R\\$\\(abs_top_builddir\\)/hdf/src/\\.libs \\$\\(XDR_ADD\\)") ""))
- #t))
+ (("/bin/mkdir") "mkdir"))))
(add-after 'configure 'patch-settings
(lambda _
;; libhdf4.settings contains the full path of the
@@ -1389,8 +1378,7 @@ (define-public hdf4
;; files. Fix it manually to avoid having to propagate it.
(substitute* (find-files (string-append out "/lib") "\\.la$")
(("-ljpeg")
- (string-append "-L" libjpeg "/lib -ljpeg")))
- #t))))))
+ (string-append "-L" libjpeg "/lib -ljpeg")))))))))
(home-page "https://www.hdfgroup.org/products/hdf4/")
(synopsis
"Library and multi-object file format for storing and managing data")
diff --git a/gnu/packages/patches/hdf4-architectures.patch b/gnu/packages/patches/hdf4-architectures.patch
deleted file mode 100644
index aa71d5a383..0000000000
--- a/gnu/packages/patches/hdf4-architectures.patch
+++ /dev/null
@@ -1,632 +0,0 @@
-Copied from Debian.
-
-Description: Support additional architectures.
-Author: Francesco Paolo Lovergine <frankie@debian.org>
-
---- a/hdf/src/hdfi.h
-+++ b/hdf/src/hdfi.h
-@@ -48,6 +48,7 @@
- /* 8 - Cray IEEE */
- /* (i.e. Big-Endian, all 64-bit architecture w/IEEE Floats) */
- /*--------------------------------------------------------------------------*/
-+#define DFMT_S390 0x1111
- #define DFMT_SUN 0x1111
- #define DFMT_SUN_INTEL 0x4441
- #define DFMT_ALLIANT 0x1111
-@@ -62,6 +63,7 @@
- #define DFMT_CTSS 0x3331
- #define DFMT_VAX 0x2221
- #define DFMT_MIPSEL 0x4441
-+#define DFMT_MIPSEB 0x1111
- #define DFMT_PC 0x4441
- #define DFMT_APPLE 0x1111
- #define DFMT_APPLE_INTEL 0x4441
-@@ -75,6 +77,13 @@
- #define DFMT_IA64 0x4441
- #define DFMT_LINUX64 0x4441
- #define DFMT_POWERPC64 0x1111
-+#define DFMT_POWERPC64LE 0x4441
-+#define DFMT_ARMV4L 0x4441
-+#define DFMT_AARCH64 0x4441
-+#define DFMT_X86_64 0x4441
-+#define DFMT_SH 0x4441
-+#define DFMT_SHEB 0x1111
-+#define DFMT_RISCV64 0x4441
-
- /* I/O library constants */
- #define UNIXUNBUFIO 1
-@@ -288,7 +297,7 @@ typedef int hdf_pint_t;
-
- #endif /* IBM6000 */
-
--#if defined(HP9000) || (!defined(__convexc__) && (defined(hpux) || defined(__hpux)))
-+#if defined(HP9000) || (!defined(__convexc__) && (defined(hpux) || defined(__hpux) || defined(__hppa__)))
-
- #ifndef HP9000
- #define HP9000
-@@ -347,6 +356,10 @@ typedef int hdf_pint_t;
- /* what each does */
- #define JMEMSYS MEM_ANSI
-
-+#ifdef __linux__
-+#define FNAME_POST_UNDERSCORE
-+#endif
-+
- #endif /* HP9000 */
-
-
-@@ -670,6 +683,462 @@ typedef int hdf_pint_t;
- #endif /* !(defined(__APPLE__)) */
-
- /*-----------------------------------------------------*/
-+#if defined (__linux__) && defined (__mc68000__)
-+
-+#ifdef GOT_MACHINE
-+If you get an error on this line more than one machine type has been defined.
-+Please check your Makefile.
-+#endif
-+#define GOT_MACHINE 1
-+
-+#include <fcntl.h>
-+#include <sys/types.h> /* for unbuffered file I/O */
-+#include <sys/stat.h>
-+#include <unistd.h>
-+#include <ctype.h> /* for character macros */
-+
-+#define DF_MT DFMT_MOTOROLA
-+
-+#ifndef VOID /* The stupid windows.h header file uses a #define instead of a typedef */
-+typedef void VOID;
-+#endif /* end VOID */
-+typedef void * VOIDP;
-+typedef char * _fcd;
-+typedef char char8;
-+typedef unsigned char uchar8;
-+typedef char int8;
-+typedef unsigned char uint8;
-+typedef short int int16;
-+typedef unsigned short int uint16;
-+typedef long int int32;
-+typedef unsigned long int uint32;
-+typedef int intn;
-+typedef unsigned int uintn;
-+typedef float float32;
-+typedef double float64;
-+typedef long intf; /* size of INTEGERs in Fortran compiler */
-+typedef int hdf_pint_t; /* an integer the same size as a pointer */
-+#define FNAME_POST_UNDERSCORE
-+#define _fcdtocp(desc) (desc)
-+
-+#ifdef HAVE_FMPOOL
-+#define FILELIB PAGEBUFIO /* enable page buffering */
-+#else
-+#define FILELIB UNIXBUFIO
-+#endif
-+
-+/* JPEG #define's - Look in the JPEG docs before changing - (Q) */
-+
-+/* Determine the memory manager we are going to use. Valid values are: */
-+/* MEM_DOS, MEM_ANSI, MEM_NAME, MEM_NOBS. See the JPEG docs for details on */
-+/* what each does */
-+#define JMEMSYS MEM_ANSI
-+#define HAVE_STDC
-+#define INCLUDES_ARE_ANSI
-+
-+#endif /* Linux/m68k */
-+
-+#if defined (__linux__) && defined (__sparc__)
-+
-+#ifdef GOT_MACHINE
-+If you get an error on this line more than one machine type has been defined.
-+Please check your Makefile.
-+#endif
-+#define GOT_MACHINE 1
-+
-+#include <fcntl.h>
-+#include <sys/types.h> /* for unbuffered file I/O */
-+#include <sys/stat.h>
-+#include <unistd.h>
-+#include <ctype.h> /* for character macros */
-+
-+#define DF_MT DFMT_SUN
-+
-+#ifndef VOID /* The stupid windows.h header file uses a #define instead of a typedef */
-+typedef void VOID;
-+#endif /* end VOID */
-+typedef void * VOIDP;
-+typedef char * _fcd;
-+typedef char char8;
-+typedef unsigned char uchar8;
-+typedef char int8;
-+typedef unsigned char uint8;
-+typedef short int int16;
-+typedef unsigned short int uint16;
-+#ifdef _LP64 /* 64-bit environment */
-+typedef int int32;
-+typedef unsigned int uint32;
-+#else /* 32-bit environment */
-+typedef long int int32;
-+typedef unsigned long int uint32;
-+#endif
-+typedef int intn;
-+typedef unsigned int uintn;
-+typedef float float32;
-+typedef double float64;
-+typedef long intf; /* size of INTEGERs in Fortran compiler */
-+#ifdef _LP64 /* 64-bit environment */
-+typedef long hdf_pint_t; /* an integer the same size as a pointer */
-+#else /* 32-bit environment */
-+typedef int hdf_pint_t; /* an integer the same size as a pointer */
-+#endif
-+#define FNAME_POST_UNDERSCORE
-+#define _fcdtocp(desc) (desc)
-+
-+#ifdef HAVE_FMPOOL
-+#define FILELIB PAGEBUFIO /* enable page buffering */
-+#else
-+#define FILELIB UNIXBUFIO
-+#endif
-+
-+/* JPEG #define's - Look in the JPEG docs before changing - (Q) */
-+
-+/* Determine the memory manager we are going to use. Valid values are: */
-+/* MEM_DOS, MEM_ANSI, MEM_NAME, MEM_NOBS. See the JPEG docs for details on */
-+/* what each does */
-+#define JMEMSYS MEM_ANSI
-+#define HAVE_STDC
-+#define INCLUDES_ARE_ANSI
-+
-+#endif /* Linux/Sparc */
-+
-+#if defined (__linux__) && defined (__powerpc__) && !defined(__powerpc64__)
-+
-+#ifdef GOT_MACHINE
-+If you get an error on this line more than one machine type has been defined.
-+Please check your Makefile.
-+#endif
-+#define GOT_MACHINE 1
-+
-+#include <fcntl.h>
-+#include <sys/types.h> /* for unbuffered file I/O */
-+#include <sys/stat.h>
-+#include <unistd.h>
-+#include <ctype.h> /* for character macros */
-+
-+#define DF_MT DFMT_MOTOROLA
-+
-+#ifndef VOID /* The stupid windows.h header file uses a #define instead of a typedef */
-+typedef void VOID;
-+#endif /* end VOID */
-+typedef void * VOIDP;
-+typedef char * _fcd;
-+typedef char char8;
-+typedef unsigned char uchar8;
-+typedef signed char int8;
-+typedef unsigned char uint8;
-+typedef short int int16;
-+typedef unsigned short int uint16;
-+typedef long int int32;
-+typedef unsigned long int uint32;
-+typedef int intn;
-+typedef unsigned int uintn;
-+typedef float float32;
-+typedef double float64;
-+typedef long intf; /* size of INTEGERs in Fortran compiler */
-+typedef int hdf_pint_t; /* an integer the same size as a pointer */
-+#define FNAME_POST_UNDERSCORE
-+#define _fcdtocp(desc) (desc)
-+
-+#ifdef HAVE_FMPOOL
-+#define FILELIB PAGEBUFIO /* enable page buffering */
-+#else
-+#define FILELIB UNIXBUFIO
-+#endif
-+
-+/* JPEG #define's - Look in the JPEG docs before changing - (Q) */
-+
-+/* Determine the memory manager we are going to use. Valid values are: */
-+/* MEM_DOS, MEM_ANSI, MEM_NAME, MEM_NOBS. See the JPEG docs for details on */
-+/* what each does */
-+#define JMEMSYS MEM_ANSI
-+#define HAVE_STDC
-+#define INCLUDES_ARE_ANSI
-+
-+#endif /* Linux/powerpc */
-+
-+#if defined (__linux__) && defined (__s390__)
-+
-+#ifdef GOT_MACHINE
-+If you get an error on this line more than one machine type has been defined.
-+Please check your Makefile.
-+#endif
-+#define GOT_MACHINE 1
-+
-+#include <fcntl.h>
-+#include <sys/types.h> /* for unbuffered file I/O */
-+#include <sys/stat.h>
-+#include <unistd.h>
-+#include <ctype.h> /* for character macros */
-+
-+#define DF_MT DFMT_S390
-+
-+#ifndef VOID /* The stupid windows.h header file uses a #define instead of a typedef */
-+typedef void VOID;
-+#endif /* end VOID */
-+typedef void * VOIDP;
-+typedef char * _fcd;
-+typedef char char8;
-+typedef unsigned char uchar8;
-+typedef signed char int8;
-+typedef unsigned char uint8;
-+typedef short int int16;
-+typedef unsigned short int uint16;
-+#ifdef _LP64 /* 64-bit environment */
-+typedef int int32;
-+typedef unsigned int uint32;
-+#else /* 32-bit environment */
-+typedef long int int32;
-+typedef unsigned long int uint32;
-+#endif
-+typedef int intn;
-+typedef unsigned int uintn;
-+typedef float float32;
-+typedef double float64;
-+typedef long intf; /* size of INTEGERs in Fortran compiler */
-+#ifdef _LP64 /* 64-bit environment */
-+typedef long hdf_pint_t; /* an integer the same size as a pointer */
-+#else /* 32-bit environment */
-+typedef int hdf_pint_t; /* an integer the same size as a pointer */
-+#endif
-+#define FNAME_POST_UNDERSCORE
-+#define _fcdtocp(desc) (desc)
-+
-+#ifdef HAVE_FMPOOL
-+#define FILELIB PAGEBUFIO /* enable page buffering */
-+#else
-+#define FILELIB UNIXBUFIO
-+#endif
-+
-+/* JPEG #define's - Look in the JPEG docs before changing - (Q) */
-+
-+/* Determine the memory manager we are going to use. Valid values are: */
-+/* MEM_DOS, MEM_ANSI, MEM_NAME, MEM_NOBS. See the JPEG docs for details on */
-+/* what each does */
-+#define JMEMSYS MEM_ANSI
-+#define HAVE_STDC
-+#define INCLUDES_ARE_ANSI
-+
-+#endif /* Linux/s390 */
-+
-+#if defined (__linux__) && (defined (__MIPSEB__) || defined(__MIPSEL__))
-+
-+#ifdef GOT_MACHINE
-+If you get an error on this line more than one machine type has been defined.
-+Please check your Makefile.
-+#endif
-+#define GOT_MACHINE 1
-+
-+#include <fcntl.h>
-+#include <sys/types.h> /* for unbuffered file I/O */
-+#include <sys/stat.h>
-+#include <unistd.h>
-+#include <ctype.h> /* for character macros */
-+
-+#if defined (__MIPSEB__)
-+#define DF_MT DFMT_MIPSEB
-+#elif defined(__MIPSEL__)
-+#define DF_MT DFMT_MIPSEL
-+#endif
-+
-+#ifndef VOID /* The stupid windows.h header file uses a #define instead of a typedef */
-+typedef void VOID;
-+#endif /* end VOID */
-+typedef void * VOIDP;
-+typedef char * _fcd;
-+typedef char char8;
-+typedef unsigned char uchar8;
-+typedef signed char int8;
-+typedef unsigned char uint8;
-+typedef short int int16;
-+typedef unsigned short int uint16;
-+typedef int int32;
-+typedef unsigned int uint32;
-+typedef int intn;
-+typedef unsigned int uintn;
-+typedef float float32;
-+typedef double float64;
-+typedef long intf; /* size of INTEGERs in Fortran compiler */
-+typedef long int hdf_pint_t; /* an integer the same size as a pointer */
-+#define FNAME_POST_UNDERSCORE
-+#define _fcdtocp(desc) (desc)
-+
-+#ifdef HAVE_FMPOOL
-+#define FILELIB PAGEBUFIO /* enable page buffering */
-+#else
-+#define FILELIB UNIXBUFIO
-+#endif
-+
-+/* JPEG #define's - Look in the JPEG docs before changing - (Q) */
-+
-+/* Determine the memory manager we are going to use. Valid values are: */
-+/* MEM_DOS, MEM_ANSI, MEM_NAME, MEM_NOBS. See the JPEG docs for details on */
-+/* what each does */
-+#define JMEMSYS MEM_ANSI
-+#define HAVE_STDC
-+#define INCLUDES_ARE_ANSI
-+
-+#endif /* Linux/mips */
-+
-+#if defined (__linux__) && defined (__arm__)
-+
-+#ifdef GOT_MACHINE
-+If you get an error on this line more than one machine type has been defined.
-+Please check your Makefile.
-+#endif
-+#define GOT_MACHINE 1
-+
-+#include <fcntl.h>
-+#include <sys/types.h> /* for unbuffered file I/O */
-+#include <sys/stat.h>
-+#include <unistd.h>
-+#include <ctype.h> /* for character macros */
-+
-+#define DF_MT DFMT_ARMV4L
-+
-+#ifndef VOID /* The stupid windows.h header file uses a #define instead of a typedef */
-+typedef void VOID;
-+#endif /* end VOID */
-+typedef void * VOIDP;
-+typedef char * _fcd;
-+typedef char char8;
-+typedef unsigned char uchar8;
-+typedef signed char int8;
-+typedef unsigned char uint8;
-+typedef short int int16;
-+typedef unsigned short int uint16;
-+typedef int int32;
-+typedef unsigned int uint32;
-+typedef int intn;
-+typedef unsigned int uintn;
-+typedef float float32;
-+typedef double float64;
-+typedef long intf; /* size of INTEGERs in Fortran compiler */
-+typedef long hdf_pint_t; /* an integer the same size as a pointer */
-+#define FNAME_POST_UNDERSCORE
-+#define _fcdtocp(desc) (desc)
-+
-+#ifdef HAVE_FMPOOL
-+#define FILELIB PAGEBUFIO /* enable page buffering */
-+#else
-+#define FILELIB UNIXBUFIO
-+#endif
-+
-+/* JPEG #define's - Look in the JPEG docs before changing - (Q) */
-+
-+/* Determine the memory manager we are going to use. Valid values are: */
-+/* MEM_DOS, MEM_ANSI, MEM_NAME, MEM_NOBS. See the JPEG docs for details on */
-+/* what each does */
-+#define JMEMSYS MEM_ANSI
-+#define HAVE_STDC
-+#define INCLUDES_ARE_ANSI
-+
-+#endif /* Linux/arm */
-+
-+#if defined (__linux__) && defined (__aarch64__)
-+
-+#ifdef GOT_MACHINE
-+If you get an error on this line more than one machine type has been defined.
-+Please check your Makefile.
-+#endif
-+#define GOT_MACHINE 1
-+
-+#include <fcntl.h>
-+#include <sys/types.h> /* for unbuffered file I/O */
-+#include <sys/stat.h>
-+#include <unistd.h>
-+#include <ctype.h> /* for character macros */
-+
-+#define DF_MT DFMT_AARCH64
-+
-+typedef void VOID;
-+typedef void * VOIDP;
-+typedef char * _fcd;
-+typedef char char8;
-+typedef unsigned char uchar8;
-+typedef signed char int8;
-+typedef unsigned char uint8;
-+typedef short int int16;
-+typedef unsigned short int uint16;
-+typedef int int32;
-+typedef unsigned int uint32;
-+typedef int intn;
-+typedef unsigned int uintn;
-+typedef float float
This message was truncated. Download the full message here.
A
A
Andreas Enge wrote on 13 Sep 2023 11:20
Close
(address . 65443-done@debbugs.gnu.org)
ZQF-9_nxtXEMHEqJ@jurong
Applied, closing.

Andreas
Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 65443@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 65443
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch