# HG changeset patch # User John W. Eaton # Date 1356558155 18000 # Node ID 4b72e7cf4f302133981fe270172bfcd4118fa4ef # Parent 1e4ad8a5461a7c0070a61c617e9896e315ec04e9 shared libraries and cross build for hdf5 diff -r 1e4ad8a5461a -r 4b72e7cf4f30 index.html --- a/index.html Wed Dec 19 11:53:26 2012 -0500 +++ b/index.html Wed Dec 26 16:42:35 2012 -0500 @@ -1284,6 +1284,11 @@ HarfBuzz + hdf5 + 1.8.10 + HDF5 + + hunspell 1.3.2 Hunspell diff -r 1e4ad8a5461a -r 4b72e7cf4f30 src/hdf5-1-cross-fixes.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hdf5-1-cross-fixes.patch Wed Dec 26 16:42:35 2012 -0500 @@ -0,0 +1,1096 @@ +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 +@@ -0,0 +1,45 @@ ++#!/usr/bin/perl -w ++require 5.003; ++ ++print "/* 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 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: Dec 26, 2012 ++ * ++ * ++ * 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[]= ++"; ++ ++while (<>) { ++ chop; ++ print "\t\"$_\\n\"\n"; ++} ++ ++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 +@@ -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 2012-12-26 16:20:00.521121812 -0500 +@@ -0,0 +1,978 @@ ++/* 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: Nov 29, 2012 ++ * ++ * ++ * 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; ++ ++ /* ++ * 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 = 12; ++ 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 = 4; ++ ++ /* 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 = 4; ++ H5T_HVL_COMP_ALIGN_g = 4; ++ 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: no */ ++/* 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 +@@ -22,18 +22,11 @@ + 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 +-H5detect_CFLAGS = -g $(AM_CFLAGS) +- + # 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 @@ + + # 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.mingw32 ++ cp $(srcdir)/H5Tinit.c.mingw32 $@ + + # 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) + diff -r 1e4ad8a5461a -r 4b72e7cf4f30 src/hdf5.mk --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/hdf5.mk Wed Dec 26 16:42:35 2012 -0500 @@ -0,0 +1,52 @@ +# This file is part of MXE. +# See index.html for further information. + +PKG := hdf5 +$(PKG)_IGNORE := +$(PKG)_CHECKSUM := 867a91b75ee0bbd1f1b13aecd52e883be1507a2c +$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) +$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.bz2 +$(PKG)_URL := http://www.hdfgroup.org/ftp/HDF5/current/src/$($(PKG)_FILE) +$(PKG)_DEPS := gcc + +define $(PKG)_UPDATE + echo 'Warning: Updates are temporarily disabled for package hdf5.' >&2; + echo $(hdf5_VERSION) +endef + +define $(PKG)_BUILD + # build GCC and support libraries + cd '$(1)' && autoreconf + mkdir '$(1)/.build' + cd '$(1)/.build' && '$(1)/configure' \ + --host='$(TARGET)' \ + --build="`config.guess`" \ + $(ENABLE_SHARED_OR_STATIC) \ + --prefix='$(PREFIX)/$(TARGET)' \ + --disable-direct-vfd \ + --disable-largefile \ + 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 \ + hdf5_cv_ldouble_to_long_special=no \ + hdf5_cv_long_to_ldouble_special=no \ + hdf5_cv_ldouble_to_llong_accurate=yes \ + hdf5_cv_llong_to_ldouble_correct=yes + + echo "#define H5_HAVE_WIN32_API 1" >> $(1)/.build/src/H5pubconf.h + echo "#define H5_HAVE_MINGW 1" >> $(1)/.build/src/H5pubconf.h + echo "#define HAVE_WINDOWS_PATH 1" >> $(1)/.build/src/H5pubconf.h + + $(MAKE) -C '$(1)/.build' -j '$(JOBS)' install +endef