mirror of
https://github.com/CPunch/Cosmo.git
synced 2024-11-14 03:50:04 +00:00
28 lines
929 B
CMake
28 lines
929 B
CMake
cmake_minimum_required(VERSION 3.10)
|
|
project(cosmo VERSION 0.1.0 LANGUAGES C)
|
|
|
|
set(CMAKE_C_STANDARD 99)
|
|
set(CMAKE_C_STANDARD_REQUIRED True)
|
|
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY bin)
|
|
|
|
IF (NOT WIN32)
|
|
set (CMAKE_C_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -g")
|
|
set (CMAKE_LINKER_FLAGS_DEBUG "${CMAKE_LINKER_FLAGS_DEBUG} -fsanitize=address")
|
|
set (CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -O3 -Wall")
|
|
ENDIF()
|
|
|
|
set_property(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY VS_STARTUP_PROJECT cosmo)
|
|
|
|
include(FetchContent)
|
|
|
|
file(GLOB sources CONFIGURE_DEPENDS ${PROJECT_SOURCE_DIR}/src/*.c)
|
|
add_executable(${PROJECT_NAME} main.c ${PROJECT_SOURCE_DIR}/util/linenoise.c)
|
|
target_sources(${PROJECT_NAME} PRIVATE ${sources})
|
|
|
|
IF (NOT WIN32)
|
|
target_link_libraries(${PROJECT_NAME} m)
|
|
ENDIF()
|
|
|
|
target_include_directories(${PROJECT_NAME} PUBLIC ${PROJECT_SOURCE_DIR}/src)
|
|
target_compile_features(${PROJECT_NAME} PRIVATE c_std_99)
|