51 lines
1.5 KiB
CMake
51 lines
1.5 KiB
CMake
add_library(mean_field_extension_example)
|
|
|
|
target_sources(
|
|
mean_field_extension_example
|
|
PUBLIC
|
|
FILE_SET CXX_MODULES FILES
|
|
ideal_gas_radiation.cppm
|
|
rotating_stellar_model.cppm
|
|
)
|
|
|
|
target_link_libraries(mean_field_extension_example PUBLIC mean_field)
|
|
|
|
add_executable(extension_example_demo demo.cpp)
|
|
target_link_libraries(extension_example_demo PRIVATE mean_field_extension_example)
|
|
|
|
add_executable(
|
|
extension_example_tests
|
|
tests/ideal_gas_radiation.cpp
|
|
tests/rotating_stellar_model.cpp
|
|
)
|
|
target_link_libraries(
|
|
extension_example_tests
|
|
PRIVATE
|
|
mean_field_extension_example
|
|
Catch2::Catch2WithMain
|
|
)
|
|
|
|
catch_discover_tests(
|
|
extension_example_tests
|
|
TEST_PREFIX "extension_example::"
|
|
PROPERTIES LABELS "extension-example"
|
|
)
|
|
|
|
find_program(LATEXMK_EXECUTABLE latexmk)
|
|
if (LATEXMK_EXECUTABLE)
|
|
add_custom_target(
|
|
extension_example_manual
|
|
COMMAND ${CMAKE_COMMAND} -E make_directory "${CMAKE_CURRENT_BINARY_DIR}/manual"
|
|
COMMAND
|
|
${LATEXMK_EXECUTABLE}
|
|
-pdf
|
|
-interaction=nonstopmode
|
|
-halt-on-error
|
|
-outdir=${CMAKE_CURRENT_BINARY_DIR}/manual
|
|
"${CMAKE_CURRENT_SOURCE_DIR}/manual/physics_developer_manual.tex"
|
|
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/manual"
|
|
COMMENT "Compiling the MeanField physics developer manual"
|
|
VERBATIM
|
|
)
|
|
endif ()
|