JD2022-TU1/main/extern/UbiServices/custom/tests/android/testSuite.cmake

59 lines
3.9 KiB
CMake

file(GLOB ANDROID_TEST_SUITE_FILES "${PROJECT_SOURCE_DIR}/build/private/android/testsuite/*")
file(COPY ${ANDROID_TEST_SUITE_FILES} DESTINATION ${CMAKE_BINARY_DIR}/AndroidStudio)
set(CMAKE_EXECUTABLE_PATH ${CMAKE_SOURCE_DIR}/external/harbourcommon/tools/cmake/win3.2.2ubi23/bin/cmake.exe)
file(TO_NATIVE_PATH ${CMAKE_EXECUTABLE_PATH} CMAKE_EXECUTABLE_PATH)
file(GLOB_RECURSE ANDROID_TEST_SUITE_FILES_TEMPLATES "${CMAKE_BINARY_DIR}/*.template")
# Android Automatic signature
set(SIGNATURE_STORE_FILE_NAME "debug.keystore")
set(SIGNATURE_STORE_PASSWORD "android")
set(SIGNATURE_KEY_ALIAS "androiddebugkey")
set(SIGNATURE_KEY_PASSWORD "android")
if (ANDROID AND DLL)
# Will be used in ubiservices\client\cpp\main\build\private\android\testSuite\app\build.gradle.template
set(STLPORT_PATH "final String stlportPath = \"${ANDROID_NDK}/sources/cxx-stl/stlport/libs/${CMAKE_ANDROID_ARCH_ABI}\"")
set(STLPORT_LIB_NAME "final String stlportLibName = \"libstlport_shared.so\"")
set(SIMPLE_EAL_LIB_NAME "final String simpleEalLibName = \"libharboureal.so\"")
set(UBISERVICES_LIB_NAME "final String ubiservicesLibName = \"libubiservices.so\"")
set(US_SHARED_INTEGRATION_LIB_NAME "final String usShardIntegrationLibName = \"libusSharedIntegration.so\"")
set(SIMPLE_EAL_LIB_PATH "final String simpleEalLibPath = jniLibsPath + File.separator + simpleEalLibName")
set(UBISERVICES_LIB_PATH "final String ubiservicesLibPath = jniLibsPath + File.separator + ubiservicesLibName")
set(US_SHARED_INTEGRATION_LIB_PATH "final String usShardIntegrationLibPath = jniLibsPath + File.separator + usShardIntegrationLibName")
set(FILE_SIMPLE_EAL_LIB_PATH_DELETE "file(simpleEalLibPath).delete()")
set(FILE_UBISERVICES_LIB_PATH_DELETE "file(ubiservicesLibPath).delete()")
set(FILE_US_SHARED_INTEGRATION_LIB_PATH_DELETE "file(usShardIntegrationLibPath).delete()")
set(INPUT_FILE_SIMPLE_EAL_LIB_PATH "inputs.file simpleEalLibPath")
set(INPUT_FILE_UBISERVICES_LIB_PATH "inputs.file ubiservicesLibPath")
set(INPUT_FILE_US_SHARED_INTEGRATION_LIB_PATH "inputs.file usShardIntegrationLibPath")
set(INCLUDE_SIMPLE_EAL_LIB_NAME "include simpleEalLibName")
set(INCLUDE_UBISERVICES_LIB_NAME "include ubiservicesLibName")
set(INCLUDE_US_SHARED_INTEGRATION_LIB_NAME "include usShardIntegrationLibName")
set(PREBUILD_SIMPLE_EAL_LIB_PATH "preBuild.onlyIf { file(simpleEalLibPath).exists() }")
set(PREBUILD_UBISERVICES_LIB_PATH "preBuild.onlyIf { file(ubiservicesLibPath).exists() }")
set(PREBUILD_US_SHARED_INTEGRATION_LIB_PATH "preBuild.onlyIf { file(usShardIntegrationLibPath).exists() }")
set(COPY_STLPORT_LIB "from( stlportPath ) { include stlportLibName } ")
# Will be used in ubiservices\client\cpp\main\build\private\android\testSuite\app\src\main\java\com\ubisoft\ubiservices\UsTests.java.template
set(LOAD_LIB_STLPORT "System.loadLibrary(\"stlport_shared\");")
set(LOAD_LIB_SIMPLEEAL "System.loadLibrary(\"harboureal\");")
set(LOAD_LIB_US_SHARED_INTEGRATION "System.loadLibrary(\"usSharedIntegration\");")
set(LOAD_LIB_UBISERVICES "System.loadLibrary(\"ubiservices\");")
endif()
foreach(ANDROID_TEMPLATE_FILE ${ANDROID_TEST_SUITE_FILES_TEMPLATES})
get_filename_component(ANDROID_TEMPLATE_FILE_NAME ${ANDROID_TEMPLATE_FILE} NAME)
string(REPLACE ".template" "" ANDROID_TEMPLATE_FILE_NAME ${ANDROID_TEMPLATE_FILE_NAME})
get_filename_component(ANDROID_TEMPLATE_FILE_REALPATH ${ANDROID_TEMPLATE_FILE} DIRECTORY)
configure_file(${ANDROID_TEMPLATE_FILE} ${ANDROID_TEMPLATE_FILE_REALPATH}/${ANDROID_TEMPLATE_FILE_NAME})
file(REMOVE ${ANDROID_TEMPLATE_FILE})
endforeach()
#Zip AndroidStudio since the output folder resulting paths can be too great for anthill
set(7zExePath ${CMAKE_SOURCE_DIR}/external/tools/7z/7z)
execute_process(COMMAND ${7zExePath} a ${CMAKE_BINARY_DIR}\\AndroidStudio.zip ${CMAKE_BINARY_DIR}\\AndroidStudio\\*)
file(REMOVE_RECURSE ${CMAKE_BINARY_DIR}/AndroidStudio)