CMake: Use target_include_directores more.
The include_directories documentation at https://cmake.org/cmake/help/latest/command/include_directories.html says: "Note: Prefer the target_include_directories() command to add include directories to individual targets and optionally propagate/export them to dependents." Switch from include_directories to target_include_directories in a bunch of places. Add "SYSTEM" to the remaining external include_directories calls in order to minimize our compiler warning blast radius.
This commit is contained in:
parent
6bffbc9896
commit
4fd5224ecf
|
@ -994,7 +994,7 @@ message(STATUS "Linker flags: ${WS_LINK_FLAGS}")
|
|||
if(APPLE AND EXISTS /usr/local/opt/gettext)
|
||||
# GLib on macOS requires libintl. Homebrew installs gettext (and
|
||||
# libintl) in /usr/local/opt/gettext
|
||||
include_directories(/usr/local/opt/gettext/include)
|
||||
include_directories(SYSTEM /usr/local/opt/gettext/include)
|
||||
link_directories(/usr/local/opt/gettext/lib)
|
||||
endif()
|
||||
|
||||
|
@ -1208,9 +1208,7 @@ endif()
|
|||
|
||||
# Include minizip include directories
|
||||
if(MINIZIP_FOUND)
|
||||
include_directories(
|
||||
${MINIZIP_INCLUDE_DIRS}
|
||||
)
|
||||
include_directories(SYSTEM ${MINIZIP_INCLUDE_DIRS})
|
||||
else()
|
||||
set(MINIZIP_LIBRARY "")
|
||||
endif()
|
||||
|
@ -2577,10 +2575,7 @@ if(BUILD_sharkd)
|
|||
add_executable(sharkd ${sharkd_FILES})
|
||||
set_extra_executable_properties(sharkd "Executables")
|
||||
target_link_libraries(sharkd ${sharkd_LIBS})
|
||||
target_include_directories(sharkd SYSTEM
|
||||
PUBLIC
|
||||
${SPEEXDSP_INCLUDE_DIRS}
|
||||
)
|
||||
target_include_directories(sharkd SYSTEM PUBLIC ${SPEEXDSP_INCLUDE_DIRS})
|
||||
|
||||
install(TARGETS sharkd RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
|
||||
endif()
|
||||
|
|
|
@ -28,11 +28,6 @@ if(LUA_FOUND)
|
|||
add_subdirectory(wslua)
|
||||
endif()
|
||||
|
||||
include_directories(
|
||||
${CMAKE_CURRENT_BINARY_DIR}
|
||||
${CMAKE_CURRENT_SOURCE_DIR}
|
||||
)
|
||||
|
||||
add_custom_command(
|
||||
OUTPUT ps.c
|
||||
COMMAND ${PYTHON_EXECUTABLE}
|
||||
|
@ -344,11 +339,14 @@ target_link_libraries(epan
|
|||
|
||||
target_include_directories(epan
|
||||
INTERFACE
|
||||
$<BUILD_INTERFACE:${CMAKE_SOURCE_DIR}>
|
||||
$<INSTALL_INTERFACE:include/wireshark>
|
||||
$<BUILD_INTERFACE:${CMAKE_SOURCE_DIR}>
|
||||
$<INSTALL_INTERFACE:include/wireshark>
|
||||
)
|
||||
|
||||
target_include_directories(epan SYSTEM PUBLIC ${GLIB2_INCLUDE_DIRS})
|
||||
target_include_directories(epan
|
||||
SYSTEM PUBLIC
|
||||
${GLIB2_INCLUDE_DIRS}
|
||||
)
|
||||
|
||||
target_include_directories(epan
|
||||
SYSTEM PRIVATE
|
||||
|
@ -362,6 +360,9 @@ target_include_directories(epan
|
|||
${NGHTTP2_INCLUDE_DIRS}
|
||||
${SMI_INCLUDE_DIRS}
|
||||
${ZLIB_INCLUDE_DIRS}
|
||||
PRIVATE
|
||||
${CMAKE_CURRENT_BINARY_DIR}
|
||||
${CMAKE_CURRENT_SOURCE_DIR}
|
||||
)
|
||||
|
||||
add_dependencies(epan lemon)
|
||||
|
|
|
@ -9,12 +9,6 @@
|
|||
|
||||
ADD_CUSTOM_CMAKE_INCLUDE()
|
||||
|
||||
|
||||
include_directories(
|
||||
${CMAKE_CURRENT_BINARY_DIR}
|
||||
${CMAKE_CURRENT_SOURCE_DIR}
|
||||
)
|
||||
|
||||
set(CRYPT_HEADER_FILES
|
||||
dot11decrypt_debug.h
|
||||
dot11decrypt_int.h
|
||||
|
@ -63,6 +57,9 @@ add_library(crypt OBJECT
|
|||
target_include_directories(crypt
|
||||
SYSTEM PRIVATE
|
||||
${GCRYPT_INCLUDE_DIRS}
|
||||
PRIVATE
|
||||
${CMAKE_CURRENT_BINARY_DIR}
|
||||
${CMAKE_CURRENT_SOURCE_DIR}
|
||||
)
|
||||
|
||||
set_target_properties(crypt PROPERTIES
|
||||
|
|
|
@ -7,13 +7,6 @@
|
|||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
#
|
||||
|
||||
include_directories(
|
||||
${CMAKE_CURRENT_BINARY_DIR}
|
||||
${CMAKE_CURRENT_SOURCE_DIR}
|
||||
${CMAKE_SOURCE_DIR}/epan
|
||||
${CMAKE_SOURCE_DIR}/tools/lemon
|
||||
)
|
||||
|
||||
set(DFILTER_PUBLIC_HEADERS
|
||||
dfilter.h
|
||||
drange.h
|
||||
|
@ -83,6 +76,14 @@ add_library(dfilter OBJECT
|
|||
${DFILTER_FILES}
|
||||
)
|
||||
|
||||
target_include_directories(dfilter
|
||||
PRIVATE
|
||||
${CMAKE_CURRENT_BINARY_DIR}
|
||||
${CMAKE_CURRENT_SOURCE_DIR}
|
||||
${CMAKE_SOURCE_DIR}/epan
|
||||
${CMAKE_SOURCE_DIR}/tools/lemon
|
||||
)
|
||||
|
||||
set_target_properties(dfilter PROPERTIES
|
||||
FOLDER "Libs/epan/dfilter"
|
||||
COMPILE_DEFINITIONS "WS_BUILD_DLL"
|
||||
|
|
|
@ -13,12 +13,6 @@ add_subdirectory(asn1 EXCLUDE_FROM_ALL)
|
|||
add_subdirectory(dcerpc EXCLUDE_FROM_ALL)
|
||||
add_subdirectory(pidl EXCLUDE_FROM_ALL)
|
||||
|
||||
include_directories(
|
||||
${CMAKE_CURRENT_BINARY_DIR}
|
||||
${CMAKE_CURRENT_SOURCE_DIR}
|
||||
${CMAKE_SOURCE_DIR}/epan
|
||||
)
|
||||
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/packet-ncp2222.c
|
||||
COMMAND ${PYTHON_EXECUTABLE}
|
||||
|
@ -2065,6 +2059,10 @@ target_include_directories(dissectors
|
|||
${SNAPPY_INCLUDE_DIRS}
|
||||
${ZLIB_INCLUDE_DIRS}
|
||||
${ZSTD_INCLUDE_DIRS}
|
||||
PRIVATE
|
||||
${CMAKE_CURRENT_BINARY_DIR}
|
||||
${CMAKE_CURRENT_SOURCE_DIR}
|
||||
${CMAKE_SOURCE_DIR}/epan
|
||||
)
|
||||
|
||||
set_target_properties(dissectors PROPERTIES
|
||||
|
|
|
@ -7,12 +7,6 @@
|
|||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
#
|
||||
|
||||
include_directories(
|
||||
${CMAKE_CURRENT_BINARY_DIR}
|
||||
${CMAKE_CURRENT_SOURCE_DIR}
|
||||
${CMAKE_SOURCE_DIR}/epan
|
||||
)
|
||||
|
||||
set(FTYPE_PUBLIC_HEADERS
|
||||
ftypes.h
|
||||
)
|
||||
|
@ -52,6 +46,13 @@ add_library(ftypes OBJECT
|
|||
${FTYPE_FILES}
|
||||
)
|
||||
|
||||
target_include_directories(ftypes
|
||||
PRIVATE
|
||||
${CMAKE_CURRENT_BINARY_DIR}
|
||||
${CMAKE_CURRENT_SOURCE_DIR}
|
||||
${CMAKE_SOURCE_DIR}/epan
|
||||
)
|
||||
|
||||
set_target_properties(ftypes PROPERTIES
|
||||
FOLDER "Libs/epan/ftypes"
|
||||
COMPILE_DEFINITIONS "WS_BUILD_DLL"
|
||||
|
|
|
@ -7,11 +7,6 @@
|
|||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
#
|
||||
|
||||
include_directories(
|
||||
${CMAKE_CURRENT_BINARY_DIR}
|
||||
${CMAKE_CURRENT_SOURCE_DIR}
|
||||
)
|
||||
|
||||
set(WMEM_PUBLIC_HEADERS
|
||||
wmem.h
|
||||
wmem_array.h
|
||||
|
@ -75,6 +70,12 @@ add_library(wmem OBJECT
|
|||
${WMEM_FILES}
|
||||
)
|
||||
|
||||
target_include_directories(wmem
|
||||
PRIVATE
|
||||
${CMAKE_CURRENT_BINARY_DIR}
|
||||
${CMAKE_CURRENT_SOURCE_DIR}
|
||||
)
|
||||
|
||||
set_target_properties(wmem PROPERTIES
|
||||
FOLDER "Libs/epan/wmem"
|
||||
COMPILE_DEFINITIONS "WS_BUILD_DLL"
|
||||
|
|
|
@ -7,11 +7,6 @@
|
|||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
#
|
||||
|
||||
include_directories(
|
||||
${CMAKE_CURRENT_BINARY_DIR}
|
||||
${CMAKE_CURRENT_SOURCE_DIR}
|
||||
)
|
||||
|
||||
set(WSLUA_MODULES
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/lrexlib.c
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/lrexlib_glib.c
|
||||
|
@ -149,6 +144,9 @@ add_library(wslua OBJECT
|
|||
target_include_directories(wslua
|
||||
SYSTEM PRIVATE
|
||||
${LUA_INCLUDE_DIRS}
|
||||
PRIVATE
|
||||
${CMAKE_CURRENT_BINARY_DIR}
|
||||
${CMAKE_CURRENT_SOURCE_DIR}
|
||||
)
|
||||
|
||||
set_target_properties(wslua PROPERTIES
|
||||
|
|
|
@ -628,11 +628,6 @@ set(WIRESHARK_QT_QRC
|
|||
${CMAKE_CURRENT_BINARY_DIR}/i18n.qrc
|
||||
)
|
||||
|
||||
include_directories(
|
||||
${CMAKE_CURRENT_BINARY_DIR}
|
||||
${CMAKE_CURRENT_SOURCE_DIR}
|
||||
)
|
||||
|
||||
set(CMAKE_AUTOMOC TRUE)
|
||||
set(CMAKE_AUTOUIC TRUE)
|
||||
set(CMAKE_AUTORCC TRUE)
|
||||
|
@ -714,11 +709,17 @@ target_include_directories(qtui
|
|||
${QT_INCLUDE_DIRS}
|
||||
${WINSPARKLE_INCLUDE_DIRS}
|
||||
${SPEEXDSP_INCLUDE_DIRS}
|
||||
)
|
||||
|
||||
target_include_directories(qtui
|
||||
SYSTEM PRIVATE
|
||||
# Can't use imported target, linking object libraries for usage requirements
|
||||
# requires CMake 3.12
|
||||
${PCAP_INCLUDE_DIRS}
|
||||
${GCRYPT_INCLUDE_DIRS}
|
||||
PRIVATE
|
||||
${CMAKE_CURRENT_BINARY_DIR}
|
||||
${CMAKE_CURRENT_SOURCE_DIR}
|
||||
)
|
||||
|
||||
target_compile_definitions(qtui
|
||||
|
|
Loading…
Reference in New Issue