Skip to content

Commit 86d4718

Browse files
Merge pull request DrTimothyAldenDavis#743 from DrTimothyAldenDavis/dev2
SuiteSparse 7.6.0
2 parents fcfefe6 + 16c5269 commit 86d4718

File tree

82 files changed

+342
-218
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

82 files changed

+342
-218
lines changed

.github/workflows/build.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,9 +79,11 @@ jobs:
7979
-DCMAKE_CUDA_COMPILER_LAUNCHER="ccache"
8080
openmp: with
8181
link: static
82+
# "Fake" a cross-compilation to exercise that build system path
8283
link-cmake-flags:
8384
-DBUILD_SHARED_LIBS=OFF
8485
-DBUILD_STATIC_LIBS=ON
86+
-DCMAKE_SYSTEM_NAME="Linux"
8587

8688
env:
8789
CC: ${{ matrix.cc }}

CHOLMOD/CMakeLists.txt

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,10 @@
1212
# cmake 3.22 is required to find the BLAS/LAPACK
1313
cmake_minimum_required ( VERSION 3.22 )
1414

15-
set ( CHOLMOD_DATE "Jan 10, 2024" )
15+
set ( CHOLMOD_DATE "Jan 20, 2024" )
1616
set ( CHOLMOD_VERSION_MAJOR 5 CACHE STRING "" FORCE )
17-
set ( CHOLMOD_VERSION_MINOR 1 CACHE STRING "" FORCE )
18-
set ( CHOLMOD_VERSION_SUB 1 CACHE STRING "" FORCE )
17+
set ( CHOLMOD_VERSION_MINOR 2 CACHE STRING "" FORCE )
18+
set ( CHOLMOD_VERSION_SUB 0 CACHE STRING "" FORCE )
1919

2020
message ( STATUS "Building CHOLMOD version: v"
2121
${CHOLMOD_VERSION_MAJOR}.
@@ -84,9 +84,6 @@ endif ( )
8484
#-------------------------------------------------------------------------------
8585

8686
option ( CHOLMOD_USE_OPENMP "ON: Use OpenMP in CHOLMOD if available. OFF: Do not use OpenMP. (Default: SUITESPARSE_USE_OPENMP)" ${SUITESPARSE_USE_OPENMP} )
87-
if ( NOT SUITESPARSE_USE_OPENMP )
88-
set ( CHOLMOD_USE_OPENMP "OFF" CACHE STRING "" FORCE )
89-
endif ( )
9087
if ( CHOLMOD_USE_OPENMP )
9188
if ( CMAKE_VERSION VERSION_LESS 3.24 )
9289
find_package ( OpenMP COMPONENTS C )
@@ -98,7 +95,7 @@ else ( )
9895
set ( OpenMP_C_FOUND OFF )
9996
endif ( )
10097

101-
if ( OpenMP_C_FOUND )
98+
if ( CHOLMOD_USE_OPENMP AND OpenMP_C_FOUND )
10299
set ( CHOLMOD_HAS_OPENMP ON )
103100
else ( )
104101
set ( CHOLMOD_HAS_OPENMP OFF )
@@ -115,10 +112,10 @@ endif ( )
115112
#-------------------------------------------------------------------------------
116113

117114
if ( NOT SUITESPARSE_ROOT_CMAKELISTS )
118-
find_package ( SuiteSparse_config 7.5.0
115+
find_package ( SuiteSparse_config 7.6.0
119116
PATHS ${CMAKE_SOURCE_DIR}/../SuiteSparse_config/build NO_DEFAULT_PATH )
120117
if ( NOT TARGET SuiteSparse::SuiteSparseConfig )
121-
find_package ( SuiteSparse_config 7.5.0 REQUIRED )
118+
find_package ( SuiteSparse_config 7.6.0 REQUIRED )
122119
endif ( )
123120

124121
find_package ( AMD 3.3.1
@@ -554,10 +551,10 @@ if ( CHOLMOD_HAS_CUDA )
554551
endif ( )
555552
endif ( )
556553

557-
set ( old_CMAKE_EXTRA_INCLUDE_FILES CMAKE_EXTRA_INCLUDE_FILES )
554+
set ( _orig_CMAKE_EXTRA_INCLUDE_FILES ${CMAKE_EXTRA_INCLUDE_FILES} )
558555
list ( APPEND CMAKE_EXTRA_INCLUDE_FILES "stdlib.h" )
559556
check_type_size ( "__compar_fn_t" COMPAR_FN_T )
560-
set ( CMAKE_EXTRA_INCLUDE_FILES old_CMAKE_EXTRA_INCLUDE_FILES )
557+
set ( CMAKE_EXTRA_INCLUDE_FILES ${_orig_CMAKE_EXTRA_INCLUDE_FILES} )
561558

562559
if ( NOT HAVE_COMPAR_FN_T )
563560
if ( BUILD_SHARED_LIBS )

CHOLMOD/Config/cholmod.h.in

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -309,8 +309,8 @@ int cholmod_l_version (int version [3]) ;
309309

310310
#define CHOLMOD__VERSION SUITESPARSE__VERCODE(@CHOLMOD_VERSION_MAJOR@,@CHOLMOD_VERSION_MINOR@,@CHOLMOD_VERSION_SUB@)
311311
#if !defined (SUITESPARSE__VERSION) || \
312-
(SUITESPARSE__VERSION < SUITESPARSE__VERCODE(7,5,0))
313-
#error "CHOLMOD @CHOLMOD_VERSION_MAJOR@.@CHOLMOD_VERSION_MINOR@.@CHOLMOD_VERSION_SUB@ requires SuiteSparse_config 7.5.0 or later"
312+
(SUITESPARSE__VERSION < SUITESPARSE__VERCODE(7,6,0))
313+
#error "CHOLMOD @CHOLMOD_VERSION_MAJOR@.@CHOLMOD_VERSION_MINOR@.@CHOLMOD_VERSION_SUB@ requires SuiteSparse_config 7.6.0 or later"
314314
#endif
315315

316316
//------------------------------------------------------------------------------
@@ -898,7 +898,9 @@ typedef struct cholmod_common_struct
898898
int nthreads_max ; // max # of OpenMP threads to use in CHOLMOD.
899899
// Defaults to SUITESPARSE_OPENMP_MAX_THREADS.
900900

901+
#ifdef BLAS_DUMP
901902
FILE *blas_dump ; // only used if CHOLMOD is compiled with -DBLAS_DUMP
903+
#endif
902904

903905
} cholmod_common ;
904906

CHOLMOD/Doc/CHOLMOD_UserGuide.pdf

-1.06 KB
Binary file not shown.

CHOLMOD/Doc/ChangeLog

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,11 @@
1+
Jan 20, 2024: version 5.2.0
2+
3+
* bug fix: CHOLMOD 5.1.0 added a new variable in the CHOLMOD Common
4+
struct for development only but this change broke ABI compatibility
5+
since the SOVERSION was not bumped at the same time. v5.2.0 reverts
6+
this change so the new variable does not appear in production, thus
7+
restoring ABI compatibility with v5.0.x.
8+
19
Jan 10, 2024: version 5.1.1
210

311
* MATLAB interface: add -DNO_SSIZE_T for Windows

CHOLMOD/Doc/cholmod_version.tex

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
% version of SuiteSparse/CHOLMOD
2-
\date{VERSION 5.1.1, Jan 10, 2024}
2+
\date{VERSION 5.2.0, Jan 20, 2024}

CHOLMOD/Include/cholmod.h

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -246,13 +246,13 @@
246246
// version control
247247
//------------------------------------------------------------------------------
248248

249-
#define CHOLMOD_DATE "Jan 10, 2024"
249+
#define CHOLMOD_DATE "Jan 20, 2024"
250250
#define CHOLMOD_MAIN_VERSION 5
251-
#define CHOLMOD_SUB_VERSION 1
252-
#define CHOLMOD_SUBSUB_VERSION 1
251+
#define CHOLMOD_SUB_VERSION 2
252+
#define CHOLMOD_SUBSUB_VERSION 0
253253

254254
#define CHOLMOD_VER_CODE(main,sub) SUITESPARSE_VER_CODE(main,sub)
255-
#define CHOLMOD_VERSION CHOLMOD_VER_CODE(5,1)
255+
#define CHOLMOD_VERSION CHOLMOD_VER_CODE(5,2)
256256
#define CHOLMOD_HAS_VERSION_FUNCTION
257257

258258
#ifdef __cplusplus
@@ -307,10 +307,10 @@ int cholmod_l_version (int version [3]) ;
307307

308308
#include "SuiteSparse_config.h"
309309

310-
#define CHOLMOD__VERSION SUITESPARSE__VERCODE(5,1,1)
310+
#define CHOLMOD__VERSION SUITESPARSE__VERCODE(5,2,0)
311311
#if !defined (SUITESPARSE__VERSION) || \
312-
(SUITESPARSE__VERSION < SUITESPARSE__VERCODE(7,5,0))
313-
#error "CHOLMOD 5.1.1 requires SuiteSparse_config 7.5.0 or later"
312+
(SUITESPARSE__VERSION < SUITESPARSE__VERCODE(7,6,0))
313+
#error "CHOLMOD 5.2.0 requires SuiteSparse_config 7.6.0 or later"
314314
#endif
315315

316316
//------------------------------------------------------------------------------
@@ -898,7 +898,9 @@ typedef struct cholmod_common_struct
898898
int nthreads_max ; // max # of OpenMP threads to use in CHOLMOD.
899899
// Defaults to SUITESPARSE_OPENMP_MAX_THREADS.
900900

901+
#ifdef BLAS_DUMP
901902
FILE *blas_dump ; // only used if CHOLMOD is compiled with -DBLAS_DUMP
903+
#endif
902904

903905
} cholmod_common ;
904906

CMakeLists.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ include ( SuiteSparsePolicy )
110110

111111
if ( SUITESPARSE_USE_SYSTEM_GRAPHBLAS )
112112
list ( REMOVE_ITEM SUITESPARSE_ENABLE_PROJECTS "graphblas" )
113-
find_package ( GraphBLAS 9.0.0 REQUIRED )
113+
find_package ( GraphBLAS 9.0.1 REQUIRED )
114114
else ( )
115115
if ( "lagraph" IN_LIST SUITESPARSE_ENABLE_PROJECTS )
116116
# LAGraph requires GraphBLAS.
@@ -136,7 +136,7 @@ endif ( )
136136

137137
if ( SUITESPARSE_USE_SYSTEM_CHOLMOD )
138138
list ( REMOVE_ITEM SUITESPARSE_ENABLE_PROJECTS "cholmod" )
139-
find_package ( CHOLMOD 5.1.1 REQUIRED )
139+
find_package ( CHOLMOD 5.2.0 REQUIRED )
140140
else ( )
141141
if ( ( KLU_USE_CHOLMOD AND "klu" IN_LIST SUITESPARSE_ENABLE_PROJECTS )
142142
OR ( UMFPACK_USE_CHOLMOD AND "umfpack" IN_LIST SUITESPARSE_ENABLE_PROJECTS )
@@ -210,7 +210,7 @@ endif ( )
210210

211211
if ( SUITESPARSE_USE_SYSTEM_SUITESPARSE_CONFIG )
212212
list ( REMOVE_ITEM SUITESPARSE_ENABLE_PROJECTS "suitesparse_config" )
213-
find_package ( SuiteSparse_config 7.5.0 REQUIRED )
213+
find_package ( SuiteSparse_config 7.6.0 REQUIRED )
214214
else ( )
215215
if ( "mongoose" IN_LIST SUITESPARSE_ENABLE_PROJECTS
216216
OR "amd" IN_LIST SUITESPARSE_ENABLE_PROJECTS

CSparse/CMakeLists.txt

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,10 @@
1818
# Note that CSparse can use an older cmake version than most of SuiteSparse.
1919
cmake_minimum_required ( VERSION 3.13 ) # CSparse can be built stand-alone
2020

21-
set ( CSPARSE_DATE "Dec 30, 2023" )
21+
set ( CSPARSE_DATE "Jan 20, 2024" )
2222
set ( CSPARSE_VERSION_MAJOR 4 CACHE STRING "" FORCE )
2323
set ( CSPARSE_VERSION_MINOR 3 CACHE STRING "" FORCE )
24-
set ( CSPARSE_VERSION_SUB 0 CACHE STRING "" FORCE )
24+
set ( CSPARSE_VERSION_SUB 1 CACHE STRING "" FORCE )
2525

2626
message ( STATUS "Building CSparse version: v"
2727
${CSPARSE_VERSION_MAJOR}.
@@ -60,6 +60,13 @@ message ( STATUS "Build type: " ${CMAKE_BUILD_TYPE} )
6060
option ( BUILD_SHARED_LIBS "OFF: do not build shared libraries. ON (default): build shared libraries" ON )
6161
option ( BUILD_STATIC_LIBS "OFF: do not build static libraries. ON (default): build static libraries" ON )
6262

63+
if ( CMAKE_C_COMPILER_ID STREQUAL "Clang" )
64+
set ( CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -Wno-extra-semi-stmt" )
65+
endif ( )
66+
if ( CMAKE_CXX_COMPILER_ID STREQUAL "Clang" )
67+
set ( CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -Wno-extra-semi-stmt" )
68+
endif ( )
69+
6370
#-------------------------------------------------------------------------------
6471
# Configure cs.h with version number
6572
#-------------------------------------------------------------------------------

CSparse/Doc/ChangeLog

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
Jan 20, 2024: version 4.3.1
2+
3+
* minor updates to build system
4+
15
Dec 30, 2023: version 4.3.0
26

37
* major change to build system: by Markus Mützel

0 commit comments

Comments
 (0)