# cmake_minimum_required (VERSION 3.13) # project project (unique_id_test) # # CMake settings # # output directories set (CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib) set (CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib) set (CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin) # Wt find_package (Wt REQUIRED) # create executable add_executable (unique_id_test) # C++ standard set_target_properties(unique_id_test PROPERTIES CXX_STANDARD 17 ) # compile definitions target_compile_definitions (unique_id_test PRIVATE $<$:DEBUG> ) # compile options target_compile_options (unique_id_test PRIVATE # MSVC $<$:/W4 /wd4251 /wd4275 -bigobj> # Clang $<$:-pedantic> # GNU $<$:-pedantic -Wall -fdiagnostics-color=always> $<$,$>:-O0> $<$,$>:-O3> ) # nasty hack to get rid of D9025 warnings caused by default # /W3 flag in CMAKE_CXX_FLAGS string (REPLACE "/W3" "/W4" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}") # dependent libraries target_link_libraries (unique_id_test PRIVATE Wt::Wt ) # source files target_sources (unique_id_test PRIVATE main.cpp )