From b224217bfeee9c10001fc5ffc9ad9f0109fa3275 Mon Sep 17 00:00:00 2001 From: rthomas Date: Wed, 11 Nov 2020 07:15:38 +0100 Subject: [PATCH] Remove cppcheck (to be replaced with clang-tidy) --- CMakeLists.txt | 3 - api/c/ELF/DynamicEntry.cpp | 1 - cmake/CppcheckTargets.cmake | 231 ------------------------------------ cmake/Findcppcheck.cmake | 167 -------------------------- cmake/Findcppcheck.cpp | 16 --- 5 files changed, 418 deletions(-) delete mode 100644 cmake/CppcheckTargets.cmake delete mode 100644 cmake/Findcppcheck.cmake delete mode 100644 cmake/Findcppcheck.cpp diff --git a/CMakeLists.txt b/CMakeLists.txt index d41286b..81c7ff8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -9,8 +9,6 @@ if(WIN32) endif() include(CheckCXXCompilerFlag) include(CheckCCompilerFlag) -include(Findcppcheck) -include(CppcheckTargets) include(ExternalProject) if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/.git" @@ -408,7 +406,6 @@ if(LIEF_COVERAGE) target_link_libraries(LIB_LIEF gcov) endif() -find_package(cppcheck) if(MSVC) string(TOLOWER "${CMAKE_BUILD_TYPE}" build_type) diff --git a/api/c/ELF/DynamicEntry.cpp b/api/c/ELF/DynamicEntry.cpp index 34d964b..30a1691 100644 --- a/api/c/ELF/DynamicEntry.cpp +++ b/api/c/ELF/DynamicEntry.cpp @@ -39,7 +39,6 @@ void init_c_dynamic_entries(Elf_Binary_t* c_binary, Binary* binary) { c_binary->dynamic_entries[i] = reinterpret_cast(e); break; - // cppcheck-suppress memleak } case DYNAMIC_TAGS::DT_SONAME: diff --git a/cmake/CppcheckTargets.cmake b/cmake/CppcheckTargets.cmake deleted file mode 100644 index 29bc898..0000000 --- a/cmake/CppcheckTargets.cmake +++ /dev/null @@ -1,231 +0,0 @@ -# - Run cppcheck on c++ source files as a custom target and a test -# -# include(CppcheckTargets) -# add_cppcheck( [UNUSED_FUNCTIONS] [STYLE] [POSSIBLE_ERROR] [FORCE] [FAIL_ON_WARNINGS]) - -# Create a target to check a target's sources with cppcheck and the indicated options -# add_cppcheck_sources( [UNUSED_FUNCTIONS] [STYLE] [POSSIBLE_ERROR] [FORCE] [FAIL_ON_WARNINGS]) - -# Create a target to check standalone sources with cppcheck and the indicated options -# -# Requires these CMake modules: -# Findcppcheck -# -# Requires CMake 2.6 or newer (uses the 'function' command) -# -# Original Author: -# 2009-2010 Ryan Pavlik -# http://academic.cleardefinition.com -# Iowa State University HCI Graduate Program/VRAC -# -# Copyright Iowa State University 2009-2010. -# Distributed under the Boost Software License, Version 1.0. -# (See accompanying file LICENSE_1_0.txt or copy at -# http://www.boost.org/LICENSE_1_0.txt) - -if(__add_cppcheck) - return() -endif() -set(__add_cppcheck YES) - -if(NOT CPPCHECK_FOUND) - find_package(cppcheck QUIET) -endif() - -if(CPPCHECK_FOUND) - if(NOT TARGET all_cppcheck) - add_custom_target(all_cppcheck) - set_target_properties(all_cppcheck PROPERTIES EXCLUDE_FROM_ALL TRUE) - endif() -endif() - -function(add_cppcheck_sources _targetname) - if(CPPCHECK_FOUND) - set(_cppcheck_args) - set(_input ${ARGN}) - list(FIND _input UNUSED_FUNCTIONS _unused_func) - if("${_unused_func}" GREATER "-1") - list(APPEND _cppcheck_args ${CPPCHECK_UNUSEDFUNC_ARG}) - list(REMOVE_AT _input ${_unused_func}) - endif() - - list(FIND _input STYLE _style) - if("${_style}" GREATER "-1") - list(APPEND _cppcheck_args ${CPPCHECK_STYLE_ARG}) - list(REMOVE_AT _input ${_style}) - endif() - - list(FIND _input POSSIBLE_ERROR _poss_err) - if("${_poss_err}" GREATER "-1") - list(APPEND _cppcheck_args ${CPPCHECK_POSSIBLEERROR_ARG}) - list(REMOVE_AT _input ${_poss_err}) - endif() - - list(FIND _input FORCE _force) - if("${_force}" GREATER "-1") - list(APPEND _cppcheck_args "--force") - list(REMOVE_AT _input ${_force}) - endif() - - list(FIND _input FAIL_ON_WARNINGS _fail_on_warn) - if("${_fail_on_warn}" GREATER "-1") - list(APPEND - CPPCHECK_FAIL_REGULAR_EXPRESSION - ${CPPCHECK_WARN_REGULAR_EXPRESSION}) - list(REMOVE_AT _input ${_fail_on_warn}) - endif() - - set(_files) - foreach(_source ${_input}) - get_source_file_property(_cppcheck_loc "${_source}" LOCATION) - if(_cppcheck_loc) - # This file has a source file property, carry on. - get_source_file_property(_cppcheck_lang "${_source}" LANGUAGE) - if("${_cppcheck_lang}" MATCHES "CXX") - list(APPEND _files "${_cppcheck_loc}") - endif() - else() - # This file doesn't have source file properties - figure it out. - get_filename_component(_cppcheck_loc "${_source}" ABSOLUTE) - if(EXISTS "${_cppcheck_loc}") - list(APPEND _files "${_cppcheck_loc}") - else() - message(FATAL_ERROR - "Adding CPPCHECK for file target ${_targetname}: " - "File ${_source} does not exist or needs a corrected path location " - "since we think its absolute path is ${_cppcheck_loc}") - endif() - endif() - endforeach() - - if("1.${CMAKE_VERSION}" VERSION_LESS "1.2.8.0") - # Older than CMake 2.8.0 - add_test(${_targetname}_cppcheck_test - "${CPPCHECK_EXECUTABLE}" - ${CPPCHECK_TEMPLATE_ARG} - ${_cppcheck_args} "--inline-suppr" - ${_files}) - else() - # CMake 2.8.0 and newer - add_test(NAME - ${_targetname}_cppcheck_test - COMMAND - "${CPPCHECK_EXECUTABLE}" - ${CPPCHECK_TEMPLATE_ARG} - ${_cppcheck_args} "--inline-suppr" - ${_files}) - endif() - - set_tests_properties(${_targetname}_cppcheck_test - PROPERTIES - FAIL_REGULAR_EXPRESSION - "${CPPCHECK_FAIL_REGULAR_EXPRESSION}") - - add_custom_command(TARGET - all_cppcheck - PRE_BUILD - COMMAND - ${CPPCHECK_EXECUTABLE} - ${CPPCHECK_QUIET_ARG} - ${CPPCHECK_TEMPLATE_ARG} - ${_cppcheck_args} "--inline-suppr" - ${_files} - WORKING_DIRECTORY - "${CMAKE_CURRENT_SOURCE_DIR}" - COMMENT - "${_targetname}_cppcheck: Running cppcheck on target ${_targetname}..." - VERBATIM) - endif() -endfunction() - -function(add_cppcheck _name) - if(NOT TARGET ${_name}) - message(FATAL_ERROR - "add_cppcheck given a target name that does not exist: '${_name}' !") - endif() - if(CPPCHECK_FOUND) - set(_cppcheck_args CACHE STRING "${_cppcheck_args} ") - #set(_cppcheck_args "${_cppcheck_args} ") - list(FIND ARGN UNUSED_FUNCTIONS _unused_func) - if("${_unused_func}" GREATER "-1") - list(APPEND _cppcheck_args ${CPPCHECK_UNUSEDFUNC_ARG}) - endif() - - list(FIND ARGN STYLE _style) - if("${_style}" GREATER "-1") - list(APPEND _cppcheck_args ${CPPCHECK_STYLE_ARG}) - endif() - - list(FIND ARGN POSSIBLE_ERROR _poss_err) - if("${_poss_err}" GREATER "-1") - list(APPEND _cppcheck_args ${CPPCHECK_POSSIBLEERROR_ARG}) - endif() - - list(FIND ARGN FORCE _force) - if("${_force}" GREATER "-1") - list(APPEND _cppcheck_args "--force") - endif() - - list(FIND _input FAIL_ON_WARNINGS _fail_on_warn) - if("${_fail_on_warn}" GREATER "-1") - list(APPEND - CPPCHECK_FAIL_REGULAR_EXPRESSION - ${CPPCHECK_WARN_REGULAR_EXPRESSION}) - list(REMOVE_AT _input ${_unused_func}) - endif() - - get_target_property(_cppcheck_includes "${_name}" INCLUDE_DIRECTORIES) - set(_includes) - foreach(_include ${_cppcheck_includes}) - list(APPEND _includes "-I${_include}") - endforeach() - - get_target_property(_cppcheck_sources "${_name}" SOURCES) - set(_files) - foreach(_source ${_cppcheck_sources}) - get_source_file_property(_cppcheck_lang "${_source}" LANGUAGE) - get_source_file_property(_cppcheck_loc "${_source}" LOCATION) - if("${_cppcheck_lang}" MATCHES "CXX") - list(APPEND _files "${_cppcheck_loc}") - endif() - endforeach() - - if("1.${CMAKE_VERSION}" VERSION_LESS "1.2.8.0") - # Older than CMake 2.8.0 - add_test(${_name}_cppcheck_test - "${CPPCHECK_EXECUTABLE}" - ${CPPCHECK_TEMPLATE_ARG} - ${_cppcheck_args} "--inline-suppr" - ${_files}) - else() - # CMake 2.8.0 and newer - add_test(NAME - ${_name}_cppcheck_test - COMMAND - "${CPPCHECK_EXECUTABLE}" - ${CPPCHECK_TEMPLATE_ARG} - ${_cppcheck_args} "--inline-suppr" - ${_files}) - endif() - - set_tests_properties(${_name}_cppcheck_test - PROPERTIES - FAIL_REGULAR_EXPRESSION - "${CPPCHECK_FAIL_REGULAR_EXPRESSION}") - MESSAGE(STATUS "CPPCHECKargs: ${_cppcheck_args}") - add_custom_command(TARGET - all_cppcheck - PRE_BUILD - COMMAND - ${CPPCHECK_EXECUTABLE} - ${CPPCHECK_QUIET_ARG} - ${CPPCHECK_TEMPLATE_ARG} - ${_cppcheck_args} "--inline-suppr" - ${_includes} - ${_files} - WORKING_DIRECTORY - "${CMAKE_CURRENT_SOURCE_DIR}" - COMMENT - "${_name}_cppcheck: Running cppcheck on target ${_name}..." - VERBATIM) - endif() - -endfunction() diff --git a/cmake/Findcppcheck.cmake b/cmake/Findcppcheck.cmake deleted file mode 100644 index 2dcf799..0000000 --- a/cmake/Findcppcheck.cmake +++ /dev/null @@ -1,167 +0,0 @@ -# - try to find cppcheck tool -# -# Cache Variables: -# CPPCHECK_EXECUTABLE -# -# Non-cache variables you might use in your CMakeLists.txt: -# CPPCHECK_FOUND -# CPPCHECK_POSSIBLEERROR_ARG -# CPPCHECK_UNUSEDFUNC_ARG -# CPPCHECK_STYLE_ARG -# CPPCHECK_QUIET_ARG -# CPPCHECK_INCLUDEPATH_ARG -# CPPCHECK_FAIL_REGULAR_EXPRESSION -# CPPCHECK_WARN_REGULAR_EXPRESSION -# CPPCHECK_MARK_AS_ADVANCED - whether to mark our vars as advanced even -# if we don't find this program. -# -# Requires these CMake modules: -# FindPackageHandleStandardArgs (known included with CMake >=2.6.2) -# -# Original Author: -# 2009-2010 Ryan Pavlik -# http://academic.cleardefinition.com -# Iowa State University HCI Graduate Program/VRAC -# -# Copyright Iowa State University 2009-2010. -# Distributed under the Boost Software License, Version 1.0. -# (See accompanying file LICENSE_1_0.txt or copy at -# http://www.boost.org/LICENSE_1_0.txt) - -file(TO_CMAKE_PATH "${CPPCHECK_ROOT_DIR}" CPPCHECK_ROOT_DIR) -set(CPPCHECK_ROOT_DIR - "${CPPCHECK_ROOT_DIR}" - CACHE - PATH - "Path to search for cppcheck") - -# cppcheck app bundles on Mac OS X are GUI, we want command line only -set(_oldappbundlesetting ${CMAKE_FIND_APPBUNDLE}) -set(CMAKE_FIND_APPBUNDLE NEVER) - -if(CPPCHECK_EXECUTABLE AND NOT EXISTS "${CPPCHECK_EXECUTABLE}") - set(CPPCHECK_EXECUTABLE "notfound" CACHE PATH FORCE "") -endif() - -# If we have a custom path, look there first. -if(CPPCHECK_ROOT_DIR) - find_program(CPPCHECK_EXECUTABLE - NAMES - cppcheck - cli - PATHS - "${CPPCHECK_ROOT_DIR}" - PATH_SUFFIXES - cli - NO_DEFAULT_PATH) -endif() - -find_program(CPPCHECK_EXECUTABLE NAMES cppcheck) - -# Restore original setting for appbundle finding -set(CMAKE_FIND_APPBUNDLE ${_oldappbundlesetting}) - -# Find out where our test file is -get_filename_component(_cppcheckmoddir ${CMAKE_CURRENT_LIST_FILE} PATH) -set(_cppcheckdummyfile "${_cppcheckmoddir}/Findcppcheck.cpp") -if(NOT EXISTS "${_cppcheckdummyfile}") - message(FATAL_ERROR - "Missing file ${_cppcheckdummyfile} - should be alongside Findcppcheck.cmake, can be found at https://github.com/rpavlik/cmake-modules") -endif() - -function(_cppcheck_test_arg _resultvar _arg) - if(NOT CPPCHECK_EXECUTABLE) - set(${_resultvar} NO) - return() - endif() - execute_process(COMMAND - "${CPPCHECK_EXECUTABLE}" - "${_arg}" - "--quiet" - "${_cppcheckdummyfile}" - RESULT_VARIABLE - _cppcheck_result - OUTPUT_QUIET - ERROR_QUIET) - if("${_cppcheck_result}" EQUAL 0) - set(${_resultvar} YES PARENT_SCOPE) - else() - set(${_resultvar} NO PARENT_SCOPE) - endif() -endfunction() - -function(_cppcheck_set_arg_var _argvar _arg) - if("${${_argvar}}" STREQUAL "") - _cppcheck_test_arg(_cppcheck_arg "${_arg}") - if(_cppcheck_arg) - set(${_argvar} "${_arg}" PARENT_SCOPE) - endif() - endif() -endfunction() - -if(CPPCHECK_EXECUTABLE) - - # Check for the two types of command line arguments by just trying them - _cppcheck_set_arg_var(CPPCHECK_STYLE_ARG "--enable=style") - _cppcheck_set_arg_var(CPPCHECK_STYLE_ARG "--style") - if("${CPPCHECK_STYLE_ARG}" STREQUAL "--enable=style") - - _cppcheck_set_arg_var(CPPCHECK_UNUSEDFUNC_ARG - "--enable=unusedFunction") - _cppcheck_set_arg_var(CPPCHECK_INFORMATION_ARG "--enable=information") - _cppcheck_set_arg_var(CPPCHECK_MISSINGINCLUDE_ARG - "--enable=missingInclude") - _cppcheck_set_arg_var(CPPCHECK_POSIX_ARG "--enable=posix") - _cppcheck_set_arg_var(CPPCHECK_POSSIBLEERROR_ARG - "--enable=possibleError") - _cppcheck_set_arg_var(CPPCHECK_POSSIBLEERROR_ARG "--enable=all") - - if(MSVC) - set(CPPCHECK_TEMPLATE_ARG --template vs) - set(CPPCHECK_FAIL_REGULAR_EXPRESSION "[(]error[)]") - set(CPPCHECK_WARN_REGULAR_EXPRESSION "[(]style[)]") - elseif(CMAKE_COMPILER_IS_GNUCXX) - set(CPPCHECK_TEMPLATE_ARG --template gcc) - set(CPPCHECK_FAIL_REGULAR_EXPRESSION " error: ") - set(CPPCHECK_WARN_REGULAR_EXPRESSION " style: ") - else() - set(CPPCHECK_TEMPLATE_ARG --template gcc) - set(CPPCHECK_FAIL_REGULAR_EXPRESSION " error: ") - set(CPPCHECK_WARN_REGULAR_EXPRESSION " style: ") - endif() - elseif("${CPPCHECK_STYLE_ARG}" STREQUAL "--style") - # Old arguments - _cppcheck_set_arg_var(CPPCHECK_UNUSEDFUNC_ARG "--unused-functions") - _cppcheck_set_arg_var(CPPCHECK_POSSIBLEERROR_ARG "--all") - set(CPPCHECK_FAIL_REGULAR_EXPRESSION "error:") - set(CPPCHECK_WARN_REGULAR_EXPRESSION "[(]style[)]") - else() - # No idea - some other issue must be getting in the way - message(STATUS - "WARNING: Can't detect whether CPPCHECK wants new or old-style arguments!") - endif() - - set(CPPCHECK_QUIET_ARG "--quiet") - set(CPPCHECK_INCLUDEPATH_ARG "-I") - -endif() - -set(CPPCHECK_ALL - "${CPPCHECK_EXECUTABLE} ${CPPCHECK_POSSIBLEERROR_ARG} ${CPPCHECK_UNUSEDFUNC_ARG} ${CPPCHECK_STYLE_ARG} ${CPPCHECK_QUIET_ARG} ${CPPCHECK_INCLUDEPATH_ARG} some/include/path") - -include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(cppcheck - DEFAULT_MSG - CPPCHECK_ALL - CPPCHECK_EXECUTABLE - CPPCHECK_POSSIBLEERROR_ARG - CPPCHECK_UNUSEDFUNC_ARG - CPPCHECK_STYLE_ARG - CPPCHECK_INCLUDEPATH_ARG - CPPCHECK_QUIET_ARG) - -if(CPPCHECK_FOUND OR CPPCHECK_MARK_AS_ADVANCED) - mark_as_advanced(CPPCHECK_ROOT_DIR) -endif() - -mark_as_advanced(CPPCHECK_EXECUTABLE) diff --git a/cmake/Findcppcheck.cpp b/cmake/Findcppcheck.cpp deleted file mode 100644 index 84350db..0000000 --- a/cmake/Findcppcheck.cpp +++ /dev/null @@ -1,16 +0,0 @@ -/** - * \file Findcppcheck.cpp - * \brief Dummy C++ source file used by CMake module Findcppcheck.cmake - * - * \author - * Ryan Pavlik, 2009-2010 - * - * http://academic.cleardefinition.com/ - * - */ - - - -int main(int argc, char* argv[]) { - return 0; -}