diff --git a/.github/workflows/test_pypi.yml b/.github/workflows/test_pypi.yml index 4b68180830..d3c4341135 100644 --- a/.github/workflows/test_pypi.yml +++ b/.github/workflows/test_pypi.yml @@ -31,11 +31,8 @@ jobs: - name: homebrew run: | if [[ ${{ matrix.os }} == macos* ]] ; then \ - brew install hdf5@1.10 swig gcc libomp \ - && echo "/usr/local/opt/hdf5@1.10/bin" >> $GITHUB_PATH \ - && echo LDFLAGS="-L/usr/local/lib/ -L/usr/local/opt/hdf5@1.10/lib" >> $GITHUB_ENV \ - && echo CPPFLAGS="-I/usr/local/opt/hdf5@1.10/include" >> $GITHUB_ENV \ - && echo HDF5_BASE="/usr/local/opt/hdf5@1.10/" >> $GITHUB_ENV + brew install hdf5 swig gcc libomp \ + && echo LDFLAGS="-L/usr/local/lib/" >> $GITHUB_ENV fi - name: Set up Python ${{ matrix.python-version }} diff --git a/.github/workflows/test_python_cplusplus.yml b/.github/workflows/test_python_cplusplus.yml index ac3a10fa76..5998c9a4b7 100644 --- a/.github/workflows/test_python_cplusplus.yml +++ b/.github/workflows/test_python_cplusplus.yml @@ -152,13 +152,11 @@ jobs: # install amici dependencies - name: homebrew run: | - brew install hdf5@1.10 swig gcc cppcheck libomp boost \ + brew install hdf5 swig gcc cppcheck libomp boost \ && brew ls -v boost \ && brew ls -v libomp \ - && echo "/usr/local/opt/hdf5@1.10/bin" >> $GITHUB_PATH \ - && echo LDFLAGS="-L/usr/local/lib/ -L/usr/local/opt/hdf5@1.10/lib -L/usr/local/Cellar/boost/1.78.0_1/lib/" >> $GITHUB_ENV \ - && echo CPPFLAGS="-I/usr/local/opt/hdf5@1.10/include -I/usr/local/Cellar/boost/1.78.0_1/include/" >> $GITHUB_ENV \ - && echo HDF5_BASE="/usr/local/opt/hdf5@1.10/" >> $GITHUB_ENV + && echo LDFLAGS="-L/usr/local/lib/ -L/usr/local/Cellar/boost/1.78.0_1/lib/" >> $GITHUB_ENV \ + && echo CPPFLAGS="-I/usr/local/Cellar/boost/1.78.0_1/include/" >> $GITHUB_ENV - name: Build AMICI run: | diff --git a/src/hdf5.cpp b/src/hdf5.cpp index 4b486b06f2..40571ffaab 100644 --- a/src/hdf5.cpp +++ b/src/hdf5.cpp @@ -84,7 +84,11 @@ void checkEventDimensionsCompatible(hsize_t m, hsize_t n, Model const& model) { void createGroup(H5::H5File const& file, std::string const& groupPath, bool recursively) { - +#if H5_VERSION_GE(1, 10, 6) + H5::LinkCreatPropList lcpl; + lcpl.setCreateIntermediateGroup(recursively); + file.createGroup(groupPath.c_str(), lcpl); +#else auto groupCreationPropertyList = H5P_DEFAULT; if (recursively) { @@ -101,6 +105,7 @@ void createGroup(H5::H5File const& file, throw(AmiException("Failed to create group in hdf5CreateGroup: %s", groupPath.c_str())); H5Gclose(group); +#endif } std::unique_ptr readSimulationExpData(std::string const& hdf5Filename,