CMake: Remove FindPEXSI.cmake#7615
Open
Growl1234 wants to merge 1 commit into
Open
Conversation
ZhouXY-PKU
reviewed
Jul 9, 2026
ZhouXY-PKU
left a comment
Collaborator
There was a problem hiding this comment.
Dockerfile.intel is also need to get modified.
Author
Thanks for the hint. Since CI test "Build extra component with Intel toolchain" has passed, I don't think it really needs modification due to the change here. |
6966772 to
15da1aa
Compare
QuantumMisaka
left a comment
Collaborator
There was a problem hiding this comment.
PEXSI config-package compatibility review.
7bffec9 to
462a1f8
Compare
QuantumMisaka
approved these changes
Jul 11, 2026
QuantumMisaka
left a comment
Collaborator
There was a problem hiding this comment.
LGTM, and cmake_dependent_option fix need another PR
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR removes the legacy
FindPEXSI.cmakemodule and switches PEXSI discovery to the CMake config package provided by PEXSI itself.The main changes are:
ENABLE_PEXSI=ON.find_package(PEXSI 2.0.0 REQUIRED CONFIG)instead of the custom find module.PEXSI::PEXSItarget, so PEXSI include directories, compile definitions, and transitive dependencies are propagated through target usage requirements.CMAKE_PREFIX_PATH.CMAKE_PREFIX_PATHbased workflow, and mention that Spack can be used to install PEXSI and its dependencies.This fundamentally resolves #7572, as all environment variables except
CMAKE_PREFIX_PATHare removed.Possible breaking change
For CMake builds, the old variables
PEXSI_DIR,ParMETIS_DIR, andSuperLU_DIST_DIRare no longer available for ABACUS CMake, because the custom module has been removed. Users building ABACUS with PEXSI support should now make sure that the PEXSI CMake config package is discoverable by adding PEXSI and its dependency prefixes toCMAKE_PREFIX_PATHif they're not installed at standard place like/usror/usr/local.