Mercurial > mxe-octave
diff src/mingw-hdf5-1.patch @ 5430:98bcc037fad7
* src/hdf5.mk: Update version to 1.12.0. Use cmake for Windows cross targets.
* src/hdf5-1-fixes.patch: Remove patch.
* src/mingw-hdf5-1.patch: Update patch.
* dist-files.mk: Remove file from list.
* src/of-communictaions.mk: Use pkg-config for linking in hdf5.
author | Markus Mützel <markus.muetzel@gmx.de> |
---|---|
date | Mon, 25 May 2020 18:14:52 +0200 |
parents | 5159c01c3c26 |
children | de66eba9951c |
line wrap: on
line diff
--- a/src/mingw-hdf5-1.patch Wed May 27 14:14:50 2020 -0400 +++ b/src/mingw-hdf5-1.patch Mon May 25 18:14:52 2020 +0200 @@ -47,22 +47,11 @@ +} + +print ";\n" -diff -rNu a/configure.ac b/configure.ac ---- a/configure.ac 2012-10-26 20:14:41.000000000 -0400 -+++ b/configure.ac 2014-09-01 11:49:54.457674075 -0400 -@@ -1045,7 +1045,7 @@ - ## Create libtool. If shared/static libraries are going to be enabled - ## or disabled, it should happen before these macros. - LT_PREREQ([2.2]) --LT_INIT([dlopen]) -+LT_INIT([win32-dll dlopen]) - - ## ---------------------------------------------------------------------- - ## Check if we should install only statically linked executables. + diff -rNu a/src/H5Tinit.c.mingw32 b/src/H5Tinit.c.mingw32 --- a/src/H5Tinit.c.mingw32 1969-12-31 19:00:00.000000000 -0500 +++ b/src/H5Tinit.c.mingw32 2014-09-01 11:49:54.461673944 -0400 -@@ -0,0 +1,978 @@ +@@ -0,0 +1,977 @@ +/* Generated automatically by H5detect -- do not edit */ + + @@ -74,15 +63,12 @@ + * * + * This file is part of HDF5. The full HDF5 copyright notice, including * + * terms governing use, modification, and redistribution, is contained in * -+ * the files COPYING and Copyright.html. COPYING can be found at the root * -+ * of the source code distribution tree; Copyright.html can be found at the * -+ * root level of an installed copy of the electronic HDF5 document set and * -+ * is linked from the top-level documents page. It can also be found at * -+ * http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * -+ * access to either file, you may request a copy from help@hdfgroup.org. * -+ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * -+ * -+ * Created: Nov 29, 2012 ++ * the COPYING file, which can be found at the root of the source code * ++ * distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. * ++ * If you do not have access to either file, you may request a copy from * ++ * help@hdfgroup.org. * ++ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ++ * Created: May 26, 2020 + * + * + * Purpose: This machine-generated source code contains @@ -96,7 +82,7 @@ + * printed from most significant bit to least + * significant bit even though the actual bytes + * might be stored in a different order in -+ * memory. The integers above each binary byte ++ * memory. The integers above each binary byte + * indicate the relative order of the bytes in + * memory; little-endian machines have + * decreasing numbers while big-endian machines @@ -107,8 +93,8 @@ + * `M' for the mantissa magnitude, and `E' for + * the exponent. The exponent has an associated + * bias which can be subtracted to find the -+ * true exponent. The radix point is assumed -+ * to be before the first `M' bit. Any bit ++ * true exponent. The radix point is assumed ++ * to be before the first `M' bit. Any bit + * of a floating-point value not falling into one + * of these categories is printed as a question + * mark. Bits of integer types are printed as @@ -117,7 +103,7 @@ + * If the most significant bit of the normalized + * mantissa (always a `1' except for `0.0') is + * not stored then an `implicit=yes' appears -+ * under the field description. In thie case, ++ * under the field description. In this case, + * the radix point is still assumed to be + * before the first `M' but after the implicit + * bit. @@ -134,17 +120,17 @@ +/* Module Setup */ +/****************/ + -+#define H5T_PACKAGE /*suppress error about including H5Tpkg.h*/ ++#include "H5Tmodule.h" /* This source code file is part of the H5T module */ + + +/***********/ +/* Headers */ +/***********/ -+#include "H5private.h" /* Generic Functions */ -+#include "H5Eprivate.h" /* Error handling */ -+#include "H5FLprivate.h" /* Free Lists */ -+#include "H5Iprivate.h" /* IDs */ -+#include "H5Tpkg.h" /* Datatypes */ ++#include "H5private.h" /* Generic Functions */ ++#include "H5Eprivate.h" /* Error handling */ ++#include "H5FLprivate.h" /* Free Lists */ ++#include "H5Iprivate.h" /* IDs */ ++#include "H5Tpkg.h" /* Datatypes */ + + +/****************/ @@ -190,26 +176,26 @@ + + +/*------------------------------------------------------------------------- -+ * Function: H5TN_init_interface ++ * Function: H5T__init_native + * -+ * Purpose: Initialize pre-defined native datatypes from code generated ++ * Purpose: Initialize pre-defined native datatypes from code generated + * during the library configuration by H5detect. + * -+ * Return: Success: non-negative -+ * Failure: negative ++ * Return: Success: non-negative ++ * Failure: negative + * -+ * Programmer: Robb Matzke ++ * Programmer: Robb Matzke + * Wednesday, December 16, 1998 + * + *------------------------------------------------------------------------- + */ +herr_t -+H5TN_init_interface(void) ++H5T__init_native(void) +{ -+ H5T_t *dt = NULL; -+ herr_t ret_value = SUCCEED; ++ H5T_t *dt = NULL; ++ herr_t ret_value = SUCCEED; + -+ FUNC_ENTER_NOAPI(FAIL) ++ FUNC_ENTER_PACKAGE + + /* + * 0 @@ -1008,11 +994,12 @@ + /* Set the native order for this machine */ + H5T_native_order_g = H5T_ORDER_LE; + -+ /* Structure alignment for pointers, hvl_t, hobj_ref_t, hdset_reg_ref_t */ ++ /* Structure alignment for pointers, vlen and reference types */ + H5T_POINTER_COMP_ALIGN_g = 4; + H5T_HVL_COMP_ALIGN_g = 4; + H5T_HOBJREF_COMP_ALIGN_g = 8; + H5T_HDSETREGREF_COMP_ALIGN_g = 1; ++ H5T_REF_COMP_ALIGN_g = 8; + +done: + if(ret_value < 0) { @@ -1023,7 +1010,7 @@ + } /* end if */ + + FUNC_LEAVE_NOAPI(ret_value); -+} /* end H5TN_init_interface() */ ++} /* end H5T__init_native() */ + +/****************************************/ +/* ALIGNMENT and signal-handling status */ @@ -1038,13 +1025,15 @@ +/******************************/ +/* signal handlers statistics */ +/******************************/ -+/* signal_handlers tested: 10 times */ ++/* signal_handlers tested: 15 times */ +/* sigbus_handler called: 5 times */ +/* sigsegv_handler called: 5 times */ ++/* sigill_handler called: 5 times */ + diff -rNu a/src/H5Tinit.c.mingw64 b/src/H5Tinit.c.mingw64 --- a/src/H5Tinit.c.mingw64 1969-12-31 19:00:00.000000000 -0500 +++ b/src/H5Tinit.c.mingw64 2014-09-01 11:52:24.240756904 -0400 -@@ -0,0 +1,980 @@ +@@ -0,0 +1,979 @@ +/* Generated automatically by H5detect -- do not edit */ + + @@ -1056,15 +1045,12 @@ + * * + * This file is part of HDF5. The full HDF5 copyright notice, including * + * terms governing use, modification, and redistribution, is contained in * -+ * the files COPYING and Copyright.html. COPYING can be found at the root * -+ * of the source code distribution tree; Copyright.html can be found at the * -+ * root level of an installed copy of the electronic HDF5 document set and * -+ * is linked from the top-level documents page. It can also be found at * -+ * http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * -+ * access to either file, you may request a copy from help@hdfgroup.org. * -+ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * -+ * -+ * Created: Aug 31, 2014 ++ * the COPYING file, which can be found at the root of the source code * ++ * distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. * ++ * If you do not have access to either file, you may request a copy from * ++ * help@hdfgroup.org. * ++ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ++ * Created: May 22, 2020 + * + * + * Purpose: This machine-generated source code contains @@ -1078,7 +1064,7 @@ + * printed from most significant bit to least + * significant bit even though the actual bytes + * might be stored in a different order in -+ * memory. The integers above each binary byte ++ * memory. The integers above each binary byte + * indicate the relative order of the bytes in + * memory; little-endian machines have + * decreasing numbers while big-endian machines @@ -1089,8 +1075,8 @@ + * `M' for the mantissa magnitude, and `E' for + * the exponent. The exponent has an associated + * bias which can be subtracted to find the -+ * true exponent. The radix point is assumed -+ * to be before the first `M' bit. Any bit ++ * true exponent. The radix point is assumed ++ * to be before the first `M' bit. Any bit + * of a floating-point value not falling into one + * of these categories is printed as a question + * mark. Bits of integer types are printed as @@ -1099,7 +1085,7 @@ + * If the most significant bit of the normalized + * mantissa (always a `1' except for `0.0') is + * not stored then an `implicit=yes' appears -+ * under the field description. In thie case, ++ * under the field description. In this case, + * the radix point is still assumed to be + * before the first `M' but after the implicit + * bit. @@ -1116,17 +1102,17 @@ +/* Module Setup */ +/****************/ + -+#define H5T_PACKAGE /*suppress error about including H5Tpkg.h*/ ++#include "H5Tmodule.h" /* This source code file is part of the H5T module */ + + +/***********/ +/* Headers */ +/***********/ -+#include "H5private.h" /* Generic Functions */ -+#include "H5Eprivate.h" /* Error handling */ -+#include "H5FLprivate.h" /* Free Lists */ -+#include "H5Iprivate.h" /* IDs */ -+#include "H5Tpkg.h" /* Datatypes */ ++#include "H5private.h" /* Generic Functions */ ++#include "H5Eprivate.h" /* Error handling */ ++#include "H5FLprivate.h" /* Free Lists */ ++#include "H5Iprivate.h" /* IDs */ ++#include "H5Tpkg.h" /* Datatypes */ + + +/****************/ @@ -1172,26 +1158,26 @@ + + +/*------------------------------------------------------------------------- -+ * Function: H5TN_init_interface ++ * Function: H5T__init_native + * -+ * Purpose: Initialize pre-defined native datatypes from code generated ++ * Purpose: Initialize pre-defined native datatypes from code generated + * during the library configuration by H5detect. + * -+ * Return: Success: non-negative -+ * Failure: negative ++ * Return: Success: non-negative ++ * Failure: negative + * -+ * Programmer: Robb Matzke ++ * Programmer: Robb Matzke + * Wednesday, December 16, 1998 + * + *------------------------------------------------------------------------- + */ +herr_t -+H5TN_init_interface(void) ++H5T__init_native(void) +{ -+ H5T_t *dt = NULL; -+ herr_t ret_value = SUCCEED; ++ H5T_t *dt = NULL; ++ herr_t ret_value = SUCCEED; + -+ FUNC_ENTER_NOAPI(FAIL) ++ FUNC_ENTER_PACKAGE + + /* + * 0 @@ -1992,11 +1978,12 @@ + /* Set the native order for this machine */ + H5T_native_order_g = H5T_ORDER_LE; + -+ /* Structure alignment for pointers, hvl_t, hobj_ref_t, hdset_reg_ref_t */ ++ /* Structure alignment for pointers, vlen and reference types */ + H5T_POINTER_COMP_ALIGN_g = 8; + H5T_HVL_COMP_ALIGN_g = 8; + H5T_HOBJREF_COMP_ALIGN_g = 8; + H5T_HDSETREGREF_COMP_ALIGN_g = 1; ++ H5T_REF_COMP_ALIGN_g = 8; + +done: + if(ret_value < 0) { @@ -2007,7 +1994,7 @@ + } /* end if */ + + FUNC_LEAVE_NOAPI(ret_value); -+} /* end H5TN_init_interface() */ ++} /* end H5T__init_native() */ + +/****************************************/ +/* ALIGNMENT and signal-handling status */ @@ -2022,58 +2009,367 @@ +/******************************/ +/* signal handlers statistics */ +/******************************/ -+/* signal_handlers tested: 10 times */ ++/* signal_handlers tested: 15 times */ +/* sigbus_handler called: 5 times */ +/* sigsegv_handler called: 5 times */ -diff -rNu a/src/Makefile.am b/src/Makefile.am ---- a/src/Makefile.am 2012-10-11 13:30:56.000000000 -0400 -+++ b/src/Makefile.am 2014-09-01 11:57:11.711319644 -0400 -@@ -22,17 +22,12 @@ - include $(top_srcdir)/config/lt_vers.am - - --# How to build H5detect for number format detection. --# Use -g to force no optimization since many compilers (e.g., Intel) takes --# a long time to compile it with any optimization on. H5detect is used --# to generate H5Tinit.c once. So, optimization is not critical. --noinst_PROGRAMS = H5detect H5make_libsettings ++/* sigill_handler called: 5 times */ + +diff --git "a/src/H5lib_settings.c.mingw32" "b/src/H5lib_settings.c.mingw32" +index e69de29..ce90d85 100644 +--- "a/src/H5lib_settings.c.mingw32" ++++ "b/src/H5lib_settings.c.mingw32" +@@ -0,0 +1,121 @@ ++/* Generated automatically by H5make_libsettings -- do not edit */ ++ ++ ++ ++/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ++ * Copyright by The HDF Group. * ++ * Copyright by the Board of Trustees of the University of Illinois. * ++ * All rights reserved. * ++ * * ++ * This file is part of HDF5. The full HDF5 copyright notice, including * ++ * terms governing use, modification, and redistribution, is contained in * ++ * the COPYING file, which can be found at the root of the source code * ++ * distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. * ++ * If you do not have access to either file, you may request a copy from * ++ * help@hdfgroup.org. * ++ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ++ * Created: May 26, 2020 ++ * ++ * ++ * Purpose: This machine-generated source code contains ++ * information about the library build configuration ++ * ++ * Modifications: ++ * ++ * DO NOT MAKE MODIFICATIONS TO THIS FILE! ++ * It was generated by code in `H5make_libsettings.c'. ++ * ++ *------------------------------------------------------------------------- ++ */ ++ ++char H5libhdf5_settings[]= ++ " SUMMARY OF THE HDF5 CONFIGURATION\n" ++ " =================================\n" ++ "\n" ++ "General Information:\n" ++ "-------------------\n" ++ " HDF5 Version: 1.12.0\n" ++ " Configured on: 2020-05-26\n" ++ " Configured by: Unix Makefiles\n" ++ " Host system: Linux-5.4.0-31-generic\n" ++ " Uname information: Windows\n" ++ " Byte sex: little-endian\n" ++ " Installation point: \n" ++ "\n" ++ "Compiling Options:\n" ++ "------------------\n" ++ " Build Mode: Release\n" ++ " Debugging Symbols: OFF\n" ++ " Asserts: OFF\n" ++ " Profiling: OFF\n" ++ " Optimization Level: OFF\n" ++ "\n" ++ "Linking Options:\n" ++ "----------------\n" ++ " Libraries: \n" ++ " Statically Linked Executables: OFF\n" ++ " LDFLAGS: \n" ++ " H5_LDFLAGS: \n" ++ " AM_LDFLAGS: \n" ++ " Extra libraries: m;ws2_32;wsock32\n" ++ " Archiver: /home/osboxes/Documents/Repositories/Octave/mxe-octave-w32/usr/bin/i686-w64-mingw32-ar\n" ++ " Ranlib: /home/osboxes/Documents/Repositories/Octave/mxe-octave-w32/usr/bin/i686-w64-mingw32-ranlib\n" ++ "\n" ++ "Languages:\n" ++ "----------\n" ++ " C: YES\n" ++ " C Compiler: /home/osboxes/Documents/Repositories/Octave/mxe-octave-w32/usr/bin/i686-w64-mingw32-gcc 9.3.0\n" ++ " CPPFLAGS: \n" ++ " H5_CPPFLAGS: \n" ++ " AM_CPPFLAGS: \n" ++ " CFLAGS: -std=c99 -fstdarg-opt -Wall -Wcast-qual -Wconversion -Wextra -Wfloat-equal -Wformat=2 -Winit-self -Winvalid-pch -Wmissing-include-dirs -Wno-c++-compat -Wno-format-nonliteral -Wshadow -Wundef -Wwrite-strings -pedantic -fmessage-length=0\n" ++ " H5_CFLAGS: \n" ++ " AM_CFLAGS: \n" ++ " Shared C Library: YES\n" ++ " Static C Library: NO\n" ++ "\n" ++ " Fortran: OFF\n" ++ " Fortran Compiler: /home/osboxes/Documents/Repositories/Octave/mxe-octave-w32/usr/bin/i686-w64-mingw32-gfortran \n" ++ " Fortran Flags: \n" ++ " H5 Fortran Flags: \n" ++ " AM Fortran Flags: \n" ++ " Shared Fortran Library: YES\n" ++ " Static Fortran Library: NO\n" ++ "\n" ++ " C++: OFF\n" ++ " C++ Compiler: /home/osboxes/Documents/Repositories/Octave/mxe-octave-w32/usr/bin/i686-w64-mingw32-g++ \n" ++ " C++ Flags: \n" ++ " H5 C++ Flags: \n" ++ " AM C++ Flags: \n" ++ " Shared C++ Library: YES\n" ++ " Static C++ Library: NO\n" ++ "\n" ++ " JAVA: OFF\n" ++ " JAVA Compiler: \n" ++ "\n" ++ "Features:\n" ++ "---------\n" ++ " Parallel HDF5: OFF\n" ++ "Parallel Filtered Dataset Writes: \n" ++ " Large Parallel I/O: \n" ++ " High-level library: ON\n" ++ " Build HDF5 Tests: OFF\n" ++ " Build HDF5 Tools: ON\n" ++ " Threadsafety: OFF\n" ++ " Default API mapping: v112\n" ++ " With deprecated public symbols: ON\n" ++ " I/O filters (external): DEFLATE\n" ++ " MPE: \n" ++ " Direct VFD: \n" ++ " (Read-Only) S3 VFD: \n" ++ " (Read-Only) HDFS VFD: \n" ++ " dmalloc: \n" ++ " Packages w/ extra debug output: \n" ++ " API Tracing: OFF\n" ++ " Using memory checker: OFF\n" ++ " Memory allocation sanity checks: OFF\n" ++ " Function Stack Tracing: OFF\n" ++ " Strict File Format Checks: OFF\n" ++ " Optimization Instrumentation: \n" ++; ++ - # Our main target, the HDF5 library - lib_LTLIBRARIES=libhdf5.la - - # Add libtool numbers to the HDF5 library (from config/lt_vers.am) --libhdf5_la_LDFLAGS= -version-info $(LT_VERS_INTERFACE):$(LT_VERS_REVISION):$(LT_VERS_AGE) $(AM_LDFLAGS) -+libhdf5_la_LDFLAGS= -no-undefined -version-info $(LT_VERS_INTERFACE):$(LT_VERS_REVISION):$(LT_VERS_AGE) $(AM_LDFLAGS) - - # H5Tinit.c and H5lib_settings.c are generated files and should be cleaned. - MOSTLYCLEANFILES=H5Tinit.c H5lib_settings.c -@@ -121,25 +114,17 @@ +diff --git "a/src/H5lib_settings.c.mingw64" "b/src/H5lib_settings.c.mingw64" +index e69de29..41f03c9 100644 +--- "a/src/H5lib_settings.c.mingw64" ++++ "b/src/H5lib_settings.c.mingw64" +@@ -0,0 +1,121 @@ ++/* Generated automatically by H5make_libsettings -- do not edit */ ++ ++ ++ ++/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ++ * Copyright by The HDF Group. * ++ * Copyright by the Board of Trustees of the University of Illinois. * ++ * All rights reserved. * ++ * * ++ * This file is part of HDF5. The full HDF5 copyright notice, including * ++ * terms governing use, modification, and redistribution, is contained in * ++ * the COPYING file, which can be found at the root of the source code * ++ * distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases. * ++ * If you do not have access to either file, you may request a copy from * ++ * help@hdfgroup.org. * ++ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ++ * Created: May 22, 2020 ++ * ++ * ++ * Purpose: This machine-generated source code contains ++ * information about the library build configuration ++ * ++ * Modifications: ++ * ++ * DO NOT MAKE MODIFICATIONS TO THIS FILE! ++ * It was generated by code in `H5make_libsettings.c'. ++ * ++ *------------------------------------------------------------------------- ++ */ ++ ++char H5libhdf5_settings[]= ++ " SUMMARY OF THE HDF5 CONFIGURATION\n" ++ " =================================\n" ++ "\n" ++ "General Information:\n" ++ "-------------------\n" ++ " HDF5 Version: 1.12.0\n" ++ " Configured on: 2020-05-22\n" ++ " Configured by: Unix Makefiles\n" ++ " Host system: Linux-5.4.0-31-generic\n" ++ " Uname information: Windows\n" ++ " Byte sex: little-endian\n" ++ " Installation point: \n" ++ "\n" ++ "Compiling Options:\n" ++ "------------------\n" ++ " Build Mode: Release\n" ++ " Debugging Symbols: OFF\n" ++ " Asserts: OFF\n" ++ " Profiling: OFF\n" ++ " Optimization Level: OFF\n" ++ "\n" ++ "Linking Options:\n" ++ "----------------\n" ++ " Libraries: \n" ++ " Statically Linked Executables: OFF\n" ++ " LDFLAGS: \n" ++ " H5_LDFLAGS: \n" ++ " AM_LDFLAGS: \n" ++ " Extra libraries: m;ws2_32;wsock32\n" ++ " Archiver: /home/osboxes/Documents/Repositories/Octave/mxe-octave/usr/bin/x86_64-w64-mingw32-ar\n" ++ " Ranlib: /home/osboxes/Documents/Repositories/Octave/mxe-octave/usr/bin/x86_64-w64-mingw32-ranlib\n" ++ "\n" ++ "Languages:\n" ++ "----------\n" ++ " C: YES\n" ++ " C Compiler: /home/osboxes/Documents/Repositories/Octave/mxe-octave/usr/bin/x86_64-w64-mingw32-gcc 9.3.0\n" ++ " CPPFLAGS: \n" ++ " H5_CPPFLAGS: \n" ++ " AM_CPPFLAGS: \n" ++ " CFLAGS: -std=c99 -fstdarg-opt -Wall -Wcast-qual -Wconversion -Wextra -Wfloat-equal -Wformat=2 -Winit-self -Winvalid-pch -Wmissing-include-dirs -Wno-c++-compat -Wno-format-nonliteral -Wshadow -Wundef -Wwrite-strings -pedantic -fmessage-length=0\n" ++ " H5_CFLAGS: \n" ++ " AM_CFLAGS: \n" ++ " Shared C Library: YES\n" ++ " Static C Library: NO\n" ++ "\n" ++ " Fortran: OFF\n" ++ " Fortran Compiler: /home/osboxes/Documents/Repositories/Octave/mxe-octave/usr/bin/x86_64-w64-mingw32-gfortran \n" ++ " Fortran Flags: \n" ++ " H5 Fortran Flags: \n" ++ " AM Fortran Flags: \n" ++ " Shared Fortran Library: YES\n" ++ " Static Fortran Library: NO\n" ++ "\n" ++ " C++: OFF\n" ++ " C++ Compiler: /home/osboxes/Documents/Repositories/Octave/mxe-octave/usr/bin/x86_64-w64-mingw32-g++ \n" ++ " C++ Flags: \n" ++ " H5 C++ Flags: \n" ++ " AM C++ Flags: \n" ++ " Shared C++ Library: YES\n" ++ " Static C++ Library: NO\n" ++ "\n" ++ " JAVA: OFF\n" ++ " JAVA Compiler: \n" ++ "\n" ++ "Features:\n" ++ "---------\n" ++ " Parallel HDF5: OFF\n" ++ "Parallel Filtered Dataset Writes: \n" ++ " Large Parallel I/O: \n" ++ " High-level library: ON\n" ++ " Build HDF5 Tests: OFF\n" ++ " Build HDF5 Tools: ON\n" ++ " Threadsafety: OFF\n" ++ " Default API mapping: v112\n" ++ " With deprecated public symbols: ON\n" ++ " I/O filters (external): DEFLATE\n" ++ " MPE: \n" ++ " Direct VFD: \n" ++ " (Read-Only) S3 VFD: \n" ++ " (Read-Only) HDFS VFD: \n" ++ " dmalloc: \n" ++ " Packages w/ extra debug output: \n" ++ " API Tracing: OFF\n" ++ " Using memory checker: OFF\n" ++ " Memory allocation sanity checks: OFF\n" ++ " Function Stack Tracing: OFF\n" ++ " Strict File Format Checks: OFF\n" ++ " Optimization Instrumentation: \n" ++; ++ + +diff --git "a/src/H5win32defs.h" "b/src/H5win32defs.h" +index 0a0bd37..405e9e8 100644 +--- "a/src/H5win32defs.h" ++++ "b/src/H5win32defs.h" +@@ -42,7 +42,7 @@ typedef __int64 h5_stat_size_t; + #define HDisatty(F) _isatty(F) - # Number format detection - # The LD_LIBRARY_PATH setting is a kludge. --# Things should have been all set during H5detect making. - # Remove the generated .c file if errors occur unless HDF5_Make_Ignore - # is set to ignore the error. --H5Tinit.c: H5detect$(EXEEXT) -- LD_LIBRARY_PATH="$$LD_LIBRARY_PATH`echo $(LDFLAGS) | \ -- sed -e 's/-L/:/g' -e 's/ //g'`" \ -- $(RUNSERIAL) ./H5detect$(EXEEXT) > $@ || \ -- (test $$HDF5_Make_Ignore && echo "*** Error ignored") || \ -- ($(RM) $@ ; exit 1) -+H5Tinit.c: H5Tinit.c.mingw -+ cp $(srcdir)/H5Tinit.c.mingw $@ + /* The isnan function needs underscore in VS2012 and earlier */ +-#if (_MSC_VER <= 1700) ++#if defined(_MSC_VER) && (_MSC_VER <= 1700) + #define HDisnan(X) _isnan(X) + #endif /* MSC_VER < 1700 */ + +diff --git "a/src/CMakeLists.txt" "b/src/CMakeLists.txt" +--- "a/src/CMakeLists.txt" ++++ "b/src/CMakeLists.txt" +@@ -1087,7 +1087,8 @@ else () + endif () + endif () + ++if (NOT EXISTS "${HDF5_GENERATED_SOURCE_DIR}/H5lib_settings.c") + add_executable (H5make_libsettings ${HDF5_SRC_DIR}/H5make_libsettings.c) + target_include_directories (H5make_libsettings PRIVATE "${HDF5_SRC_DIR};${HDF5_BINARY_DIR};$<$<BOOL:${HDF5_ENABLE_PARALLEL}>:${MPI_C_INCLUDE_DIRS}>") + target_compile_definitions(H5make_libsettings PUBLIC ${HDF_EXTRA_C_FLAGS} ${HDF_EXTRA_FLAGS}) + TARGET_C_PROPERTIES (H5make_libsettings STATIC) +@@ -1097,28 +1098,49 @@ target_link_libraries (H5make_libsettings + ) - # Build configuration header file generation - # The LD_LIBRARY_PATH setting is a kludge. --# Things should have been all set during H5make_libsettings making. - # Remove the generated .c file if errors occur unless HDF5_Make_Ignore - # is set to ignore the error. --H5lib_settings.c: H5make_libsettings$(EXEEXT) libhdf5.settings -- LD_LIBRARY_PATH="$$LD_LIBRARY_PATH`echo $(LDFLAGS) | \ -- sed -e 's/-L/:/g' -e 's/ //g'`" \ -- $(RUNSERIAL) ./H5make_libsettings$(EXEEXT) > $@ || \ -+H5lib_settings.c: $(top_srcdir)/bin/make_lib_settings libhdf5.settings -+ perl $(top_srcdir)/bin/make_lib_settings < libhdf5.settings > $@ || \ - (test $$HDF5_Make_Ignore && echo "*** Error ignored") || \ - ($(RM) $@ ; exit 1) + add_custom_command ( +- OUTPUT ${HDF5_BINARY_DIR}/H5lib_settings.c +- ${HDF5_BINARY_DIR}/gen_SRCS.stamp2 ++ OUTPUT ${HDF5_GENERATED_SOURCE_DIR}/H5lib_settings.c ++ ${HDF5_GENERATED_SOURCE_DIR}/gen_SRCS.stamp2 + COMMAND ${CMAKE_CROSSCOMPILING_EMULATOR} $<TARGET_FILE:H5make_libsettings> +- ARGS ${HDF5_BINARY_DIR}/H5lib_settings.c ++ ARGS ${HDF5_GENERATED_SOURCE_DIR}/H5lib_settings.c + COMMAND ${CMAKE_COMMAND} + ARGS -E touch ${HDF5_GENERATED_SOURCE_DIR}/gen_SRCS.stamp2 + DEPENDS H5make_libsettings +- WORKING_DIRECTORY ${HDF5_BINARY_DIR} ++ WORKING_DIRECTORY ${HDF5_GENERATED_SOURCE_DIR} + ) +-set_source_files_properties (${HDF5_BINARY_DIR}/H5lib_settings.c PROPERTIES GENERATED TRUE) ++set_source_files_properties (${HDF5_GENERATED_SOURCE_DIR}/H5lib_settings.c PROPERTIES GENERATED TRUE) + if (BUILD_SHARED_LIBS) + add_custom_command ( +- OUTPUT ${HDF5_BINARY_DIR}/shared/H5lib_settings.c +- ${HDF5_BINARY_DIR}/shared/shared_gen_SRCS.stamp2 ++ OUTPUT ${HDF5_GENERATED_SOURCE_DIR}/shared/H5lib_settings.c ++ ${HDF5_GENERATED_SOURCE_DIR}/shared/shared_gen_SRCS.stamp2 + COMMAND ${CMAKE_COMMAND} +- ARGS -E copy_if_different "${HDF5_BINARY_DIR}/H5lib_settings.c" "${HDF5_BINARY_DIR}/shared/H5lib_settings.c" ++ ARGS -E copy_if_different "${HDF5_GENERATED_SOURCE_DIR}/H5lib_settings.c" "${HDF5_GENERATED_SOURCE_DIR}/shared/H5lib_settings.c" + COMMAND ${CMAKE_COMMAND} + ARGS -E touch ${HDF5_GENERATED_SOURCE_DIR}/shared/shared_gen_SRCS.stamp2 +- DEPENDS ${HDF5_BINARY_DIR}/H5lib_settings.c +- WORKING_DIRECTORY ${HDF5_BINARY_DIR} ++ DEPENDS ${HDF5_GENERATED_SOURCE_DIR}/H5lib_settings.c ++ WORKING_DIRECTORY ${HDF5_GENERATED_SOURCE_DIR} ++ ) ++ set_source_files_properties (${HDF5_GENERATED_SOURCE_DIR}/shared/H5lib_settings.c PROPERTIES GENERATED TRUE) ++endif () ++else () ++ add_custom_command ( ++ OUTPUT ${HDF5_GENERATED_SOURCE_DIR}/gen_SRCS.stamp2 ++ COMMAND ${CMAKE_COMMAND} ++ ARGS -E touch ${HDF5_GENERATED_SOURCE_DIR}/gen_SRCS.stamp2 ++ DEPENDS ${HDF5_GENERATED_SOURCE_DIR}/H5lib_settings.c ++ WORKING_DIRECTORY ${HDF5_GENERATED_SOURCE_DIR} + ) +- set_source_files_properties (${HDF5_BINARY_DIR}/shared/H5lib_settings.c PROPERTIES GENERATED TRUE) ++ if (BUILD_SHARED_LIBS) ++ add_custom_command ( ++ OUTPUT ${HDF5_GENERATED_SOURCE_DIR}/shared/shared_gen_SRCS.stamp2 ++ COMMAND ${CMAKE_COMMAND} ++ ARGS -E copy_if_different "${HDF5_GENERATED_SOURCE_DIR}/H5lib_settings.c" "${HDF5_GENERATED_SOURCE_DIR}/shared/H5lib_settings.c" ++ COMMAND ${CMAKE_COMMAND} ++ ARGS -E touch ${HDF5_GENERATED_SOURCE_DIR}/shared/shared_gen_SRCS.stamp2 ++ DEPENDS ${HDF5_GENERATED_SOURCE_DIR}/H5lib_settings.c ++ WORKING_DIRECTORY ${HDF5_GENERATED_SOURCE_DIR} ++ ) ++ set_source_files_properties (${HDF5_GENERATED_SOURCE_DIR}/shared/H5lib_settings.c PROPERTIES GENERATED TRUE) ++ endif () + endif () + ## all_packages="AC,B,B2,D,F,FA,FL,FS,HL,I,O,S,ST,T,Z" +@@ -1129,7 +1151,7 @@ option (HDF5_ENABLE_DEBUG_APIS "Turn on extra debug output in all packages" OFF) + # Add H5Tinit source to build - generated by H5detect/CMake at configure time + #----------------------------------------------------------------------------- + if (NOT ONLY_SHARED_LIBS) +- set (gen_SRCS ${HDF5_GENERATED_SOURCE_DIR}/H5Tinit.c ${HDF5_BINARY_DIR}/H5lib_settings.c) ++ set (gen_SRCS ${HDF5_GENERATED_SOURCE_DIR}/H5Tinit.c ${HDF5_GENERATED_SOURCE_DIR}/H5lib_settings.c) + add_custom_target (gen_${HDF5_LIB_TARGET} ALL DEPENDS ${HDF5_GENERATED_SOURCE_DIR}/gen_SRCS.stamp1 ${HDF5_GENERATED_SOURCE_DIR}/gen_SRCS.stamp2) + + add_library (${HDF5_LIB_TARGET} STATIC ${common_SRCS} ${gen_SRCS} ${H5_PUBLIC_HEADERS} ${H5_PRIVATE_HEADERS} ${H5_GENERATED_HEADERS}) +@@ -1164,7 +1186,7 @@ if (NOT ONLY_SHARED_LIBS) + endif () + + if (BUILD_SHARED_LIBS) +- set (shared_gen_SRCS ${HDF5_GENERATED_SOURCE_DIR}/shared/H5Tinit.c ${HDF5_BINARY_DIR}/shared/H5lib_settings.c) ++ set (shared_gen_SRCS ${HDF5_GENERATED_SOURCE_DIR}/shared/H5Tinit.c ${HDF5_GENERATED_SOURCE_DIR}/shared/H5lib_settings.c) + add_custom_target (gen_${HDF5_LIBSH_TARGET} ALL DEPENDS ${HDF5_GENERATED_SOURCE_DIR}/shared/shared_gen_SRCS.stamp1 ${HDF5_GENERATED_SOURCE_DIR}/shared/shared_gen_SRCS.stamp2) + + add_library (${HDF5_LIBSH_TARGET} SHARED ${common_SRCS} ${shared_gen_SRCS} ${H5_PUBLIC_HEADERS} ${H5_PRIVATE_HEADERS} ${H5_GENERATED_HEADERS}) +