diff --git a/.clang-format b/.clang-format new file mode 100644 index 0000000..cb03ae8 --- /dev/null +++ b/.clang-format @@ -0,0 +1,16 @@ +--- + BasedOnStyle: Google + AccessModifierOffset: '-2' + AlignTrailingComments: 'true' + AllowAllParametersOfDeclarationOnNextLine: 'false' + AlwaysBreakTemplateDeclarations: 'No' + BreakBeforeBraces: Attach + ColumnLimit: '100' + ConstructorInitializerAllOnOneLineOrOnePerLine: 'true' + IncludeBlocks: Regroup + IndentPPDirectives: AfterHash + IndentWidth: '2' + NamespaceIndentation: All + BreakBeforeBinaryOperators: All + BreakBeforeTernaryOperators: 'true' +... diff --git a/.cmake-format b/.cmake-format new file mode 100644 index 0000000..787f6a7 --- /dev/null +++ b/.cmake-format @@ -0,0 +1,71 @@ +format: + tab_size: 2 + line_width: 100 + dangle_parens: true + +parse: + additional_commands: + cpmaddpackage: + pargs: + nargs: '*' + flags: [] + spelling: CPMAddPackage + kwargs: &cpmaddpackagekwargs + NAME: 1 + FORCE: 1 + VERSION: 1 + GIT_TAG: 1 + DOWNLOAD_ONLY: 1 + GITHUB_REPOSITORY: 1 + GITLAB_REPOSITORY: 1 + GIT_REPOSITORY: 1 + SVN_REPOSITORY: 1 + SVN_REVISION: 1 + SOURCE_DIR: 1 + DOWNLOAD_COMMAND: 1 + FIND_PACKAGE_ARGUMENTS: 1 + NO_CACHE: 1 + GIT_SHALLOW: 1 + URL: 1 + URL_HASH: 1 + URL_MD5: 1 + DOWNLOAD_NAME: 1 + DOWNLOAD_NO_EXTRACT: 1 + HTTP_USERNAME: 1 + HTTP_PASSWORD: 1 + OPTIONS: + + cpmfindpackage: + pargs: + nargs: '*' + flags: [] + spelling: CPMFindPackage + kwargs: *cpmaddpackagekwargs + cpmdeclarepackage: + pargs: + nargs: '*' + flags: [] + spelling: CPMDeclarePackage + kwargs: *cpmaddpackagekwargs + packageproject: + pargs: + nargs: '*' + flags: [] + spelling: packageProject + kwargs: + NAME: 1 + VERSION: 1 + INCLUDE_DIR: 1 + INCLUDE_DESTINATION: 1 + BINARY_DIR: 1 + COMPATIBILITY: 1 + VERSION_HEADER: 1 + DEPENDENCIES: + + cpmusepackagelock: + pargs: 1 + spelling: CPMUsePackageLock + cpmregisterpackage: + pargs: 1 + spelling: CPMRegisterPackage + cpmgetpackageversion: + pargs: 2 + spelling: CPMGetPackageVersion diff --git a/.github/workflows/publish.yaml b/.github/workflows/publish.yaml index 3d02ad6..9ebf94d 100644 --- a/.github/workflows/publish.yaml +++ b/.github/workflows/publish.yaml @@ -15,8 +15,8 @@ jobs: - name: Set CPM version by tag run: | mkdir dist - sed "s/0.27.2-development-version/${GITHUB_REF/refs\/tags\/v}/g" cmake/CPM.cmake > dist/CPM.cmake - sed "s/0.27.2-development-version/${GITHUB_REF/refs\/tags\/v}/g" cmake/get_cpm.cmake > dist/get_cpm.cmake + sed "s/1.0.0-development-version/${GITHUB_REF/refs\/tags\/v}/g" cmake/CPM.cmake > dist/CPM.cmake + sed "s/1.0.0-development-version/${GITHUB_REF/refs\/tags\/v}/g" cmake/get_cpm.cmake > dist/get_cpm.cmake - name: Upload CPM.cmake to release uses: svenstaro/upload-release-action@v1-release diff --git a/.github/workflows/style.yml b/.github/workflows/style.yml new file mode 100644 index 0000000..1072a67 --- /dev/null +++ b/.github/workflows/style.yml @@ -0,0 +1,28 @@ +name: Style + +on: + push: + branches: + - master + pull_request: + branches: + - master + +jobs: + style: + + runs-on: macos-latest + + steps: + - uses: actions/checkout@v1 + + - name: Install format dependencies + run: | + brew install clang-format + pip3 install cmake_format==0.6.11 pyyaml + + - name: configure + run: cmake -Htest/style -Bbuild/style + + - name: check style + run: cmake --build build/style --target check-format diff --git a/cmake/CPM.cmake b/cmake/CPM.cmake index 91e4f2f..e8fe62b 100644 --- a/cmake/CPM.cmake +++ b/cmake/CPM.cmake @@ -5,7 +5,7 @@ # MIT License # ----------- #[[ - Copyright (c) 2019 Lars Melchior + Copyright (c) 2021 Lars Melchior and additional contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -28,12 +28,14 @@ cmake_minimum_required(VERSION 3.14 FATAL_ERROR) -set(CURRENT_CPM_VERSION 0.27.2-development-version) +set(CURRENT_CPM_VERSION 1.0.0-development-version) if(CPM_DIRECTORY) if(NOT CPM_DIRECTORY STREQUAL CMAKE_CURRENT_LIST_DIR) - if (CPM_VERSION VERSION_LESS CURRENT_CPM_VERSION) - message(AUTHOR_WARNING "${CPM_INDENT} \ + if(CPM_VERSION VERSION_LESS CURRENT_CPM_VERSION) + message( + AUTHOR_WARNING + "${CPM_INDENT} \ A dependency is using a more recent CPM version (${CURRENT_CPM_VERSION}) than the current project (${CPM_VERSION}). \ It is recommended to upgrade CPM to the most recent version. \ See https://github.com/TheLartians/CPM.cmake for more information." @@ -42,26 +44,56 @@ See https://github.com/TheLartians/CPM.cmake for more information." return() endif() - get_property(CPM_INITIALIZED GLOBAL "" PROPERTY CPM_INITIALIZED SET) - if (CPM_INITIALIZED) + get_property( + CPM_INITIALIZED GLOBAL "" + PROPERTY CPM_INITIALIZED + SET + ) + if(CPM_INITIALIZED) return() endif() endif() set_property(GLOBAL PROPERTY CPM_INITIALIZED true) -option(CPM_USE_LOCAL_PACKAGES "Always try to use `find_package` to get dependencies" $ENV{CPM_USE_LOCAL_PACKAGES}) -option(CPM_LOCAL_PACKAGES_ONLY "Only use `find_package` to get dependencies" $ENV{CPM_LOCAL_PACKAGES_ONLY}) +option(CPM_USE_LOCAL_PACKAGES "Always try to use `find_package` to get dependencies" + $ENV{CPM_USE_LOCAL_PACKAGES} +) +option(CPM_LOCAL_PACKAGES_ONLY "Only use `find_package` to get dependencies" + $ENV{CPM_LOCAL_PACKAGES_ONLY} +) option(CPM_DOWNLOAD_ALL "Always download dependencies from source" $ENV{CPM_DOWNLOAD_ALL}) -option(CPM_DONT_UPDATE_MODULE_PATH "Don't update the module path to allow using find_package" $ENV{CPM_DONT_UPDATE_MODULE_PATH}) -option(CPM_DONT_CREATE_PACKAGE_LOCK "Don't create a package lock file in the binary path" $ENV{CPM_DONT_CREATE_PACKAGE_LOCK}) -option(CPM_INCLUDE_ALL_IN_PACKAGE_LOCK "Add all packages added through CPM.cmake to the package lock" $ENV{CPM_INCLUDE_ALL_IN_PACKAGE_LOCK}) +option(CPM_DONT_UPDATE_MODULE_PATH "Don't update the module path to allow using find_package" + $ENV{CPM_DONT_UPDATE_MODULE_PATH} +) +option(CPM_DONT_CREATE_PACKAGE_LOCK "Don't create a package lock file in the binary path" + $ENV{CPM_DONT_CREATE_PACKAGE_LOCK} +) +option(CPM_INCLUDE_ALL_IN_PACKAGE_LOCK + "Add all packages added through CPM.cmake to the package lock" + $ENV{CPM_INCLUDE_ALL_IN_PACKAGE_LOCK} +) -set(CPM_VERSION ${CURRENT_CPM_VERSION} CACHE INTERNAL "") -set(CPM_DIRECTORY ${CMAKE_CURRENT_LIST_DIR} CACHE INTERNAL "") -set(CPM_FILE ${CMAKE_CURRENT_LIST_FILE} CACHE INTERNAL "") -set(CPM_PACKAGES "" CACHE INTERNAL "") -set(CPM_DRY_RUN OFF CACHE INTERNAL "Don't download or configure dependencies (for testing)") +set(CPM_VERSION + ${CURRENT_CPM_VERSION} + CACHE INTERNAL "" +) +set(CPM_DIRECTORY + ${CMAKE_CURRENT_LIST_DIR} + CACHE INTERNAL "" +) +set(CPM_FILE + ${CMAKE_CURRENT_LIST_FILE} + CACHE INTERNAL "" +) +set(CPM_PACKAGES + "" + CACHE INTERNAL "" +) +set(CPM_DRY_RUN + OFF + CACHE INTERNAL "Don't download or configure dependencies (for testing)" +) if(DEFINED ENV{CPM_SOURCE_CACHE}) set(CPM_SOURCE_CACHE_DEFAULT $ENV{CPM_SOURCE_CACHE}) @@ -69,20 +101,31 @@ else() set(CPM_SOURCE_CACHE_DEFAULT OFF) endif() -set(CPM_SOURCE_CACHE ${CPM_SOURCE_CACHE_DEFAULT} CACHE PATH "Directory to download CPM dependencies") +set(CPM_SOURCE_CACHE + ${CPM_SOURCE_CACHE_DEFAULT} + CACHE PATH "Directory to download CPM dependencies" +) -if (NOT CPM_DONT_UPDATE_MODULE_PATH) - set(CPM_MODULE_PATH "${CMAKE_BINARY_DIR}/CPM_modules" CACHE INTERNAL "") +if(NOT CPM_DONT_UPDATE_MODULE_PATH) + set(CPM_MODULE_PATH + "${CMAKE_BINARY_DIR}/CPM_modules" + CACHE INTERNAL "" + ) # remove old modules - FILE(REMOVE_RECURSE ${CPM_MODULE_PATH}) + file(REMOVE_RECURSE ${CPM_MODULE_PATH}) file(MAKE_DIRECTORY ${CPM_MODULE_PATH}) # locally added CPM modules should override global packages set(CMAKE_MODULE_PATH "${CPM_MODULE_PATH};${CMAKE_MODULE_PATH}") endif() -if (NOT CPM_DONT_CREATE_PACKAGE_LOCK) - set(CPM_PACKAGE_LOCK_FILE "${CMAKE_BINARY_DIR}/cpm-package-lock.cmake" CACHE INTERNAL "") - file(WRITE ${CPM_PACKAGE_LOCK_FILE} "# CPM Package Lock\n# This file should be committed to version control\n\n") +if(NOT CPM_DONT_CREATE_PACKAGE_LOCK) + set(CPM_PACKAGE_LOCK_FILE + "${CMAKE_BINARY_DIR}/cpm-package-lock.cmake" + CACHE INTERNAL "" + ) + file(WRITE ${CPM_PACKAGE_LOCK_FILE} + "# CPM Package Lock\n# This file should be committed to version control\n\n" + ) endif() include(FetchContent) @@ -99,46 +142,49 @@ function(cpm_find_package NAME VERSION) if(${CPM_ARGS_NAME}_FOUND) message(STATUS "${CPM_INDENT} using local package ${CPM_ARGS_NAME}@${VERSION}") CPMRegisterPackage(${CPM_ARGS_NAME} "${VERSION}") - set(CPM_PACKAGE_FOUND YES PARENT_SCOPE) + set(CPM_PACKAGE_FOUND + YES + PARENT_SCOPE + ) else() - set(CPM_PACKAGE_FOUND NO PARENT_SCOPE) + set(CPM_PACKAGE_FOUND + NO + PARENT_SCOPE + ) endif() endfunction() -# Create a custom FindXXX.cmake module for a CPM package -# This prevents `find_package(NAME)` from finding the system library -function(CPMCreateModuleFile Name) - if (NOT CPM_DONT_UPDATE_MODULE_PATH) +# Create a custom FindXXX.cmake module for a CPM package This prevents `find_package(NAME)` from +# finding the system library +function(cpm_create_module_file Name) + if(NOT CPM_DONT_UPDATE_MODULE_PATH) # erase any previous modules - FILE(WRITE ${CPM_MODULE_PATH}/Find${Name}.cmake "include(${CPM_FILE})\n${ARGN}\nset(${Name}_FOUND TRUE)") + file(WRITE ${CPM_MODULE_PATH}/Find${Name}.cmake + "include(${CPM_FILE})\n${ARGN}\nset(${Name}_FOUND TRUE)" + ) endif() endfunction() # Find a package locally or fallback to CPMAddPackage function(CPMFindPackage) - set(oneValueArgs - NAME - VERSION - GIT_TAG - FIND_PACKAGE_ARGUMENTS - ) + set(oneValueArgs NAME VERSION GIT_TAG FIND_PACKAGE_ARGUMENTS) cmake_parse_arguments(CPM_ARGS "" "${oneValueArgs}" "" ${ARGN}) - if (NOT DEFINED CPM_ARGS_VERSION) - if (DEFINED CPM_ARGS_GIT_TAG) + if(NOT DEFINED CPM_ARGS_VERSION) + if(DEFINED CPM_ARGS_GIT_TAG) cpm_get_version_from_git_tag("${CPM_ARGS_GIT_TAG}" CPM_ARGS_VERSION) endif() endif() - if (CPM_DOWNLOAD_ALL) + if(CPM_DOWNLOAD_ALL) CPMAddPackage(${ARGN}) cpm_export_variables(${CPM_ARGS_NAME}) return() endif() - CPMCheckIfPackageAlreadyAdded(${CPM_ARGS_NAME} "${CPM_ARGS_VERSION}" "${CPM_ARGS_OPTIONS}") - if (CPM_PACKAGE_ALREADY_ADDED) + cpm_check_if_package_already_added(${CPM_ARGS_NAME} "${CPM_ARGS_VERSION}" "${CPM_ARGS_OPTIONS}") + if(CPM_PACKAGE_ALREADY_ADDED) cpm_export_variables(${CPM_ARGS_NAME}) return() endif() @@ -153,26 +199,38 @@ function(CPMFindPackage) endfunction() # checks if a package has been added before -function(CPMCheckIfPackageAlreadyAdded CPM_ARGS_NAME CPM_ARGS_VERSION CPM_ARGS_OPTIONS) - if ("${CPM_ARGS_NAME}" IN_LIST CPM_PACKAGES) +function(cpm_check_if_package_already_added CPM_ARGS_NAME CPM_ARGS_VERSION CPM_ARGS_OPTIONS) + if("${CPM_ARGS_NAME}" IN_LIST CPM_PACKAGES) CPMGetPackageVersion(${CPM_ARGS_NAME} CPM_PACKAGE_VERSION) if("${CPM_PACKAGE_VERSION}" VERSION_LESS "${CPM_ARGS_VERSION}") - message(WARNING "${CPM_INDENT} requires a newer version of ${CPM_ARGS_NAME} (${CPM_ARGS_VERSION}) than currently included (${CPM_PACKAGE_VERSION}).") + message( + WARNING + "${CPM_INDENT} requires a newer version of ${CPM_ARGS_NAME} (${CPM_ARGS_VERSION}) than currently included (${CPM_PACKAGE_VERSION})." + ) endif() - if (CPM_ARGS_OPTIONS) + if(CPM_ARGS_OPTIONS) foreach(OPTION ${CPM_ARGS_OPTIONS}) cpm_parse_option(${OPTION}) if(NOT "${${OPTION_KEY}}" STREQUAL "${OPTION_VALUE}") - message(WARNING "${CPM_INDENT} ignoring package option for ${CPM_ARGS_NAME}: ${OPTION_KEY} = ${OPTION_VALUE} (${${OPTION_KEY}})") + message( + WARNING + "${CPM_INDENT} ignoring package option for ${CPM_ARGS_NAME}: ${OPTION_KEY} = ${OPTION_VALUE} (${${OPTION_KEY}})" + ) endif() endforeach() endif() cpm_get_fetch_properties(${CPM_ARGS_NAME}) - SET(${CPM_ARGS_NAME}_ADDED NO) - SET(CPM_PACKAGE_ALREADY_ADDED YES PARENT_SCOPE) + set(${CPM_ARGS_NAME}_ADDED NO) + set(CPM_PACKAGE_ALREADY_ADDED + YES + PARENT_SCOPE + ) cpm_export_variables(${CPM_ARGS_NAME}) else() - SET(CPM_PACKAGE_ALREADY_ADDED NO PARENT_SCOPE) + set(CPM_PACKAGE_ALREADY_ADDED + NO + PARENT_SCOPE + ) endif() endfunction() @@ -180,31 +238,29 @@ endfunction() function(CPMAddPackage) set(oneValueArgs - NAME - FORCE - VERSION - GIT_TAG - DOWNLOAD_ONLY - GITHUB_REPOSITORY - GITLAB_REPOSITORY - GIT_REPOSITORY - SOURCE_DIR - DOWNLOAD_COMMAND - FIND_PACKAGE_ARGUMENTS - NO_CACHE - GIT_SHALLOW + NAME + FORCE + VERSION + GIT_TAG + DOWNLOAD_ONLY + GITHUB_REPOSITORY + GITLAB_REPOSITORY + GIT_REPOSITORY + SOURCE_DIR + DOWNLOAD_COMMAND + FIND_PACKAGE_ARGUMENTS + NO_CACHE + GIT_SHALLOW ) - set(multiValueArgs - OPTIONS - ) + set(multiValueArgs OPTIONS) cmake_parse_arguments(CPM_ARGS "" "${oneValueArgs}" "${multiValueArgs}" "${ARGN}") # Set default values for arguments - if (NOT DEFINED CPM_ARGS_VERSION) - if (DEFINED CPM_ARGS_GIT_TAG) + if(NOT DEFINED CPM_ARGS_VERSION) + if(DEFINED CPM_ARGS_GIT_TAG) cpm_get_version_from_git_tag("${CPM_ARGS_GIT_TAG}" CPM_ARGS_VERSION) endif() endif() @@ -215,38 +271,38 @@ function(CPMAddPackage) set(DOWNLOAD_ONLY NO) endif() - if (DEFINED CPM_ARGS_GITHUB_REPOSITORY) + if(DEFINED CPM_ARGS_GITHUB_REPOSITORY) set(CPM_ARGS_GIT_REPOSITORY "https://github.com/${CPM_ARGS_GITHUB_REPOSITORY}.git") endif() - if (DEFINED CPM_ARGS_GITLAB_REPOSITORY) + if(DEFINED CPM_ARGS_GITLAB_REPOSITORY) set(CPM_ARGS_GIT_REPOSITORY "https://gitlab.com/${CPM_ARGS_GITLAB_REPOSITORY}.git") endif() - if (DEFINED CPM_ARGS_GIT_REPOSITORY) + if(DEFINED CPM_ARGS_GIT_REPOSITORY) list(APPEND CPM_ARGS_UNPARSED_ARGUMENTS GIT_REPOSITORY ${CPM_ARGS_GIT_REPOSITORY}) - if (NOT DEFINED CPM_ARGS_GIT_TAG) + if(NOT DEFINED CPM_ARGS_GIT_TAG) set(CPM_ARGS_GIT_TAG v${CPM_ARGS_VERSION}) endif() endif() - if (DEFINED CPM_ARGS_GIT_TAG) + if(DEFINED CPM_ARGS_GIT_TAG) list(APPEND CPM_ARGS_UNPARSED_ARGUMENTS GIT_TAG ${CPM_ARGS_GIT_TAG}) # If GIT_SHALLOW is explicitly specified, honor the value. - if (DEFINED CPM_ARGS_GIT_SHALLOW) + if(DEFINED CPM_ARGS_GIT_SHALLOW) list(APPEND CPM_ARGS_UNPARSED_ARGUMENTS GIT_SHALLOW ${CPM_ARGS_GIT_SHALLOW}) endif() endif() # Check if package has been added before - CPMCheckIfPackageAlreadyAdded(${CPM_ARGS_NAME} "${CPM_ARGS_VERSION}" "${CPM_ARGS_OPTIONS}") - if (CPM_PACKAGE_ALREADY_ADDED) + cpm_check_if_package_already_added(${CPM_ARGS_NAME} "${CPM_ARGS_VERSION}" "${CPM_ARGS_OPTIONS}") + if(CPM_PACKAGE_ALREADY_ADDED) cpm_export_variables(${CPM_ARGS_NAME}) return() endif() # Check for manual overrides - if (NOT CPM_ARGS_FORCE AND NOT "${CPM_${CPM_ARGS_NAME}_SOURCE}" STREQUAL "") + if(NOT CPM_ARGS_FORCE AND NOT "${CPM_${CPM_ARGS_NAME}_SOURCE}" STREQUAL "") set(PACKAGE_SOURCE ${CPM_${CPM_ARGS_NAME}_SOURCE}) set(CPM_${CPM_ARGS_NAME}_SOURCE "") CPMAddPackage( @@ -260,13 +316,13 @@ function(CPMAddPackage) endif() # Check for available declaration - if (NOT CPM_ARGS_FORCE AND NOT "${CPM_DECLARATION_${CPM_ARGS_NAME}}" STREQUAL "") + if(NOT CPM_ARGS_FORCE AND NOT "${CPM_DECLARATION_${CPM_ARGS_NAME}}" STREQUAL "") set(declaration ${CPM_DECLARATION_${CPM_ARGS_NAME}}) set(CPM_DECLARATION_${CPM_ARGS_NAME} "") CPMAddPackage(${declaration}) cpm_export_variables(${CPM_ARGS_NAME}) # checking again to ensure version and option compatibility - CPMCheckIfPackageAlreadyAdded(${CPM_ARGS_NAME} "${CPM_ARGS_VERSION}" "${CPM_ARGS_OPTIONS}") + cpm_check_if_package_already_added(${CPM_ARGS_NAME} "${CPM_ARGS_VERSION}" "${CPM_ARGS_OPTIONS}") return() endif() @@ -279,48 +335,54 @@ function(CPMAddPackage) endif() if(CPM_LOCAL_PACKAGES_ONLY) - message(SEND_ERROR "CPM: ${CPM_ARGS_NAME} not found via find_package(${CPM_ARGS_NAME} ${CPM_ARGS_VERSION})") + message( + SEND_ERROR + "CPM: ${CPM_ARGS_NAME} not found via find_package(${CPM_ARGS_NAME} ${CPM_ARGS_VERSION})" + ) endif() endif() CPMRegisterPackage("${CPM_ARGS_NAME}" "${CPM_ARGS_VERSION}") - if (CPM_ARGS_OPTIONS) + if(CPM_ARGS_OPTIONS) foreach(OPTION ${CPM_ARGS_OPTIONS}) cpm_parse_option(${OPTION}) - set(${OPTION_KEY} ${OPTION_VALUE} CACHE INTERNAL "") + set(${OPTION_KEY} + ${OPTION_VALUE} + CACHE INTERNAL "" + ) endforeach() endif() - if (DEFINED CPM_ARGS_GIT_TAG) + if(DEFINED CPM_ARGS_GIT_TAG) set(PACKAGE_INFO "${CPM_ARGS_GIT_TAG}") - elseif (DEFINED CPM_ARGS_SOURCE_DIR) + elseif(DEFINED CPM_ARGS_SOURCE_DIR) set(PACKAGE_INFO "${CPM_ARGS_SOURCE_DIR}") else() set(PACKAGE_INFO "${CPM_ARGS_VERSION}") endif() - if (DEFINED CPM_ARGS_DOWNLOAD_COMMAND) + if(DEFINED CPM_ARGS_DOWNLOAD_COMMAND) list(APPEND CPM_ARGS_UNPARSED_ARGUMENTS DOWNLOAD_COMMAND ${CPM_ARGS_DOWNLOAD_COMMAND}) - elseif (DEFINED CPM_ARGS_SOURCE_DIR) + elseif(DEFINED CPM_ARGS_SOURCE_DIR) list(APPEND CPM_ARGS_UNPARSED_ARGUMENTS SOURCE_DIR ${CPM_ARGS_SOURCE_DIR}) - elseif (CPM_SOURCE_CACHE AND NOT CPM_ARGS_NO_CACHE) + elseif(CPM_SOURCE_CACHE AND NOT CPM_ARGS_NO_CACHE) string(TOLOWER ${CPM_ARGS_NAME} lower_case_name) set(origin_parameters ${CPM_ARGS_UNPARSED_ARGUMENTS}) list(SORT origin_parameters) string(SHA1 origin_hash "${origin_parameters}") set(download_directory ${CPM_SOURCE_CACHE}/${lower_case_name}/${origin_hash}) list(APPEND CPM_ARGS_UNPARSED_ARGUMENTS SOURCE_DIR ${download_directory}) - if (EXISTS ${download_directory}) + if(EXISTS ${download_directory}) # disable the download command to allow offline builds list(APPEND CPM_ARGS_UNPARSED_ARGUMENTS DOWNLOAD_COMMAND "${CMAKE_COMMAND}") set(PACKAGE_INFO "${download_directory}") else() - # Enable shallow clone when GIT_TAG is not a commit hash. - # Our guess may not be accurate, but it should guarantee no commit hash get mis-detected. - if (NOT DEFINED CPM_ARGS_GIT_SHALLOW) + # Enable shallow clone when GIT_TAG is not a commit hash. Our guess may not be accurate, but + # it should guarantee no commit hash get mis-detected. + if(NOT DEFINED CPM_ARGS_GIT_SHALLOW) cpm_is_git_tag_commit_hash("${CPM_ARGS_GIT_TAG}" IS_HASH) - if (NOT ${IS_HASH}) + if(NOT ${IS_HASH}) list(APPEND CPM_ARGS_UNPARSED_ARGUMENTS GIT_SHALLOW TRUE) endif() endif() @@ -331,10 +393,10 @@ function(CPMAddPackage) endif() endif() - CPMCreateModuleFile(${CPM_ARGS_NAME} "CPMAddPackage(${ARGN})") + cpm_create_module_file(${CPM_ARGS_NAME} "CPMAddPackage(${ARGN})") - if (CPM_PACKAGE_LOCK_ENABLED) - if ((CPM_ARGS_VERSION AND NOT CPM_ARGS_SOURCE_DIR) OR CPM_INCLUDE_ALL_IN_PACKAGE_LOCK) + if(CPM_PACKAGE_LOCK_ENABLED) + if((CPM_ARGS_VERSION AND NOT CPM_ARGS_SOURCE_DIR) OR CPM_INCLUDE_ALL_IN_PACKAGE_LOCK) cpm_add_to_package_lock(${CPM_ARGS_NAME} "${ARGN}") elseif(CPM_ARGS_SOURCE_DIR) cpm_add_comment_to_package_lock(${CPM_ARGS_NAME} "local directory") @@ -343,64 +405,76 @@ function(CPMAddPackage) endif() endif() - cpm_declare_fetch("${CPM_ARGS_NAME}" "${CPM_ARGS_VERSION}" "${PACKAGE_INFO}" "${CPM_ARGS_UNPARSED_ARGUMENTS}") + cpm_declare_fetch( + "${CPM_ARGS_NAME}" "${CPM_ARGS_VERSION}" "${PACKAGE_INFO}" "${CPM_ARGS_UNPARSED_ARGUMENTS}" + ) cpm_fetch_package("${CPM_ARGS_NAME}" "${DOWNLOAD_ONLY}") cpm_get_fetch_properties("${CPM_ARGS_NAME}") - SET(${CPM_ARGS_NAME}_ADDED YES) + set(${CPM_ARGS_NAME}_ADDED YES) cpm_export_variables("${CPM_ARGS_NAME}") endfunction() # Fetch a previously declared package macro(CPMGetPackage Name) - if (DEFINED "CPM_DECLARATION_${Name}") - CPMAddPackage( - NAME ${Name} - ) + if(DEFINED "CPM_DECLARATION_${Name}") + CPMAddPackage(NAME ${Name}) else() message(SEND_ERROR "Cannot retrieve package ${Name}: no declaration available") endif() endmacro() -# export variables available to the caller to the parent scope -# expects ${CPM_ARGS_NAME} to be set +# export variables available to the caller to the parent scope expects ${CPM_ARGS_NAME} to be set macro(cpm_export_variables name) - SET(${name}_SOURCE_DIR "${${name}_SOURCE_DIR}" PARENT_SCOPE) - SET(${name}_BINARY_DIR "${${name}_BINARY_DIR}" PARENT_SCOPE) - SET(${name}_ADDED "${${name}_ADDED}" PARENT_SCOPE) + set(${name}_SOURCE_DIR + "${${name}_SOURCE_DIR}" + PARENT_SCOPE + ) + set(${name}_BINARY_DIR + "${${name}_BINARY_DIR}" + PARENT_SCOPE + ) + set(${name}_ADDED + "${${name}_ADDED}" + PARENT_SCOPE + ) endmacro() -# declares a package, so that any call to CPMAddPackage for the -# package name will use these arguments instead. -# Previous declarations will not be overriden. +# declares a package, so that any call to CPMAddPackage for the package name will use these +# arguments instead. Previous declarations will not be overriden. macro(CPMDeclarePackage Name) - if (NOT DEFINED "CPM_DECLARATION_${Name}") + if(NOT DEFINED "CPM_DECLARATION_${Name}") set("CPM_DECLARATION_${Name}" "${ARGN}") endif() endmacro() function(cpm_add_to_package_lock Name) - if (NOT CPM_DONT_CREATE_PACKAGE_LOCK) + if(NOT CPM_DONT_CREATE_PACKAGE_LOCK) file(APPEND ${CPM_PACKAGE_LOCK_FILE} "# ${Name}\nCPMDeclarePackage(${Name} \"${ARGN}\")\n") endif() endfunction() function(cpm_add_comment_to_package_lock Name) - if (NOT CPM_DONT_CREATE_PACKAGE_LOCK) - file(APPEND ${CPM_PACKAGE_LOCK_FILE} "# ${Name} (unversioned)\n# CPMDeclarePackage(${Name} \"${ARGN}\")\n") + if(NOT CPM_DONT_CREATE_PACKAGE_LOCK) + file(APPEND ${CPM_PACKAGE_LOCK_FILE} + "# ${Name} (unversioned)\n# CPMDeclarePackage(${Name} \"${ARGN}\")\n" + ) endif() endfunction() -# includes the package lock file if it exists and creates a target -# `cpm-write-package-lock` to update it +# includes the package lock file if it exists and creates a target `cpm-write-package-lock` to +# update it macro(CPMUsePackageLock file) - if (NOT CPM_DONT_CREATE_PACKAGE_LOCK) + if(NOT CPM_DONT_CREATE_PACKAGE_LOCK) get_filename_component(CPM_ABSOLUTE_PACKAGE_LOCK_PATH ${file} ABSOLUTE) if(EXISTS ${CPM_ABSOLUTE_PACKAGE_LOCK_PATH}) include(${CPM_ABSOLUTE_PACKAGE_LOCK_PATH}) endif() - if (NOT TARGET cpm-update-package-lock) - add_custom_target(cpm-update-package-lock COMMAND ${CMAKE_COMMAND} -E copy ${CPM_PACKAGE_LOCK_FILE} ${CPM_ABSOLUTE_PACKAGE_LOCK_PATH}) + if(NOT TARGET cpm-update-package-lock) + add_custom_target( + cpm-update-package-lock COMMAND ${CMAKE_COMMAND} -E copy ${CPM_PACKAGE_LOCK_FILE} + ${CPM_ABSOLUTE_PACKAGE_LOCK_PATH} + ) endif() set(CPM_PACKAGE_LOCK_ENABLED true) endif() @@ -409,43 +483,56 @@ endmacro() # registers a package that has been added to CPM function(CPMRegisterPackage PACKAGE VERSION) list(APPEND CPM_PACKAGES ${PACKAGE}) - set(CPM_PACKAGES ${CPM_PACKAGES} CACHE INTERNAL "") - set("CPM_PACKAGE_${PACKAGE}_VERSION" ${VERSION} CACHE INTERNAL "") + set(CPM_PACKAGES + ${CPM_PACKAGES} + CACHE INTERNAL "" + ) + set("CPM_PACKAGE_${PACKAGE}_VERSION" + ${VERSION} + CACHE INTERNAL "" + ) endfunction() # retrieve the current version of the package to ${OUTPUT} function(CPMGetPackageVersion PACKAGE OUTPUT) - set(${OUTPUT} "${CPM_PACKAGE_${PACKAGE}_VERSION}" PARENT_SCOPE) + set(${OUTPUT} + "${CPM_PACKAGE_${PACKAGE}_VERSION}" + PARENT_SCOPE + ) endfunction() # declares a package in FetchContent_Declare -function (cpm_declare_fetch PACKAGE VERSION INFO) +function(cpm_declare_fetch PACKAGE VERSION INFO) message(STATUS "${CPM_INDENT} adding package ${PACKAGE}@${VERSION} (${INFO})") - if (${CPM_DRY_RUN}) + if(${CPM_DRY_RUN}) message(STATUS "${CPM_INDENT} package not declared (dry run)") return() endif() - FetchContent_Declare(${PACKAGE} - ${ARGN} - ) + FetchContent_Declare(${PACKAGE} ${ARGN}) endfunction() # returns properties for a package previously defined by cpm_declare_fetch -function (cpm_get_fetch_properties PACKAGE) - if (${CPM_DRY_RUN}) +function(cpm_get_fetch_properties PACKAGE) + if(${CPM_DRY_RUN}) return() endif() FetchContent_GetProperties(${PACKAGE}) string(TOLOWER ${PACKAGE} lpackage) - SET(${PACKAGE}_SOURCE_DIR "${${lpackage}_SOURCE_DIR}" PARENT_SCOPE) - SET(${PACKAGE}_BINARY_DIR "${${lpackage}_BINARY_DIR}" PARENT_SCOPE) + set(${PACKAGE}_SOURCE_DIR + "${${lpackage}_SOURCE_DIR}" + PARENT_SCOPE + ) + set(${PACKAGE}_BINARY_DIR + "${${lpackage}_BINARY_DIR}" + PARENT_SCOPE + ) endfunction() # downloads a previously declared package via FetchContent -function (cpm_fetch_package PACKAGE DOWNLOAD_ONLY) - if (${CPM_DRY_RUN}) +function(cpm_fetch_package PACKAGE DOWNLOAD_ONLY) + if(${CPM_DRY_RUN}) message(STATUS "${CPM_INDENT} package ${PACKAGE} not fetched (dry run)") return() endif() @@ -468,26 +555,38 @@ function(cpm_parse_option OPTION) string(REGEX MATCH "^[^ ]+" OPTION_KEY ${OPTION}) string(LENGTH ${OPTION} OPTION_LENGTH) string(LENGTH ${OPTION_KEY} OPTION_KEY_LENGTH) - if (OPTION_KEY_LENGTH STREQUAL OPTION_LENGTH) + if(OPTION_KEY_LENGTH STREQUAL OPTION_LENGTH) # no value for key provided, assume user wants to set option to "ON" set(OPTION_VALUE "ON") else() math(EXPR OPTION_KEY_LENGTH "${OPTION_KEY_LENGTH}+1") string(SUBSTRING ${OPTION} "${OPTION_KEY_LENGTH}" "-1" OPTION_VALUE) endif() - set(OPTION_KEY "${OPTION_KEY}" PARENT_SCOPE) - set(OPTION_VALUE "${OPTION_VALUE}" PARENT_SCOPE) + set(OPTION_KEY + "${OPTION_KEY}" + PARENT_SCOPE + ) + set(OPTION_VALUE + "${OPTION_VALUE}" + PARENT_SCOPE + ) endfunction() # guesses the package version from a git tag function(cpm_get_version_from_git_tag GIT_TAG RESULT) string(LENGTH ${GIT_TAG} length) - if (length EQUAL 40) + if(length EQUAL 40) # GIT_TAG is probably a git hash - SET(${RESULT} 0 PARENT_SCOPE) + set(${RESULT} + 0 + PARENT_SCOPE + ) else() string(REGEX MATCH "v?([0123456789.]*).*" _ ${GIT_TAG}) - SET(${RESULT} ${CMAKE_MATCH_1} PARENT_SCOPE) + set(${RESULT} + ${CMAKE_MATCH_1} + PARENT_SCOPE + ) endif() endfunction() @@ -495,13 +594,22 @@ endfunction() function(cpm_is_git_tag_commit_hash GIT_TAG RESULT) string(LENGTH "${GIT_TAG}" length) # full hash has 40 characters, and short hash has at least 7 characters. - if (length LESS 7 OR length GREATER 40) - SET(${RESULT} 0 PARENT_SCOPE) + if(length LESS 7 OR length GREATER 40) + set(${RESULT} + 0 + PARENT_SCOPE + ) else() - if (${GIT_TAG} MATCHES "^[a-fA-F0-9]+$") - SET(${RESULT} 1 PARENT_SCOPE) + if(${GIT_TAG} MATCHES "^[a-fA-F0-9]+$") + set(${RESULT} + 1 + PARENT_SCOPE + ) else() - SET(${RESULT} 0 PARENT_SCOPE) + set(${RESULT} + 0 + PARENT_SCOPE + ) endif() endif() endfunction() diff --git a/cmake/get_cpm.cmake b/cmake/get_cpm.cmake index d97d954..aab553b 100644 --- a/cmake/get_cpm.cmake +++ b/cmake/get_cpm.cmake @@ -1,4 +1,4 @@ -set(CPM_DOWNLOAD_VERSION 0.27.2-development-version) +set(CPM_DOWNLOAD_VERSION 1.0.0-development-version) if(CPM_SOURCE_CACHE) set(CPM_DOWNLOAD_LOCATION "${CPM_SOURCE_CACHE}/cpm/CPM_${CPM_DOWNLOAD_VERSION}.cmake") diff --git a/cmake/testing.cmake b/cmake/testing.cmake index 6c9e59e..2fa8f5f 100644 --- a/cmake/testing.cmake +++ b/cmake/testing.cmake @@ -1,10 +1,9 @@ - function(ASSERT_EQUAL) - if (NOT ARGC EQUAL 2) + if(NOT ARGC EQUAL 2) message(FATAL_ERROR "assertion failed: invalid argument count: ${ARGC}") endif() - if (NOT ${ARGV0} STREQUAL ${ARGV1}) + if(NOT ${ARGV0} STREQUAL ${ARGV1}) message(FATAL_ERROR "assertion failed: '${ARGV0}' != '${ARGV1}'") else() message(STATUS "test passed: '${ARGV0}' == '${ARGV1}'") @@ -12,7 +11,7 @@ function(ASSERT_EQUAL) endfunction() function(ASSERT_EMPTY) - if (NOT ARGC EQUAL 0) + if(NOT ARGC EQUAL 0) message(FATAL_ERROR "assertion failed: input ${ARGC} not empty: '${ARGV}'") endif() endfunction() @@ -22,13 +21,13 @@ function(ASSERTION_FAILED) endfunction() function(ASSERT_EXISTS file) - if (NOT EXISTS ${file}) + if(NOT EXISTS ${file}) message(FATAL_ERROR "assertion failed: file ${file} does not exist") endif() endfunction() function(ASSERT_NOT_EXISTS file) - if (EXISTS ${file}) + if(EXISTS ${file}) message(FATAL_ERROR "assertion failed: file ${file} exists") endif() endfunction() diff --git a/examples/asio-standalone/CMakeLists.txt b/examples/asio-standalone/CMakeLists.txt index 71b2030..46b0c96 100644 --- a/examples/asio-standalone/CMakeLists.txt +++ b/examples/asio-standalone/CMakeLists.txt @@ -12,44 +12,36 @@ CPMAddPackage( NAME asio VERSION 1.16.1 GITHUB_REPOSITORY chriskohlhoff/asio - GIT_TAG asio-1-16-1 # asio uses non-standard version tag, we must specify GIT_TAG + GIT_TAG asio-1-16-1 # asio uses non-standard version tag, we must specify GIT_TAG ) -# ASIO doesn't use CMake, we have to configure it manually. -# Extra notes for using on Windows: -# 1) If _WIN32_WINNT is not set, ASIO assumes _WIN32_WINNT=0x0501, i.e. Windows XP target, -# which is definitely not the platform which most users target. +# ASIO doesn't use CMake, we have to configure it manually. Extra notes for using on Windows: +# +# 1) If _WIN32_WINNT is not set, ASIO assumes _WIN32_WINNT=0x0501, i.e. Windows XP target, which is +# definitely not the platform which most users target. +# # 2) WIN32_LEAN_AND_MEAN is defined to make Winsock2 work. if(asio_ADDED) add_library(asio INTERFACE) - target_include_directories(asio - INTERFACE ${asio_SOURCE_DIR}/asio/include - ) + target_include_directories(asio INTERFACE ${asio_SOURCE_DIR}/asio/include) - target_compile_definitions(asio - INTERFACE - ASIO_STANDALONE - ASIO_NO_DEPRECATED - ) + target_compile_definitions(asio INTERFACE ASIO_STANDALONE ASIO_NO_DEPRECATED) - target_link_libraries(asio - INTERFACE - Threads::Threads - ) + target_link_libraries(asio INTERFACE Threads::Threads) if(WIN32) # macro see @ https://stackoverflow.com/a/40217291/1746503 macro(get_win32_winnt version) - if (CMAKE_SYSTEM_VERSION) + if(CMAKE_SYSTEM_VERSION) set(ver ${CMAKE_SYSTEM_VERSION}) string(REGEX MATCH "^([0-9]+).([0-9])" ver ${ver}) string(REGEX MATCH "^([0-9]+)" verMajor ${ver}) # Check for Windows 10, b/c we'll need to convert to hex 'A'. - if ("${verMajor}" MATCHES "10") + if("${verMajor}" MATCHES "10") set(verMajor "A") string(REGEX REPLACE "^([0-9]+)" ${verMajor} ver ${ver}) - endif ("${verMajor}" MATCHES "10") + endif("${verMajor}" MATCHES "10") # Remove all remaining '.' characters. string(REPLACE "." "" ver ${ver}) # Prepend each digit with a zero. @@ -65,11 +57,7 @@ if(asio_ADDED) message(STATUS "Set _WIN32_WINNET=${_WIN32_WINNT}") - target_compile_definitions(asio - INTERFACE - _WIN32_WINNT=${_WIN32_WINNT} - WIN32_LEAN_AND_MEAN - ) + target_compile_definitions(asio INTERFACE _WIN32_WINNT=${_WIN32_WINNT} WIN32_LEAN_AND_MEAN) endif() endif() diff --git a/examples/asio-standalone/main.cpp b/examples/asio-standalone/main.cpp index c7d9564..d2a3aff 100644 --- a/examples/asio-standalone/main.cpp +++ b/examples/asio-standalone/main.cpp @@ -20,45 +20,31 @@ using asio::ip::tcp; -class session - : public std::enable_shared_from_this -{ +class session : public std::enable_shared_from_this { public: - session(tcp::socket socket) - : socket_(std::move(socket)) - { - } + session(tcp::socket socket) : socket_(std::move(socket)) {} - void start() - { - do_read(); - } + void start() { do_read(); } private: - void do_read() - { + void do_read() { auto self(shared_from_this()); socket_.async_read_some(asio::buffer(data_, max_length), - [this, self](std::error_code ec, std::size_t length) - { - if (!ec) - { - do_write(length); - } - }); + [this, self](std::error_code ec, std::size_t length) { + if (!ec) { + do_write(length); + } + }); } - void do_write(std::size_t length) - { + void do_write(std::size_t length) { auto self(shared_from_this()); asio::async_write(socket_, asio::buffer(data_, length), - [this, self](std::error_code ec, std::size_t /*length*/) - { - if (!ec) - { - do_read(); - } - }); + [this, self](std::error_code ec, std::size_t /*length*/) { + if (!ec) { + do_read(); + } + }); } tcp::socket socket_; @@ -66,39 +52,30 @@ private: char data_[max_length]; }; -class server -{ +class server { public: server(asio::io_context& io_context, short port) - : acceptor_(io_context, tcp::endpoint(tcp::v4(), port)) - { + : acceptor_(io_context, tcp::endpoint(tcp::v4(), port)) { do_accept(); } private: - void do_accept() - { - acceptor_.async_accept( - [this](std::error_code ec, tcp::socket socket) - { - if (!ec) - { - std::make_shared(std::move(socket))->start(); - } + void do_accept() { + acceptor_.async_accept([this](std::error_code ec, tcp::socket socket) { + if (!ec) { + std::make_shared(std::move(socket))->start(); + } - do_accept(); - }); + do_accept(); + }); } tcp::acceptor acceptor_; }; -int main(int argc, char* argv[]) -{ - try - { - if (argc != 2) - { +int main(int argc, char* argv[]) { + try { + if (argc != 2) { std::cerr << "Usage: async_tcp_echo_server \n"; return 1; } @@ -108,9 +85,7 @@ int main(int argc, char* argv[]) server s(io_context, std::atoi(argv[1])); io_context.run(); - } - catch (std::exception& e) - { + } catch (std::exception& e) { std::cerr << "Exception: " << e.what() << "\n"; } diff --git a/examples/benchmark/CMakeLists.txt b/examples/benchmark/CMakeLists.txt index 1198d72..e999659 100644 --- a/examples/benchmark/CMakeLists.txt +++ b/examples/benchmark/CMakeLists.txt @@ -16,11 +16,10 @@ CPMAddPackage( NAME benchmark GITHUB_REPOSITORY google/benchmark VERSION 1.5.0 - OPTIONS - "BENCHMARK_ENABLE_TESTING Off" + OPTIONS "BENCHMARK_ENABLE_TESTING Off" ) -if (benchmark_ADDED) +if(benchmark_ADDED) # patch google benchmark target set_target_properties(benchmark PROPERTIES CXX_STANDARD 17) endif() @@ -28,5 +27,5 @@ endif() # ---- Executable ---- add_executable(CPMExampleBenchmark "main.cpp") -set_target_properties(CPMExampleBenchmark PROPERTIES CXX_STANDARD 17) +set_target_properties(CPMExampleBenchmark PROPERTIES CXX_STANDARD 17) target_link_libraries(CPMExampleBenchmark fibonacci benchmark) diff --git a/examples/benchmark/main.cpp b/examples/benchmark/main.cpp index 51d1db9..2d56228 100644 --- a/examples/benchmark/main.cpp +++ b/examples/benchmark/main.cpp @@ -1,14 +1,13 @@ #include -#include -#include -#include - #include +#include +#include +#include -std::vector createTestNumbers(){ +std::vector createTestNumbers() { std::vector v; - for (int i=0;i<25;++i) v.emplace_back(i); + for (int i = 0; i < 25; ++i) v.emplace_back(i); std::random_device rd; std::mt19937 g(rd()); std::shuffle(v.begin(), v.end(), g); @@ -18,7 +17,7 @@ std::vector createTestNumbers(){ void fibonacci(benchmark::State& state) { auto numbers = createTestNumbers(); for (auto _ : state) { - for (auto v: numbers) benchmark::DoNotOptimize(fibonacci(v)); + for (auto v : numbers) benchmark::DoNotOptimize(fibonacci(v)); } } @@ -27,7 +26,7 @@ BENCHMARK(fibonacci); void fastFibonacci(benchmark::State& state) { auto numbers = createTestNumbers(); for (auto _ : state) { - for (auto v: numbers) benchmark::DoNotOptimize(fastFibonacci(v)); + for (auto v : numbers) benchmark::DoNotOptimize(fastFibonacci(v)); } } diff --git a/examples/boost/main.cpp b/examples/boost/main.cpp index 720856f..24aa0de 100644 --- a/examples/boost/main.cpp +++ b/examples/boost/main.cpp @@ -8,17 +8,13 @@ // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) // -#include #include #include +#include -void print(const boost::system::error_code& /*e*/) -{ - std::cout << "Hello, world!" << std::endl; -} +void print(const boost::system::error_code& /*e*/) { std::cout << "Hello, world!" << std::endl; } -int main() -{ +int main() { boost::asio::io_service io; boost::asio::deadline_timer t(io, boost::posix_time::seconds(1)); diff --git a/examples/catch2/CMakeLists.txt b/examples/catch2/CMakeLists.txt index 7fca6e5..8a799f0 100644 --- a/examples/catch2/CMakeLists.txt +++ b/examples/catch2/CMakeLists.txt @@ -26,5 +26,5 @@ set_target_properties(CPMExampleCatch2 PROPERTIES CXX_STANDARD 17) # ---- Enable testing ---- -ENABLE_TESTING() -ADD_TEST(CPMExampleCatch2 CPMExampleCatch2) +enable_testing() +add_test(CPMExampleCatch2 CPMExampleCatch2) diff --git a/examples/catch2/main.cpp b/examples/catch2/main.cpp index 08fb3b3..7af0993 100644 --- a/examples/catch2/main.cpp +++ b/examples/catch2/main.cpp @@ -1,9 +1,10 @@ #define CATCH_CONFIG_MAIN -#include #include -TEST_CASE("fibonacci"){ +#include + +TEST_CASE("fibonacci") { REQUIRE(fibonacci(0) == 0); REQUIRE(fibonacci(1) == 1); REQUIRE(fibonacci(2) == 1); @@ -13,8 +14,8 @@ TEST_CASE("fibonacci"){ REQUIRE(fibonacci(13) == 233); } -TEST_CASE("fastFibonacci"){ - for (unsigned i=0; i<25; ++i){ +TEST_CASE("fastFibonacci") { + for (unsigned i = 0; i < 25; ++i) { REQUIRE(fibonacci(i) == fastFibonacci(i)); } } diff --git a/examples/cereal/CMakeLists.txt b/examples/cereal/CMakeLists.txt index 892bf8b..1b1d91c 100644 --- a/examples/cereal/CMakeLists.txt +++ b/examples/cereal/CMakeLists.txt @@ -10,13 +10,11 @@ CPMAddPackage( NAME cereal VERSION 1.2.2 GITHUB_REPOSITORY USCiLab/cereal - OPTIONS - "SKIP_PORTABILITY_TEST ON" - "JUST_INSTALL_CEREAL ON" + OPTIONS "SKIP_PORTABILITY_TEST ON" "JUST_INSTALL_CEREAL ON" ) # ---- Create binary ---- add_executable(CPMExampleCereal main.cpp) -target_link_libraries(CPMExampleCereal cereal ) +target_link_libraries(CPMExampleCereal cereal) set_target_properties(CPMExampleCereal PROPERTIES CXX_STANDARD 17) diff --git a/examples/cereal/main.cpp b/examples/cereal/main.cpp index b83e202..cde395d 100644 --- a/examples/cereal/main.cpp +++ b/examples/cereal/main.cpp @@ -1,28 +1,20 @@ #define CATCH_CONFIG_MAIN -#include #include - -#include +#include #include +#include -struct player_data -{ +struct player_data { int id{-1}; std::string name{}; }; -template -void serialize(Archive& archive, player_data const &data) -{ - archive( - cereal::make_nvp("id", data.id), - cereal::make_nvp("name", data.name) - ); +template void serialize(Archive &archive, player_data const &data) { + archive(cereal::make_nvp("id", data.id), cereal::make_nvp("name", data.name)); } -int main(int argc, char const *argv[]) -{ +int main(int argc, char const *argv[]) { player_data player{3, "Gamer One"}; std::ostringstream oss; cereal::JSONOutputArchive output(oss); diff --git a/examples/cxxopts/CMakeLists.txt b/examples/cxxopts/CMakeLists.txt index 7c99573..1a787e4 100644 --- a/examples/cxxopts/CMakeLists.txt +++ b/examples/cxxopts/CMakeLists.txt @@ -10,9 +10,7 @@ CPMAddPackage( NAME cxxopts GITHUB_REPOSITORY jarro2783/cxxopts VERSION 2.2.0 - OPTIONS - "CXXOPTS_BUILD_EXAMPLES Off" - "CXXOPTS_BUILD_TESTS Off" + OPTIONS "CXXOPTS_BUILD_EXAMPLES Off" "CXXOPTS_BUILD_TESTS Off" ) # ---- Create binary ---- diff --git a/examples/cxxopts/main.cpp b/examples/cxxopts/main.cpp index 48f38e1..4f60153 100644 --- a/examples/cxxopts/main.cpp +++ b/examples/cxxopts/main.cpp @@ -1,21 +1,19 @@ #include #include -int main(int argc, char ** argv) { +int main(int argc, char** argv) { cxxopts::Options options("MyProgram", "One line description of MyProgram"); - options.add_options() - ("h,help", "Show help") - ("d,debug", "Enable debugging") - ("f,file", "File name", cxxopts::value()); + options.add_options()("h,help", "Show help")("d,debug", "Enable debugging")( + "f,file", "File name", cxxopts::value()); auto result = options.parse(argc, argv); - + if (result["help"].as()) { std::cout << options.help() << std::endl; return 0; } - for (auto arg: result.arguments()) { + for (auto arg : result.arguments()) { std::cout << "option: " << arg.key() << ": " << arg.value() << std::endl; } diff --git a/examples/doctest/CMakeLists.txt b/examples/doctest/CMakeLists.txt index 7a08b03..3299899 100644 --- a/examples/doctest/CMakeLists.txt +++ b/examples/doctest/CMakeLists.txt @@ -26,5 +26,5 @@ set_target_properties(CPMExampleDoctest PROPERTIES CXX_STANDARD 17) # ---- Enable testing ---- -ENABLE_TESTING() -ADD_TEST(CPMExampleDoctest CPMExampleDoctest) +enable_testing() +add_test(CPMExampleDoctest CPMExampleDoctest) diff --git a/examples/doctest/main.cpp b/examples/doctest/main.cpp index 1d810bd..e5bd7e9 100644 --- a/examples/doctest/main.cpp +++ b/examples/doctest/main.cpp @@ -3,7 +3,7 @@ #include #include -TEST_CASE("fibonacci"){ +TEST_CASE("fibonacci") { CHECK(fibonacci(0) == 0); CHECK(fibonacci(1) == 1); CHECK(fibonacci(2) == 1); @@ -13,8 +13,8 @@ TEST_CASE("fibonacci"){ CHECK(fibonacci(13) == 233); } -TEST_CASE("fastfibonacci"){ - for (unsigned i=0; i<25; ++i){ +TEST_CASE("fastfibonacci") { + for (unsigned i = 0; i < 25; ++i) { CHECK(fibonacci(i) == fastFibonacci(i)); } } diff --git a/examples/entt/CMakeLists.txt b/examples/entt/CMakeLists.txt index c720643..9232be4 100644 --- a/examples/entt/CMakeLists.txt +++ b/examples/entt/CMakeLists.txt @@ -14,7 +14,7 @@ CPMAddPackage( DOWNLOAD_ONLY True ) -if (EnTT_ADDED) +if(EnTT_ADDED) add_library(EnTT INTERFACE) target_include_directories(EnTT INTERFACE ${EnTT_SOURCE_DIR}/src) endif() @@ -22,5 +22,5 @@ endif() # ---- Executable ---- add_executable(CPMEnTTExample "main.cpp") -set_target_properties(CPMEnTTExample PROPERTIES CXX_STANDARD 17) +set_target_properties(CPMEnTTExample PROPERTIES CXX_STANDARD 17) target_link_libraries(CPMEnTTExample EnTT) diff --git a/examples/entt/main.cpp b/examples/entt/main.cpp index d3edf6a..762d38b 100644 --- a/examples/entt/main.cpp +++ b/examples/entt/main.cpp @@ -1,54 +1,56 @@ -#include #include +#include struct position { - float x; - float y; + float x; + float y; }; struct velocity { - float dx; - float dy; + float dx; + float dy; }; void update(entt::registry ®istry) { - auto view = registry.view(); + auto view = registry.view(); - for(auto entity: view) { - // gets only the components that are going to be used ... + for (auto entity : view) { + // gets only the components that are going to be used ... - auto &vel = view.get(entity); + auto &vel = view.get(entity); - vel.dx = 0.; - vel.dy = 0.; + vel.dx = 0.; + vel.dy = 0.; - // ... - } + // ... + } } void update(std::uint64_t dt, entt::registry ®istry) { - registry.view().each([dt](auto &pos, auto &vel) { - // gets all the components of the view at once ... + registry.view().each([dt](auto &pos, auto &vel) { + // gets all the components of the view at once ... - pos.x += vel.dx * dt; - pos.y += vel.dy * dt; + pos.x += vel.dx * dt; + pos.y += vel.dy * dt; - // ... - }); + // ... + }); } int main() { - entt::registry registry; - std::uint64_t dt = 16; + entt::registry registry; + std::uint64_t dt = 16; - for(auto i = 0; i < 10; ++i) { - auto entity = registry.create(); - registry.assign(entity, i * 1.f, i * 1.f); - if(i % 2 == 0) { registry.assign(entity, i * .1f, i * .1f); } + for (auto i = 0; i < 10; ++i) { + auto entity = registry.create(); + registry.assign(entity, i * 1.f, i * 1.f); + if (i % 2 == 0) { + registry.assign(entity, i * .1f, i * .1f); } + } - update(dt, registry); - update(registry); + update(dt, registry); + update(registry); - // ... + // ... } diff --git a/examples/fmt/CMakeLists.txt b/examples/fmt/CMakeLists.txt index 00f80b3..b9cd242 100644 --- a/examples/fmt/CMakeLists.txt +++ b/examples/fmt/CMakeLists.txt @@ -15,5 +15,5 @@ CPMAddPackage( # ---- Executable ---- add_executable(CPMFmtExample "main.cpp") -set_target_properties(CPMFmtExample PROPERTIES CXX_STANDARD 17) +set_target_properties(CPMFmtExample PROPERTIES CXX_STANDARD 17) target_link_libraries(CPMFmtExample fmt) diff --git a/examples/fmt/main.cpp b/examples/fmt/main.cpp index 5c57e91..06dae23 100644 --- a/examples/fmt/main.cpp +++ b/examples/fmt/main.cpp @@ -1,6 +1,6 @@ #include -int main(){ +int main() { fmt::print("Hello, {}!\n", "world"); return 0; } diff --git a/examples/gtest/CMakeLists.txt b/examples/gtest/CMakeLists.txt index 349b608..3ef7f18 100644 --- a/examples/gtest/CMakeLists.txt +++ b/examples/gtest/CMakeLists.txt @@ -17,9 +17,7 @@ CPMAddPackage( GITHUB_REPOSITORY google/googletest GIT_TAG release-1.8.1 VERSION 1.8.1 - OPTIONS - "INSTALL_GTEST OFF" - "gtest_force_shared_crt" + OPTIONS "INSTALL_GTEST OFF" "gtest_force_shared_crt" ) # ---- Create binary ---- @@ -30,5 +28,5 @@ set_target_properties(CPMExampleGtest PROPERTIES CXX_STANDARD 17) # ---- Enable testing ---- -enable_testing() +enable_testing() add_test(CPMExampleGtest CPMExampleGtest) diff --git a/examples/gtest/main.cpp b/examples/gtest/main.cpp index 7cd36cc..e037708 100644 --- a/examples/gtest/main.cpp +++ b/examples/gtest/main.cpp @@ -1,8 +1,7 @@ -#include #include +#include -TEST(FibonacciTests, BasicChecks) -{ +TEST(FibonacciTests, BasicChecks) { ASSERT_TRUE(fibonacci(0) == 0); ASSERT_TRUE(fibonacci(1) == 1); ASSERT_TRUE(fibonacci(2) == 1); diff --git a/examples/json/CMakeLists.txt b/examples/json/CMakeLists.txt index 93a0759..1b17bcc 100644 --- a/examples/json/CMakeLists.txt +++ b/examples/json/CMakeLists.txt @@ -8,7 +8,7 @@ include(../../cmake/CPM.cmake) CPMAddPackage( NAME nlohmann_json - VERSION 3.6.1 + VERSION 3.6.1 # not using the repo as it takes forever to clone URL https://github.com/nlohmann/json/releases/download/v3.6.1/include.zip URL_HASH SHA256=69cc88207ce91347ea530b227ff0776db82dcb8de6704e1a3d74f4841bc651cf @@ -22,5 +22,5 @@ endif() # ---- Executable ---- add_executable(CPMJSONExample "main.cpp") -set_target_properties(CPMJSONExample PROPERTIES CXX_STANDARD 17) +set_target_properties(CPMJSONExample PROPERTIES CXX_STANDARD 17) target_link_libraries(CPMJSONExample nlohmann_json) diff --git a/examples/json/main.cpp b/examples/json/main.cpp index 5457f20..5b2a518 100644 --- a/examples/json/main.cpp +++ b/examples/json/main.cpp @@ -1,23 +1,15 @@ -#include -#include #include +#include +#include -int main(){ - - nlohmann::json json = { - {"pi", 3.141}, - {"happy", true}, - {"name", "Niels"}, - {"nothing", nullptr}, - {"answer", { - {"everything", 42} - }}, - {"list", {1, 0, 2}}, - {"object", { - {"currency", "USD"}, - {"value", 42.99} - }} - }; +int main() { + nlohmann::json json = {{"pi", 3.141}, + {"happy", true}, + {"name", "Niels"}, + {"nothing", nullptr}, + {"answer", {{"everything", 42}}}, + {"list", {1, 0, 2}}, + {"object", {{"currency", "USD"}, {"value", 42.99}}}}; std::cout << "declared JSON object: " << std::setw(2) << json << std::endl; diff --git a/examples/linenoise/CMakeLists.txt b/examples/linenoise/CMakeLists.txt index d763f7f..905ba87 100644 --- a/examples/linenoise/CMakeLists.txt +++ b/examples/linenoise/CMakeLists.txt @@ -20,5 +20,5 @@ endif() # ---- Executable ---- add_executable(CPMlinenoiseExample "main.cpp") -set_target_properties(CPMlinenoiseExample PROPERTIES CXX_STANDARD 17) +set_target_properties(CPMlinenoiseExample PROPERTIES CXX_STANDARD 17) target_link_libraries(CPMlinenoiseExample linenoise) diff --git a/examples/linenoise/main.cpp b/examples/linenoise/main.cpp index a2f0936..d70b288 100644 --- a/examples/linenoise/main.cpp +++ b/examples/linenoise/main.cpp @@ -1,64 +1,64 @@ #include #include #include + #include "linenoise.h" - void completion(const char *buf, linenoiseCompletions *lc) { - if (buf[0] == 'h') { - linenoiseAddCompletion(lc,"hello"); - linenoiseAddCompletion(lc,"hello there"); - } + if (buf[0] == 'h') { + linenoiseAddCompletion(lc, "hello"); + linenoiseAddCompletion(lc, "hello there"); + } } int main(int argc, char **argv) { - char *line; - char *prgname = argv[0]; + char *line; + char *prgname = argv[0]; - /* Parse options, with --multiline we enable multi line editing. */ - while(argc > 1) { - argc--; - argv++; - if (!strcmp(*argv,"--multiline")) { - linenoiseSetMultiLine(1); - printf("Multi-line mode enabled.\n"); - } else if (!strcmp(*argv,"--keycodes")) { - linenoisePrintKeyCodes(); - exit(0); - } else { - fprintf(stderr, "Usage: %s [--multiline] [--keycodes]\n", prgname); - exit(1); - } + /* Parse options, with --multiline we enable multi line editing. */ + while (argc > 1) { + argc--; + argv++; + if (!strcmp(*argv, "--multiline")) { + linenoiseSetMultiLine(1); + printf("Multi-line mode enabled.\n"); + } else if (!strcmp(*argv, "--keycodes")) { + linenoisePrintKeyCodes(); + exit(0); + } else { + fprintf(stderr, "Usage: %s [--multiline] [--keycodes]\n", prgname); + exit(1); } + } - /* Set the completion callback. This will be called every time the - * user uses the key. */ - linenoiseSetCompletionCallback(completion); + /* Set the completion callback. This will be called every time the + * user uses the key. */ + linenoiseSetCompletionCallback(completion); - /* Load history from file. The history file is just a plain text file - * where entries are separated by newlines. */ - linenoiseHistoryLoad("history.txt"); /* Load the history at startup */ + /* Load history from file. The history file is just a plain text file + * where entries are separated by newlines. */ + linenoiseHistoryLoad("history.txt"); /* Load the history at startup */ - /* Now this is the main loop of the typical linenoise-based application. - * The call to linenoise() will block as long as the user types something - * and presses enter. - * - * The typed string is returned as a malloc() allocated string by - * linenoise, so the user needs to free() it. */ - while((line = linenoise("hello> ")) != NULL) { - /* Do something with the string. */ - if (line[0] != '\0' && line[0] != '/') { - printf("echo: '%s'\n", line); - linenoiseHistoryAdd(line); /* Add to the history. */ - linenoiseHistorySave("history.txt"); /* Save the history on disk. */ - } else if (!strncmp(line,"/historylen",11)) { - /* The "/historylen" command will change the history len. */ - int len = atoi(line+11); - linenoiseHistorySetMaxLen(len); - } else if (line[0] == '/') { - printf("Unreconized command: %s\n", line); - } - free(line); + /* Now this is the main loop of the typical linenoise-based application. + * The call to linenoise() will block as long as the user types something + * and presses enter. + * + * The typed string is returned as a malloc() allocated string by + * linenoise, so the user needs to free() it. */ + while ((line = linenoise("hello> ")) != NULL) { + /* Do something with the string. */ + if (line[0] != '\0' && line[0] != '/') { + printf("echo: '%s'\n", line); + linenoiseHistoryAdd(line); /* Add to the history. */ + linenoiseHistorySave("history.txt"); /* Save the history on disk. */ + } else if (!strncmp(line, "/historylen", 11)) { + /* The "/historylen" command will change the history len. */ + int len = atoi(line + 11); + linenoiseHistorySetMaxLen(len); + } else if (line[0] == '/') { + printf("Unreconized command: %s\n", line); } - return 0; + free(line); + } + return 0; } diff --git a/examples/range-v3/CMakeLists.txt b/examples/range-v3/CMakeLists.txt index ed9a3a1..1d968cf 100644 --- a/examples/range-v3/CMakeLists.txt +++ b/examples/range-v3/CMakeLists.txt @@ -14,7 +14,7 @@ CPMAddPackage( DOWNLOAD_ONLY True ) -if(range-v3_ADDED) +if(range-v3_ADDED) add_library(range-v3 INTERFACE IMPORTED) target_include_directories(range-v3 INTERFACE "${range-v3_SOURCE_DIR}/include") endif() @@ -22,5 +22,5 @@ endif() # ---- Executable ---- add_executable(CPMRangev3Example "main.cpp") -set_target_properties(CPMRangev3Example PROPERTIES CXX_STANDARD 17) +set_target_properties(CPMRangev3Example PROPERTIES CXX_STANDARD 17) target_link_libraries(CPMRangev3Example range-v3) diff --git a/examples/range-v3/main.cpp b/examples/range-v3/main.cpp index 3d9ec3b..8d56c9e 100644 --- a/examples/range-v3/main.cpp +++ b/examples/range-v3/main.cpp @@ -18,27 +18,24 @@ // vector all_of is_six: false // vector none_of is_six: false +#include #include #include #include #include #include - -#include #include using std::cout; auto is_six = [](int i) { return i == 6; }; -int -main() -{ - std::vector v{6, 2, 3, 4, 5, 6}; - cout << std::boolalpha; - cout << "vector: " << ranges::view::all(v) << '\n'; +int main() { + std::vector v{6, 2, 3, 4, 5, 6}; + cout << std::boolalpha; + cout << "vector: " << ranges::view::all(v) << '\n'; - cout << "vector any_of is_six: " << ranges::any_of(v, is_six) << '\n'; - cout << "vector all_of is_six: " << ranges::all_of(v, is_six) << '\n'; - cout << "vector none_of is_six: " << ranges::none_of(v, is_six) << '\n'; + cout << "vector any_of is_six: " << ranges::any_of(v, is_six) << '\n'; + cout << "vector all_of is_six: " << ranges::all_of(v, is_six) << '\n'; + cout << "vector none_of is_six: " << ranges::none_of(v, is_six) << '\n'; } //[any_all_none_of]] \ No newline at end of file diff --git a/examples/simple_match/CMakeLists.txt b/examples/simple_match/CMakeLists.txt index 952418d..8955024 100644 --- a/examples/simple_match/CMakeLists.txt +++ b/examples/simple_match/CMakeLists.txt @@ -21,6 +21,5 @@ endif() # ---- Executable ---- add_executable(CPMSimpleMatchExample "main.cpp") -set_target_properties(CPMSimpleMatchExample PROPERTIES CXX_STANDARD 17) +set_target_properties(CPMSimpleMatchExample PROPERTIES CXX_STANDARD 17) target_link_libraries(CPMSimpleMatchExample simple_match) - diff --git a/examples/simple_match/main.cpp b/examples/simple_match/main.cpp index 9cf1e45..b1ec454 100644 --- a/examples/simple_match/main.cpp +++ b/examples/simple_match/main.cpp @@ -1,8 +1,7 @@ +#include #include -#include - -int main(int argc, char ** argv){ +int main(int argc, char** argv) { using namespace simple_match; using namespace simple_match::placeholders; @@ -12,22 +11,23 @@ int main(int argc, char ** argv){ while (true) { std::cout << "> "; std::getline(std::cin, input); - if (input == "quit") { break; } + if (input == "quit") { + break; + } int x; try { x = std::stoi(input); - } catch(std::invalid_argument &) { + } catch (std::invalid_argument&) { std::cout << "invalid input" << std::endl; continue; } - - match(x, - 1, []() {std::cout << "The answer is one\n"; }, - 2, []() {std::cout << "The answer is two\n"; }, - _x < 10, [](auto&& a) {std::cout << "The answer " << a << " is less than 10\n"; }, - 10 < _x < 20, [](auto&& a) {std::cout << "The answer " << a << " is between 10 and 20 exclusive\n"; }, - _, []() {std::cout << "Did not match\n"; } - ); + + match( + x, 1, []() { std::cout << "The answer is one\n"; }, 2, + []() { std::cout << "The answer is two\n"; }, _x < 10, + [](auto&& a) { std::cout << "The answer " << a << " is less than 10\n"; }, 10 < _x < 20, + [](auto&& a) { std::cout << "The answer " << a << " is between 10 and 20 exclusive\n"; }, _, + []() { std::cout << "Did not match\n"; }); } return 0; diff --git a/examples/sol2/CMakeLists.txt b/examples/sol2/CMakeLists.txt index c28274c..5b418f7 100644 --- a/examples/sol2/CMakeLists.txt +++ b/examples/sol2/CMakeLists.txt @@ -13,20 +13,16 @@ CPMAddPackage( DOWNLOAD_ONLY YES ) -if (lua_ADDED) +if(lua_ADDED) # lua has no CMakeLists, so we create our own target - FILE(GLOB lua_sources ${lua_SOURCE_DIR}/*.c) + file(GLOB lua_sources ${lua_SOURCE_DIR}/*.c) list(REMOVE_ITEM lua_sources "${lua_SOURCE_DIR}/lua.c" "${lua_SOURCE_DIR}/luac.c") add_library(lua STATIC ${lua_sources}) - target_include_directories(lua - PUBLIC - $ - ) + target_include_directories(lua PUBLIC $) endif() - CPMAddPackage( NAME sol2 URL https://github.com/ThePhD/sol2/archive/v3.0.2.zip @@ -34,7 +30,7 @@ CPMAddPackage( DOWNLOAD_ONLY YES ) -if (sol2_ADDED) +if(sol2_ADDED) add_library(sol2 INTERFACE IMPORTED) target_include_directories(sol2 INTERFACE ${sol2_SOURCE_DIR}/include) target_link_libraries(sol2 INTERFACE lua) @@ -43,6 +39,5 @@ endif() # ---- Executable ---- add_executable(CPMSol2Example "main.cpp") -set_target_properties(CPMSol2Example PROPERTIES CXX_STANDARD 17) +set_target_properties(CPMSol2Example PROPERTIES CXX_STANDARD 17) target_link_libraries(CPMSol2Example sol2) - diff --git a/examples/sol2/main.cpp b/examples/sol2/main.cpp index 8ed7451..e8e9100 100644 --- a/examples/sol2/main.cpp +++ b/examples/sol2/main.cpp @@ -1,16 +1,17 @@ -#include #include +#include struct vars { - int boop = 0; + int boop = 0; }; int main() { - sol::state lua; - lua.open_libraries( sol::lib::base ); - lua.new_usertype("vars", "boop", &vars::boop); - lua.script("beep = vars.new()\n" - "beep.boop = 1\n" - "print('beep boop')"); - assert(lua.get("beep").boop == 1); + sol::state lua; + lua.open_libraries(sol::lib::base); + lua.new_usertype("vars", "boop", &vars::boop); + lua.script( + "beep = vars.new()\n" + "beep.boop = 1\n" + "print('beep boop')"); + assert(lua.get("beep").boop == 1); } \ No newline at end of file diff --git a/examples/spdlog/CMakeLists.txt b/examples/spdlog/CMakeLists.txt index 1bd1f87..ca451f2 100644 --- a/examples/spdlog/CMakeLists.txt +++ b/examples/spdlog/CMakeLists.txt @@ -7,9 +7,9 @@ project(CPMSpdlogExample) include(../../cmake/CPM.cmake) CPMAddPackage( - NAME spdlog - GITHUB_REPOSITORY gabime/spdlog - VERSION 1.7.0 + NAME spdlog + GITHUB_REPOSITORY gabime/spdlog + VERSION 1.7.0 ) # ---- Executable ---- diff --git a/examples/yaml/CMakeLists.txt b/examples/yaml/CMakeLists.txt index 6e271d0..3176758 100644 --- a/examples/yaml/CMakeLists.txt +++ b/examples/yaml/CMakeLists.txt @@ -10,18 +10,14 @@ CPMAddPackage( NAME yaml-cpp GIT_REPOSITORY https://github.com/jbeder/yaml-cpp.git # 0.6.2 uses deprecated CMake syntax - VERSION 0.6.3 + VERSION 0.6.3 # 0.6.3 is not released yet, so use the most recent commit - GIT_TAG 012269756149ae99745b6dafefd415843d7420bb - OPTIONS - "YAML_CPP_BUILD_TESTS Off" - "YAML_CPP_BUILD_CONTRIB Off" - "YAML_CPP_BUILD_TOOLS Off" + GIT_TAG 012269756149ae99745b6dafefd415843d7420bb + OPTIONS "YAML_CPP_BUILD_TESTS Off" "YAML_CPP_BUILD_CONTRIB Off" "YAML_CPP_BUILD_TOOLS Off" ) # ---- Executable ---- add_executable(CPMYamlExample "main.cpp") -set_target_properties(CPMYamlExample PROPERTIES CXX_STANDARD 17) +set_target_properties(CPMYamlExample PROPERTIES CXX_STANDARD 17) target_link_libraries(CPMYamlExample yaml-cpp) - diff --git a/examples/yaml/main.cpp b/examples/yaml/main.cpp index 15441bf..8330e3f 100644 --- a/examples/yaml/main.cpp +++ b/examples/yaml/main.cpp @@ -1,7 +1,8 @@ #include + #include -int main(int argc, char ** argv){ +int main(int argc, char** argv) { if (argc != 2) { std::cout << "usage: " << argv[0] << " " << std::endl; return 1; diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 2f0272c..4bc734c 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -8,9 +8,8 @@ enable_testing() foreach(test ${tests}) message(STATUS "adding test: ${test}") - add_test( - NAME ${test} - COMMAND ${CMAKE_COMMAND} -DCPM_PATH=${CMAKE_CURRENT_SOURCE_DIR}/../cmake -P "${test}" + add_test(NAME ${test} COMMAND ${CMAKE_COMMAND} -DCPM_PATH=${CMAKE_CURRENT_SOURCE_DIR}/../cmake -P + "${test}" ) endforeach() diff --git a/test/style/CMakeLists.txt b/test/style/CMakeLists.txt new file mode 100644 index 0000000..2beb38b --- /dev/null +++ b/test/style/CMakeLists.txt @@ -0,0 +1,12 @@ +cmake_minimum_required(VERSION 3.14 FATAL_ERROR) + +project(CPMStyleCheck) + +include(${CMAKE_CURRENT_LIST_DIR}/../../cmake/CPM.cmake) + +CPMAddPackage( + NAME Format.cmake + VERSION 1.6 + GITHUB_REPOSITORY TheLartians/Format.cmake + OPTIONS "FORMAT_CHECK_CMAKE ON" +) diff --git a/test/unit/cache.cmake b/test/unit/cache.cmake index 3fe07ef..33e05b4 100644 --- a/test/unit/cache.cmake +++ b/test/unit/cache.cmake @@ -8,8 +8,8 @@ set(TEST_BUILD_DIR ${CMAKE_CURRENT_BINARY_DIR}/remote_dependency) function(clear_cache) message(STATUS "clearing CPM cache") - FILE(REMOVE_RECURSE ${CPM_SOURCE_CACHE_DIR}) - ASSERT_NOT_EXISTS("${CPM_SOURCE_CACHE_DIR}") + file(REMOVE_RECURSE ${CPM_SOURCE_CACHE_DIR}) + assert_not_exists("${CPM_SOURCE_CACHE_DIR}") endfunction() function(update_cmake_lists) @@ -22,100 +22,92 @@ endfunction() function(reset_test) clear_cache() - FILE(REMOVE_RECURSE ${TEST_BUILD_DIR}) + file(REMOVE_RECURSE ${TEST_BUILD_DIR}) update_cmake_lists() endfunction() set(FIBONACCI_VERSION 1.0) -## Read CPM_SOURCE_CACHE from arguments +# Read CPM_SOURCE_CACHE from arguments reset_test() execute_process( - COMMAND - ${CMAKE_COMMAND} "-H${CMAKE_CURRENT_LIST_DIR}/remote_dependency" "-B${TEST_BUILD_DIR}" "-DCPM_SOURCE_CACHE=${CPM_SOURCE_CACHE_DIR}" - RESULT_VARIABLE ret + COMMAND ${CMAKE_COMMAND} "-H${CMAKE_CURRENT_LIST_DIR}/remote_dependency" "-B${TEST_BUILD_DIR}" + "-DCPM_SOURCE_CACHE=${CPM_SOURCE_CACHE_DIR}" RESULT_VARIABLE ret ) -ASSERT_EQUAL(${ret} "0") -ASSERT_EXISTS("${CPM_SOURCE_CACHE_DIR}/fibonacci") +assert_equal(${ret} "0") +assert_exists("${CPM_SOURCE_CACHE_DIR}/fibonacci") -FILE(GLOB FIBONACCI_VERSIONs "${CPM_SOURCE_CACHE_DIR}/fibonacci/*") +file(GLOB FIBONACCI_VERSIONs "${CPM_SOURCE_CACHE_DIR}/fibonacci/*") list(LENGTH FIBONACCI_VERSIONs FIBONACCI_VERSION_count) -ASSERT_EQUAL(${FIBONACCI_VERSION_count} "1") +assert_equal(${FIBONACCI_VERSION_count} "1") -FILE(GLOB fibonacci_versions "${CPM_SOURCE_CACHE_DIR}/fibonacci/*") +file(GLOB fibonacci_versions "${CPM_SOURCE_CACHE_DIR}/fibonacci/*") list(LENGTH fibonacci_versions fibonacci_version_count) -ASSERT_EQUAL(${fibonacci_version_count} "1") +assert_equal(${fibonacci_version_count} "1") -## Update dependency and keep CPM_SOURCE_CACHE +# Update dependency and keep CPM_SOURCE_CACHE set(FIBONACCI_VERSION 2.0) update_cmake_lists() -execute_process( - COMMAND - ${CMAKE_COMMAND} ${TEST_BUILD_DIR} - RESULT_VARIABLE ret -) +execute_process(COMMAND ${CMAKE_COMMAND} ${TEST_BUILD_DIR} RESULT_VARIABLE ret) -ASSERT_EQUAL(${ret} "0") +assert_equal(${ret} "0") -FILE(GLOB FIBONACCI_VERSIONs "${CPM_SOURCE_CACHE_DIR}/fibonacci/*") +file(GLOB FIBONACCI_VERSIONs "${CPM_SOURCE_CACHE_DIR}/fibonacci/*") list(LENGTH FIBONACCI_VERSIONs FIBONACCI_VERSION_count) -ASSERT_EQUAL(${FIBONACCI_VERSION_count} "2") +assert_equal(${FIBONACCI_VERSION_count} "2") -## Clear cache and update +# Clear cache and update clear_cache() -execute_process( - COMMAND - ${CMAKE_COMMAND} ${TEST_BUILD_DIR} - RESULT_VARIABLE ret -) +execute_process(COMMAND ${CMAKE_COMMAND} ${TEST_BUILD_DIR} RESULT_VARIABLE ret) -ASSERT_EQUAL(${ret} "0") -ASSERT_EXISTS("${CPM_SOURCE_CACHE_DIR}/fibonacci") +assert_equal(${ret} "0") +assert_exists("${CPM_SOURCE_CACHE_DIR}/fibonacci") -## Read CPM_SOURCE_CACHE from environment +# Read CPM_SOURCE_CACHE from environment reset_test() execute_process( - COMMAND - ${CMAKE_COMMAND} -E env "CPM_SOURCE_CACHE=${CPM_SOURCE_CACHE_DIR}" ${CMAKE_COMMAND} "-H${CMAKE_CURRENT_LIST_DIR}/remote_dependency" "-B${TEST_BUILD_DIR}" - RESULT_VARIABLE ret + COMMAND ${CMAKE_COMMAND} -E env "CPM_SOURCE_CACHE=${CPM_SOURCE_CACHE_DIR}" ${CMAKE_COMMAND} + "-H${CMAKE_CURRENT_LIST_DIR}/remote_dependency" "-B${TEST_BUILD_DIR}" RESULT_VARIABLE ret ) -ASSERT_EQUAL(${ret} "0") -ASSERT_EXISTS("${CPM_SOURCE_CACHE_DIR}/fibonacci") +assert_equal(${ret} "0") +assert_exists("${CPM_SOURCE_CACHE_DIR}/fibonacci") -## Reuse cached packages for other build +# Reuse cached packages for other build execute_process( - COMMAND - ${CMAKE_COMMAND} -E env "CPM_SOURCE_CACHE=${CPM_SOURCE_CACHE_DIR}" ${CMAKE_COMMAND} "-H${CMAKE_CURRENT_LIST_DIR}/remote_dependency" "-B${TEST_BUILD_DIR}-2" + COMMAND ${CMAKE_COMMAND} -E env "CPM_SOURCE_CACHE=${CPM_SOURCE_CACHE_DIR}" ${CMAKE_COMMAND} + "-H${CMAKE_CURRENT_LIST_DIR}/remote_dependency" "-B${TEST_BUILD_DIR}-2" RESULT_VARIABLE ret ) -ASSERT_EQUAL(${ret} "0") +assert_equal(${ret} "0") -## Overwrite CPM_SOURCE_CACHE with argument +# Overwrite CPM_SOURCE_CACHE with argument reset_test() execute_process( - COMMAND - ${CMAKE_COMMAND} -E env "CPM_SOURCE_CACHE=${CMAKE_CURRENT_BINARY_DIR}/junk" ${CMAKE_COMMAND} "-H${CMAKE_CURRENT_LIST_DIR}/remote_dependency" "-B${TEST_BUILD_DIR}" "-DCPM_SOURCE_CACHE=${CPM_SOURCE_CACHE_DIR}" + COMMAND + ${CMAKE_COMMAND} -E env "CPM_SOURCE_CACHE=${CMAKE_CURRENT_BINARY_DIR}/junk" ${CMAKE_COMMAND} + "-H${CMAKE_CURRENT_LIST_DIR}/remote_dependency" "-B${TEST_BUILD_DIR}" + "-DCPM_SOURCE_CACHE=${CPM_SOURCE_CACHE_DIR}" RESULT_VARIABLE ret ) -ASSERT_EQUAL(${ret} "0") -ASSERT_EXISTS("${CPM_SOURCE_CACHE_DIR}/fibonacci") +assert_equal(${ret} "0") +assert_exists("${CPM_SOURCE_CACHE_DIR}/fibonacci") -## Use NO_CACHE option +# Use NO_CACHE option set(FIBONACCI_PACKAGE_ARGS "NO_CACHE YES") set(FIBONACCI_VERSION 1.0) @@ -123,25 +115,23 @@ update_cmake_lists() reset_test() execute_process( - COMMAND - ${CMAKE_COMMAND} -E env "CPM_SOURCE_CACHE=${CPM_SOURCE_CACHE_DIR}" ${CMAKE_COMMAND} "-H${CMAKE_CURRENT_LIST_DIR}/remote_dependency" "-B${TEST_BUILD_DIR}" - RESULT_VARIABLE ret + COMMAND ${CMAKE_COMMAND} -E env "CPM_SOURCE_CACHE=${CPM_SOURCE_CACHE_DIR}" ${CMAKE_COMMAND} + "-H${CMAKE_CURRENT_LIST_DIR}/remote_dependency" "-B${TEST_BUILD_DIR}" RESULT_VARIABLE ret ) -ASSERT_EQUAL(${ret} "0") -ASSERT_NOT_EXISTS("${CPM_SOURCE_CACHE_DIR}/fibonacci") +assert_equal(${ret} "0") +assert_not_exists("${CPM_SOURCE_CACHE_DIR}/fibonacci") -## Use commit hash after version +# Use commit hash after version set(FIBONACCI_PACKAGE_ARGS "NO_CACHE YES GIT_TAG e9ebf168ca0fffaa4ef8c6fefc6346aaa22f6ed5") set(FIBONACCI_VERSION 1.1) update_cmake_lists() execute_process( - COMMAND - ${CMAKE_COMMAND} -E env "CPM_SOURCE_CACHE=${CPM_SOURCE_CACHE_DIR}" ${CMAKE_COMMAND} "-H${CMAKE_CURRENT_LIST_DIR}/remote_dependency" "-B${TEST_BUILD_DIR}" - RESULT_VARIABLE ret + COMMAND ${CMAKE_COMMAND} -E env "CPM_SOURCE_CACHE=${CPM_SOURCE_CACHE_DIR}" ${CMAKE_COMMAND} + "-H${CMAKE_CURRENT_LIST_DIR}/remote_dependency" "-B${TEST_BUILD_DIR}" RESULT_VARIABLE ret ) -ASSERT_EQUAL(${ret} "0") -ASSERT_NOT_EXISTS("${CPM_SOURCE_CACHE_DIR}/fibonacci") +assert_equal(${ret} "0") +assert_not_exists("${CPM_SOURCE_CACHE_DIR}/fibonacci") diff --git a/test/unit/dependency_properties.cmake b/test/unit/dependency_properties.cmake index 8b4d805..69f26a7 100644 --- a/test/unit/dependency_properties.cmake +++ b/test/unit/dependency_properties.cmake @@ -5,31 +5,19 @@ include(${CPM_PATH}/testing.cmake) set(CPM_DRY_RUN ON) -CPMAddPackage( - NAME A - GIT_TAG 1.2.3 -) +CPMAddPackage(NAME A GIT_TAG 1.2.3) -CPMAddPackage( - NAME A - VERSION 1.2.3 -) +CPMAddPackage(NAME A VERSION 1.2.3) CPMGetPackageVersion(A VERSION) -ASSERT_EQUAL(${VERSION} "1.2.3") +assert_equal(${VERSION} "1.2.3") -CPMAddPackage( - NAME B - VERSION 2.4.1 -) +CPMAddPackage(NAME B VERSION 2.4.1) -CPMAddPackage( - NAME B - GIT_TAG v2.3.1 -) +CPMAddPackage(NAME B GIT_TAG v2.3.1) CPMGetPackageVersion(B VERSION) -ASSERT_EQUAL(${VERSION} "2.4.1") +assert_equal(${VERSION} "2.4.1") CPMAddPackage( NAME C @@ -38,4 +26,4 @@ CPMAddPackage( ) CPMGetPackageVersion(C VERSION) -ASSERT_EQUAL(${VERSION} "3.1.2") +assert_equal(${VERSION} "3.1.2") diff --git a/test/unit/is_git_tag_commit_hash.cmake b/test/unit/is_git_tag_commit_hash.cmake index 9216d34..85ab00d 100644 --- a/test/unit/is_git_tag_commit_hash.cmake +++ b/test/unit/is_git_tag_commit_hash.cmake @@ -3,20 +3,20 @@ cmake_minimum_required(VERSION 3.14 FATAL_ERROR) include(${CPM_PATH}/CPM.cmake) include(${CPM_PATH}/testing.cmake) -CPM_IS_GIT_TAG_COMMIT_HASH("v1.2.3" RESULT) -ASSERT_EQUAL("0" ${RESULT}) +cpm_is_git_tag_commit_hash("v1.2.3" RESULT) +assert_equal("0" ${RESULT}) -CPM_IS_GIT_TAG_COMMIT_HASH("asio-1-12-1" RESULT) -ASSERT_EQUAL("0" ${RESULT}) +cpm_is_git_tag_commit_hash("asio-1-12-1" RESULT) +assert_equal("0" ${RESULT}) -CPM_IS_GIT_TAG_COMMIT_HASH("513039e3cba83284cec71287fd829865b9f423bc" RESULT) -ASSERT_EQUAL("1" ${RESULT}) +cpm_is_git_tag_commit_hash("513039e3cba83284cec71287fd829865b9f423bc" RESULT) +assert_equal("1" ${RESULT}) -CPM_IS_GIT_TAG_COMMIT_HASH("513039E3CBA83284CEC71287FD829865B9F423BC" RESULT) -ASSERT_EQUAL("1" ${RESULT}) +cpm_is_git_tag_commit_hash("513039E3CBA83284CEC71287FD829865B9F423BC" RESULT) +assert_equal("1" ${RESULT}) -CPM_IS_GIT_TAG_COMMIT_HASH("513039E" RESULT) -ASSERT_EQUAL("1" ${RESULT}) +cpm_is_git_tag_commit_hash("513039E" RESULT) +assert_equal("1" ${RESULT}) -CPM_IS_GIT_TAG_COMMIT_HASH("513039E3CBA8" RESULT) -ASSERT_EQUAL("1" ${RESULT}) +cpm_is_git_tag_commit_hash("513039E3CBA8" RESULT) +assert_equal("1" ${RESULT}) diff --git a/test/unit/local_dependency/dependency/CMakeLists.txt b/test/unit/local_dependency/dependency/CMakeLists.txt index 1da5117..a015dc4 100644 --- a/test/unit/local_dependency/dependency/CMakeLists.txt +++ b/test/unit/local_dependency/dependency/CMakeLists.txt @@ -1,4 +1,3 @@ - function(dependency_function) message("called external method") endfunction() diff --git a/test/unit/modules.cmake b/test/unit/modules.cmake index 09c22e5..2260806 100644 --- a/test/unit/modules.cmake +++ b/test/unit/modules.cmake @@ -1,10 +1,9 @@ - include(CMakePackageConfigHelpers) include(${CPM_PATH}/testing.cmake) set(TEST_BUILD_DIR ${CMAKE_CURRENT_BINARY_DIR}/modules) -function(initProjectWithDependency TEST_DEPENDENCY_NAME) +function(init_project_with_dependency TEST_DEPENDENCY_NAME) configure_package_config_file( "${CMAKE_CURRENT_LIST_DIR}/local_dependency/ModuleCMakeLists.txt.in" "${CMAKE_CURRENT_LIST_DIR}/local_dependency/CMakeLists.txt" @@ -12,19 +11,18 @@ function(initProjectWithDependency TEST_DEPENDENCY_NAME) ) execute_process( - COMMAND - ${CMAKE_COMMAND} "-H${CMAKE_CURRENT_LIST_DIR}/local_dependency" "-B${TEST_BUILD_DIR}" + COMMAND ${CMAKE_COMMAND} "-H${CMAKE_CURRENT_LIST_DIR}/local_dependency" "-B${TEST_BUILD_DIR}" RESULT_VARIABLE ret ) - ASSERT_EQUAL(${ret} "0") + assert_equal(${ret} "0") endfunction() -initProjectWithDependency(A) -ASSERT_EXISTS(${TEST_BUILD_DIR}/CPM_modules) -ASSERT_EXISTS(${TEST_BUILD_DIR}/CPM_modules/FindA.cmake) -ASSERT_NOT_EXISTS(${TEST_BUILD_DIR}/CPM_modules/FindB.cmake) +init_project_with_dependency(A) +assert_exists(${TEST_BUILD_DIR}/CPM_modules) +assert_exists(${TEST_BUILD_DIR}/CPM_modules/FindA.cmake) +assert_not_exists(${TEST_BUILD_DIR}/CPM_modules/FindB.cmake) -initProjectWithDependency(B) -ASSERT_NOT_EXISTS(${TEST_BUILD_DIR}/CPM_modules/FindA.cmake) -ASSERT_EXISTS(${TEST_BUILD_DIR}/CPM_modules/FindB.cmake) +init_project_with_dependency(B) +assert_not_exists(${TEST_BUILD_DIR}/CPM_modules/FindA.cmake) +assert_exists(${TEST_BUILD_DIR}/CPM_modules/FindB.cmake) diff --git a/test/unit/package-lock.cmake b/test/unit/package-lock.cmake index d5ca2ad..32d494c 100644 --- a/test/unit/package-lock.cmake +++ b/test/unit/package-lock.cmake @@ -1,17 +1,18 @@ - include(CMakePackageConfigHelpers) include(${CPM_PATH}/testing.cmake) set(TEST_BUILD_DIR ${CMAKE_CURRENT_BINARY_DIR}/package-lock) -function(configureWithDeclare DECLARE_DEPENDENCY) +function(configure_with_declare DECLARE_DEPENDENCY) execute_process(COMMAND ${CMAKE_COMMAND} -E rm -rf ${TEST_BUILD_DIR}) - if (DECLARE_DEPENDENCY) - set(PREPARE_CODE "CPMDeclarePackage(Dependency - NAME Dependency + if(DECLARE_DEPENDENCY) + set(PREPARE_CODE + "CPMDeclarePackage(Dependency + NAME Dependency SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/local_dependency/dependency - )") + )" + ) else() set(PREPARE_CODE "") endif() @@ -23,27 +24,30 @@ function(configureWithDeclare DECLARE_DEPENDENCY) ) execute_process( - COMMAND ${CMAKE_COMMAND} -H${CMAKE_CURRENT_LIST_DIR}/local_dependency -B${TEST_BUILD_DIR} -DCPM_INCLUDE_ALL_IN_PACKAGE_LOCK=1 - RESULT_VARIABLE ret + COMMAND ${CMAKE_COMMAND} -H${CMAKE_CURRENT_LIST_DIR}/local_dependency -B${TEST_BUILD_DIR} + -DCPM_INCLUDE_ALL_IN_PACKAGE_LOCK=1 RESULT_VARIABLE ret ) - ASSERT_EQUAL(${ret} "0") + assert_equal(${ret} "0") endfunction() -function(updatePackageLock) +function(update_package_lock) execute_process( COMMAND ${CMAKE_COMMAND} --build ${TEST_BUILD_DIR} --target cpm-update-package-lock RESULT_VARIABLE ret ) - ASSERT_EQUAL(${ret} "0") + assert_equal(${ret} "0") endfunction() -execute_process(COMMAND ${CMAKE_COMMAND} -E rm -f ${CMAKE_CURRENT_LIST_DIR}/local_dependency/package-lock.cmake) -configureWithDeclare(YES) -ASSERT_NOT_EXISTS(${CMAKE_CURRENT_LIST_DIR}/local_dependency/package-lock.cmake) -updatePackageLock() -ASSERT_EXISTS(${CMAKE_CURRENT_LIST_DIR}/local_dependency/package-lock.cmake) -configureWithDeclare(NO) -execute_process(COMMAND ${CMAKE_COMMAND} -E rm -f ${CMAKE_CURRENT_LIST_DIR}/local_dependency/package-lock.cmake) - +execute_process( + COMMAND ${CMAKE_COMMAND} -E rm -f ${CMAKE_CURRENT_LIST_DIR}/local_dependency/package-lock.cmake +) +configure_with_declare(YES) +assert_not_exists(${CMAKE_CURRENT_LIST_DIR}/local_dependency/package-lock.cmake) +update_package_lock() +assert_exists(${CMAKE_CURRENT_LIST_DIR}/local_dependency/package-lock.cmake) +configure_with_declare(NO) +execute_process( + COMMAND ${CMAKE_COMMAND} -E rm -f ${CMAKE_CURRENT_LIST_DIR}/local_dependency/package-lock.cmake +) diff --git a/test/unit/package-override.cmake b/test/unit/package-override.cmake index d43a744..4d53f36 100644 --- a/test/unit/package-override.cmake +++ b/test/unit/package-override.cmake @@ -1,4 +1,3 @@ - include(CMakePackageConfigHelpers) include(${CPM_PATH}/testing.cmake) @@ -13,8 +12,9 @@ configure_package_config_file( ) execute_process( - COMMAND ${CMAKE_COMMAND} -H${CMAKE_CURRENT_LIST_DIR}/local_dependency -B${TEST_BUILD_DIR} -DCPM_Dependency_SOURCE=${CMAKE_CURRENT_LIST_DIR}/local_dependency/dependency + COMMAND ${CMAKE_COMMAND} -H${CMAKE_CURRENT_LIST_DIR}/local_dependency -B${TEST_BUILD_DIR} + -DCPM_Dependency_SOURCE=${CMAKE_CURRENT_LIST_DIR}/local_dependency/dependency RESULT_VARIABLE ret ) -ASSERT_EQUAL(${ret} "0") +assert_equal(${ret} "0") diff --git a/test/unit/remote_dependency/main.cpp b/test/unit/remote_dependency/main.cpp index f815a38..0299b57 100644 --- a/test/unit/remote_dependency/main.cpp +++ b/test/unit/remote_dependency/main.cpp @@ -1,9 +1,10 @@ #define CATCH_CONFIG_MAIN #include + #include -int main(){ +int main() { std::cout << "fib(10) = " << fastFibonacci(10) << std::endl; return 0; } diff --git a/test/unit/source_dir.cmake b/test/unit/source_dir.cmake index 66be79e..0e39322 100644 --- a/test/unit/source_dir.cmake +++ b/test/unit/source_dir.cmake @@ -1,4 +1,3 @@ - include(CMakePackageConfigHelpers) include(${CPM_PATH}/testing.cmake) @@ -13,9 +12,8 @@ configure_package_config_file( ) execute_process( - COMMAND - ${CMAKE_COMMAND} "-H${CMAKE_CURRENT_LIST_DIR}/local_dependency" "-B${TEST_BUILD_DIR}" + COMMAND ${CMAKE_COMMAND} "-H${CMAKE_CURRENT_LIST_DIR}/local_dependency" "-B${TEST_BUILD_DIR}" RESULT_VARIABLE ret ) -ASSERT_EQUAL(${ret} "0") +assert_equal(${ret} "0") diff --git a/test/unit/version_from_git_tag.cmake b/test/unit/version_from_git_tag.cmake index c25d22c..4a92246 100644 --- a/test/unit/version_from_git_tag.cmake +++ b/test/unit/version_from_git_tag.cmake @@ -3,14 +3,14 @@ cmake_minimum_required(VERSION 3.14 FATAL_ERROR) include(${CPM_PATH}/CPM.cmake) include(${CPM_PATH}/testing.cmake) -CPM_GET_VERSION_FROM_GIT_TAG("1.2.3" VERSION) -ASSERT_EQUAL("1.2.3" ${VERSION}) +cpm_get_version_from_git_tag("1.2.3" VERSION) +assert_equal("1.2.3" ${VERSION}) -CPM_GET_VERSION_FROM_GIT_TAG("v1.2.3" VERSION) -ASSERT_EQUAL("1.2.3" ${VERSION}) +cpm_get_version_from_git_tag("v1.2.3" VERSION) +assert_equal("1.2.3" ${VERSION}) -CPM_GET_VERSION_FROM_GIT_TAG("1.2.3-a" VERSION) -ASSERT_EQUAL("1.2.3" ${VERSION}) +cpm_get_version_from_git_tag("1.2.3-a" VERSION) +assert_equal("1.2.3" ${VERSION}) -CPM_GET_VERSION_FROM_GIT_TAG("v1.2.3-a" VERSION) -ASSERT_EQUAL("1.2.3" ${VERSION}) +cpm_get_version_from_git_tag("v1.2.3-a" VERSION) +assert_equal("1.2.3" ${VERSION})