snippet cmake "CMakeFiles Stub" b
-cmake_minimum_required(VERSION 3.12)
+cmake_minimum_required(VERSION `cmake --version | grep -Po '\d+\.\d+'`)
project(${1:ProjectName})
-set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
-
-# find_package(Boost REQUIRED)
+set(CMAKE_CXX_STANDARD 17)
+set(CMAKE_CXX_STANDARD_REQUIRED TRUE)
+set(CMAKE_C_STANDARD 17)
+set(CMAKE_C_STANDARD_REQUIRED TRUE)
add_executable(${2:$1}
${3:main.cpp}
)
-set_target_properties($2
- PROPERTIES CXX_STANDARD 14
-)
-
target_link_libraries($2
)
endsnippet
endsnippet
snippet lib
-add_library(${1:lib}
- ${${0:SRCS}}
+add_library(${1:lib})
+add_library(\${PROJECT_NAME}::$1 ALIAS $1)
+target_sources($1 PRIVATE
+ $2
+)
+target_link_libraries($1
+ PUBLIC
+ $3
+ PRIVATE
+ $4
)
endsnippet
snippet bin
add_executable(${1:bin})
+target_sources($1 PRIVATE
+ $2
+)
+target_link_libraries($1 PRIVATE
+ $3
+)
endsnippet
snippet set