# Copyright (C) 2017 KeePassXC Team # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 2 or (at your option) # version 3 of the License. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see . set(EXCLUDED_DIRS # third-party directories zxcvbn/ streams/QtIOCompressor # objective-c directories autotype/mac) set(EXCLUDED_FILES # third-party files streams/qtiocompressor.cpp streams/qtiocompressor.h gui/KMessageWidget.h gui/KMessageWidget.cpp gui/MainWindowAdaptor.h gui/MainWindowAdaptor.cpp sshagent/bcrypt_pbkdf.cpp sshagent/blf.h sshagent/blowfish.c tests/modeltest.cpp tests/modeltest.h # objective-c files core/ScreenLockListenerMac.h core/ScreenLockListenerMac.cpp) file(GLOB_RECURSE ALL_SOURCE_FILES *.cpp *.h) foreach(SOURCE_FILE ${ALL_SOURCE_FILES}) foreach(EXCLUDED_DIR ${EXCLUDED_DIRS}) string(FIND ${SOURCE_FILE} ${EXCLUDED_DIR} SOURCE_FILE_EXCLUDED) if(NOT ${SOURCE_FILE_EXCLUDED} EQUAL -1) list(REMOVE_ITEM ALL_SOURCE_FILES ${SOURCE_FILE}) endif() endforeach() foreach(EXCLUDED_FILE ${EXCLUDED_FILES}) if(${SOURCE_FILE} MATCHES ".*${EXCLUDED_FILE}$") list(REMOVE_ITEM ALL_SOURCE_FILES ${SOURCE_FILE}) endif() endforeach() endforeach() add_custom_target( format COMMAND echo ${ALL_SOURCE_FILES} | xargs clang-format -style=file -i )