You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
35 lines
1.2 KiB
35 lines
1.2 KiB
# 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() |