mirror of
https://github.com/QuasarApp/LIEF.git
synced 2025-04-27 04:44:31 +00:00
Remove cppcheck (to be replaced with clang-tidy)
This commit is contained in:
parent
92181c8d51
commit
b224217bfe
@ -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)
|
||||
|
@ -39,7 +39,6 @@ void init_c_dynamic_entries(Elf_Binary_t* c_binary, Binary* binary) {
|
||||
|
||||
c_binary->dynamic_entries[i] = reinterpret_cast<Elf_DynamicEntry_t*>(e);
|
||||
break;
|
||||
// cppcheck-suppress memleak
|
||||
}
|
||||
|
||||
case DYNAMIC_TAGS::DT_SONAME:
|
||||
|
@ -1,231 +0,0 @@
|
||||
# - Run cppcheck on c++ source files as a custom target and a test
|
||||
#
|
||||
# include(CppcheckTargets)
|
||||
# add_cppcheck(<target-name> [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(<target-name> [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 <rpavlik@iastate.edu> <abiryan@ryand.net>
|
||||
# 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()
|
@ -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 <rpavlik@iastate.edu> <abiryan@ryand.net>
|
||||
# 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)
|
@ -1,16 +0,0 @@
|
||||
/**
|
||||
* \file Findcppcheck.cpp
|
||||
* \brief Dummy C++ source file used by CMake module Findcppcheck.cmake
|
||||
*
|
||||
* \author
|
||||
* Ryan Pavlik, 2009-2010
|
||||
* <rpavlik@iastate.edu>
|
||||
* http://academic.cleardefinition.com/
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
|
||||
int main(int argc, char* argv[]) {
|
||||
return 0;
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user