From 7ff0d6d0aa102c27aef4f436a0101a383868974e Mon Sep 17 00:00:00 2001 From: Your Name Date: Fri, 6 Apr 2018 21:47:23 +0200 Subject: [PATCH] libhdf5: add package --- packages/libhdf5/CMakeLists.patch | 85 ++ packages/libhdf5/aarch64/H5Tinit.c | 991 ++++++++++++++++++ packages/libhdf5/aarch64/H5lib_settings.c | 106 ++ .../libhdf5/aarch64/TryRunResults_out.cmake | 194 ++++ packages/libhdf5/build.sh | 39 + 5 files changed, 1415 insertions(+) create mode 100644 packages/libhdf5/CMakeLists.patch create mode 100644 packages/libhdf5/aarch64/H5Tinit.c create mode 100644 packages/libhdf5/aarch64/H5lib_settings.c create mode 100644 packages/libhdf5/aarch64/TryRunResults_out.cmake create mode 100755 packages/libhdf5/build.sh diff --git a/packages/libhdf5/CMakeLists.patch b/packages/libhdf5/CMakeLists.patch new file mode 100644 index 000000000..8dbb20e4e --- /dev/null +++ b/packages/libhdf5/CMakeLists.patch @@ -0,0 +1,85 @@ +--- /home/builder/termux-packages/packages/libhdf5/CMakeLists.txt.orig 2018-04-03 22:59:37.677363132 +0000 ++++ src/src/CMakeLists.txt 2018-04-04 06:18:37.177298348 +0000 +@@ -848,13 +848,13 @@ + target_link_libraries (H5detect "ws2_32.lib") + endif () + +-set (CMD $) +-add_custom_command ( +- OUTPUT ${HDF5_BINARY_DIR}/H5Tinit.c +- COMMAND ${CMD} +- ARGS > ${HDF5_BINARY_DIR}/H5Tinit.c +- DEPENDS H5detect +-) ++#set (CMD $) ++#add_custom_command ( ++# OUTPUT ${HDF5_BINARY_DIR}/H5Tinit.c ++# COMMAND ${CMD} ++# ARGS > ${HDF5_BINARY_DIR}/H5Tinit.c ++# DEPENDS H5detect ++#) + + add_executable (H5make_libsettings ${HDF5_SRC_DIR}/H5make_libsettings.c) + TARGET_C_PROPERTIES (H5make_libsettings STATIC " " " ") +@@ -862,14 +862,14 @@ + target_link_libraries (H5make_libsettings "ws2_32.lib") + endif () + +-set (CMD $) +-add_custom_command ( +- OUTPUT ${HDF5_BINARY_DIR}/H5lib_settings.c +- COMMAND ${CMD} +- ARGS > ${HDF5_BINARY_DIR}/H5lib_settings.c +- DEPENDS H5make_libsettings +- WORKING_DIRECTORY ${HDF5_BINARY_DIR} +-) ++#set (CMD $) ++#add_custom_command ( ++# OUTPUT ${HDF5_BINARY_DIR}/H5lib_settings.c ++# COMMAND ${CMD} ++# ARGS > ${HDF5_BINARY_DIR}/H5lib_settings.c ++# DEPENDS H5make_libsettings ++# WORKING_DIRECTORY ${HDF5_BINARY_DIR} ++#) + + #----------------------------------------------------------------------------- + # Add H5Tinit source to build - generated by H5Detect/CMake at configure time +@@ -903,22 +903,22 @@ + + if (BUILD_SHARED_LIBS) + file (MAKE_DIRECTORY "${HDF5_BINARY_DIR}/shared") +- set (CMD $) +- add_custom_command ( +- OUTPUT ${HDF5_BINARY_DIR}/shared/H5Tinit.c +- COMMAND ${CMD} +- ARGS > ${HDF5_BINARY_DIR}/shared/H5Tinit.c +- DEPENDS H5detect +- WORKING_DIRECTORY ${HDF5_BINARY_DIR}/shared +- ) +- set (CMD $) +- add_custom_command ( +- OUTPUT ${HDF5_BINARY_DIR}/shared/H5lib_settings.c +- COMMAND ${CMD} +- ARGS > ${HDF5_BINARY_DIR}/shared/H5lib_settings.c +- DEPENDS H5make_libsettings +- WORKING_DIRECTORY ${HDF5_BINARY_DIR} +- ) ++# set (CMD $) ++# add_custom_command ( ++# OUTPUT ${HDF5_BINARY_DIR}/shared/H5Tinit.c ++# COMMAND ${CMD} ++# ARGS > ${HDF5_BINARY_DIR}/shared/H5Tinit.c ++# DEPENDS H5detect ++# WORKING_DIRECTORY ${HDF5_BINARY_DIR}/shared ++# ) ++# set (CMD $) ++# add_custom_command ( ++# OUTPUT ${HDF5_BINARY_DIR}/shared/H5lib_settings.c ++# COMMAND ${CMD} ++# ARGS > ${HDF5_BINARY_DIR}/shared/H5lib_settings.c ++# DEPENDS H5make_libsettings ++# WORKING_DIRECTORY ${HDF5_BINARY_DIR} ++# ) + set (shared_gen_SRCS ${HDF5_BINARY_DIR}/shared/H5Tinit.c ${HDF5_BINARY_DIR}/shared/H5lib_settings.c) + add_library (${HDF5_LIBSH_TARGET} SHARED ${common_SRCS} ${shared_gen_SRCS} ${H5_PUBLIC_HEADERS} ${H5_PRIVATE_HEADERS} ${H5_GENERATED_HEADERS}) + TARGET_C_PROPERTIES (${HDF5_LIBSH_TARGET} SHARED " " " ") diff --git a/packages/libhdf5/aarch64/H5Tinit.c b/packages/libhdf5/aarch64/H5Tinit.c new file mode 100644 index 000000000..2f624d1ae --- /dev/null +++ b/packages/libhdf5/aarch64/H5Tinit.c @@ -0,0 +1,991 @@ +/* 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 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: Mar 30, 2018 + * u0_a220@localhost + * + * 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 */ +/****************/ + +#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 */ + + +/****************/ +/* Local Macros */ +/****************/ + + +/******************/ +/* Local Typedefs */ +/******************/ + + +/********************/ +/* Package Typedefs */ +/********************/ + + +/********************/ +/* Local Prototypes */ +/********************/ + + +/********************/ +/* Public Variables */ +/********************/ + + +/*****************************/ +/* Library Private Variables */ +/*****************************/ + + +/*********************/ +/* Package Variables */ +/*********************/ + + + +/*******************/ +/* Local Variables */ +/*******************/ + + + +/*------------------------------------------------------------------------- + * Function: H5T__init_native + * + * 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 +H5T__init_native(void) +{ + H5T_t *dt = NULL; + herr_t ret_value = SUCCEED; + + FUNC_ENTER_PACKAGE + + /* + * 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; + + /* + * 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_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 = 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_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; + + /* + * 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_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; + + /* + * 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_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; + + /* + * 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_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; + + /* + * 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_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 + * SEEEEEEE EEEEEEEE MMMMMMMM MMMMMMMM + * 11 10 9 8 + * MMMMMMMM MMMMMMMM MMMMMMMM MMMMMMMM + * 7 6 5 4 + * MMMMMMMM MMMMMMMM 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 = 16; + dt->shared->u.atomic.order = H5T_ORDER_LE; + dt->shared->u.atomic.offset = 0; + dt->shared->u.atomic.prec = 128; + 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 = 127; + dt->shared->u.atomic.u.f.epos = 112; + 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 = 112; + dt->shared->u.atomic.u.f.norm = H5T_NORM_IMPLIED; + 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 H5T__init_native() */ + +/****************************************/ +/* ALIGNMENT and signal-handling status */ +/****************************************/ +/* Signal() support: yes */ +/* setjmp() support: yes */ +/* longjmp() support: yes */ +/* sigsetjmp() support: yes */ +/* siglongjmp() support: yes */ +/* sigprocmask() support: yes */ + +/******************************/ +/* signal handlers statistics */ +/******************************/ +/* signal_handlers tested: 15 times */ +/* sigbus_handler called: 5 times */ +/* sigsegv_handler called: 5 times */ +/* sigill_handler called: 5 times */ diff --git a/packages/libhdf5/aarch64/H5lib_settings.c b/packages/libhdf5/aarch64/H5lib_settings.c new file mode 100644 index 000000000..16e3caf33 --- /dev/null +++ b/packages/libhdf5/aarch64/H5lib_settings.c @@ -0,0 +1,106 @@ +/* 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: Mar 30, 2018 + * u0_a220@localhost + * + * 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.10.1\n" + " Configured on: Fri Mar 30 08:09:43 CEST 2018\n" + " Configured by: u0_a220@localhost\n" + " Host system: aarch64-unknown-linux-gnu\n" + " Uname information: Linux localhost 3.10.84-perf-g99119bc #1 SMP PREEMPT Fri Aug 18 15:21:50 2017 aarch64 Android\n" + " Byte sex: little-endian\n" + " Installation point: /data/data/com.termux/files/home/scratch/hdf5-1.10.1/hdf5\n" + "\n" + "Compiling Options:\n" + "------------------\n" + " Build Mode: production\n" + " Debugging Symbols: no\n" + " Asserts: no\n" + " Profiling: no\n" + " Optimization Level: high\n" + "\n" + "Linking Options:\n" + "----------------\n" + " Libraries: static, shared\n" + " Statically Linked Executables: \n" + " LDFLAGS: \n" + " H5_LDFLAGS: \n" + " AM_LDFLAGS: \n" + " Extra libraries: -lz -ldl -lm \n" + " Archiver: ar\n" + " Ranlib: ranlib\n" + "\n" + "Languages:\n" + "----------\n" + " C: yes\n" + " C Compiler: /data/data/com.termux/files/usr/bin/gcc\n" + " CPPFLAGS: \n" + " H5_CPPFLAGS: -D_GNU_SOURCE -D_POSIX_C_SOURCE=200112L -DNDEBUG -UH5_DEBUG_API\n" + " AM_CPPFLAGS: \n" + " C Flags: \n" + " H5 C Flags: \n" + " AM C Flags: \n" + " Shared C Library: yes\n" + " Static C Library: yes\n" + "\n" + "\n" + " Fortran: no\n" + "\n" + " C++: no\n" + "\n" + " Java: no\n" + "\n" + "\n" + "Features:\n" + "---------\n" + " Parallel HDF5: no\n" + " High-level library: yes\n" + " Threadsafety: no\n" + " Default API mapping: v110\n" + " With deprecated public symbols: yes\n" + " I/O filters (external): deflate(zlib)\n" + " MPE: no\n" + " Direct VFD: no\n" + " dmalloc: no\n" + " Packages w/ extra debug output: none\n" + " API tracing: no\n" + " Using memory checker: no\n" + "Memory allocation sanity checks: no\n" + " Metadata trace file: no\n" + " Function stack tracing: no\n" + " Strict file format checks: no\n" + " Optimization instrumentation: no\n" +; + diff --git a/packages/libhdf5/aarch64/TryRunResults_out.cmake b/packages/libhdf5/aarch64/TryRunResults_out.cmake new file mode 100644 index 000000000..fc2783437 --- /dev/null +++ b/packages/libhdf5/aarch64/TryRunResults_out.cmake @@ -0,0 +1,194 @@ +# This file was generated by CMake because it detected TRY_RUN() commands +# in crosscompiling mode. It will be overwritten by the next CMake run. +# Copy it to a safe location, set the variables to appropriate values +# and use it then to preset the CMake cache (using -C). + + +# TEST_LFS_WORKS_RUN +# indicates whether the executable would have been able to run on its +# target platform. If so, set TEST_LFS_WORKS_RUN to +# the exit code (in many cases 0 for success), otherwise enter "FAILED_TO_RUN". +# TEST_LFS_WORKS_RUN__TRYRUN_OUTPUT +# contains the text the executable would have printed on stdout and stderr. +# If the executable would not have been able to run, set TEST_LFS_WORKS_RUN__TRYRUN_OUTPUT empty. +# Otherwise check if the output is evaluated by the calling CMake code. If so, +# check what the source file would have printed when called with the given arguments. +# The TEST_LFS_WORKS_COMPILE variable holds the build result for this TRY_RUN(). +# +# Source file : /home/builder/.termux-build/libhdf5/src/config/cmake_ext_mod/HDFTests.c +# Executable : /home/builder/.termux-build/libhdf5/build/CMakeFiles/cmTC_0c83a-TEST_LFS_WORKS_RUN +# Run arguments : +# Called from: [3] /home/builder/.termux-build/libhdf5/src/config/cmake_ext_mod/ConfigureChecks.cmake +# [2] /home/builder/.termux-build/libhdf5/src/config/cmake/ConfigureChecks.cmake +# [1] /home/builder/.termux-build/libhdf5/src/CMakeLists.txt + +set( TEST_LFS_WORKS_RUN + "0" + CACHE STRING "Result from TRY_RUN" FORCE) + +set( TEST_LFS_WORKS_RUN__TRYRUN_OUTPUT + "" + CACHE STRING "Output from TRY_RUN" FORCE) + + +# H5_PRINTF_LL_TEST_RUN +# indicates whether the executable would have been able to run on its +# target platform. If so, set H5_PRINTF_LL_TEST_RUN to +# the exit code (in many cases 0 for success), otherwise enter "FAILED_TO_RUN". +# H5_PRINTF_LL_TEST_RUN__TRYRUN_OUTPUT +# contains the text the executable would have printed on stdout and stderr. +# If the executable would not have been able to run, set H5_PRINTF_LL_TEST_RUN__TRYRUN_OUTPUT empty. +# Otherwise check if the output is evaluated by the calling CMake code. If so, +# check what the source file would have printed when called with the given arguments. +# The H5_PRINTF_LL_TEST_COMPILE variable holds the build result for this TRY_RUN(). +# +# Source file : /home/builder/.termux-build/libhdf5/src/config/cmake_ext_mod/HDFTests.c +# Executable : /home/builder/.termux-build/libhdf5/build/CMakeFiles/cmTC_0923e-H5_PRINTF_LL_TEST_RUN +# Run arguments : +# Called from: [3] /home/builder/.termux-build/libhdf5/src/config/cmake_ext_mod/ConfigureChecks.cmake +# [2] /home/builder/.termux-build/libhdf5/src/config/cmake/ConfigureChecks.cmake +# [1] /home/builder/.termux-build/libhdf5/src/CMakeLists.txt + +set( H5_PRINTF_LL_TEST_RUN + "0" + CACHE STRING "Result from TRY_RUN" FORCE) + +set( H5_PRINTF_LL_TEST_RUN__TRYRUN_OUTPUT + "H5_PRINTF_LL_WIDTH=[l]" + CACHE STRING "Output from TRY_RUN" FORCE) + + +# H5_LDOUBLE_TO_LONG_SPECIAL_RUN +# indicates whether the executable would have been able to run on its +# target platform. If so, set H5_LDOUBLE_TO_LONG_SPECIAL_RUN to +# the exit code (in many cases 0 for success), otherwise enter "FAILED_TO_RUN". +# H5_LDOUBLE_TO_LONG_SPECIAL_RUN__TRYRUN_OUTPUT +# contains the text the executable would have printed on stdout and stderr. +# If the executable would not have been able to run, set H5_LDOUBLE_TO_LONG_SPECIAL_RUN__TRYRUN_OUTPUT empty. +# Otherwise check if the output is evaluated by the calling CMake code. If so, +# check what the source file would have printed when called with the given arguments. +# The H5_LDOUBLE_TO_LONG_SPECIAL_COMPILE variable holds the build result for this TRY_RUN(). +# +# Source file : /home/builder/.termux-build/libhdf5/src/config/cmake/ConversionTests.c +# Executable : /home/builder/.termux-build/libhdf5/build/CMakeFiles/cmTC_b96b8-H5_LDOUBLE_TO_LONG_SPECIAL_RUN +# Run arguments : +# Called from: [3] /home/builder/.termux-build/libhdf5/src/config/cmake/ConfigureChecks.cmake +# [2] /home/builder/.termux-build/libhdf5/src/config/cmake/ConfigureChecks.cmake +# [1] /home/builder/.termux-build/libhdf5/src/CMakeLists.txt + +set( H5_LDOUBLE_TO_LONG_SPECIAL_RUN + "1" + CACHE STRING "Result from TRY_RUN" FORCE) + +set( H5_LDOUBLE_TO_LONG_SPECIAL_RUN__TRYRUN_OUTPUT + "" + CACHE STRING "Output from TRY_RUN" FORCE) + + +# H5_LONG_TO_LDOUBLE_SPECIAL_RUN +# indicates whether the executable would have been able to run on its +# target platform. If so, set H5_LONG_TO_LDOUBLE_SPECIAL_RUN to +# the exit code (in many cases 0 for success), otherwise enter "FAILED_TO_RUN". +# H5_LONG_TO_LDOUBLE_SPECIAL_RUN__TRYRUN_OUTPUT +# contains the text the executable would have printed on stdout and stderr. +# If the executable would not have been able to run, set H5_LONG_TO_LDOUBLE_SPECIAL_RUN__TRYRUN_OUTPUT empty. +# Otherwise check if the output is evaluated by the calling CMake code. If so, +# check what the source file would have printed when called with the given arguments. +# The H5_LONG_TO_LDOUBLE_SPECIAL_COMPILE variable holds the build result for this TRY_RUN(). +# +# Source file : /home/builder/.termux-build/libhdf5/src/config/cmake/ConversionTests.c +# Executable : /home/builder/.termux-build/libhdf5/build/CMakeFiles/cmTC_f960d-H5_LONG_TO_LDOUBLE_SPECIAL_RUN +# Run arguments : +# Called from: [3] /home/builder/.termux-build/libhdf5/src/config/cmake/ConfigureChecks.cmake +# [2] /home/builder/.termux-build/libhdf5/src/config/cmake/ConfigureChecks.cmake +# [1] /home/builder/.termux-build/libhdf5/src/CMakeLists.txt + +set( H5_LONG_TO_LDOUBLE_SPECIAL_RUN + "1" + CACHE STRING "Result from TRY_RUN" FORCE) + +set( H5_LONG_TO_LDOUBLE_SPECIAL_RUN__TRYRUN_OUTPUT + "" + CACHE STRING "Output from TRY_RUN" FORCE) + + +# H5_LDOUBLE_TO_LLONG_ACCURATE_RUN +# indicates whether the executable would have been able to run on its +# target platform. If so, set H5_LDOUBLE_TO_LLONG_ACCURATE_RUN to +# the exit code (in many cases 0 for success), otherwise enter "FAILED_TO_RUN". +# H5_LDOUBLE_TO_LLONG_ACCURATE_RUN__TRYRUN_OUTPUT +# contains the text the executable would have printed on stdout and stderr. +# If the executable would not have been able to run, set H5_LDOUBLE_TO_LLONG_ACCURATE_RUN__TRYRUN_OUTPUT empty. +# Otherwise check if the output is evaluated by the calling CMake code. If so, +# check what the source file would have printed when called with the given arguments. +# The H5_LDOUBLE_TO_LLONG_ACCURATE_COMPILE variable holds the build result for this TRY_RUN(). +# +# Source file : /home/builder/.termux-build/libhdf5/src/config/cmake/ConversionTests.c +# Executable : /home/builder/.termux-build/libhdf5/build/CMakeFiles/cmTC_39750-H5_LDOUBLE_TO_LLONG_ACCURATE_RUN +# Run arguments : +# Called from: [3] /home/builder/.termux-build/libhdf5/src/config/cmake/ConfigureChecks.cmake +# [2] /home/builder/.termux-build/libhdf5/src/config/cmake/ConfigureChecks.cmake +# [1] /home/builder/.termux-build/libhdf5/src/CMakeLists.txt + +set( H5_LDOUBLE_TO_LLONG_ACCURATE_RUN + "0" + CACHE STRING "Result from TRY_RUN" FORCE) + +set( H5_LDOUBLE_TO_LLONG_ACCURATE_RUN__TRYRUN_OUTPUT + "" + CACHE STRING "Output from TRY_RUN" FORCE) + + +# H5_LLONG_TO_LDOUBLE_CORRECT_RUN +# indicates whether the executable would have been able to run on its +# target platform. If so, set H5_LLONG_TO_LDOUBLE_CORRECT_RUN to +# the exit code (in many cases 0 for success), otherwise enter "FAILED_TO_RUN". +# H5_LLONG_TO_LDOUBLE_CORRECT_RUN__TRYRUN_OUTPUT +# contains the text the executable would have printed on stdout and stderr. +# If the executable would not have been able to run, set H5_LLONG_TO_LDOUBLE_CORRECT_RUN__TRYRUN_OUTPUT empty. +# Otherwise check if the output is evaluated by the calling CMake code. If so, +# check what the source file would have printed when called with the given arguments. +# The H5_LLONG_TO_LDOUBLE_CORRECT_COMPILE variable holds the build result for this TRY_RUN(). +# +# Source file : /home/builder/.termux-build/libhdf5/src/config/cmake/ConversionTests.c +# Executable : /home/builder/.termux-build/libhdf5/build/CMakeFiles/cmTC_e6f7f-H5_LLONG_TO_LDOUBLE_CORRECT_RUN +# Run arguments : +# Called from: [3] /home/builder/.termux-build/libhdf5/src/config/cmake/ConfigureChecks.cmake +# [2] /home/builder/.termux-build/libhdf5/src/config/cmake/ConfigureChecks.cmake +# [1] /home/builder/.termux-build/libhdf5/src/CMakeLists.txt + +set( H5_LLONG_TO_LDOUBLE_CORRECT_RUN + "0" + CACHE STRING "Result from TRY_RUN" FORCE) + +set( H5_LLONG_TO_LDOUBLE_CORRECT_RUN__TRYRUN_OUTPUT + "" + CACHE STRING "Output from TRY_RUN" FORCE) + + +# H5_NO_ALIGNMENT_RESTRICTIONS_RUN +# indicates whether the executable would have been able to run on its +# target platform. If so, set H5_NO_ALIGNMENT_RESTRICTIONS_RUN to +# the exit code (in many cases 0 for success), otherwise enter "FAILED_TO_RUN". +# H5_NO_ALIGNMENT_RESTRICTIONS_RUN__TRYRUN_OUTPUT +# contains the text the executable would have printed on stdout and stderr. +# If the executable would not have been able to run, set H5_NO_ALIGNMENT_RESTRICTIONS_RUN__TRYRUN_OUTPUT empty. +# Otherwise check if the output is evaluated by the calling CMake code. If so, +# check what the source file would have printed when called with the given arguments. +# The H5_NO_ALIGNMENT_RESTRICTIONS_COMPILE variable holds the build result for this TRY_RUN(). +# +# Source file : /home/builder/.termux-build/libhdf5/src/config/cmake/ConversionTests.c +# Executable : /home/builder/.termux-build/libhdf5/build/CMakeFiles/cmTC_178af-H5_NO_ALIGNMENT_RESTRICTIONS_RUN +# Run arguments : +# Called from: [3] /home/builder/.termux-build/libhdf5/src/config/cmake/ConfigureChecks.cmake +# [2] /home/builder/.termux-build/libhdf5/src/config/cmake/ConfigureChecks.cmake +# [1] /home/builder/.termux-build/libhdf5/src/CMakeLists.txt + +set( H5_NO_ALIGNMENT_RESTRICTIONS_RUN + "0" + CACHE STRING "Result from TRY_RUN" FORCE) + +set( H5_NO_ALIGNMENT_RESTRICTIONS_RUN__TRYRUN_OUTPUT + "" + CACHE STRING "Output from TRY_RUN" FORCE) + diff --git a/packages/libhdf5/build.sh b/packages/libhdf5/build.sh new file mode 100755 index 000000000..a44099b11 --- /dev/null +++ b/packages/libhdf5/build.sh @@ -0,0 +1,39 @@ +TERMUX_PKG_HOMEPAGE=https://portal.hdfgroup.org/display/support +TERMUX_PKG_DESCRIPTION="Hierarchical Data Format 5 (HDF5)" +_HDF5_MAJOR=1 +_HDF5_MINOR=10 +_HDF5_PATCH=1 +TERMUX_PKG_VERSION=${_HDF5_MAJOR}.${_HDF5_MINOR}.${_HDF5_PATCH} +TERMUX_PKG_SHA256=9c5ce1e33d2463fb1a42dd04daacbc22104e57676e2204e3d66b1ef54b88ebf2 +TERMUX_PKG_SRCURL=https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-${_HDF5_MAJOR}.${_HDF5_MINOR}/hdf5-$TERMUX_PKG_VERSION/src/hdf5-$TERMUX_PKG_VERSION.tar.bz2 +TERMUX_PKG_DEPENDS="libzopfli" +TERMUX_PKG_FORCE_CMAKE=true +TERMUX_PKG_EXTRA_CONFIGURE_ARGS="-C$TERMUX_PKG_BUILDER_DIR/aarch64/TryRunResults_out.cmake " + +termux_step_pre_configure () { + cp $TERMUX_PKG_BUILDER_DIR/aarch64/{H5Tinit.c,H5lib_settings.c} $TERMUX_PKG_BUILDDIR/ + mkdir -p $TERMUX_PKG_BUILDDIR/shared/ + cp $TERMUX_PKG_BUILDER_DIR/aarch64/{H5Tinit.c,H5lib_settings.c} $TERMUX_PKG_BUILDDIR/shared/ +} + +termux_step_post_configure () { + cp $TERMUX_PKG_BUILDER_DIR/aarch64/{H5Tinit.c,H5lib_settings.c} $TERMUX_PKG_BUILDDIR/shared/ +} + +termux_step_post_make_install() { + # Add a pkg-config file + cat > "$PKG_CONFIG_LIBDIR/hdf5.pc" <<-HERE + prefix=$TERMUX_PREFIX + exec_prefix=\${prefix} + libdir=\${exec_prefix}/lib + includedir=\${exec_prefix}/include + + Name: hdf5 + Description: $TERMUX_PKG_DESCRIPTION + Version: $TERMUX_PKG_VERSION + Requires: + Libs: -L\${libdir} -lhdf5 + Cflags: -I\${includedir} + + HERE +}