libflint/CMakeLists.txt

57 lines
1.4 KiB
CMake
Raw Permalink Normal View History

2021-02-01 22:06:37 +00:00
cmake_minimum_required(VERSION 3.17)
project(flint C)
2021-12-10 20:41:36 +00:00
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
2021-02-01 22:06:37 +00:00
if ((${CMAKE_SYSTEM_NAME} STREQUAL "Linux"))
add_compile_definitions(flint __USE_XOPEN_EXTENDED)
endif()
2021-02-01 22:06:37 +00:00
set(CMAKE_C_STANDARD 99)
include_directories(include)
set(SOURCES
2023-07-12 18:32:21 +00:00
src/linkedlist.c
src/set.c
src/stack.c
src/binarytree.c
src/input.c
src/math.c
src/string.c
2023-10-25 14:56:41 +00:00
src/vector.c
2023-11-29 22:01:41 +00:00
src/utility.c
2024-03-28 22:19:05 +00:00
src/crypto.c
2024-04-05 18:13:08 +00:00
src/parsing.c
src/network.c
2024-07-16 17:49:08 +00:00
src/memory.c
2021-02-01 22:06:37 +00:00
)
2023-12-28 20:31:14 +00:00
if ((${CMAKE_SYSTEM_NAME} STREQUAL "Darwin"))
add_library(flint ${SOURCES} src/macos.c)
2023-12-28 20:31:14 +00:00
else()
add_library(flint ${SOURCES})
endif()
2022-12-02 16:04:51 +00:00
if ((${CMAKE_SYSTEM_NAME} STREQUAL "Linux"))
target_link_libraries(flint pthread bsd)
2022-03-30 23:36:00 +00:00
endif()
2021-02-01 22:06:37 +00:00
if(${CMAKE_PROJECT_NAME} STREQUAL flint)
add_executable(tests tests/tests.c)
target_include_directories(tests PRIVATE include)
2023-10-25 16:21:59 +00:00
if (${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
target_link_libraries(tests flint pthread bsd)
else()
target_link_libraries(tests flint pthread)
endif()
add_executable(netmanual tests/netmanual.c)
target_include_directories(netmanual PRIVATE include)
if (${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
target_link_libraries(netmanual flint pthread bsd)
2023-10-25 16:21:59 +00:00
else()
target_link_libraries(netmanual flint pthread)
endif()
endif()