mirror of https://github.com/keeweb/keeweb.git
35 lines
955 B
CMake
35 lines
955 B
CMake
cmake_minimum_required(VERSION 3.7)
|
|
|
|
project(keeweb-native-messaging-host)
|
|
|
|
set(CMAKE_CXX_STANDARD 20)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
|
|
include(FetchContent)
|
|
|
|
FetchContent_Declare(
|
|
libuv
|
|
GIT_REPOSITORY https://github.com/libuv/libuv.git
|
|
GIT_TAG v1.41.0
|
|
)
|
|
|
|
FetchContent_MakeAvailable(libuv)
|
|
|
|
set(OUTPUT_NAME ${PROJECT_NAME})
|
|
set(SOURCES src/native-messaging-host.cpp)
|
|
|
|
add_executable(${PROJECT_NAME} ${SOURCES})
|
|
|
|
target_link_libraries(${PROJECT_NAME} PRIVATE uv_a)
|
|
target_include_directories(${PROJECT_NAME} PRIVATE ${libuv_SOURCE_DIR}/include)
|
|
if(WIN32)
|
|
target_compile_options(${PROJECT_NAME} PRIVATE /W4 /WX /permissive-)
|
|
else()
|
|
target_compile_options(${PROJECT_NAME} PRIVATE -Wall -Wextra -pedantic -Werror)
|
|
endif()
|
|
|
|
if(CMAKE_BUILD_TYPE STREQUAL "Debug")
|
|
target_compile_options(${PROJECT_NAME} PRIVATE -fsanitize=address,undefined)
|
|
target_link_options(${PROJECT_NAME} PRIVATE -fsanitize=address,undefined)
|
|
endif()
|