blob: 122939a407c2f7117a358c59f4bab89469086702 [file] [log] [blame]
# Will add_directory the given path only if the directory exists. If the directory doesn't exist,
# it will look for either arm64-android or x86_64-android variants of the path. If it finds either, or both,
# then it will add the newer of the two.
function(try_add_subdir path)
if(IS_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/${path}")
add_subdirectory(${path})
endif()
set(path_arm64 ${path}-arm64-android)
if (IS_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/${path_arm64}")
set(has_arm64 TRUE)
else()
set(has_arm64 FALSE)
endif()
set(path_x64 ${path}-x86_64-android)
if (IS_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/${path_x64}")
set(has_x64 TRUE)
else()
set(has_x64 FALSE)
endif()
if (${has_arm64} AND ${has_x64})
if ("${CMAKE_CURRENT_SOURCE_DIR}/${path_arm64}/CMakeLists.txt" IS_NEWER_THAN
"${CMAKE_CURRENT_SOURCE_DIR}/${path_x64}/CMakeLists.txt")
add_subdirectory(${path_arm64})
else()
add_subdirectory(${path_x64})
endif()
elseif(${has_arm64})
add_subdirectory(${path_arm64})
elseif(${has_x64})
add_subdirectory(${path_x64})
endif()
endfunction()