Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support CMake build system #74

Open
vasdommes opened this issue Jun 3, 2023 · 0 comments · May be fixed by #223
Open

Support CMake build system #74

vasdommes opened this issue Jun 3, 2023 · 0 comments · May be fixed by #223
Assignees
Milestone

Comments

@vasdommes
Copy link
Collaborator

  1. Support CMake
  2. At some point, deprecate Waf

Why CMake instead of Waf?

  • According to the 2022 C++ Developer Surveys by ISO C++ and by JetBrains, CMake is by far the most popular build system among C++ developers. Waf is not even mentioned there!

  • In particular, CMake is used in SDPB dependencies such as Elemental, RapidJSON or libarchive. If SDPB will use CMake too, it will be easier to build it (or other projects using SDPB) with a single command.

  • CMake is required for popular test frameworks such as GoogleTest (however, the second most popular Catch2 can be included without CMake). Test frameworks would be useful to organize SDPB tests, if we need more (everyone needs more tests!).

  • Due to its popularity, CMake has better IDE support: VSCode has official CMake Tools Extension by Microsoft, and CLion uses CMake as its main project model.

@vasdommes vasdommes self-assigned this Jul 12, 2023
vasdommes added a commit to vasdommes/sdpb that referenced this issue Jul 28, 2023
…(El::BigFloat and El::Matrix)

took latest Catch2 from catchorg/Catch2@6e79e68
TODO: after adding CMake support davidsd#74, use proper CMake integration as in tutorial
vasdommes added a commit to vasdommes/sdpb that referenced this issue Aug 2, 2023
…ion tests).

Took latest Catch2 from catchorg/Catch2@6e79e68
TODO: after adding CMake support davidsd#74, use proper CMake integration as in tutorial
@vasdommes vasdommes added this to the Backlog milestone Nov 14, 2023
@vasdommes vasdommes removed the backlog label Nov 14, 2023
@bharathr98 bharathr98 linked a pull request Apr 9, 2024 that will close this issue
6 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant