diff --git a/cmake/libraries/jpeg.cmake b/cmake/libraries/jpeg.cmake index c5e34441..c3c7256e 100644 --- a/cmake/libraries/jpeg.cmake +++ b/cmake/libraries/jpeg.cmake @@ -10,7 +10,7 @@ set(INTERNAL_JPEG_DIR ${SOURCE_DIR}/thirdparty/jpeg-9f) if(USE_INTERNAL_JPEG) file(GLOB_RECURSE JPEG_SOURCES ${INTERNAL_JPEG_DIR}/j*.c) disable_warnings(${JPEG_SOURCES}) - find_include_dirs(JPEG_INCLUDE_DIRS ${JPEG_SOURCES}) + find_include_dirs(JPEG_INCLUDE_DIRS ${INTERNAL_JPEG_DIR}) set(JPEG_DEFINITIONS USE_INTERNAL_JPEG) list(APPEND RENDERER_LIBRARY_SOURCES ${JPEG_SOURCES}) else() diff --git a/cmake/libraries/opus.cmake b/cmake/libraries/opus.cmake index 61835f2f..c133cfc0 100644 --- a/cmake/libraries/opus.cmake +++ b/cmake/libraries/opus.cmake @@ -16,9 +16,8 @@ if(USE_INTERNAL_OPUS) file(GLOB_RECURSE OPUS_SOURCES ${INTERNAL_OPUS_DIR}/*.c) file(GLOB_RECURSE OPUSFILE_SOURCES ${INTERNAL_OPUSFILE_DIR}/*.c) disable_warnings(${OPUS_SOURCES} ${OPUSFILE_SOURCES}) - find_include_dirs(OPUS_INCLUDE_DIRS ${OPUS_SOURCES}) - find_include_dirs(OPUSFILE_INCLUDE_DIRS ${OPUSFILE_SOURCES}) - set(OPUS_INCLUDE_DIRS ${OPUS_INCLUDE_DIRS} ${OPUSFILE_INCLUDE_DIRS} ${INTERNAL_OPUSFILE_DIR}/include) + find_include_dirs(OPUS_INCLUDE_DIRS ${INTERNAL_OPUS_DIR}) + find_include_dirs(OPUSFILE_INCLUDE_DIRS ${INTERNAL_OPUSFILE_DIR}) set(OPUS_DEFINITIONS OPUS_BUILD HAVE_LRINTF FLOATING_POINT FLOAT_APPROX USE_ALLOCA) list(APPEND CLIENT_LIBRARY_SOURCES ${OPUS_SOURCES} ${OPUSFILE_SOURCES}) else() diff --git a/cmake/libraries/zlib.cmake b/cmake/libraries/zlib.cmake index 44918e6c..97611e9a 100644 --- a/cmake/libraries/zlib.cmake +++ b/cmake/libraries/zlib.cmake @@ -6,7 +6,7 @@ set(INTERNAL_ZLIB_DIR ${SOURCE_DIR}/thirdparty/zlib-1.3.1) if(USE_INTERNAL_ZLIB) file(GLOB_RECURSE ZLIB_SOURCES ${INTERNAL_ZLIB_DIR}/*.c) disable_warnings(ZLIB_SOURCES) - find_include_dirs(ZLIB_INCLUDE_DIRS ${ZLIB_SOURCES}) + find_include_dirs(ZLIB_INCLUDE_DIRS ${INTERNAL_ZLIB_DIR}) set(ZLIB_DEFINITIONS NO_GZIP) list(APPEND SERVER_LIBRARY_SOURCES ${ZLIB_SOURCES}) list(APPEND CLIENT_LIBRARY_SOURCES ${ZLIB_SOURCES}) diff --git a/cmake/utils/find_include_dirs.cmake b/cmake/utils/find_include_dirs.cmake index 4ea1aa9e..71073796 100644 --- a/cmake/utils/find_include_dirs.cmake +++ b/cmake/utils/find_include_dirs.cmake @@ -1,30 +1,8 @@ include_guard(GLOBAL) -function(find_include_dirs OUT_VAR) - set(SOURCES ${ARGN}) - - # Get top most common directory prefix for all source files - set(COMMON_PATH "") - foreach(FILE IN LISTS SOURCES) - get_filename_component(DIR ${FILE} DIRECTORY) - file(REAL_PATH ${DIR} DIR) - if(COMMON_PATH STREQUAL "") - set(COMMON_PATH ${DIR}) - else() - string(LENGTH ${COMMON_PATH} PREFIX_LEN) - while(NOT ${DIR} MATCHES "^${COMMON_PATH}(/|$)" AND PREFIX_LEN GREATER 0) - string(SUBSTRING ${COMMON_PATH} 0 ${PREFIX_LEN} COMMON_PATH) - math(EXPR PREFIX_LEN "${PREFIX_LEN} - 1") - endwhile() - endif() - endforeach() - - if(NOT IS_DIRECTORY ${COMMON_PATH}) - message(FATAL_ERROR "Could not determine common directory for source files") - endif() - - # Recursively find directories that contain .h files under common directory - file(GLOB_RECURSE HEADER_FILES ${COMMON_PATH}/*.h) +function(find_include_dirs OUT_VAR LIBRARY_DIR) + # Recursively find directories that contain .h files under LIBRARY_DIR + file(GLOB_RECURSE HEADER_FILES ${LIBRARY_DIR}/*.h) set(INCLUDE_DIRS "") foreach(HEADER_FILE IN LISTS HEADER_FILES) get_filename_component(HEADER_DIR ${HEADER_FILE} DIRECTORY)