X-Git-Url: https://git.rmz.io/dotfiles.git/blobdiff_plain/66ddcc36a2263f5ed1032d4a0d6ce91897ab94c4..refs/heads/lazyvim:/vim/ultisnips/cmake.snippets diff --git a/vim/ultisnips/cmake.snippets b/vim/ultisnips/cmake.snippets index 9609a05..e773a95 100644 --- a/vim/ultisnips/cmake.snippets +++ b/vim/ultisnips/cmake.snippets @@ -1,23 +1,25 @@ 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 +snippet pprint "Pretty print variables" b +include(CMakePrintHelpers) +cmake_print_variables(${1:var1}) +endsnippet + snippet qt5 "Find Qt5 Modules" b # Qt5 Modules set(qt5_modules @@ -50,8 +52,16 @@ add_subdirectory(${0:src}) 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 @@ -63,6 +73,12 @@ endsnippet snippet bin add_executable(${1:bin}) +target_sources($1 PRIVATE + $2 +) +target_link_libraries($1 PRIVATE + $3 +) endsnippet snippet set @@ -92,3 +108,25 @@ set(CMAKE_DEBUG_TARGET_PROPERTIES POSITION_INDEPENDENT_CODE ) endsnippet + +snippet FPP "FPP Copyright" b +# Copyright © Focal Point Positioning Limited `!v strftime("%Y")`. All Rights Reserved. +# This code is the copyright of Focal Point Positioning Limited and +# cannot be used, copied or distributed without the express written +# permission of Focal Point Positioning Limited. +${0} +endsnippet + +snippet FetchContent_url "FetchContent" b +FetchContent_Declare(${1:name} + URL ${2:https://example.com/project.tar.gz} +) +FetchContent_MakeAvailable(${1/\w+/\L$0\E/}) +endsnippet + +snippet FetchContent_git "FetchContent" b +FetchContent_Declare(${1:name} + GIT_REPOSITORY ${2:https://github.com/${3:user/repo}} +) +FetchContent_MakeAvailable(${1/\w+/\L$0\E/}) +endsnippet