Skip to content

Add CMake support (Do not merge)#223

Draft
bharathr98 wants to merge 24 commits intodavidsd:masterfrom
bharathr98:cmake-support-cherry
Draft

Add CMake support (Do not merge)#223
bharathr98 wants to merge 24 commits intodavidsd:masterfrom
bharathr98:cmake-support-cherry

Conversation

@bharathr98
Copy link
Contributor

@bharathr98 bharathr98 commented Apr 9, 2024

This PR resolves #74

Currently this branch does not faithfully build tests. The last commit where everything apart from tests works is 9baff5e.

Here's a list of things to fix before merging

  • Current implementation targets the master branch before Calculate Q matrix using Chinese Remainder Theorem, FLINT and BLAS libraries #142 was merged. Need to verify where the implementation breaks post merger
  • Add FLINT and BLAS properly
  • Add Elemental using FetchContent to avoid having to install it separately
  • When building Catch2, CMake is unable to see where mpicxx is and thus gives an error
  • Building with Catch2 additionally requires using -pthread compiler flag, which seems to mess up everything upstream
  • Dockerfile currently uses hardcoded --platform=linux/amd64 to build properly on Mx Macs

Copied over wscript, @vasdommes had already made a few changes from waf to cmake. Cleaned up, and added more TODOs
Two things need to be fixed - 1) Make sure that MPFR_REQUIRED is set properly and 2) Resolve missing MPFR_VERSION in the case where find_package is not used
…, plus additional Boost components. Integration tests pending
Avoids issue with boost/stacktrace when building on macOS. See boostorg/stacktrace#88 and comments therein.
The Docker image bootstrapcollaboration/elemental:master does not come with ElementalConfig.cmake, thus custom solution needed
CBLAS commented out because it is not necessary for the current set of build sources. Will be required later, together with FLINT, for the implementation of Chinese remainder theorem
Bring branch up to date with upstream/master
@vasdommes vasdommes marked this pull request as draft November 20, 2025 00:14
@vasdommes vasdommes added this to the Backlog milestone Nov 25, 2025
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.

Support CMake build system

2 participants