mirror of
https://github.com/HDFGroup/hdf5.git
synced 2026-09-25 04:09:44 +03:00
Refactor the cross-compilation infrastructure to rely on the standard
CMAKE_CROSSCOMPILING_EMULATOR variable instead of the custom
CROSSCOMPILING_PATH environment hack.
Key changes:
- Removed `ENVIRONMENT "${CROSSCOMPILING_PATH}"` from all test definitions.
- Updated custom commands (e.g., H5match_types, H5_gen) to invoke the
emulator explicitly when cross-compiling.
- Updated ConfigureChecks.cmake and HDF5UseFortran.cmake to enable
`try_run` checks when an emulator is defined.
- Added config/toolchain/mingw-w64-x86-64-wine.sh wrapper to automatically
locate MinGW runtime libraries (like libgfortran) for Wine execution.
- Cleaned up toolchain files to remove hardcoded emulator paths, deferring
configuration to the build environment.
HDF5 Examples This directory contains example programs for the installed APIs and scripts to compile and run them. Examples in the c and hl/c subdirectories are always installed, and those in fortran, hl/fortran, c++ and hl/c++ will be installed when fortran or c++ are enabled. Running the run-all-ex.sh script in this directory will run the scripts and in turn the examples in all the subdirectories where examples are installed. The scripts can also be run individually. The appropriate compile scripts in the bin directory for this install will be used by default to compile and link the example programs. Note that h5redeploy must be run if these binaries are copied or extracted in a directory other than the one where they were initially installed. Compile scripts from other locations can be used by setting an environment variable prefix to the path of the directory containing the bin directory with the compile scripts h5cc, h5fc, etc. For example, export prefix=/usr/local/hdf5 to use h5cc, h5fc, etc. in /usr/local/hdf5/bin.