CMakeLists.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
if(NOT WIN32) message(STATUS "Skipping crucible-windows: not a Windows-like target") return() endif() include(CrucibleAddLibrary) include(CrucibleAddTest) crucible_add_library(crucible-windows) target_compile_definitions(crucible-windows INTERFACE CRUCIBLE_WINDOWS) target_compile_definitions(crucible-windows PRIVATE NOMINMAX _UNICODE UNICODE WIN32_LEAN_AND_MEAN) target_include_directories(crucible-windows PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/include") target_link_libraries(crucible-windows PUBLIC crucible-core dbghelp) target_sources(crucible-windows PRIVATE source/crucible/windows/backtrace.cpp source/crucible/windows/errors.cpp source/crucible/windows/fs.cpp source/crucible/windows/transcoding.cpp) crucible_add_test(test-crucible-windows) target_link_libraries(test-crucible-windows PRIVATE crucible-testing crucible-windows) target_sources(test-crucible-windows PRIVATE tests/crucible/windows/test_backtrace.cpp tests/crucible/windows/test_fs.cpp tests/crucible/windows/test_transcoding.cpp tests/main.cpp)