gnu: hdf4, hdf4-alt: Update to 4.2.16-2.
* 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.
This commit is contained in:
		
							parent
							
								
									c30c9df5e9
								
							
						
					
					
						commit
						6a01c1142b
					
				
					 4 changed files with 8 additions and 687 deletions
				
			
		| 
						 | 
				
			
			@ -1372,10 +1372,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		\
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -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 @@ computations.")
 | 
			
		|||
(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 @@ computations.")
 | 
			
		|||
       #: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 @@ computations.")
 | 
			
		|||
             (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 @@ computations.")
 | 
			
		|||
               ;; 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")
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -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             float32;
 | 
			
		||||
+typedef double            float64;
 | 
			
		||||
+typedef int               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)
 | 
			
		||||
+#define FILELIB UNIXBUFIO
 | 
			
		||||
+
 | 
			
		||||
+#ifndef BIG_LONGS
 | 
			
		||||
+#define BIG_LONGS
 | 
			
		||||
+#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/aarch64 */
 | 
			
		||||
+
 | 
			
		||||
+#if defined (__linux__) && defined (__riscv) && (__riscv_xlen == 64)
 | 
			
		||||
+
 | 
			
		||||
+#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_RISCV64
 | 
			
		||||
+
 | 
			
		||||
+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             float32;
 | 
			
		||||
+typedef double            float64;
 | 
			
		||||
+typedef int               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)
 | 
			
		||||
+#define FILELIB UNIXBUFIO
 | 
			
		||||
+
 | 
			
		||||
+#ifndef BIG_LONGS
 | 
			
		||||
+#define BIG_LONGS
 | 
			
		||||
+#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/riscv64 */
 | 
			
		||||
+
 | 
			
		||||
 #if defined(NEXT) || defined(NeXT)
 | 
			
		||||
 
 | 
			
		||||
 #ifndef NEXT
 | 
			
		||||
@@ -932,7 +1401,11 @@ Please check your Makefile.
 | 
			
		||||
 
 | 
			
		||||
 #include <sys/file.h>               /* for unbuffered i/o stuff */
 | 
			
		||||
 #include <sys/stat.h>
 | 
			
		||||
-#define DF_MT             DFMT_POWERPC64
 | 
			
		||||
+#ifdef __LITTLE_ENDIAN__
 | 
			
		||||
+#define DF_MT DFMT_POWERPC64LE
 | 
			
		||||
+#else
 | 
			
		||||
+#define DF_MT DFMT_POWERPC64
 | 
			
		||||
+#endif
 | 
			
		||||
 typedef void              VOID;
 | 
			
		||||
 typedef void              *VOIDP;
 | 
			
		||||
 typedef char              *_fcd;
 | 
			
		||||
@@ -956,6 +1429,11 @@ typedef long              hdf_pint_t;
 | 
			
		||||
 #define _fcdtocp(desc) (desc)
 | 
			
		||||
 #define FILELIB UNIXBUFIO
 | 
			
		||||
 
 | 
			
		||||
+#ifndef BIG_LONGS
 | 
			
		||||
+#define BIG_LONGS
 | 
			
		||||
+#endif
 | 
			
		||||
+
 | 
			
		||||
+
 | 
			
		||||
 /* JPEG #define's - Look in the JPEG docs before changing - (Q) */
 | 
			
		||||
 
 | 
			
		||||
 /* Determine the memory manager we are going to use. Valid values are: */
 | 
			
		||||
@@ -1101,6 +1579,8 @@ typedef long              hdf_pint_t;
 | 
			
		||||
 #define _fcdtocp(desc) (desc)
 | 
			
		||||
 #define FILELIB UNIXBUFIO
 | 
			
		||||
 
 | 
			
		||||
+#define BIG_LONGS
 | 
			
		||||
+
 | 
			
		||||
 /* JPEG #define's - Look in the JPEG docs before changing - (Q) */
 | 
			
		||||
 
 | 
			
		||||
 /* Determine the memory manager we are going to use. Valid values are: */
 | 
			
		||||
@@ -1115,6 +1595,66 @@ typedef long              hdf_pint_t;
 | 
			
		||||
 
 | 
			
		||||
 #endif /* IA64 */
 | 
			
		||||
 
 | 
			
		||||
+/* Renesas SuperH SH3(little/big)/SH4(little/big) */
 | 
			
		||||
+#if defined (__linux__) && defined(__sh__)
 | 
			
		||||
+
 | 
			
		||||
+#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 (__LITTLE_ENDIAN__)
 | 
			
		||||
+#define DF_MT             DFMT_SH
 | 
			
		||||
+#elif defined(__BIG_ENDIAN__)
 | 
			
		||||
+#define DF_MT		  DFMT_SHEB
 | 
			
		||||
+#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 long int          int32;
 | 
			
		||||
+typedef unsigned long int uint32;
 | 
			
		||||
+typedef int               intn;
 | 
			
		||||
+typedef unsigned int      uintn;
 | 
			
		||||
+typedef float             float32;
 | 
			
		||||
+typedef double            float64;
 | 
			
		||||
+typedef long              intf;
 | 
			
		||||
+typedef int               hdf_pint_t;
 | 
			
		||||
+#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/sh */
 | 
			
		||||
+
 | 
			
		||||
 #ifndef GOT_MACHINE
 | 
			
		||||
 No machine type has been defined.  Your Makefile needs to have someing like
 | 
			
		||||
 -DSUN or -DUNICOS in order for the HDF internal structures to be defined
 | 
			
		||||
--- a/hdf/src/hconv.h
 | 
			
		||||
+++ b/hdf/src/hconv.h
 | 
			
		||||
@@ -59,7 +59,7 @@
 | 
			
		||||
 /* CONSTANT DEFINITIONS                                                      */
 | 
			
		||||
 /*****************************************************************************/
 | 
			
		||||
 /* Generally Big-Endian machines */
 | 
			
		||||
-#if !defined(INTEL86) && !defined(MIPSEL) && !defined(DEC_ALPHA) && !defined(I860) && !defined(SUN386) && !(defined(__ia64) && !(defined(hpux) || defined(__hpux))) && !defined(__x86_64__)
 | 
			
		||||
+#if !defined(INTEL86) && !defined(MIPSEL) && !defined(DEC_ALPHA) && !defined(I860) && !defined(SUN386) && !(defined(__ia64) && !(defined(hpux) || defined(__hpux))) && !defined(__x86_64__) && !(defined(__powerpc__) && defined(__LITTLE_ENDIAN__)) && !defined(__aarch64__) && !defined(__ARM_EABI__) && !defined(__riscv)
 | 
			
		||||
 #       define UI8_IN     DFKnb1b   /* Unsigned Integer, 8 bits */
 | 
			
		||||
 #       define UI8_OUT    DFKnb1b
 | 
			
		||||
 #       define SI16_IN    DFKnb2b   /* S = Signed */
 | 
			
		||||
| 
						 | 
				
			
			@ -1,33 +0,0 @@
 | 
			
		|||
Build with libtirpc on all architectures because glibc no longer provides
 | 
			
		||||
SunRPC support.
 | 
			
		||||
 | 
			
		||||
diff --git a/configure b/configure
 | 
			
		||||
--- a/configure
 | 
			
		||||
+++ b/configure
 | 
			
		||||
@@ -23635,10 +23635,13 @@
 | 
			
		||||
   *-pc-cygwin*)
 | 
			
		||||
     LIBS="$LIBS -ltirpc"
 | 
			
		||||
     CPPFLAGS="$CPPFLAGS -I/usr/include/tirpc"  ;;
 | 
			
		||||
+  *-linux-gnu)
 | 
			
		||||
+    LIBS="$LIBS -ltirpc"
 | 
			
		||||
+    CPPFLAGS="$CPPFLAGS"  ;;
 | 
			
		||||
   *) ;;
 | 
			
		||||
 esac
 | 
			
		||||
 
 | 
			
		||||
-if test "X$BUILD_XDR" != "Xyes"; then
 | 
			
		||||
+if test "X$BUILD_XDR" = "Xyes"; then
 | 
			
		||||
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 | 
			
		||||
 /* end confdefs.h.  */
 | 
			
		||||
 
 | 
			
		||||
@@ -23693,9 +23696,9 @@
 | 
			
		||||
   ## but we need to make sure that it is present on the system. Do that here,
 | 
			
		||||
   ## The SunRPC of the glibc has been replaced by a TI-RPC (Transport Independent RPC) library for IPv6 support
 | 
			
		||||
   case "$host" in
 | 
			
		||||
-    *-pc-cygwin*)
 | 
			
		||||
+    *)
 | 
			
		||||
       HAVE_RPC="yes"
 | 
			
		||||
-      ac_fn_c_check_header_mongrel "$LINENO" "rpc.h" "ac_cv_header_rpc_h" "$ac_includes_default"
 | 
			
		||||
+      ac_fn_c_check_header_mongrel "$LINENO" "rpc/rpc.h" "ac_cv_header_rpc_h" "$ac_includes_default"
 | 
			
		||||
 if test "x$ac_cv_header_rpc_h" = xyes; then :
 | 
			
		||||
   :
 | 
			
		||||
 else
 | 
			
		||||
		Reference in a new issue