1- file (GLOB hdrs "*.h" )
2- file (GLOB srcs "*.cpp" )
3- file (GLOB mainfile "main.cpp" )
4- list (REMOVE_ITEM srcs ${mainfile} )
1+ if (BUILD_CLI)
52
6- add_library (cli_objs OBJECT ${hdrs} ${srcs} )
7- target_include_directories (cli_objs PRIVATE ${PROJECT_SOURCE_DIR} /lib/ )
8- if (USE_BUNDLED_TINYXML2)
9- target_externals_include_directories (cli_objs PRIVATE ${PROJECT_SOURCE_DIR} /externals/tinyxml2/ )
10- else ()
11- target_include_directories (cli_objs SYSTEM PRIVATE ${tinyxml2_INCLUDE_DIRS} )
12- endif ()
13- target_externals_include_directories (cli_objs PRIVATE ${PROJECT_SOURCE_DIR} /externals/simplecpp/ )
14- if (NOT CMAKE_DISABLE_PRECOMPILE_HEADERS)
15- target_precompile_headers (cli_objs PRIVATE precompiled.h )
16- endif ()
17- if (BUILD_CORE_DLL)
18- target_compile_definitions (cli_objs PRIVATE CPPCHECKLIB_IMPORT TINYXML2_IMPORT )
19- endif ()
3+ file (GLOB hdrs "*.h" )
4+ file (GLOB srcs "*.cpp" )
5+ file (GLOB mainfile "main.cpp" )
6+ list (REMOVE_ITEM srcs ${mainfile} )
207
21- if (CMAKE_CXX_COMPILER_ID MATCHES "Clang" AND CMAKE_CXX_COMPILER_VERSION VERSION_EQUAL 13)
22- # false positive warning in Clang 13 - caused by FD_ZERO macro
23- set_source_files_properties (processexecutor.cpp PROPERTIES COMPILE_FLAGS -Wno-reserved-identifier )
24- endif ()
25-
26- list (APPEND cppcheck_SOURCES ${hdrs} ${mainfile} $<TARGET_OBJECTS :cli_objs >)
27- if (NOT BUILD_CORE_DLL)
28- list (APPEND cppcheck_SOURCES $<TARGET_OBJECTS :cppcheck -core >)
29- list (APPEND cppcheck_SOURCES $<TARGET_OBJECTS :simplecpp_objs >)
8+ add_library (cli_objs OBJECT ${hdrs} ${srcs} )
9+ target_include_directories (cli_objs PRIVATE ${PROJECT_SOURCE_DIR} /lib/ )
3010 if (USE_BUNDLED_TINYXML2)
31- list (APPEND cppcheck_SOURCES $<TARGET_OBJECTS :tinyxml2_objs >)
11+ target_externals_include_directories (cli_objs PRIVATE ${PROJECT_SOURCE_DIR} /externals/tinyxml2/ )
12+ else ()
13+ target_include_directories (cli_objs SYSTEM PRIVATE ${tinyxml2_INCLUDE_DIRS} )
14+ endif ()
15+ target_externals_include_directories (cli_objs PRIVATE ${PROJECT_SOURCE_DIR} /externals/simplecpp/ )
16+ if (NOT CMAKE_DISABLE_PRECOMPILE_HEADERS)
17+ target_precompile_headers (cli_objs PRIVATE precompiled.h )
18+ endif ()
19+ if (BUILD_CORE_DLL)
20+ target_compile_definitions (cli_objs PRIVATE CPPCHECKLIB_IMPORT TINYXML2_IMPORT )
3221 endif ()
33- endif ()
34- if (WIN32 )
35- list (APPEND cppcheck_SOURCES version.rc)
36- endif ()
3722
38- add_executable (cppcheck ${cppcheck_SOURCES} )
39- target_include_directories (cppcheck PRIVATE ${PROJECT_SOURCE_DIR} /lib/ )
40- if (USE_BUNDLED_TINYXML2)
41- target_externals_include_directories (cppcheck PRIVATE ${PROJECT_SOURCE_DIR} /externals/tinyxml2/ )
42- else ()
43- target_include_directories (cppcheck SYSTEM PRIVATE ${tinyxml2_INCLUDE_DIRS} )
44- endif ()
45- target_externals_include_directories (cppcheck PRIVATE ${PROJECT_SOURCE_DIR} /externals/simplecpp/ )
46- if (HAVE_RULES)
47- target_link_libraries (cppcheck ${PCRE_LIBRARY} )
48- endif ()
49- if (WIN32 AND NOT BORLAND )
50- if (NOT MINGW)
51- target_link_libraries (cppcheck Shlwapi.lib )
23+ if (CMAKE_CXX_COMPILER_ID MATCHES "Clang" AND CMAKE_CXX_COMPILER_VERSION VERSION_EQUAL 13)
24+ # false positive warning in Clang 13 - caused by FD_ZERO macro
25+ set_source_files_properties (processexecutor.cpp PROPERTIES COMPILE_FLAGS -Wno-reserved-identifier )
26+ endif ()
27+
28+ list (APPEND cppcheck_SOURCES ${hdrs} ${mainfile} $<TARGET_OBJECTS :cli_objs >)
29+ if (NOT BUILD_CORE_DLL)
30+ list (APPEND cppcheck_SOURCES $<TARGET_OBJECTS :cppcheck -core >)
31+ list (APPEND cppcheck_SOURCES $<TARGET_OBJECTS :simplecpp_objs >)
32+ if (USE_BUNDLED_TINYXML2)
33+ list (APPEND cppcheck_SOURCES $<TARGET_OBJECTS :tinyxml2_objs >)
34+ endif ()
35+ endif ()
36+ if (WIN32 )
37+ list (APPEND cppcheck_SOURCES version.rc)
38+ endif ()
39+
40+ add_executable (cppcheck ${cppcheck_SOURCES} )
41+ target_include_directories (cppcheck PRIVATE ${PROJECT_SOURCE_DIR} /lib/ )
42+ if (USE_BUNDLED_TINYXML2)
43+ target_externals_include_directories (cppcheck PRIVATE ${PROJECT_SOURCE_DIR} /externals/tinyxml2/ )
5244 else ()
53- target_link_libraries (cppcheck shlwapi )
45+ target_include_directories (cppcheck SYSTEM PRIVATE ${tinyxml2_INCLUDE_DIRS} )
46+ endif ()
47+ target_externals_include_directories (cppcheck PRIVATE ${PROJECT_SOURCE_DIR} /externals/simplecpp/ )
48+ if (HAVE_RULES)
49+ target_link_libraries (cppcheck ${PCRE_LIBRARY} )
50+ endif ()
51+ if (WIN32 AND NOT BORLAND )
52+ if (NOT MINGW)
53+ target_link_libraries (cppcheck Shlwapi.lib )
54+ else ()
55+ target_link_libraries (cppcheck shlwapi )
56+ endif ()
57+ endif ()
58+ if (tinyxml2_FOUND AND NOT USE_BUNDLED_TINYXML2)
59+ target_link_libraries (cppcheck ${tinyxml2_LIBRARIES} )
60+ endif ()
61+ target_link_libraries (cppcheck ${CMAKE_THREAD_LIBS_INIT} )
62+ if (BUILD_CORE_DLL)
63+ target_link_libraries (cppcheck cppcheck-core )
5464 endif ()
55- endif ()
56- if (tinyxml2_FOUND AND NOT USE_BUNDLED_TINYXML2)
57- target_link_libraries (cppcheck ${tinyxml2_LIBRARIES} )
58- endif ()
59- target_link_libraries (cppcheck ${CMAKE_THREAD_LIBS_INIT} )
60- if (BUILD_CORE_DLL)
61- target_link_libraries (cppcheck cppcheck-core )
62- endif ()
6365
64- add_dependencies (cppcheck copy_cfg )
65- add_dependencies (cppcheck copy_addons )
66- add_dependencies (cppcheck copy_platforms )
67- if (NOT DISABLE_DMAKE)
68- add_dependencies (cppcheck run-dmake )
69- endif ()
66+ add_dependencies (cppcheck copy_cfg )
67+ add_dependencies (cppcheck copy_addons )
68+ add_dependencies (cppcheck copy_platforms )
69+ if (NOT DISABLE_DMAKE)
70+ add_dependencies (cppcheck run-dmake )
71+ endif ()
7072
71- install (TARGETS cppcheck
72- RUNTIME DESTINATION ${CMAKE_INSTALL_FULL_BINDIR}
73- COMPONENT applications)
73+ install (TARGETS cppcheck
74+ RUNTIME DESTINATION ${CMAKE_INSTALL_FULL_BINDIR}
75+ COMPONENT applications)
7476
75- install (FILES ${addons}
76- DESTINATION ${FILESDIR} /addons
77- COMPONENT headers)
77+ install (FILES ${addons}
78+ DESTINATION ${FILESDIR} /addons
79+ COMPONENT headers)
7880
79- install (FILES ${cfgs}
80- DESTINATION ${FILESDIR} /cfg
81- COMPONENT headers)
81+ install (FILES ${cfgs}
82+ DESTINATION ${FILESDIR} /cfg
83+ COMPONENT headers)
8284
83- install (FILES ${platforms}
84- DESTINATION ${FILESDIR} /platforms
85- COMPONENT headers)
85+ install (FILES ${platforms}
86+ DESTINATION ${FILESDIR} /platforms
87+ COMPONENT headers)
8688
89+ endif ()
0 commit comments