1include("source/libraries/mimalloc/cmake/mimalloc-config-version.cmake") 2 3set(mimalloc_sources 4 source/libraries/mimalloc/src/alloc.c 5 source/libraries/mimalloc/src/alloc-aligned.c 6 source/libraries/mimalloc/src/alloc-posix.c 7 source/libraries/mimalloc/src/arena.c 8 source/libraries/mimalloc/src/bitmap.c 9 source/libraries/mimalloc/src/heap.c 10 source/libraries/mimalloc/src/init.c 11 source/libraries/mimalloc/src/options.c 12 source/libraries/mimalloc/src/os.c 13 source/libraries/mimalloc/src/page.c 14 source/libraries/mimalloc/src/random.c 15 source/libraries/mimalloc/src/segment.c 16 source/libraries/mimalloc/src/segment-map.c 17 source/libraries/mimalloc/src/stats.c 18 source/libraries/mimalloc/src/prim/prim.c 19) 20 21set(mi_cflags "") 22set(mi_libraries "") 23 24add_library(mimalloc STATIC ${mimalloc_sources}) 25 26# set(CMAKE_C_STANDARD 11) 27# set(CMAKE_CXX_STANDARD 17) 28 29target_include_directories(mimalloc PRIVATE 30 source/libraries/mimalloc 31 source/libraries/mimalloc/src 32 source/libraries/mimalloc/prim 33 source/libraries/mimalloc/include 34) 35 36target_compile_definitions(mimalloc PRIVATE 37 MIMALLOC_LARGE_OS_PAGES=1 38 MI_DEBUG=0 39 MI_SECURE=0 40 NDEBUG=0 41) 42 43if (NOT MSVC) 44 target_compile_options(mimalloc PRIVATE 45 -Wno-cast-align 46 -Wno-cast-qual 47 ) 48endif () 49