changeset 3704:6ac813175f6f

fix hdf5 builds for 64-bit Windows
author John W. Eaton <jwe@octave.org>
date Sat, 30 Aug 2014 02:03:22 -0400
parents 81e0df6182ba
children d30ced3f489e
files src/hdf5.mk src/mingw-hdf5-1.patch
diffstat 2 files changed, 1016 insertions(+), 10 deletions(-) [+]
line wrap: on
line diff
--- a/src/hdf5.mk	Mon Sep 01 11:58:38 2014 -0400
+++ b/src/hdf5.mk	Sat Aug 30 02:03:22 2014 -0400
@@ -16,14 +16,10 @@
       LIBS=-lws2_32 \
       hdf5_cv_gettimeofday_tz=no \
       hdf5_cv_vsnprintf_works=yes \
-      hdf5_cv_printf_ll=l \
-      hdf5_cv_system_scope_threads=yes \
       hdf5_cv_ldouble_to_integer_works=yes \
       hdf5_cv_ulong_to_float_accurate=yes \
-      hdf5_cv_ulong_to_fp_bottom_bit_accurate=no \
       hdf5_cv_fp_to_ullong_accurate=yes \
       hdf5_cv_fp_to_ullong_right_maximum=no \
-      hdf5_cv_fp_to_ullong_right_maximum=no \
       hdf5_cv_ldouble_to_uint_accurate=yes \
       hdf5_cv_ullong_to_ldouble_precision=yes \
       hdf5_cv_fp_to_integer_overflow_works=yes \
@@ -31,6 +27,23 @@
       hdf5_cv_long_to_ldouble_special=no \
       hdf5_cv_ldouble_to_llong_accurate=yes \
       hdf5_cv_llong_to_ldouble_correct=yes
+    ifeq ($(TARGET),x86_64-w64-mingw32)
+      $(PKG)_CROSS_CONFIG_OPTIONS += \
+        hdf5_cv_printf_ll=ll \
+        hdf5_cv_system_scope_threads=no \
+        hdf5_cv_ldouble_to_integer_accurate=yes \
+        hdf5_cv_ulong_to_fp_bottom_bit_accurate=yes \
+        ac_cv_sizeof_long=4 \
+        ac_cv_sizeof_long_double=16 \
+        ac_cv_sizeof_long_long=8 \
+        ac_cv_sizeof_off_t=8 \
+        ac_cv_sys_file_offset_bits=64
+    else
+      $(PKG)_CROSS_CONFIG_OPTIONS += \
+        hdf5_cv_printf_ll=l \
+        hdf5_cv_system_scope_threads=yes \
+        hdf5_cv_ulong_to_fp_bottom_bit_accurate=no
+    endif
   endif
 endif
 
@@ -44,6 +57,15 @@
 endef
 
 define $(PKG)_BUILD
+    case '$(TARGET)' in \
+      x86_64-w64-mingw32) \
+        cp '$(1)/src/H5Tinit.c.mingw64' '$(1)/src/H5Tinit.c.mingw' \
+      ;; \
+      i686-w64-mingw32) \
+        cp '$(1)/src/H5Tinit.c.mingw32' '$(1)/src/H5Tinit.c.mingw' \
+      ;; \
+    esac
+
     # build GCC and support libraries
     cd '$(1)' && autoreconf
     mkdir '$(1)/.build'
--- a/src/mingw-hdf5-1.patch	Mon Sep 01 11:58:38 2014 -0400
+++ b/src/mingw-hdf5-1.patch	Sat Aug 30 02:03:22 2014 -0400
@@ -1,6 +1,6 @@
 diff -rNu a/bin/make_lib_settings b/bin/make_lib_settings
 --- a/bin/make_lib_settings	1969-12-31 19:00:00.000000000 -0500
-+++ b/bin/make_lib_settings	2012-12-26 16:20:00.517121947 -0500
++++ b/bin/make_lib_settings	2014-09-01 11:49:54.453674207 -0400
 @@ -0,0 +1,45 @@
 +#!/usr/bin/perl -w
 +require 5.003;
@@ -49,7 +49,7 @@
 +print ";\n"
 diff -rNu a/configure.ac b/configure.ac
 --- a/configure.ac	2012-10-26 20:14:41.000000000 -0400
-+++ b/configure.ac	2012-12-26 16:20:00.517121947 -0500
++++ 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.
@@ -61,7 +61,7 @@
  ## 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	2012-12-26 16:20:00.521121812 -0500
++++ b/src/H5Tinit.c.mingw32	2014-09-01 11:49:54.461673944 -0400
 @@ -0,0 +1,978 @@
 +/* Generated automatically by H5detect -- do not edit */
 +
@@ -1041,9 +1041,993 @@
 +/* signal_handlers tested: 10 times */
 +/* sigbus_handler called: 5 times */
 +/* sigsegv_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 @@
++/* Generated automatically by H5detect -- 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 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
++ *			
++ *
++ * Purpose:		This machine-generated source code contains
++ *			information about the various integer and
++ *			floating point numeric formats found on this
++ *			architecture.  The parameters below should be
++ *			checked carefully and errors reported to the
++ *			HDF5 maintainer.
++ *			
++ *			Each of the numeric formats listed below are
++ *			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
++ *			indicate the relative order of the bytes in
++ *			memory; little-endian machines have
++ *			decreasing numbers while big-endian machines
++ *			have increasing numbers.
++ *			
++ *			The fields of the numbers are printed as
++ *			letters with `S' for the mantissa sign bit,
++ *			`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
++ *			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
++ *			`I' for 2's complement and `U' for magnitude.
++ *			
++ *			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,
++ *			the radix point is still assumed to be
++ *			before the first `M' but after the implicit
++ *			bit.
++ *
++ * Modifications:
++ *
++ *	DO NOT MAKE MODIFICATIONS TO THIS FILE!
++ *	It was generated by code in `H5detect.c'.
++ *
++ *-------------------------------------------------------------------------
++ */
++
++/****************/
++/* Module Setup */
++/****************/
++
++#define H5T_PACKAGE /*suppress error about including H5Tpkg.h*/
++
++
++/***********/
++/* Headers */
++/***********/
++#include "H5private.h"		/* Generic Functions			*/
++#include "H5Eprivate.h"		/* Error handling		  	*/
++#include "H5FLprivate.h"	/* Free Lists				*/
++#include "H5Iprivate.h"		/* IDs			  		*/
++#include "H5Tpkg.h"		/* Datatypes 				*/
++
++
++/****************/
++/* Local Macros */
++/****************/
++
++
++/******************/
++/* Local Typedefs */
++/******************/
++
++
++/********************/
++/* Package Typedefs */
++/********************/
++
++
++/********************/
++/* Local Prototypes */
++/********************/
++
++
++/********************/
++/* Public Variables */
++/********************/
++
++
++/*****************************/
++/* Library Private Variables */
++/*****************************/
++
++
++/*********************/
++/* Package Variables */
++/*********************/
++
++
++
++/*******************/
++/* Local Variables */
++/*******************/
++
++
++
++/*-------------------------------------------------------------------------
++ * Function:	H5TN_init_interface
++ *
++ * Purpose:	Initialize pre-defined native datatypes from code generated
++ *              during the library configuration by H5detect.
++ *
++ * Return:	Success:	non-negative
++ *		Failure:	negative
++ *
++ * Programmer:	Robb Matzke
++ *              Wednesday, December 16, 1998
++ *
++ *-------------------------------------------------------------------------
++ */
++herr_t
++H5TN_init_interface(void)
++{
++    H5T_t	*dt = NULL;
++    herr_t	ret_value = SUCCEED;
++
++    FUNC_ENTER_NOAPI(FAIL)
++
++   /*
++    *    0
++    * IIIIIIII
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 1;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 8;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
++    if((H5T_NATIVE_SCHAR_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_SCHAR_ALIGN_g = 1;
++    H5T_NATIVE_SCHAR_COMP_ALIGN_g = 1;
++
++   /*
++    *    0
++    * UUUUUUUU
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 1;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 8;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
++    if((H5T_NATIVE_UCHAR_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_UCHAR_ALIGN_g = 1;
++
++   /*
++    *    1        0
++    * IIIIIIII IIIIIIII
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 2;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 16;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
++    if((H5T_NATIVE_SHORT_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_SHORT_ALIGN_g = 1;
++    H5T_NATIVE_SHORT_COMP_ALIGN_g = 2;
++
++   /*
++    *    1        0
++    * UUUUUUUU UUUUUUUU
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 2;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 16;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
++    if((H5T_NATIVE_USHORT_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_USHORT_ALIGN_g = 1;
++
++   /*
++    *    3        2        1        0
++    * IIIIIIII IIIIIIII IIIIIIII IIIIIIII
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 4;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 32;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
++    if((H5T_NATIVE_INT_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_INT_ALIGN_g = 1;
++    H5T_NATIVE_INT_COMP_ALIGN_g = 4;
++
++   /*
++    *    3        2        1        0
++    * UUUUUUUU UUUUUUUU UUUUUUUU UUUUUUUU
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 4;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 32;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
++    if((H5T_NATIVE_UINT_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_UINT_ALIGN_g = 1;
++
++   /*
++    *    3        2        1        0
++    * IIIIIIII IIIIIIII IIIIIIII IIIIIIII
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 4;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 32;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
++    if((H5T_NATIVE_LONG_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_LONG_ALIGN_g = 1;
++    H5T_NATIVE_LONG_COMP_ALIGN_g = 4;
++
++   /*
++    *    3        2        1        0
++    * UUUUUUUU UUUUUUUU UUUUUUUU UUUUUUUU
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 4;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 32;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
++    if((H5T_NATIVE_ULONG_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_ULONG_ALIGN_g = 1;
++
++   /*
++    *    0
++    * IIIIIIII
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 1;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 8;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
++    if((H5T_NATIVE_INT8_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_INT8_ALIGN_g = 1;
++
++   /*
++    *    0
++    * UUUUUUUU
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 1;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 8;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
++    if((H5T_NATIVE_UINT8_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_UINT8_ALIGN_g = 1;
++
++   /*
++    *    0
++    * IIIIIIII
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 1;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 8;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
++    if((H5T_NATIVE_INT_LEAST8_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_INT_LEAST8_ALIGN_g = 1;
++
++   /*
++    *    0
++    * UUUUUUUU
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 1;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 8;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
++    if((H5T_NATIVE_UINT_LEAST8_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_UINT_LEAST8_ALIGN_g = 1;
++
++   /*
++    *    0
++    * IIIIIIII
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 1;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 8;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
++    if((H5T_NATIVE_INT_FAST8_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_INT_FAST8_ALIGN_g = 1;
++
++   /*
++    *    0
++    * UUUUUUUU
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 1;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 8;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
++    if((H5T_NATIVE_UINT_FAST8_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_UINT_FAST8_ALIGN_g = 1;
++
++   /*
++    *    1        0
++    * IIIIIIII IIIIIIII
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 2;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 16;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
++    if((H5T_NATIVE_INT16_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_INT16_ALIGN_g = 1;
++
++   /*
++    *    1        0
++    * UUUUUUUU UUUUUUUU
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 2;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 16;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
++    if((H5T_NATIVE_UINT16_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_UINT16_ALIGN_g = 1;
++
++   /*
++    *    1        0
++    * IIIIIIII IIIIIIII
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 2;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 16;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
++    if((H5T_NATIVE_INT_LEAST16_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_INT_LEAST16_ALIGN_g = 1;
++
++   /*
++    *    1        0
++    * UUUUUUUU UUUUUUUU
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 2;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 16;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
++    if((H5T_NATIVE_UINT_LEAST16_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_UINT_LEAST16_ALIGN_g = 1;
++
++   /*
++    *    1        0
++    * IIIIIIII IIIIIIII
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 2;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 16;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
++    if((H5T_NATIVE_INT_FAST16_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_INT_FAST16_ALIGN_g = 1;
++
++   /*
++    *    1        0
++    * UUUUUUUU UUUUUUUU
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 2;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 16;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
++    if((H5T_NATIVE_UINT_FAST16_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_UINT_FAST16_ALIGN_g = 1;
++
++   /*
++    *    3        2        1        0
++    * IIIIIIII IIIIIIII IIIIIIII IIIIIIII
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 4;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 32;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
++    if((H5T_NATIVE_INT32_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_INT32_ALIGN_g = 1;
++
++   /*
++    *    3        2        1        0
++    * UUUUUUUU UUUUUUUU UUUUUUUU UUUUUUUU
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 4;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 32;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
++    if((H5T_NATIVE_UINT32_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_UINT32_ALIGN_g = 1;
++
++   /*
++    *    3        2        1        0
++    * IIIIIIII IIIIIIII IIIIIIII IIIIIIII
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 4;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 32;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
++    if((H5T_NATIVE_INT_LEAST32_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_INT_LEAST32_ALIGN_g = 1;
++
++   /*
++    *    3        2        1        0
++    * UUUUUUUU UUUUUUUU UUUUUUUU UUUUUUUU
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 4;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 32;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
++    if((H5T_NATIVE_UINT_LEAST32_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_UINT_LEAST32_ALIGN_g = 1;
++
++   /*
++    *    3        2        1        0
++    * IIIIIIII IIIIIIII IIIIIIII IIIIIIII
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 4;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 32;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
++    if((H5T_NATIVE_INT_FAST32_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_INT_FAST32_ALIGN_g = 1;
++
++   /*
++    *    3        2        1        0
++    * UUUUUUUU UUUUUUUU UUUUUUUU UUUUUUUU
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 4;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 32;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
++    if((H5T_NATIVE_UINT_FAST32_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_UINT_FAST32_ALIGN_g = 1;
++
++   /*
++    *    7        6        5        4
++    * IIIIIIII IIIIIIII IIIIIIII IIIIIIII
++    *    3        2        1        0
++    * IIIIIIII IIIIIIII IIIIIIII IIIIIIII
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 8;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 64;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
++    if((H5T_NATIVE_INT64_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_INT64_ALIGN_g = 1;
++
++   /*
++    *    7        6        5        4
++    * UUUUUUUU UUUUUUUU UUUUUUUU UUUUUUUU
++    *    3        2        1        0
++    * UUUUUUUU UUUUUUUU UUUUUUUU UUUUUUUU
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 8;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 64;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
++    if((H5T_NATIVE_UINT64_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_UINT64_ALIGN_g = 1;
++
++   /*
++    *    7        6        5        4
++    * IIIIIIII IIIIIIII IIIIIIII IIIIIIII
++    *    3        2        1        0
++    * IIIIIIII IIIIIIII IIIIIIII IIIIIIII
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 8;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 64;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
++    if((H5T_NATIVE_INT_LEAST64_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_INT_LEAST64_ALIGN_g = 1;
++
++   /*
++    *    7        6        5        4
++    * UUUUUUUU UUUUUUUU UUUUUUUU UUUUUUUU
++    *    3        2        1        0
++    * UUUUUUUU UUUUUUUU UUUUUUUU UUUUUUUU
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 8;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 64;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
++    if((H5T_NATIVE_UINT_LEAST64_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_UINT_LEAST64_ALIGN_g = 1;
++
++   /*
++    *    7        6        5        4
++    * IIIIIIII IIIIIIII IIIIIIII IIIIIIII
++    *    3        2        1        0
++    * IIIIIIII IIIIIIII IIIIIIII IIIIIIII
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 8;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 64;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
++    if((H5T_NATIVE_INT_FAST64_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_INT_FAST64_ALIGN_g = 1;
++
++   /*
++    *    7        6        5        4
++    * UUUUUUUU UUUUUUUU UUUUUUUU UUUUUUUU
++    *    3        2        1        0
++    * UUUUUUUU UUUUUUUU UUUUUUUU UUUUUUUU
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 8;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 64;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
++    if((H5T_NATIVE_UINT_FAST64_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_UINT_FAST64_ALIGN_g = 1;
++
++   /*
++    *    7        6        5        4
++    * IIIIIIII IIIIIIII IIIIIIII IIIIIIII
++    *    3        2        1        0
++    * IIIIIIII IIIIIIII IIIIIIII IIIIIIII
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 8;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 64;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_2;
++    if((H5T_NATIVE_LLONG_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_LLONG_ALIGN_g = 1;
++    H5T_NATIVE_LLONG_COMP_ALIGN_g = 8;
++
++   /*
++    *    7        6        5        4
++    * UUUUUUUU UUUUUUUU UUUUUUUU UUUUUUUU
++    *    3        2        1        0
++    * UUUUUUUU UUUUUUUU UUUUUUUU UUUUUUUU
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_INTEGER;
++    dt->shared->size = 8;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 64;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.i.sign = H5T_SGN_NONE;
++    if((H5T_NATIVE_ULLONG_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_ULLONG_ALIGN_g = 1;
++
++   /*
++    *    3        2        1        0
++    * SEEEEEEE EMMMMMMM MMMMMMMM MMMMMMMM
++    * Implicit bit? yes
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_FLOAT;
++    dt->shared->size = 4;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 32;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.f.sign = 31;
++    dt->shared->u.atomic.u.f.epos = 23;
++    dt->shared->u.atomic.u.f.esize = 8;
++    dt->shared->u.atomic.u.f.ebias = 0x0000007f;
++    dt->shared->u.atomic.u.f.mpos = 0;
++    dt->shared->u.atomic.u.f.msize = 23;
++    dt->shared->u.atomic.u.f.norm = H5T_NORM_IMPLIED;
++    dt->shared->u.atomic.u.f.pad = H5T_PAD_ZERO;
++    if((H5T_NATIVE_FLOAT_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_FLOAT_ALIGN_g = 1;
++    H5T_NATIVE_FLOAT_COMP_ALIGN_g = 4;
++
++   /*
++    *    7        6        5        4
++    * SEEEEEEE EEEEMMMM MMMMMMMM MMMMMMMM
++    *    3        2        1        0
++    * MMMMMMMM MMMMMMMM MMMMMMMM MMMMMMMM
++    * Implicit bit? yes
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_FLOAT;
++    dt->shared->size = 8;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 64;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.f.sign = 63;
++    dt->shared->u.atomic.u.f.epos = 52;
++    dt->shared->u.atomic.u.f.esize = 11;
++    dt->shared->u.atomic.u.f.ebias = 0x000003ff;
++    dt->shared->u.atomic.u.f.mpos = 0;
++    dt->shared->u.atomic.u.f.msize = 52;
++    dt->shared->u.atomic.u.f.norm = H5T_NORM_IMPLIED;
++    dt->shared->u.atomic.u.f.pad = H5T_PAD_ZERO;
++    if((H5T_NATIVE_DOUBLE_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_DOUBLE_ALIGN_g = 1;
++    H5T_NATIVE_DOUBLE_COMP_ALIGN_g = 8;
++
++   /*
++    *   15       14       13       12
++    * ???????? ???????? ???????? ????????
++    *   11       10        9        8
++    * ???????? ???????? SEEEEEEE EEEEEEEE
++    *    7        6        5        4
++    * MMMMMMMM MMMMMMMM MMMMMMMM MMMMMMMM
++    *    3        2        1        0
++    * MMMMMMMM MMMMMMMM MMMMMMMM MMMMMMMM
++    * Implicit bit? no
++    * Alignment: none
++    */
++    if(NULL == (dt = H5T__alloc()))
++        HGOTO_ERROR(H5E_DATATYPE, H5E_NOSPACE, FAIL, "datatype allocation failed")
++    dt->shared->state = H5T_STATE_IMMUTABLE;
++    dt->shared->type = H5T_FLOAT;
++    dt->shared->size = 16;
++    dt->shared->u.atomic.order = H5T_ORDER_LE;
++    dt->shared->u.atomic.offset = 0;
++    dt->shared->u.atomic.prec = 80;
++    dt->shared->u.atomic.lsb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.msb_pad = H5T_PAD_ZERO;
++    dt->shared->u.atomic.u.f.sign = 79;
++    dt->shared->u.atomic.u.f.epos = 64;
++    dt->shared->u.atomic.u.f.esize = 15;
++    dt->shared->u.atomic.u.f.ebias = 0x00003fff;
++    dt->shared->u.atomic.u.f.mpos = 0;
++    dt->shared->u.atomic.u.f.msize = 64;
++    dt->shared->u.atomic.u.f.norm = H5T_NORM_NONE;
++    dt->shared->u.atomic.u.f.pad = H5T_PAD_ZERO;
++    if((H5T_NATIVE_LDOUBLE_g = H5I_register(H5I_DATATYPE, dt, FALSE)) < 0)
++        HGOTO_ERROR(H5E_DATATYPE, H5E_CANTINIT, FAIL, "can't register ID for built-in datatype")
++    H5T_NATIVE_LDOUBLE_ALIGN_g = 1;
++    H5T_NATIVE_LDOUBLE_COMP_ALIGN_g = 16;
++
++    /* 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 */
++    H5T_POINTER_COMP_ALIGN_g = 8;
++    H5T_HVL_COMP_ALIGN_g = 8;
++    H5T_HOBJREF_COMP_ALIGN_g = 8;
++    H5T_HDSETREGREF_COMP_ALIGN_g = 1;
++
++done:
++    if(ret_value < 0) {
++        if(dt != NULL) {
++            dt->shared = H5FL_FREE(H5T_shared_t, dt->shared);
++            dt = H5FL_FREE(H5T_t, dt);
++        } /* end if */
++    } /* end if */
++
++    FUNC_LEAVE_NOAPI(ret_value);
++} /* end H5TN_init_interface() */
++
++/****************************************/
++/* ALIGNMENT and signal-handling status */
++/****************************************/
++/* Signal() support: yes */
++/* setjmp() support: yes */
++/* longjmp() support: yes */
++/* sigsetjmp() support: no */
++/* siglongjmp() support: no */
++/* sigprocmask() support: no */
++
++/******************************/
++/* signal handlers statistics */
++/******************************/
++/* signal_handlers tested: 10 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	2012-12-26 16:29:28.153764421 -0500
++++ b/src/Makefile.am	2014-09-01 11:57:11.711319644 -0400
 @@ -22,18 +22,11 @@
  include $(top_srcdir)/config/lt_vers.am
  
@@ -1077,8 +2061,8 @@
 -	$(RUNSERIAL) ./H5detect$(EXEEXT) > $@  ||                               \
 -	    (test $$HDF5_Make_Ignore && echo "*** Error ignored") ||          \
 -	    ($(RM) $@ ; exit 1)
-+H5Tinit.c: H5Tinit.c.mingw32
-+	cp $(srcdir)/H5Tinit.c.mingw32 $@
++H5Tinit.c: H5Tinit.c.mingw
++	cp $(srcdir)/H5Tinit.c.mingw $@
  
  # Build configuration header file generation
  # The LD_LIBRARY_PATH setting is a kludge.