prisms-center / phaseField

PRISMS-PF: An Open-Source Phase-Field Modeling Framework
https://prisms-center.github.io/phaseField/
Other
229 stars 119 forks source link

Updating `CMakeLists.txt` #315

Closed landinjm closed 2 days ago

landinjm commented 3 days ago

Updating the CMakeLists.txt to be more understandable and modular.

I've adapted the one used by ASPECT which is much more helpful in terms of error handling. For example, it will warn if the dependencies are not installed or if there is a leftover CMakeCache.txt

This PR also adds Catch2 for unit testing in catch.hpp

landinjm commented 3 days ago

Closes #296

landinjm commented 3 days ago

Note that this does change the behavior in how executable files are generated. Before, you would run make release or make debug to generate main.exe. Now, running make generates main-release.exe and main-debug.exe. The user can then choose which one to use.

landinjm commented 2 days ago

Partially addresses #314