diff options
| author | Lexi Winter <lexi@le-fay.org> | 2025-06-28 19:25:55 +0100 |
|---|---|---|
| committer | Lexi Winter <lexi@le-fay.org> | 2025-06-28 19:25:55 +0100 |
| commit | a2d7181700ac64b8e7a4472ec26dfa253b38f188 (patch) | |
| tree | 23c5a9c8ec4089ac346e2e0f9391909c3089b66b /nihil.posix/CMakeLists.txt | |
| parent | f226d46ee02b57dd76a4793593aa8d66e1c58353 (diff) | |
| download | nihil-a2d7181700ac64b8e7a4472ec26dfa253b38f188.tar.gz nihil-a2d7181700ac64b8e7a4472ec26dfa253b38f188.tar.bz2 | |
split nihil into separate modules
Diffstat (limited to 'nihil.posix/CMakeLists.txt')
| -rw-r--r-- | nihil.posix/CMakeLists.txt | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/nihil.posix/CMakeLists.txt b/nihil.posix/CMakeLists.txt new file mode 100644 index 0000000..db5e5aa --- /dev/null +++ b/nihil.posix/CMakeLists.txt @@ -0,0 +1,51 @@ +# This source code is released into the public domain. + +add_library(nihil.posix STATIC) +target_link_libraries(nihil.posix PRIVATE nihil.error nihil.guard nihil.monad) + +target_sources(nihil.posix + PUBLIC FILE_SET modules TYPE CXX_MODULES FILES + nihil.posix.ccm + argv.ccm + ensure_dir.ccm + exec.ccm + fd.ccm + open.ccm + process.ccm + read_file.ccm + rename.ccm + spawn.ccm + write_file.ccm + + PRIVATE + argv.cc + ensure_dir.cc + exec.cc + getenv.cc + fd.cc + find_in_path.cc + open.cc + process.cc + rename.cc +) + +if(NIHIL_TESTS) + enable_testing() + + add_executable(nihil.posix.test + test_fd.cc + test_getenv.cc + test_spawn.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() |
