Switch to target_include_directories

All 3Ps include dirs are treated as SYSTEM, this will stop compilers
stop emitting warnings from those files and greatly helps having high
warning levels and not being swamped by warnings that come from
external libraries.
master
Nicky 2022-04-17 18:04:57 +02:00
parent 6d0bba9c03
commit e0cf0cdfd4
47 changed files with 54 additions and 58 deletions

View File

@ -40,4 +40,4 @@ else (WINDOWS)
rt
)
endif (WINDOWS)
set_target_include_dirs( ll::apr ${LIBS_PREBUILT_DIR}/include/apr-1 )
target_include_directories( ll::apr SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include/apr-1 )

View File

@ -5,7 +5,7 @@ include_guard()
create_target(ll::vorbis)
use_prebuilt_binary(ogg_vorbis)
set_target_include_dirs( ll::vorbis ${LIBS_PREBUILT_DIR}/include )
target_include_directories( ll::vorbis SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include )
if (WINDOWS)
target_link_libraries(ll::vorbis INTERFACE ogg_static vorbis_static vorbisenc_static vorbisfile_static )

View File

@ -3,13 +3,13 @@ include(Linking)
include(Prebuilt)
include_guard()
create_target( cef::cef )
create_target( ll::cef )
use_prebuilt_binary(dullahan)
set_target_include_dirs( cef::cef ${LIBS_PREBUILT_DIR}/include/cef)
target_include_directories( ll::cef SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include/cef)
if (WINDOWS)
target_link_libraries( cef::cef INTERFACE
target_link_libraries( ll::cef INTERFACE
libcef.lib
libcef_dll_wrapper.lib
dullahan.lib
@ -25,7 +25,7 @@ elseif (DARWIN)
message(FATAL_ERROR "CEF not found")
endif()
target_link_libraries( cef::cef INTERFACE
target_link_libraries( ll::cef INTERFACE
${ARCH_PREBUILT_DIRS_RELEASE}/libcef_dll_wrapper.a
${ARCH_PREBUILT_DIRS_RELEASE}/libdullahan.a
${APPKIT_LIBRARY}

View File

@ -10,4 +10,4 @@ if (WINDOWS)
else (WINDOWS)
target_link_libraries(ll::libcurl INTERFACE libcurl.a)
endif (WINDOWS)
set_target_include_dirs( ll::libcurl ${LIBS_PREBUILT_DIR}/include)
target_include_directories( ll::libcurl SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include)

View File

@ -16,4 +16,4 @@ else (WINDOWS)
set(EXPAT_COPY libexpat.so.1 libexpat.so)
endif ()
endif (WINDOWS)
set_target_include_dirs( ll::expat ${LIBS_PREBUILT_DIR}/include )
target_include_directories( ll::expat SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include )

View File

@ -23,8 +23,8 @@ if (USE_FMODSTUDIO)
if (FMODSTUDIO_LIBRARY AND FMODSTUDIO_INCLUDE_DIR)
# If the path have been specified in the arguments, use that
target_link_libraries(fmodstudio::fmodstudio INTERFACE ${FMODSTUDIO_LIBRARY})
set_target_include_dirs(fmodstudio::fmodstudio ${FMODSTUDIO_INCLUDE_DIR})
target_link_libraries(ll::fmodstudio INTERFACE ${FMODSTUDIO_LIBRARY})
target_include_directories( ll::fmodstudio SYSTEM INTERFACE ${FMODSTUDIO_INCLUDE_DIR})
else (FMODSTUDIO_LIBRARY AND FMODSTUDIO_INCLUDE_DIR)
# If not, we're going to try to get the package listed in autobuild.xml
# Note: if you're not using INSTALL_PROPRIETARY, the package URL should be local (file:/// URL)
@ -40,7 +40,7 @@ if (USE_FMODSTUDIO)
target_link_libraries( ll::fmodstudio INTERFACE fmod)
endif (WINDOWS)
set_target_include_dirs(ll::fmodstudio ${LIBS_PREBUILT_DIR}/include/fmodstudio)
target_include_directories( ll::fmodstudio SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include/fmodstudio)
endif (FMODSTUDIO_LIBRARY AND FMODSTUDIO_INCLUDE_DIR)
else()
set( USE_FMODSTUDIO "OFF")

View File

@ -5,6 +5,6 @@ include_guard()
create_target( ll::freetype)
use_prebuilt_binary(freetype)
set_target_include_dirs( ll::freetype ${LIBS_PREBUILT_DIR}/include/freetype2/)
target_include_directories( ll::freetype SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include/freetype2/)
target_link_libraries( ll::freetype INTERFACE freetype )

View File

@ -6,6 +6,6 @@ create_target( ll::glod )
use_prebuilt_binary(glod)
set_target_include_dirs( ll::glod ${LIBS_PREBUILT_DIR}/include)
target_include_directories( ll::glod SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include)
target_link_libraries( ll::glod INTERFACE GLOD )
target_compile_definitions( ll::glod INTERFACE LL_GLOD=1)

View File

@ -7,7 +7,7 @@ include_guard()
use_prebuilt_binary(googlemock)
create_target( ll::googlemock )
set_target_include_dirs( ll::googlemock
target_include_directories( ll::googlemock SYSTEM INTERFACE
${LIBS_PREBUILT_DIR}/include
)
@ -16,7 +16,7 @@ if (LINUX)
target_link_libraries( ll::googlemock INTERFACE gmock gtest)
elseif(WINDOWS)
target_link_libraries( ll::googlemock INTERFACE gmock)
set_target_include_dirs( ll::googlemock
target_include_directories( ll::googlemock SYSTEM INTERFACE
${LIBS_PREBUILT_DIR}/include
${LIBS_PREBUILT_DIR}/include/gmock)
elseif(DARWIN)

View File

@ -12,5 +12,5 @@ elseif(DARWIN)
elseif(LINUX)
target_link_libraries( ll::hunspell INTERFACE hunspell-1.3)
endif()
set_target_include_dirs( ll::hunspell ${LIBS_PREBUILT_DIR}/include/hunspell)
target_include_directories( ll::hunspell SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include/hunspell)
use_prebuilt_binary(dictionaries)

View File

@ -14,4 +14,4 @@ elseif (DARWIN)
elseif (WINDOWS)
target_link_libraries( ll::jpeglib INTERFACE jpeglib)
endif (LINUX)
set_target_include_dirs( ll::jpeglib ${LIBS_PREBUILT_DIR}/include)
target_include_directories( ll::jpeglib SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include)

View File

@ -12,4 +12,4 @@ elseif (DARWIN)
elseif (LINUX)
target_link_libraries( ll::jsoncpp INTERFACE libjson_linux-gcc-4.1.3_libmt.a )
endif (WINDOWS)
set_target_include_dirs( ll::jsoncpp ${LIBS_PREBUILT_DIR}/include/json)
target_include_directories( ll::jsoncpp SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include/json)

View File

@ -19,7 +19,7 @@ if (USE_KDU)
target_link_libraries( ll::kdu INTERFACE libkdu.a)
endif (WINDOWS)
set_target_include_dirs( ll::kdu
target_include_directories( ll::kdu SYSTEM INTERFACE
${AUTOBUILD_INSTALL_DIR}/include/kdu
${LIBS_OPEN_DIR}/llkdu
)

View File

@ -32,4 +32,4 @@ else (HAVOK)
target_link_libraries( llphysicsextensions INTERFACE llphysicsextensionsstub)
endif (HAVOK)
set_target_include_dirs(llphysicsextensions ${LIBS_PREBUILT_DIR}/include/llphysicsextensions)
target_include_directories( llphysicsextensions INTERFACE ${LIBS_PREBUILT_DIR}/include/llphysicsextensions)

View File

@ -29,7 +29,7 @@ else()
endif()
create_target( ll::colladadom )
set_target_include_dirs( ll::colladadom
target_include_directories( ll::colladadom SYSTEM INTERFACE
${LIBS_PREBUILT_DIR}/include/collada
${LIBS_PREBUILT_DIR}/include/collada/1.4
)

View File

@ -9,7 +9,7 @@ create_target(ll::sdl)
if (LINUX)
use_prebuilt_binary(SDL)
set_target_include_dirs( ll::sdl ${LIBS_PREBUILT_DIR}/i686-linux)
target_include_directories( ll::sdl SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/i686-linux)
target_link_libraries( ll::sdl INTERFACE SDL directfb fusion direct X11)
target_compile_definitions( ll::sdl INTERFACE LL_SDL=1)
endif (LINUX)

View File

@ -12,4 +12,4 @@ elseif (DARWIN)
else (WINDOWS)
target_link_libraries( ll::nghttp2 INTERFACE libnghttp2.a )
endif (WINDOWS)
set_target_include_dirs( ll::nghttp2 ${LIBS_PREBUILT_DIR}/include/nghttp2)
target_include_directories( ll::nghttp2 SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include/nghttp2)

View File

@ -13,7 +13,7 @@ endif()
if (USE_OPENAL)
create_target( ll::openal )
set_target_include_dirs( ll::openal "${LIBS_PREBUILT_DIR}/include/AL")
target_include_directories( ll::openal SYSTEM INTERFACE "${LIBS_PREBUILT_DIR}/include/AL")
target_compile_definitions( ll::openal INTERFACE LL_OPENAL=1)
use_prebuilt_binary(openal)

View File

@ -7,4 +7,4 @@ create_target( ll::openjpeg )
use_prebuilt_binary(openjpeg)
target_link_libraries(ll::openjpeg INTERFACE openjpeg )
set_target_include_dirs( ll::openjpeg ${LIBS_PREBUILT_DIR}/include/openjpeg)
target_include_directories( ll::openjpeg SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include/openjpeg)

View File

@ -12,5 +12,5 @@ elseif (LINUX)
else()
target_link_libraries(ll::openssl INTERFACE ssl crypto)
endif (WINDOWS)
set_target_include_dirs(ll::openssl ${LIBS_PREBUILT_DIR}/include)
target_include_directories( ll::openssl SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include)

View File

@ -10,4 +10,4 @@ if (WINDOWS)
else()
target_link_libraries(ll::libpng INTERFACE png16 )
endif()
set_target_include_dirs( ll::libpng ${LIBS_PREBUILT_DIR}/include/libpng16)
target_include_directories( ll::libpng SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include/libpng16)

View File

@ -61,7 +61,3 @@ function( create_target name )
add_library( ${name} INTERFACE IMPORTED )
endfunction()
function( set_target_include_dirs target)
set_property( TARGET ${target} PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${ARGN} )
endfunction()

View File

@ -43,7 +43,7 @@ if( WINDOWS )
)
endif()
set_target_include_dirs( ll::uilibraries
target_include_directories( ll::uilibraries SYSTEM INTERFACE
${LIBS_PREBUILT_DIR}/include
)
@ -62,7 +62,7 @@ set_target_include_dirs( ll::uilibraries
# pango-1.0
# )
#foreach(include ${${LL_ARCH}_INCLUDES})
# set_target_include_dirs( ll::uilibraries
# target_include_directories( ll::uilibraries SYSTEM INTERFACE
# ${LIBS_PREBUILT_DIR}/include/${include}
# )
#endforeach(include)

View File

@ -13,4 +13,4 @@ elseif (LINUX)
elseif (DARWIN)
target_link_libraries( ll::uriparser INTERFACE liburiparser.dylib)
endif (WINDOWS)
set_target_include_dirs( ll::uriparser ${LIBS_PREBUILT_DIR}/include/uriparser)
target_include_directories( ll::uriparser SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include/uriparser)

View File

@ -6,4 +6,4 @@ create_target( ll::xmlrpc-epi )
use_prebuilt_binary(xmlrpc-epi)
target_link_libraries(ll::xmlrpc-epi INTERFACE xmlrpc-epi )
set_target_include_dirs( ll::xmlrpc-epi ${LIBS_PREBUILT_DIR}/include)
target_include_directories( ll::xmlrpc-epi SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include)

View File

@ -11,4 +11,4 @@ if (WINDOWS)
else()
target_link_libraries( ll::zlib-ng INTERFACE z )
endif (WINDOWS)
set_target_include_dirs( ll::zlib-ng ${LIBS_PREBUILT_DIR}/include/zlib-ng)
target_include_directories( ll::zlib-ng SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include/zlib-ng)

View File

@ -33,7 +33,7 @@ if (USE_BUGSPLAT)
message( FATAL_ERROR "You need to set BUGSPLAT_DB when setting USE_BUGSPLAT" )
endif()
set_target_include_dirs( ll::bugsplat ${LIBS_PREBUILT_DIR}/include/bugsplat)
target_include_directories( ll::bugsplat SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include/bugsplat)
set_property( TARGET ll::bugsplat APPEND PROPERTY INTERFACE_COMPILE_DEFINITIONS LL_BUGSPLAT)
else()
set(BUGSPLAT_DB "" CACHE STRING "BugSplat crash database name")

View File

@ -71,11 +71,11 @@ target_link_libraries(llappearance
llcorehttp
llcommon
)
set_target_include_dirs( llappearance ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories( llappearance INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
if (BUILD_HEADLESS)
add_library (llappearanceheadless ${llappearance_SOURCE_FILES})
set_target_include_dirs( llappearanceheadless ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories( llappearanceheadless INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
target_link_libraries(llappearanceheadless
llcharacter

View File

@ -57,7 +57,7 @@ set_source_files_properties(${llaudio_HEADER_FILES}
list(APPEND llaudio_SOURCE_FILES ${llaudio_HEADER_FILES})
add_library (llaudio ${llaudio_SOURCE_FILES})
set_target_include_dirs( llaudio ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories( llaudio INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
target_link_libraries( llaudio
llcommon
llmath

View File

@ -63,7 +63,7 @@ set_source_files_properties(${llcharacter_HEADER_FILES}
list(APPEND llcharacter_SOURCE_FILES ${llcharacter_HEADER_FILES})
add_library (llcharacter ${llcharacter_SOURCE_FILES})
set_target_include_dirs( llcharacter ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories( llcharacter INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
target_link_libraries(
llcharacter

View File

@ -279,7 +279,7 @@ target_link_libraries(
ll::oslibraries
)
set_target_include_dirs( llcommon ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories( llcommon INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories( llcommon PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} )
add_dependencies(llcommon stage_third_party_libs)

View File

@ -91,7 +91,7 @@ target_link_libraries(
ll::openssl
ll::nghttp2
)
set_target_include_dirs( llcorehttp ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories( llcorehttp INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
# tests

View File

@ -57,7 +57,7 @@ add_library (llfilesystem ${llfilesystem_SOURCE_FILES})
target_link_libraries(llfilesystem
llcommon
)
set_target_include_dirs( llfilesystem ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories( llfilesystem INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
# Add tests
if (LL_TESTS)

View File

@ -49,7 +49,7 @@ set_source_files_properties(${llimage_HEADER_FILES}
list(APPEND llimage_SOURCE_FILES ${llimage_HEADER_FILES})
add_library (llimage ${llimage_SOURCE_FILES})
set_target_include_dirs( llimage ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories( llimage INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
# Libraries on which this library depends, needed for Linux builds
# Sort by high-level to low-level
if (USE_KDU)

View File

@ -60,7 +60,7 @@ list(APPEND llinventory_SOURCE_FILES ${llinventory_HEADER_FILES})
add_library (llinventory ${llinventory_SOURCE_FILES})
target_link_libraries( llinventory llcommon llmath llmessage llxml )
set_target_include_dirs( llinventory ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories( llinventory INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
#add unit tests
if (LL_TESTS)

View File

@ -43,7 +43,7 @@ if (USE_KDU)
add_library (llkdu ${llkdu_SOURCE_FILES})
target_link_libraries(llkdu ll::kdu llimage llcommon)
set_target_include_dirs( llkdu ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories( llkdu INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
# Add tests
# ND: llkdu tests are very strange as they include stubs for KDU classes/methods

View File

@ -103,7 +103,7 @@ list(APPEND llmath_SOURCE_FILES ${llmath_HEADER_FILES})
add_library (llmath ${llmath_SOURCE_FILES})
target_link_libraries(llmath llcommon)
set_target_include_dirs( llmath ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories( llmath INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
# Add tests
if (LL_TESTS)

View File

@ -200,7 +200,7 @@ target_link_libraries(
llcorehttp
ll::xmlrpc-epi
)
set_target_include_dirs( llmessage ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories( llmessage INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
# tests
if (LL_TESTS)

View File

@ -46,7 +46,7 @@ endif(NOT ADDRESS_SIZE EQUAL 32)
list(APPEND llplugin_SOURCE_FILES ${llplugin_HEADER_FILES})
add_library (llplugin ${llplugin_SOURCE_FILES})
set_target_include_dirs(llplugin ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories( llplugin INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
target_link_libraries( llplugin llcommon llmath llrender llmessage )
add_subdirectory(slplugin)

View File

@ -53,7 +53,7 @@ set_source_files_properties(${llprimitive_HEADER_FILES}
list(APPEND llprimitive_SOURCE_FILES ${llprimitive_HEADER_FILES})
add_library (llprimitive ${llprimitive_SOURCE_FILES})
set_target_include_dirs( llprimitive ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories( llprimitive INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
target_link_libraries(llprimitive
llcommon

View File

@ -89,7 +89,7 @@ if (BUILD_HEADLESS)
endif (BUILD_HEADLESS)
add_library (llrender ${llrender_SOURCE_FILES})
set_target_include_dirs(llrender ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories( llrender INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
# Libraries on which this library depends, needed for Linux builds
# Sort by high-level to low-level

View File

@ -252,7 +252,7 @@ set_source_files_properties(llurlentry.cpp
list(APPEND llui_SOURCE_FILES ${llui_HEADER_FILES})
add_library (llui ${llui_SOURCE_FILES})
set_target_include_dirs( llui ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories( llui INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
# Libraries on which this library depends, needed for Linux builds
# Sort by high-level to low-level
target_link_libraries(llui

View File

@ -175,4 +175,4 @@ endif (llwindow_HEADER_FILES)
)
target_link_libraries (llwindow ${llwindow_LINK_LIBRARIES} ll::sdl)
set_target_include_dirs(llwindow ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories( llwindow INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})

View File

@ -35,7 +35,7 @@ target_link_libraries( llxml
llcommon
ll::expat
)
set_target_include_dirs( llxml ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories( llxml INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
# tests

View File

@ -35,4 +35,4 @@ add_library(media_plugin_base
)
target_link_libraries( media_plugin_base llplugin )
set_target_include_dirs(media_plugin_base ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories( media_plugin_base INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})

View File

@ -62,7 +62,7 @@ add_library(media_plugin_cef
target_link_libraries(media_plugin_cef
media_plugin_base
cef::cef
ll::cef
)
if (WINDOWS)

View File

@ -28,7 +28,7 @@ list(APPEND
add_library(lllogin
${login_SOURCE_FILES}
)
set_target_include_dirs( lllogin ${CMAKE_CURRENT_SOURCE_DIR})
target_include_directories( lllogin INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
target_link_libraries(lllogin
llmessage