Skip to content

Commit 88a0f58

Browse files
committed
Update Eigen to 5.0.0
1 parent 892b12b commit 88a0f58

3 files changed

Lines changed: 15 additions & 15 deletions

File tree

.github/workflows/builds.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ jobs:
2525
runs-on: ubuntu-latest
2626
env:
2727
KLUSOLVE_OS: linux
28-
EIGEN_VERSION : "3.4.0"
28+
EIGEN_VERSION : "5.0.0"
2929
DOCKER_IMAGE: ${{ matrix.docker_image }}
3030
KLUSOLVE_ARCH: ${{ matrix.arch }}
3131
KLUSOLVE_EXTRA_CMAKE_FLAGS: ${{ matrix.extra_cmake_flags }}
@@ -73,7 +73,7 @@ jobs:
7373
env:
7474
KLUSOLVE_OS: darwin
7575
KLUSOLVE_ARCH: ${{ matrix.arch }}
76-
EIGEN_VERSION : "3.4.0"
76+
EIGEN_VERSION : "5.0.0"
7777
steps:
7878
- uses: "actions/checkout@v4"
7979
with:
@@ -121,7 +121,7 @@ jobs:
121121
KLUSOLVE_OS_IMAGE: ${{ matrix.os }}
122122
KLUSOLVE_ARCH: ${{ matrix.arch }}
123123
KLUSOLVE_COMPILER: ${{ matrix.compiler }}
124-
EIGEN_VERSION: "3.4.0"
124+
EIGEN_VERSION: "5.0.0"
125125
steps:
126126
- uses: "actions/checkout@v4"
127127
with:

CMakeLists.txt

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
# Copyright (C) 2012-2024 Paulo Meira
2-
# Copyright (C) 2019-2024 DSS-Extensions contributors
1+
# Copyright (C) 2012-2026 Paulo Meira
2+
# Copyright (C) 2019-2026 DSS-Extensions contributors
33
# This augmented KLUSolve CMakeLists.txt is based on a personal script to
44
# build SuiteSparse on Windows. This will be updated to a simpler version
55
# when newer SuiteSparse versions are adopted.
@@ -14,7 +14,7 @@ endif()
1414

1515
SET(USE_SYSTEM_SUITESPARSE ON CACHE BOOL "Use system SuiteSparse.")
1616
SET(DSS_EXTENSIONS OFF CACHE BOOL "If building for distribution on DSS-Extensions, enable this. It tweaks the output folders.")
17-
SET(USE_SYSTEM_EIGEN ON CACHE BOOL "Use system Eigen3 (v3.4 recommended).")
17+
SET(USE_SYSTEM_EIGEN ON CACHE BOOL "Use system Eigen3 (v5.0 recommended).")
1818

1919
# Moved from KLUSOLVEX_LIB_TYPE to BUILD_SHARED_LIBS to simplify the build process when
2020
# integrating with other build tools
@@ -86,14 +86,14 @@ else ()
8686
STRING(REGEX REPLACE "\\\\" "/" EIGEN3_DIR ${EIGEN3_DIR})
8787
endif()
8888
ELSE()
89-
set(TARGET_EIGEN_VERSION "3.4.0")
89+
set(TARGET_EIGEN_VERSION "5.0.0")
9090
IF (NOT EXISTS "${CMAKE_BINARY_DIR}/eigen-${TARGET_EIGEN_VERSION}/Eigen/Eigen")
91-
message(STATUS "Downloading Eigen3 source code...")
92-
file(DOWNLOAD "https://gitlab.com/libeigen/eigen/-/archive/${TARGET_EIGEN_VERSION}/eigen-${TARGET_EIGEN_VERSION}.tar.gz" "${CMAKE_BINARY_DIR}/eigen3.tar.gz")
93-
message(STATUS "Unpacking Eigen3...")
94-
execute_process(COMMAND ${CMAKE_COMMAND} -E tar zxf "eigen3.tar.gz" WORKING_DIRECTORY ${CMAKE_BINARY_DIR})
91+
message(STATUS "Downloading Eigen source code...")
92+
file(DOWNLOAD "https://gitlab.com/libeigen/eigen/-/archive/${TARGET_EIGEN_VERSION}/eigen-${TARGET_EIGEN_VERSION}.tar.gz" "${CMAKE_BINARY_DIR}/eigen.tar.gz")
93+
message(STATUS "Unpacking Eigen...")
94+
execute_process(COMMAND ${CMAKE_COMMAND} -E tar zxf "eigen.tar.gz" WORKING_DIRECTORY ${CMAKE_BINARY_DIR})
9595
ELSE()
96-
message(STATUS "Eigen3 already exists, skipping download.")
96+
message(STATUS "Eigen already exists, skipping download.")
9797
ENDIF()
9898
SET(EIGEN3_DIR "${CMAKE_BINARY_DIR}/eigen-${TARGET_EIGEN_VERSION}")
9999
ENDIF()

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ Changes include:
1818

1919
For binary distributions, basic descriptions of the dependencies and licensing information is reproduced below. When building from source, be sure to check the licenses of the components.
2020

21-
**Currently tested with Eigen 3.4.0 and SuiteSparse 5.6.0.** KLU, which is distributed in SuiteSparse, is very stable, so this library should be forward compatible. We will eventually integrate with the current SuiteSparse (CMake) build setup, but for now our build scripts provide a more streamlined setup when building from source.
21+
**Currently tested with Eigen 5.0.0 and SuiteSparse 5.6.0.** KLU, which is distributed in SuiteSparse, is very stable, so this library should be forward compatible. We will eventually integrate with the current SuiteSparse (CMake) build setup, but for now our build scripts provide a more streamlined setup when building from source.
2222

2323
# Credits / Acknowledgment
2424

@@ -34,9 +34,9 @@ Since we don't include the code for KLU or SuiteSparse in this repository anymor
3434

3535
KLUSolveX
3636

37-
Copyright (c) 2017-2024, Paulo Meira
37+
Copyright (c) 2017-2026, Paulo Meira
3838

39-
Copyright (c) 2019-2024, DSS Extensions contributors
39+
Copyright (c) 2019-2026, DSS-Extensions contributors
4040

4141
Copyright (c) 2008, EnerNex Corporation
4242

0 commit comments

Comments
 (0)