Skip to content

Add CMake configuration of LibComm#6

Open
Growl1234 wants to merge 6 commits into
abacusmodeling:masterfrom
Growl1234:master
Open

Add CMake configuration of LibComm#6
Growl1234 wants to merge 6 commits into
abacusmodeling:masterfrom
Growl1234:master

Conversation

@Growl1234

Copy link
Copy Markdown

This PR adds a proper installable CMake package for LibComm, including the LibComm::LibComm interface target, public-header installation, exported targets, package configuration/version files, and dependency propagation.

The main motivation is downstream consumption by ABACUS. Currently, ABACUS has to install LibComm itself and maintain a custom FindLibComm.cmake, taking over package-management and discovery responsibilities that should belong to the upstream project. With this change, ABACUS and other consumers can simply use:

find_package(LibComm CONFIG REQUIRED)

This removes duplicated downstream logic and reduces the maintenance burden for both LibComm and its consumers.

Note: In this CMake logic, cereal is required to be built with CMake; it's not supported to directly detecting non-installed header files.

@Growl1234 Growl1234 marked this pull request as draft June 16, 2026 14:52
@Growl1234

Copy link
Copy Markdown
Author

Looks like CTest detected a potential problem not found before... Let me have a look and fix it

@Growl1234 Growl1234 marked this pull request as ready for review June 16, 2026 15:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant