Skip to content

Commit

Permalink
Parallel builds need the mpi compiler for pkgconfig scripts. (#599)
Browse files Browse the repository at this point in the history
* OESS-98 convert plugin option to FetchContent, add tests

* Fixes for pkcfg files because of plugin option

* OESS-98 fix tools test for plugins

* Keep doxygen comments under 100 chars long - format hint

* Whitespace

* HDFFV-11144 - Reclassify CMake messages

* HDFFV-11099/11100 added help text

* Reworked switch statement to compare string instead

* Fix typo

* Update CDash mode

* Correct name of threadsafe

* Correct option name

* Undo accidental commit

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

* Disable long double tests for now

* HDFFV-11228 remove arbitrary CMake warning groups.

* Make each flag a string

* Some Javadoc warning fixes

* Updated javadoc fixes

* # WARNING: head commit changed in the meantime

HDFFV-11229 Fix long double usage in tools and java

Changed h5dump and h5ls to just print 128-bit for long double type.
Added test and file for dataset and attributes with all three float
types.

* Committing clang-format changes

* HDFFV-11229 Add release note

* HDFFV-11229 windows testfile needed

* fix typo

* Remove non supported message text

* HDFFV-11229 - change ldouble test to check both native and general

* HDFFV-11229 add second file compare

* HDFFV-11229 fix reference file

* HDFFV-11229 autotools check two refs

* HDFFV-11229 revert back to removal of NATIVE_LDOUBLE in tools output

* Committing clang-format changes

* Update release note

* Update attribute type of ref file

* Change source of ninja for macs

* try port instead of brew

* Recommended is to use brew.

* Undo non long double changes

* remove unneeded file

* Fix perl and doxygen CMake code

* Add "option" command for clang options

* Rework CMake add_custom to use the BYPRODUCTS argument

* Add stamp files to BYPRODUCTS

* Only one copy of file exists

* Fix custom cmmand depends targets

* Fix fortran custom command DEPENDS

* Add LD_LIBRARY_PATH to tests

* Add custom target for DEPENDS

* Add h5detect conditionaly to generated target DEPENDS

* Correct DEPENDS targets

* Parallel builds need the mpi compiler for pkgconfig scripts.

* install only if MPI build

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
  • Loading branch information
byrnHDF and github-actions[bot] authored Apr 27, 2021
1 parent 460b6f4 commit 00dc456
Show file tree
Hide file tree
Showing 6 changed files with 44 additions and 6 deletions.
6 changes: 5 additions & 1 deletion c++/src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -209,7 +209,11 @@ install (
)

if (NOT WIN32 AND NOT MINGW)
set (_PKG_CONFIG_COMPILER ${CMAKE_CXX_COMPILER})
if (HDF5_ENABLE_PARALLEL AND MPI_CXX_FOUND)
set (_PKG_CONFIG_COMPILER ${MPI_CXX_COMPILER})
else ()
set (_PKG_CONFIG_COMPILER ${CMAKE_CXX_COMPILER})
endif ()
configure_file (
${HDF_RESOURCES_DIR}/libh5cc.in
${HDF5_BINARY_DIR}/CMakeFiles/h5c++
Expand Down
6 changes: 5 additions & 1 deletion fortran/src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -556,7 +556,11 @@ install (
)

if (NOT WIN32 AND NOT MINGW)
set (_PKG_CONFIG_COMPILER ${CMAKE_Fortran_COMPILER})
if (HDF5_ENABLE_PARALLEL AND MPI_Fortran_FOUND)
set (_PKG_CONFIG_COMPILER ${MPI_Fortran_COMPILER})
else ()
set (_PKG_CONFIG_COMPILER ${CMAKE_Fortran_COMPILER})
endif ()
configure_file (
${HDF_RESOURCES_DIR}/libh5cc.in
${HDF5_BINARY_DIR}/CMakeFiles/h5fc
Expand Down
6 changes: 5 additions & 1 deletion hl/c++/src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,11 @@ install (
)

if (NOT WIN32 AND NOT MINGW)
set (_PKG_CONFIG_COMPILER ${CMAKE_CXX_COMPILER})
if (HDF5_ENABLE_PARALLEL AND MPI_CXX_FOUND)
set (_PKG_CONFIG_COMPILER ${MPI_CXX_COMPILER})
else ()
set (_PKG_CONFIG_COMPILER ${CMAKE_CXX_COMPILER})
endif ()
configure_file (
${HDF_RESOURCES_DIR}/libh5cc.in
${HDF5_BINARY_DIR}/CMakeFiles/h5hlc++
Expand Down
6 changes: 5 additions & 1 deletion hl/fortran/src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -353,7 +353,11 @@ install (
)

if (NOT WIN32 AND NOT MINGW)
set (_PKG_CONFIG_COMPILER ${CMAKE_Fortran_COMPILER})
if (HDF5_ENABLE_PARALLEL AND MPI_Fortran_FOUND)
set (_PKG_CONFIG_COMPILER ${MPI_Fortran_COMPILER})
else ()
set (_PKG_CONFIG_COMPILER ${CMAKE_Fortran_COMPILER})
endif ()
configure_file (
${HDF_RESOURCES_DIR}/libh5cc.in
${HDF5_BINARY_DIR}/CMakeFiles/h5hlfc
Expand Down
6 changes: 5 additions & 1 deletion hl/src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,11 @@ install (
)

if (NOT WIN32 AND NOT MINGW)
set (_PKG_CONFIG_COMPILER ${CMAKE_C_COMPILER})
if (HDF5_ENABLE_PARALLEL AND MPI_C_FOUND)
set (_PKG_CONFIG_COMPILER ${MPI_C_COMPILER})
else ()
set (_PKG_CONFIG_COMPILER ${CMAKE_C_COMPILER})
endif ()
configure_file (
${HDF_RESOURCES_DIR}/libh5cc.in
${HDF5_BINARY_DIR}/CMakeFiles/h5hlcc
Expand Down
20 changes: 19 additions & 1 deletion src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -1352,7 +1352,11 @@ install (
)

if (NOT WIN32)
set (_PKG_CONFIG_COMPILER ${CMAKE_C_COMPILER})
if (HDF5_ENABLE_PARALLEL AND MPI_C_FOUND)
set (_PKG_CONFIG_COMPILER ${MPI_C_COMPILER})
else ()
set (_PKG_CONFIG_COMPILER ${CMAKE_C_COMPILER})
endif ()
configure_file (
${HDF_RESOURCES_DIR}/libh5cc.in
${HDF5_BINARY_DIR}/CMakeFiles/h5cc
Expand All @@ -1364,6 +1368,20 @@ if (NOT WIN32)
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
COMPONENT libraries
)
if (HDF5_ENABLE_PARALLEL AND MPI_C_FOUND)
#legacy requires a different name
configure_file (
${HDF_RESOURCES_DIR}/libh5cc.in
${HDF5_BINARY_DIR}/CMakeFiles/h5pcc
@ONLY
)
install (
FILES ${HDF5_BINARY_DIR}/CMakeFiles/h5pcc
DESTINATION ${HDF5_INSTALL_BIN_DIR}
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
COMPONENT libraries
)
endif ()
endif ()

#-----------------------------------------------------------------------------
Expand Down

0 comments on commit 00dc456

Please sign in to comment.