]> git.rmz.io Git - dotfiles.git/blobdiff - vim/ultisnips/cmake.snippets
vim: configure comments for taskrc files
[dotfiles.git] / vim / ultisnips / cmake.snippets
index 318bf56b01e4426fcaaa8e1c65a8422b7b1628ec..e773a95c8cb097e88074f37845b73799b8324b03 100644 (file)
@@ -1,19 +1,16 @@
 snippet cmake "CMakeFiles Stub" b
 snippet cmake "CMakeFiles Stub" b
-cmake_minimum_required(VERSION 3.12)
+cmake_minimum_required(VERSION `cmake --version | grep -Po '\d+\.\d+'`)
 project(${1:ProjectName})
 
 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}
 )
 
 
 add_executable(${2:$1}
        ${3:main.cpp}
 )
 
-set_target_properties($2
-       PROPERTIES CXX_STANDARD 14
-)
-
 target_link_libraries($2
 )
 endsnippet
 target_link_libraries($2
 )
 endsnippet
@@ -55,8 +52,16 @@ add_subdirectory(${0:src})
 endsnippet
 
 snippet lib
 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
 
 )
 endsnippet
 
@@ -68,6 +73,12 @@ endsnippet
 
 snippet bin
 add_executable(${1:bin})
 
 snippet bin
 add_executable(${1:bin})
+target_sources($1 PRIVATE
+       $2
+)
+target_link_libraries($1 PRIVATE
+       $3
+)
 endsnippet
 
 snippet set
 endsnippet
 
 snippet set