Path: blob/master/Utilities/ClangTidyModule/CMakeLists.txt
3148 views
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying1# file LICENSE.rst or https://cmake.org/licensing for details.2cmake_minimum_required(VERSION 3.13)3project(CMakeClangTidyModule C CXX)45get_filename_component(tmp "${CMAKE_CURRENT_SOURCE_DIR}" PATH)6get_filename_component(CMake_SOURCE_DIR "${tmp}" PATH)78find_package(Clang REQUIRED)910if(LLVM_VERSION_MAJOR GREATER_EQUAL 16)11set(CMAKE_CXX_STANDARD 17)12else()13set(CMAKE_CXX_STANDARD 14)14endif()15set(CMAKE_CXX_STANDARD_REQUIRED ON)1617add_library(cmake-clang-tidy-module MODULE18Module.cxx1920OstringstreamUseCmstrcatCheck.cxx21OstringstreamUseCmstrcatCheck.h22StringConcatenationUseCmstrcatCheck.cxx23StringConcatenationUseCmstrcatCheck.h24UseBespokeEnumClassCheck.cxx25UseBespokeEnumClassCheck.h26UseCmstrlenCheck.cxx27UseCmstrlenCheck.h28UseCmsysFstreamCheck.cxx29UseCmsysFstreamCheck.h30UsePragmaOnceCheck.cxx31UsePragmaOnceCheck.h32)33target_include_directories(cmake-clang-tidy-module PRIVATE ${CLANG_INCLUDE_DIRS})34target_link_libraries(cmake-clang-tidy-module PRIVATE clang-tidy)3536option(RUN_TESTS "Run the tests for the clang-tidy module" OFF)37if(RUN_TESTS)38enable_testing()39add_subdirectory(Tests)40endif()414243