diff options
-rw-r--r-- | kde-modules/KDEClangFormat.cmake | 8 | ||||
-rw-r--r-- | kde-modules/KDEFrameworkCompilerSettings.cmake | 7 |
2 files changed, 15 insertions, 0 deletions
diff --git a/kde-modules/KDEClangFormat.cmake b/kde-modules/KDEClangFormat.cmake index b662b275..7889fde0 100644 --- a/kde-modules/KDEClangFormat.cmake +++ b/kde-modules/KDEClangFormat.cmake @@ -22,6 +22,8 @@ # added to version control. It is recommended to add it to the ``.gitignore`` file: ``/.clang-format``. # # Since 5.79: If the source folder already contains a .clang-format file it is not overwritten. +# Since version 5.80 this function is called by default in KDEFrameworkCompilerSettings. If directories should be excluded from +# the formatting a .clang-format file with "DisableFormat: true" and "SortIncludes: false" should be created. # # Example usage: # @@ -43,6 +45,7 @@ #============================================================================= # SPDX-FileCopyrightText: 2019 Christoph Cullmann <cullmann@kde.org> +# SPDX-FileCopyrightText: 2021 Alexander Lohnau <alexander.lohnau@gmx.de> # # SPDX-License-Identifier: BSD-3-Clause @@ -67,6 +70,11 @@ endif() # formatting target function(KDE_CLANG_FORMAT) + if (TARGET clang-format) + message(WARNING "the kde_clang_format function was already called") + return() + endif() + # add target without specific commands first, we add the real calls file-per-file to avoid command line length issues add_custom_target(clang-format COMMENT "Formatting sources in ${CMAKE_CURRENT_SOURCE_DIR} with ${KDE_CLANG_FORMAT_EXECUTABLE}...") diff --git a/kde-modules/KDEFrameworkCompilerSettings.cmake b/kde-modules/KDEFrameworkCompilerSettings.cmake index 329be097..478039da 100644 --- a/kde-modules/KDEFrameworkCompilerSettings.cmake +++ b/kde-modules/KDEFrameworkCompilerSettings.cmake @@ -74,3 +74,10 @@ if (CMAKE_CXX_COMPILER_ID MATCHES "Clang") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wzero-as-null-pointer-constant" ) endif() endif() + +if (NOT ("${ECM_GLOBAL_FIND_VERSION}" VERSION_LESS "5.80.0")) + include(KDEClangFormat) + # add clang-format target + file(GLOB_RECURSE ALL_CLANG_FORMAT_SOURCE_FILES *.cpp *.h *.c) + kde_clang_format(${ALL_CLANG_FORMAT_SOURCE_FILES}) +endif () |