From c3f57cd07f0295dfb4076d301f5dd39d1305e056 Mon Sep 17 00:00:00 2001 From: Stephen Birarda Date: Mon, 17 Nov 2014 13:13:54 -0800 Subject: [PATCH] modify apk.cmake to allow caller to include jar libs --- cmake/android/Apk.cmake | 11 ++++++++++- gvr-interface/CMakeLists.txt | 3 +++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/cmake/android/Apk.cmake b/cmake/android/Apk.cmake index b48bfbfd33..7c5d8cbbba 100755 --- a/cmake/android/Apk.cmake +++ b/cmake/android/Apk.cmake @@ -68,7 +68,7 @@ set(ANDROID_THIS_DIRECTORY ${CMAKE_CURRENT_LIST_DIR}) # Directory this CMake fil ## - "jarsigner" (part of the JDK) ## - "zipalign" (part of the Android SDK) ################################################## -macro(android_create_apk name apk_directory shared_libraries assets data_directory) +macro(android_create_apk name apk_directory shared_libraries jar_libraries assets data_directory) if(ANDROID_APK_CREATE) # Construct the current package name and theme set(ANDROID_APK_PACKAGE "${ANDROID_APK_TOP_LEVEL_DOMAIN}.${ANDROID_APK_DOMAIN}.${ANDROID_APK_SUBDOMAIN}") @@ -127,6 +127,15 @@ macro(android_create_apk name apk_directory shared_libraries assets data_directo COMMAND ${CMAKE_COMMAND} -E copy ${value} "${apk_directory}/libs/${ARM_TARGET}" ) endforeach() + + # Copy any required external jars to the libs folder + foreach(value ${jar_libraries}) + add_custom_command(TARGET ${ANDROID_NAME} + POST_BUILD + COMMAND ${CMAKE_COMMAND} -E copy ${value} "${apk_directory}/libs/" + ) + endforeach() + # Create "build.xml", "default.properties", "local.properties" and "proguard.cfg" files add_custom_command(TARGET ${ANDROID_NAME} diff --git a/gvr-interface/CMakeLists.txt b/gvr-interface/CMakeLists.txt index cde3cd65df..94c460b82a 100644 --- a/gvr-interface/CMakeLists.txt +++ b/gvr-interface/CMakeLists.txt @@ -24,10 +24,13 @@ set(ARM_TARGET "armeabi-v7a") set(TARGET_SHARED_LIBRARIES ${${TARGET_NAME}_LIBRARIES_TO_LINK}) list(APPEND TARGET_SHARED_LIBRARIES "${LIBRARY_OUTPUT_PATH}/lib${TARGET_NAME}.so") +set(TARGET_JAR_LIBRARIES "${QT_CMAKE_PREFIX_PATH}/../../jar/QtAndroid-bundled.jar") + android_create_apk( ${TARGET_NAME} "${CMAKE_BINARY_DIR}/apk" "${TARGET_SHARED_LIBRARIES}" + "${TARGET_JAR_LIBRARIES}" "${CMAKE_CURRENT_SOURCE_DIR}/assets" "Data" ) \ No newline at end of file