11# Test build configuration for DSLLVM
22
33cmake_minimum_required (VERSION 3.15)
4+ project (DsmilTests C)
5+
6+ set (CMAKE_C_STANDARD 11)
7+ set (CMAKE_C_STANDARD_REQUIRED ON )
8+
9+ get_filename_component (DSMIL_ROOT_DIR "${CMAKE_CURRENT_LIST_DIR} /.." ABSOLUTE )
10+
11+ # Runtime libraries
12+ add_library (dsmil_ot_telemetry STATIC
13+ ${DSMIL_ROOT_DIR} /runtime/dsmil_ot_telemetry.c
14+ )
15+ target_include_directories (dsmil_ot_telemetry PUBLIC
16+ ${DSMIL_ROOT_DIR} /include
17+ )
18+ target_compile_definitions (dsmil_ot_telemetry PUBLIC
19+ _POSIX_C_SOURCE=200809L
20+ _GNU_SOURCE
21+ )
22+
23+ add_library (dsmil_fuzz_telemetry STATIC
24+ ${DSMIL_ROOT_DIR} /runtime/dsmil_fuzz_telemetry.c
25+ )
26+ target_include_directories (dsmil_fuzz_telemetry PUBLIC
27+ ${DSMIL_ROOT_DIR} /include
28+ )
29+ target_compile_definitions (dsmil_fuzz_telemetry PUBLIC
30+ _POSIX_C_SOURCE=200809L
31+ _GNU_SOURCE
32+ )
33+ target_link_libraries (dsmil_fuzz_telemetry PUBLIC pthread)
34+
35+ add_library (dsmil_fuzz_telemetry_advanced STATIC
36+ ${DSMIL_ROOT_DIR} /runtime/dsmil_fuzz_telemetry_advanced.c
37+ )
38+ target_include_directories (dsmil_fuzz_telemetry_advanced PUBLIC
39+ ${DSMIL_ROOT_DIR} /include
40+ )
41+ target_compile_definitions (dsmil_fuzz_telemetry_advanced PUBLIC
42+ _POSIX_C_SOURCE=200809L
43+ _GNU_SOURCE
44+ )
45+ target_link_libraries (dsmil_fuzz_telemetry_advanced PUBLIC pthread)
446
547# Runtime tests
648add_executable (test_ot_telemetry_runtime
@@ -10,7 +52,7 @@ target_link_libraries(test_ot_telemetry_runtime
1052 dsmil_ot_telemetry
1153)
1254target_include_directories (test_ot_telemetry_runtime PRIVATE
13- ${CMAKE_SOURCE_DIR } /include
55+ ${DSMIL_ROOT_DIR } /include
1456)
1557
1658add_executable (test_fuzz_telemetry_runtime
@@ -20,7 +62,7 @@ target_link_libraries(test_fuzz_telemetry_runtime
2062 dsmil_fuzz_telemetry
2163)
2264target_include_directories (test_fuzz_telemetry_runtime PRIVATE
23- ${CMAKE_SOURCE_DIR } /include
65+ ${DSMIL_ROOT_DIR } /include
2466)
2567
2668add_executable (test_fuzz_telemetry_advanced_runtime
@@ -30,7 +72,7 @@ target_link_libraries(test_fuzz_telemetry_advanced_runtime
3072 dsmil_fuzz_telemetry_advanced
3173)
3274target_include_directories (test_fuzz_telemetry_advanced_runtime PRIVATE
33- ${CMAKE_SOURCE_DIR } /include
75+ ${DSMIL_ROOT_DIR } /include
3476)
3577
3678# Integration tests
@@ -41,7 +83,7 @@ target_link_libraries(test_telecom_macros
4183 dsmil_ot_telemetry
4284)
4385target_include_directories (test_telecom_macros PRIVATE
44- ${CMAKE_SOURCE_DIR } /include
86+ ${DSMIL_ROOT_DIR } /include
4587)
4688
4789add_executable (test_attributes
@@ -52,29 +94,29 @@ target_link_libraries(test_attributes
5294 dsmil_fuzz_telemetry
5395)
5496target_include_directories (test_attributes PRIVATE
55- ${CMAKE_SOURCE_DIR } /include
97+ ${DSMIL_ROOT_DIR } /include
5698)
5799
58100# Pass tests (compile-only, use LIT for execution)
59101add_library (test_ot_telemetry_pass OBJECT
60102 passes/test_ot_telemetry_pass.c
61103)
62104target_include_directories (test_ot_telemetry_pass PRIVATE
63- ${CMAKE_SOURCE_DIR } /include
105+ ${DSMIL_ROOT_DIR } /include
64106)
65107
66108add_library (test_telecom_pass OBJECT
67109 passes/test_telecom_pass.c
68110)
69111target_include_directories (test_telecom_pass PRIVATE
70- ${CMAKE_SOURCE_DIR } /include
112+ ${DSMIL_ROOT_DIR } /include
71113)
72114
73115add_library (test_fuzz_coverage_pass OBJECT
74116 passes/test_fuzz_coverage_pass.c
75117)
76118target_include_directories (test_fuzz_coverage_pass PRIVATE
77- ${CMAKE_SOURCE_DIR } /include
119+ ${DSMIL_ROOT_DIR } /include
78120)
79121
80122# Test targets
0 commit comments