Skip to content

Commit 4a9a291

Browse files
Merge pull request DrTimothyAldenDavis#745 from mmuetzel/cmake
CMake: Try to handle `*_USE_OPENMP` more consistently.
2 parents b47afa1 + 3a84dd9 commit 4a9a291

File tree

12 files changed

+17
-23
lines changed

12 files changed

+17
-23
lines changed

CHOLMOD/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ else ( )
9595
set ( OpenMP_C_FOUND OFF )
9696
endif ( )
9797

98-
if ( OpenMP_C_FOUND )
98+
if ( CHOLMOD_USE_OPENMP AND OpenMP_C_FOUND )
9999
set ( CHOLMOD_HAS_OPENMP ON )
100100
else ( )
101101
set ( CHOLMOD_HAS_OPENMP OFF )

GraphBLAS/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ else ( )
109109
set ( OpenMP_C_FOUND OFF )
110110
endif ( )
111111

112-
if ( OpenMP_C_FOUND )
112+
if ( GRAPHBLAS_USE_OPENMP AND OpenMP_C_FOUND )
113113
set ( GRAPHBLAS_HAS_OPENMP ON )
114114
else ( )
115115
set ( GRAPHBLAS_HAS_OPENMP OFF )

LAGraph/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -181,7 +181,7 @@ else ( )
181181
endif ( )
182182
endif ( )
183183

184-
if ( OpenMP_C_FOUND )
184+
if ( LAGRAPH_USE_OPENMP AND OpenMP_C_FOUND )
185185
set ( LAGRAPH_HAS_OPENMP ON )
186186
else ( )
187187
set ( LAGRAPH_HAS_OPENMP OFF )

LAGraph/experimental/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ endif ( )
8585
# add OpenMP
8686
#-------------------------------------------------------------------------------
8787

88-
if ( OpenMP_C_FOUND )
88+
if ( LAGRAPH_HAS_OPENMP )
8989
if ( BUILD_SHARED_LIBS )
9090
target_link_libraries ( LAGraphX PRIVATE OpenMP::OpenMP_C )
9191
endif ( )

LAGraph/experimental/test/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ endif ( )
7474
# add OpenMP
7575
#-------------------------------------------------------------------------------
7676

77-
if ( OpenMP_C_FOUND )
77+
if ( LAGRAPH_HAS_OPENMP )
7878
if ( BUILD_SHARED_LIBS )
7979
target_link_libraries ( lagraphxtest PRIVATE OpenMP::OpenMP_C )
8080
endif ( )

LAGraph/src/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ endif ( )
9090
# add OpenMP
9191
#-------------------------------------------------------------------------------
9292

93-
if ( OpenMP_C_FOUND )
93+
if ( LAGRAPH_HAS_OPENMP )
9494
if ( BUILD_SHARED_LIBS )
9595
target_link_libraries ( LAGraph PRIVATE OpenMP::OpenMP_C )
9696
endif ( )

LAGraph/src/test/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ endif ( )
7676
# add OpenMP
7777
#-------------------------------------------------------------------------------
7878

79-
if ( OpenMP_C_FOUND )
79+
if ( LAGRAPH_HAS_OPENMP )
8080
if ( BUILD_SHARED_LIBS )
8181
target_link_libraries ( lagraphtest PRIVATE OpenMP::OpenMP_C )
8282
endif ( )

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -987,9 +987,9 @@ build type). The static libraries will not be built (since
987987

988988
* `SUITESPARSE_USE_OPENMP`:
989989

990-
If `ON`, OpenMP is used if it is available. Default: `OFF`.
990+
If `ON`, OpenMP is used by default if it is available. Default: `ON`.
991991

992-
GraphBLAS, LAGraph, and ParU will vastly slower if OpenMP is not used.
992+
GraphBLAS, LAGraph, and ParU will be vastly slower if OpenMP is not used.
993993
CHOLMOD will be somewhat slower without OpenMP (as long as it still has a
994994
parallel BLAS/LAPACK). Three packages (UMFPACK, CHOLMOD, and SPQR) rely
995995
heavily on parallel BLAS/LAPACK libraries and those libraries may use OpenMP

SuiteSparse_config/CMakeLists.txt

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ endif ( )
7171
#-------------------------------------------------------------------------------
7272

7373
option ( SUITESPARSE_CONFIG_USE_OPENMP "ON: Use OpenMP in SuiteSparse_config if available. OFF: Do not use OpenMP. (Default: SUITESPARSE_USE_OPENMP)" ${SUITESPARSE_USE_OPENMP} )
74-
if ( SUITESPARSE_CONFIG_USE_OPENMP OR SUITESPARSE_USE_OPENMP )
74+
if ( SUITESPARSE_CONFIG_USE_OPENMP )
7575
if ( CMAKE_VERSION VERSION_LESS 3.24 )
7676
find_package ( OpenMP COMPONENTS C )
7777
else ( )
@@ -82,20 +82,14 @@ else ( )
8282
set ( OpenMP_C_FOUND OFF )
8383
endif ( )
8484

85-
if ( OpenMP_C_FOUND )
86-
set ( SUITESPARSE_HAS_OPENMP ON )
85+
if ( SUITESPARSE_CONFIG_USE_OPENMP AND OpenMP_C_FOUND )
8786
set ( SUITESPARSE_CONFIG_HAS_OPENMP ON )
8887
else ( )
89-
set ( SUITESPARSE_HAS_OPENMP OFF )
9088
set ( SUITESPARSE_CONFIG_HAS_OPENMP OFF )
9189
endif ( )
92-
message ( STATUS "SuiteSparse has OpenMP: ${SUITESPARSE_HAS_OPENMP}" )
9390
message ( STATUS "SuiteSparse_config has OpenMP: ${SUITESPARSE_CONFIG_HAS_OPENMP}" )
9491

9592
# check for strict usage
96-
if ( SUITESPARSE_USE_STRICT AND SUITESPARSE_USE_OPENMP AND NOT SUITESPARSE_HAS_OPENMP )
97-
message ( FATAL_ERROR "OpenMP required for SuiteSparse but not found" )
98-
endif ( )
9993
if ( SUITESPARSE_USE_STRICT AND SUITESPARSE_CONFIG_USE_OPENMP AND NOT SUITESPARSE_CONFIG_HAS_OPENMP )
10094
message ( FATAL_ERROR "OpenMP required for SuiteSparse_config but not found" )
10195
endif ( )
@@ -212,7 +206,7 @@ if ( NOT NO_LIBM )
212206
endif ( )
213207

214208
# OpenMP:
215-
if ( SUITESPARSE_CONFIG_USE_OPENMP )
209+
if ( SUITESPARSE_CONFIG_HAS_OPENMP )
216210
message ( STATUS "OpenMP C libraries: ${OpenMP_C_LIBRARIES} ")
217211
message ( STATUS "OpenMP C include: ${OpenMP_C_INCLUDE_DIRS} ")
218212
message ( STATUS "OpenMP C flags: ${OpenMP_C_FLAGS} ")

SuiteSparse_config/Config/README.md.in

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -987,9 +987,9 @@ build type). The static libraries will not be built (since
987987

988988
* `SUITESPARSE_USE_OPENMP`:
989989

990-
If `ON`, OpenMP is used if it is available. Default: `OFF`.
990+
If `ON`, OpenMP is used by default if it is available. Default: `ON`.
991991

992-
GraphBLAS, LAGraph, and ParU will vastly slower if OpenMP is not used.
992+
GraphBLAS, LAGraph, and ParU will be vastly slower if OpenMP is not used.
993993
CHOLMOD will be somewhat slower without OpenMP (as long as it still has a
994994
parallel BLAS/LAPACK). Three packages (UMFPACK, CHOLMOD, and SPQR) rely
995995
heavily on parallel BLAS/LAPACK libraries and those libraries may use OpenMP

0 commit comments

Comments
 (0)