diff options
Diffstat (limited to 'nihil.posix/CMakeLists.txt')
| -rw-r--r-- | nihil.posix/CMakeLists.txt | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/nihil.posix/CMakeLists.txt b/nihil.posix/CMakeLists.txt new file mode 100644 index 0000000..62f6aaf --- /dev/null +++ b/nihil.posix/CMakeLists.txt @@ -0,0 +1,61 @@ +# This source code is released into the public domain. + +add_library(nihil.posix STATIC) +target_link_libraries(nihil.posix PRIVATE + nihil.core nihil.error nihil.flagset nihil.guard nihil.monad) + +target_sources(nihil.posix + PUBLIC FILE_SET modules TYPE CXX_MODULES FILES + posix.ccm + + argv.ccm + ensure_dir.ccm + exec.ccm + execv.ccm + executor.ccm + fd.ccm + find_in_path.ccm + getenv.ccm + open.ccm + process.ccm + read_file.ccm + rename.ccm + spawn.ccm + tempfile.ccm + write_file.ccm + + PRIVATE + argv.cc + ensure_dir.cc + exec.cc + execv.cc + getenv.cc + fd.cc + find_in_path.cc + open.cc + process.cc + rename.cc + tempfile.cc +) + +if(NIHIL_TESTS) + enable_testing() + + add_executable(nihil.posix.test + test.fd.cc + test.getenv.cc + test.spawn.cc + test.tempfile.cc + ) + + target_link_libraries(nihil.posix.test PRIVATE + nihil.posix + Catch2::Catch2WithMain + ) + + find_package(Catch2 REQUIRED) + + include(CTest) + include(Catch) + catch_discover_tests(nihil.posix.test) +endif() |
