1project(libpussy)
 2
 3#set(CMAKE_C_COMPILER clang)
 4set(CMAKE_C_STANDARD 23)
 5set(CMAKE_C_STANDARD_REQUIRED ON)
 6
 7add_compile_options(-Wall -Wextra -pedantic -Werror -Wno-unused-parameter)
 8
 9if(DEFINED ENV{DEBUG})
10    add_compile_options(-g)
11else()
12    add_compile_options(-O3)
13endif()
14
15add_library(pussy STATIC
16    src/allocator.c
17    src/allocator_pet.c
18    src/allocator_debug.c
19    src/allocator_stdlib.c
20    src/arena.c
21    src/dump_bitmap.c
22    src/dump_hex.c
23    src/fsb_arena.c
24    src/mmarray.c
25    src/ringbuffer_base.c
26    src/ringbuffer_sync.c
27    src/sync_event.c
28    src/timespec.c
29)
30
31target_include_directories(pussy PUBLIC . include libpussy)
32
33# common definitions
34
35#set(common_defs_targets pussy test_pussy)
36set(common_defs_targets pussy)
37
38foreach(TARGET ${common_defs_targets})
39
40    if(DEFINED ENV{DEBUG})
41        target_compile_definitions(${TARGET} PUBLIC DEBUG)
42    endif()
43
44endforeach(TARGET)