CMakePresets.json, requiring CMake 3.24 or higher, that will build HDF5 with the options for building a typical shared library with the common languages for a platform. The features include building the tools, examples, plugins, and the shared and static libraries.CMakePresets.json file is located in the root directory of the HDF5 source. It is from here you will execute the cmake command to build HDF5. The following example shows how to build HDF5 with the CMakePresets.json file: cmake –workflow –preset ci-StdShar-<compiler-type> –freshCreate a CMakeUserPresets.json file with the following content:
cmake –workflow –preset my-Static-Tools-<compiler-type> –freshcmake –workflow –preset my-S3-<compiler-type> –freshcmake –workflow –preset my-linux-par-GNUC –freshPresets are a way to store a set of CMake cache variables in a file. This allows you to save and load a set of variables that you use frequently. Presets can be used to save the configuration of a project for different build configurations, such as Debug and Release.
CMake supports two main files, CMakePresets.json and CMakeUserPresets.json, that allow users to specify common configure options and share them with others. CMake also supports files included with the include field.
HDF Group provides a CMakePresets.json file, used by the github workflows, that includes the following StdShar presets:
The StdShar presets are used by the GitHub workflows to build and test the HDF5 library on different platforms and compilers. The CMakePresets.json file is located in the root directory of the HDF5 repository. The StdShar presets inherit the following settings:
The ci-StdShar preset inherits the following settings:
See the CMakePresets.json file for the complete list of presets and settings. The Default CMakePresets.json Settings section provides an overview of the default settings for the StdShar presets.
The ci-StdShar preset sets the following cache variables:
The ci-StdExamples preset inherits the following settings:
The ci-StdExamples preset sets the following cache variables:
The ci-StdPlugins preset inherits the following settings:
The ci-StdPlugins preset sets the following cache variables:
The ci-PluginsVars preset sets the following cache variables:
The ci-base-plugins preset sets the following cache variables:
The ci-StdCompression preset inherits the following settings:
The ci-StdCompression preset sets the following cache variables:
The ci-CompressionVars preset sets the following cache variables:
The ci-base-tgz preset inherits the following settings:
The ci-base-tgz preset sets the following cache variables:
The ci-base preset sets the following CMake variables: