From 4d97c5156c5728959d34d73983cdd47899db0d14 Mon Sep 17 00:00:00 2001 From: Dmitry Marakasov Date: Tue, 29 Sep 2020 02:33:09 +0300 Subject: [PATCH] Fix include path order for all bundled libraries ...to avoid picking system includes when bundled libraries are used Issue: #4372 --- CMakeLists.txt | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index f077513f2..a5553de20 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -174,7 +174,7 @@ endif() # Build the Bullet physics library add_subdirectory("${PROJECT_SOURCE_DIR}/lib/bullet") -include_directories("${PROJECT_SOURCE_DIR}/lib/bullet/src") +include_directories(BEFORE "${PROJECT_SOURCE_DIR}/lib/bullet/src") if(WIN32 OR CMAKE_SYSTEM_NAME MATCHES "BSD") set(LIBRESOLV_LIBRARY) @@ -198,7 +198,7 @@ if(ENET_FOUND AND NOT USE_IPV6) else() # Fallback to built-in version add_subdirectory("${PROJECT_SOURCE_DIR}/lib/enet") - include_directories("${PROJECT_SOURCE_DIR}/lib/enet/include") + include_directories(BEFORE "${PROJECT_SOURCE_DIR}/lib/enet/include") set(ENET_LIBRARIES "enet") endif() @@ -208,7 +208,7 @@ if (APPLE AND NOT IOS) find_path(GLEW_INCLUDEDIR NAMES GL/glew.h glew.h PATHS) if (NOT GLEW_LIBRARY OR NOT GLEW_INCLUDEDIR) add_subdirectory("${PROJECT_SOURCE_DIR}/lib/glew") - include_directories("${PROJECT_SOURCE_DIR}/lib/glew/include") + include_directories(BEFORE "${PROJECT_SOURCE_DIR}/lib/glew/include") set(GLEW_LIBRARIES "glew") else() set(GLEW_LIBRARIES ${GLEW_LIBRARY}) @@ -226,7 +226,7 @@ elseif(NOT USE_GLES2 AND NOT SERVER_ONLY) else() # Fallback to built-in version silently add_subdirectory("${PROJECT_SOURCE_DIR}/lib/glew") - include_directories("${PROJECT_SOURCE_DIR}/lib/glew/include") + include_directories(BEFORE "${PROJECT_SOURCE_DIR}/lib/glew/include") set(GLEW_LIBRARIES "glew") endif() endif() @@ -260,9 +260,9 @@ endif() if(NOT SERVER_ONLY) add_subdirectory("${PROJECT_SOURCE_DIR}/lib/graphics_utils") - include_directories("${PROJECT_SOURCE_DIR}/lib/graphics_utils") + include_directories(BEFORE "${PROJECT_SOURCE_DIR}/lib/graphics_utils") add_subdirectory("${PROJECT_SOURCE_DIR}/lib/tinygettext") - include_directories("${PROJECT_SOURCE_DIR}/lib/tinygettext/include") + include_directories(BEFORE "${PROJECT_SOURCE_DIR}/lib/tinygettext/include") endif() # Libmcpp @@ -270,7 +270,7 @@ find_library(MCPP_LIBRARY NAMES mcpp libmcpp) find_path(MCPP_INCLUDEDIR NAMES mcpp_lib.h PATHS) if (NOT MCPP_LIBRARY OR NOT MCPP_INCLUDEDIR) add_subdirectory("${PROJECT_SOURCE_DIR}/lib/mcpp") - include_directories("${PROJECT_SOURCE_DIR}/lib/mcpp") + include_directories(BEFORE "${PROJECT_SOURCE_DIR}/lib/mcpp") SET(MCPP_LIBRARY mcpp) message(STATUS "System libmcpp not found, use the bundled one.") else() @@ -285,7 +285,7 @@ if(NOT SERVER_ONLY) endif() if (NOT SQUISH_LIBRARY OR NOT SQUISH_INCLUDEDIR) add_subdirectory("${PROJECT_SOURCE_DIR}/lib/libsquish") - include_directories("${PROJECT_SOURCE_DIR}/lib/libsquish") + include_directories(BEFORE "${PROJECT_SOURCE_DIR}/lib/libsquish") SET(SQUISH_LIBRARY squish) else() include_directories("${SQUISH_INCLUDEDIR}") @@ -308,7 +308,7 @@ endif() # Build the irrlicht library add_subdirectory("${PROJECT_SOURCE_DIR}/lib/irrlicht") -include_directories("${PROJECT_SOURCE_DIR}/lib/irrlicht/include") +include_directories(BEFORE "${PROJECT_SOURCE_DIR}/lib/irrlicht/include") # Build the Wiiuse library # Note: wiiuse MUST be declared after irrlicht, since otherwise @@ -327,7 +327,7 @@ if(USE_WIIUSE) if(WIIUSE_BUILD) add_subdirectory("${PROJECT_SOURCE_DIR}/lib/wiiuse") endif() - include_directories("${PROJECT_SOURCE_DIR}/lib/wiiuse/src") + include_directories(BEFORE "${PROJECT_SOURCE_DIR}/lib/wiiuse/src") set(WIIUSE_LIBRARIES "wiiuse" "bluetooth") endif() endif() @@ -375,7 +375,7 @@ endif() if (NOT SERVER_ONLY) # SheenBidi add_subdirectory("${PROJECT_SOURCE_DIR}/lib/sheenbidi") - include_directories("${PROJECT_SOURCE_DIR}/lib/sheenbidi/Headers") + include_directories(BEFORE "${PROJECT_SOURCE_DIR}/lib/sheenbidi/Headers") SET(SHEENBIDI_LIBRARY sheenbidi) # Freetype @@ -422,7 +422,7 @@ if(USE_SQLITE3) find_path(SQLITE3_INCLUDEDIR NAMES sqlite3.h PATHS) if (NOT SQLITE3_LIBRARY OR NOT SQLITE3_INCLUDEDIR) # add_subdirectory("${PROJECT_SOURCE_DIR}/lib/sqlite3") -# include_directories("${PROJECT_SOURCE_DIR}/lib/sqlite3") +# include_directories(BEFORE "${PROJECT_SOURCE_DIR}/lib/sqlite3") # SET(SQLITE3_LIBRARY sqlite3) set(USE_SQLITE3 OFF CACHE BOOL "Use sqlite to manage server stats and ban list." FORCE) message(WARNING "Sqlite3 not found, disable advanced server management.")