diff --git a/CMakeLists.txt b/CMakeLists.txt index 819d43186..8817df7d4 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -15,6 +15,12 @@ cmake_minimum_required (VERSION 2.6) PROJECT(CPPCHECK) set(CMAKE_MODULE_PATH "${CPPCHECK_SOURCE_DIR}/cmake/modules" ${CMAKE_MODULE_PATH}) +find_package(PCRE) + +if(NOT PCRE_FOUND) + message("User-defined rules are disabled since required PCRE libraries were not found. +If you want to enable the rules, then configure the PCRE paths for CMake.") +endif() # Building lib as static library is disabled due to bug # #1299 CMake: The CheckClass is not used diff --git a/cli/CMakeLists.txt b/cli/CMakeLists.txt index 840d8a434..d77726b3f 100644 --- a/cli/CMakeLists.txt +++ b/cli/CMakeLists.txt @@ -1,5 +1,11 @@ # Minimal CMake build file to build cppcheck command line executable +if(PCRE_FOUND) + add_definitions(-DHAVE_RULES) + include_directories("${PCRE_INCLUDE_DIR}") + set(CHECK_LIBS ${PCRE_LIBRARIES}) +endif() + set(TINYXML_INCLUDE_DIR "${CPPCHECK_SOURCE_DIR}/externals/tinyxml/") SET(CHECKCLI_SRCS diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt index 5ea9334cd..92796dd97 100644 --- a/lib/CMakeLists.txt +++ b/lib/CMakeLists.txt @@ -4,6 +4,11 @@ # - tests # - Qt GUI +if(PCRE_FOUND) + add_definitions(-DHAVE_RULES) + include_directories("${PCRE_INCLUDE_DIR}") +endif() + set(CPPCHECK_LIB_DIR "") include("library_sources.cmake") @@ -12,3 +17,7 @@ if (CMAKE_COMPILER_IS_GNUCXX) endif (CMAKE_COMPILER_IS_GNUCXX) add_library(checklib STATIC ${CPPCHECK_LIB_SOURCES}) + +if(PCRE_FOUND) + target_link_libraries(checklib ${PCRE_LIBRARIES}) +endif()