From 6a13c9efc03f27062511c3e544c94f185c25dc37 Mon Sep 17 00:00:00 2001 From: Andrey Kamaev Date: Thu, 28 Jun 2012 13:42:08 +0000 Subject: [PATCH] Added cmake for building Android package --- CMakeLists.txt | 17 ++-- android/package/AndroidManifest.xml | 15 +++ android/package/CMakeLists.txt | 95 +++++++++++++++++- android/package/info_lib/CMakeLists.txt | 1 - android/package/info_lib/jni/Android.mk | 17 ---- android/package/info_lib/jni/Application.mk | 2 - android/package/info_lib/jni/include/info.h | 3 - .../package/info_lib/jni/include/info_jni.h | 31 ------ android/package/info_lib/jni/src/info.c | 18 ---- android/package/res/drawable/icon.png | Bin 0 -> 5760 bytes android/package/res/values/strings.xml | 6 ++ .../engine/jni/NativeService/PackageInfo.h | 6 +- modules/nonfree/CMakeLists.txt | 4 + 13 files changed, 127 insertions(+), 88 deletions(-) create mode 100644 android/package/AndroidManifest.xml delete mode 100644 android/package/info_lib/CMakeLists.txt delete mode 100644 android/package/info_lib/jni/Android.mk delete mode 100644 android/package/info_lib/jni/Application.mk delete mode 100644 android/package/info_lib/jni/include/info.h delete mode 100644 android/package/info_lib/jni/include/info_jni.h delete mode 100644 android/package/info_lib/jni/src/info.c create mode 100644 android/package/res/drawable/icon.png create mode 100644 android/package/res/values/strings.xml diff --git a/CMakeLists.txt b/CMakeLists.txt index 1044b5007a..01222f9283 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -152,13 +152,8 @@ OCV_OPTION(BUILD_TESTS "Build accuracy & regression tests" OCV_OPTION(BUILD_WITH_DEBUG_INFO "Include debug info into debug libs (not MSCV only)" ON ) OCV_OPTION(BUILD_WITH_STATIC_CRT "Enables use of staticaly linked CRT for staticaly linked OpenCV" ON IF MSVC ) OCV_OPTION(BUILD_FAT_JAVA_LIB "Create fat java wrapper containing the whole OpenCV library" ON IF ANDROID AND NOT BUILD_SHARED_LIBS AND CMAKE_COMPILER_IS_GNUCXX ) -OCV_OPTION(BUILD_ANDROID_SERVICE "TBD" OFF IF ANDROID AND ANDROID_USE_STLPORT AND ANDROID_SOURCE_TREE ) - -if(DEFINED BUILD_opencv_nonfree AND NOT BUILD_opencv_nonfree) - OCV_OPTION(BUILD_ANDROID_PACKAGE "TBD" OFF IF ANDROID ) -else() - unset(BUILD_ANDROID_PACKAGE CACHE) -endif() +OCV_OPTION(BUILD_ANDROID_SERVICE "Build OpenCV Manager for Google Play" OFF IF ANDROID AND ANDROID_USE_STLPORT AND ANDROID_SOURCE_TREE ) +OCV_OPTION(BUILD_ANDROID_PACKAGE "Build platform-specific package for Google Play" OFF IF ANDROID ) # 3rd party libs @@ -230,15 +225,15 @@ else() endif() if(ANDROID) - set(LIBRARY_OUTPUT_PATH "${CMAKE_BINARY_DIR}/lib/${ANDROID_NDK_ABI_NAME}") - set(3P_LIBRARY_OUTPUT_PATH "${CMAKE_BINARY_DIR}/3rdparty/lib/${ANDROID_NDK_ABI_NAME}") + set(LIBRARY_OUTPUT_PATH "${OpenCV_BINARY_DIR}/lib/${ANDROID_NDK_ABI_NAME}") + set(3P_LIBRARY_OUTPUT_PATH "${OpenCV_BINARY_DIR}/3rdparty/lib/${ANDROID_NDK_ABI_NAME}") set(OPENCV_LIB_INSTALL_PATH sdk/native/libs/${ANDROID_NDK_ABI_NAME}) set(OPENCV_3P_LIB_INSTALL_PATH sdk/native/3rdparty/libs/${ANDROID_NDK_ABI_NAME}) set(OPENCV_CONFIG_INSTALL_PATH sdk/native/jni) set(OPENCV_INCLUDE_INSTALL_PATH sdk/native/jni/include) else() - set(LIBRARY_OUTPUT_PATH "${CMAKE_BINARY_DIR}/lib") - set(3P_LIBRARY_OUTPUT_PATH "${CMAKE_BINARY_DIR}/3rdparty/lib${LIB_SUFFIX}") + set(LIBRARY_OUTPUT_PATH "${OpenCV_BINARY_DIR}/lib") + set(3P_LIBRARY_OUTPUT_PATH "${OpenCV_BINARY_DIR}/3rdparty/lib${LIB_SUFFIX}") set(OPENCV_LIB_INSTALL_PATH lib${LIB_SUFFIX}) set(OPENCV_3P_LIB_INSTALL_PATH share/OpenCV/3rdparty/${OPENCV_LIB_INSTALL_PATH}) set(OPENCV_INCLUDE_INSTALL_PATH include) diff --git a/android/package/AndroidManifest.xml b/android/package/AndroidManifest.xml new file mode 100644 index 0000000000..3b6bc7d047 --- /dev/null +++ b/android/package/AndroidManifest.xml @@ -0,0 +1,15 @@ + + + + + + + + + + \ No newline at end of file diff --git a/android/package/CMakeLists.txt b/android/package/CMakeLists.txt index 16b8469edd..35025b3e8f 100644 --- a/android/package/CMakeLists.txt +++ b/android/package/CMakeLists.txt @@ -1,2 +1,93 @@ -#tbd -add_subdirectory(info_lib) +if(NOT ANDROID_PACKAGE_RELEASE) + set(ANDROID_PACKAGE_RELEASE 1) +endif() + +if(NOT ANDROID_PACKAGE_PLATFORM) + if(ARMEABI_V7A) + if(NEON) + set(ANDROID_PACKAGE_PLATFORM armv7a_neon) + else() + set(ANDROID_PACKAGE_PLATFORM armv7a) + endif() + elseif(ARMEABI_V6) + set(ANDROID_PACKAGE_PLATFORM armv6) + elseif(ARMEABI) + set(ANDROID_PACKAGE_PLATFORM armv5) + elseif(X86) + set(ANDROID_PACKAGE_PLATFORM x86) + elseif(MIPS) + set(ANDROID_PACKAGE_PLATFORM mips) + else() + message(ERROR "Can not automatically determine the value for ANDROID_PACKAGE_PLATFORM") + endif() +endif() + +if(NOT ANDROID_PACKAGE_PLATFORM_NAME) + if(ARMEABI_V7A) + if(NEON) + set(ANDROID_PACKAGE_PLATFORM_NAME "armeabi-v7a with NEON") + else() + set(ANDROID_PACKAGE_PLATFORM_NAME "armeabi-v7a") + endif() + elseif(ARMEABI_V6) + set(ANDROID_PACKAGE_PLATFORM_NAME "armeabi-v6") + elseif(ARMEABI) + set(ANDROID_PACKAGE_PLATFORM_NAME "armeabi") + elseif(X86) + set(ANDROID_PACKAGE_PLATFORM_NAME "x86") + elseif(MIPS) + set(ANDROID_PACKAGE_PLATFORM_NAME "mips") + else() + message(ERROR "Can not automatically determine the value for ANDROID_PACKAGE_PLATFORM_NAME") + endif() +endif() + +if("${ANDROID_NATIVE_API_LEVEL}" MATCHES "[1-9][0-9]*$") + set(ANDROID_SDK_VERSION ${CMAKE_MATCH_0}) +endif() + +if(NOT ANDROID_SDK_VERSION GREATER 7) + set(ANDROID_SDK_VERSION 8) +endif() + +set(PACKAGE_DIR "${OpenCV_BINARY_DIR}/package") + +configure_file("${CMAKE_CURRENT_SOURCE_DIR}/${ANDROID_MANIFEST_FILE}" "${PACKAGE_DIR}/${ANDROID_MANIFEST_FILE}" @ONLY) +configure_file("${CMAKE_CURRENT_SOURCE_DIR}/res/values/strings.xml" "${PACKAGE_DIR}/res/values/strings.xml" @ONLY) +configure_file("${CMAKE_CURRENT_SOURCE_DIR}/res/drawable/icon.png" "${PACKAGE_DIR}/res/drawable/icon.png" COPYONLY) + +set(target_name "OpenCV_${OPENCV_VERSION_MAJOR}.${OPENCV_VERSION_MINOR}.${OPENCV_VERSION_PATCH}_binary_pack_${ANDROID_PACKAGE_PLATFORM}") +get_target_property(opencv_java_location opencv_java LOCATION) + +set(android_proj_target_files ${ANDROID_PROJECT_FILES}) +ocv_list_add_prefix(android_proj_target_files "${PACKAGE_DIR}/") +android_get_compatible_target(android_proj_sdk_target ${ANDROID_SDK_VERSION}) +set(APK_NAME "${PACKAGE_DIR}/bin/${target_name}-release-unsigned.apk") + +file(GLOB camera_wrappers "${OpenCV_SOURCE_DIR}/3rdparty/lib/${ANDROID_NDK_ABI_NAME}/libnative_camera_r*.so") +set(CAMERA_LIB_COMMANDS "") + +foreach(wrapper ${camera_wrappers}) + list(APPEND CAMERA_LIB_COMMANDS COMMAND ${CMAKE_COMMAND} -E copy "${wrapper}" "${PACKAGE_DIR}/libs/${ANDROID_NDK_ABI_NAME}/") +endforeach() + +add_custom_command( + OUTPUT "${APK_NAME}" + COMMAND ${CMAKE_COMMAND} -E remove_directory "${PACKAGE_DIR}/libs" + COMMAND ${CMAKE_COMMAND} -E remove_directory "${PACKAGE_DIR}/bin" + COMMAND ${CMAKE_COMMAND} -E remove_directory "${PACKAGE_DIR}/gen" + COMMAND ${CMAKE_COMMAND} -E remove ${android_proj_target_files} + COMMAND ${CMAKE_COMMAND} -E make_directory "${PACKAGE_DIR}/src" + COMMAND ${CMAKE_COMMAND} -E make_directory "${PACKAGE_DIR}/libs/${ANDROID_NDK_ABI_NAME}/" + ${CAMERA_LIB_COMMANDS} + COMMAND ${CMAKE_COMMAND} -E copy "${opencv_java_location}" "${PACKAGE_DIR}/libs/${ANDROID_NDK_ABI_NAME}/" + COMMAND ${ANDROID_EXECUTABLE} --silent update project --path "${PACKAGE_DIR}" --target "${android_proj_sdk_target}" --name "${target_name}" + COMMAND ${ANT_EXECUTABLE} -q -noinput -k release + COMMAND ${CMAKE_COMMAND} -E touch "${APK_NAME}" + WORKING_DIRECTORY "${PACKAGE_DIR}" + MAIN_DEPENDENCY "${opencv_java_location}" + DEPENDS "${PACKAGE_DIR}/${ANDROID_MANIFEST_FILE}" "${PACKAGE_DIR}/res/values/strings.xml" "${PACKAGE_DIR}/res/drawable/icon.png" ${camera_wrappers} + ) + +add_custom_target(android_package ALL SOURCES "${APK_NAME}" ) +add_dependencies(android_package opencv_java) \ No newline at end of file diff --git a/android/package/info_lib/CMakeLists.txt b/android/package/info_lib/CMakeLists.txt deleted file mode 100644 index 7e9e9fe112..0000000000 --- a/android/package/info_lib/CMakeLists.txt +++ /dev/null @@ -1 +0,0 @@ -#tbd diff --git a/android/package/info_lib/jni/Android.mk b/android/package/info_lib/jni/Android.mk deleted file mode 100644 index 89cc462793..0000000000 --- a/android/package/info_lib/jni/Android.mk +++ /dev/null @@ -1,17 +0,0 @@ -LOCAL_PATH := $(call my-dir) -include $(CLEAR_VARS) - -LOCAL_MODULE_TAGS := optional - -LOCAL_SRC_FILES := \ - src/info.c - -LOCAL_C_INCLUDES := \ - $(LOCAL_PATH)/include \ - $(TOP)/frameworks/base/core/jni - -LOCAL_PRELINK_MODULE := false - -LOCAL_MODULE := libopencvinfo - -include $(BUILD_SHARED_LIBRARY) diff --git a/android/package/info_lib/jni/Application.mk b/android/package/info_lib/jni/Application.mk deleted file mode 100644 index c1d3a3fe66..0000000000 --- a/android/package/info_lib/jni/Application.mk +++ /dev/null @@ -1,2 +0,0 @@ -APP_ABI := armeabi-v7a x86 -APP_PLATFORM := android-8 \ No newline at end of file diff --git a/android/package/info_lib/jni/include/info.h b/android/package/info_lib/jni/include/info.h deleted file mode 100644 index b9ba35fbaf..0000000000 --- a/android/package/info_lib/jni/include/info.h +++ /dev/null @@ -1,3 +0,0 @@ -// Function return list of shared libs seporated with ";" symbol -// in load order -const char* GetLibraryList(); \ No newline at end of file diff --git a/android/package/info_lib/jni/include/info_jni.h b/android/package/info_lib/jni/include/info_jni.h deleted file mode 100644 index 28df21758a..0000000000 --- a/android/package/info_lib/jni/include/info_jni.h +++ /dev/null @@ -1,31 +0,0 @@ -/* DO NOT EDIT THIS FILE - it is machine generated */ -#include -/* Header for class org_opencv_android_OpenCVLoader */ - -#ifndef _Included_org_opencv_android_OpenCVLoader -#define _Included_org_opencv_android_OpenCVLoader -#ifdef __cplusplus -extern "C" { -#endif -#undef org_opencv_android_OpenCVLoader_Success -#define org_opencv_android_OpenCVLoader_Success 0L -#undef org_opencv_android_OpenCVLoader_NoService -#define org_opencv_android_OpenCVLoader_NoService 1L -#undef org_opencv_android_OpenCVLoader_RestartRequired -#define org_opencv_android_OpenCVLoader_RestartRequired 2L -#undef org_opencv_android_OpenCVLoader_MarketError -#define org_opencv_android_OpenCVLoader_MarketError 3L -#undef org_opencv_android_OpenCVLoader_InitFailed -#define org_opencv_android_OpenCVLoader_InitFailed 255L -/* - * Class: org_opencv_android_OpenCVLoader - * Method: GetLibraryList - * Signature: ()Ljava/lang/String; - */ -JNIEXPORT jstring JNICALL Java_org_opencv_android_StaticHelper_getLibraryList - (JNIEnv *, jclass); - -#ifdef __cplusplus -} -#endif -#endif diff --git a/android/package/info_lib/jni/src/info.c b/android/package/info_lib/jni/src/info.c deleted file mode 100644 index 6d445de8f1..0000000000 --- a/android/package/info_lib/jni/src/info.c +++ /dev/null @@ -1,18 +0,0 @@ -#include "info.h" -#include - -#ifndef LIB_STRING - #define LIB_STRING "libtbb.so;libopencv_java.so" -#endif - -const char* GetLibraryList() -{ - return LIB_STRING; -} - -JNIEXPORT jstring JNICALL Java_org_opencv_android_StaticHelper_getLibraryList(JNIEnv* jenv, jclass clazz) -{ - jstring result = (*jenv)->NewStringUTF(jenv, LIB_STRING); - - return result; -} \ No newline at end of file diff --git a/android/package/res/drawable/icon.png b/android/package/res/drawable/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..4e828bafd86aae740c6d4da0af6cc67653b535a5 GIT binary patch literal 5760 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 V9}r2j|9cq#=xN{7s@8Of{2yTISoHt^ literal 0 HcmV?d00001 diff --git a/android/package/res/values/strings.xml b/android/package/res/values/strings.xml new file mode 100644 index 0000000000..c8f59be469 --- /dev/null +++ b/android/package/res/values/strings.xml @@ -0,0 +1,6 @@ + + + + OCV @OPENCV_VERSION_MAJOR@.@OPENCV_VERSION_MINOR@ binary pack for @ANDROID_PACKAGE_PLATFORM_NAME@ + + \ No newline at end of file diff --git a/android/service/engine/jni/NativeService/PackageInfo.h b/android/service/engine/jni/NativeService/PackageInfo.h index ac82d37eb2..d9d93b5213 100644 --- a/android/service/engine/jni/NativeService/PackageInfo.h +++ b/android/service/engine/jni/NativeService/PackageInfo.h @@ -8,7 +8,7 @@ #define ARCH_X64_NAME "x64" #define ARCH_ARMv5_NAME "armv5" #define ARCH_ARMv6_NAME "armv6" -#define ARCH_ARMv7_NAME "armv7" +#define ARCH_ARMv7_NAME "armv7a" #define ARCH_ARMv8_NAME "armv8" #define FEATURES_HAS_VFPv3d16_NAME "vfpv3d16" @@ -26,7 +26,7 @@ class PackageInfo -{ +{ public: PackageInfo(const std::string& version, int platform, int cpu_id); PackageInfo(const std::string& fullname, const std::string& install_path, const std::string& package_version = "0.0"); @@ -38,7 +38,7 @@ public: bool operator==(const PackageInfo& package) const; static const std::map PlatformNameMap; bool IsValid() const; - + protected: static std::map InitPlatformNameMap(); std::string Version; diff --git a/modules/nonfree/CMakeLists.txt b/modules/nonfree/CMakeLists.txt index 873532c3fb..8c7bd0efde 100644 --- a/modules/nonfree/CMakeLists.txt +++ b/modules/nonfree/CMakeLists.txt @@ -1,2 +1,6 @@ +if(BUILD_ANDROID_PACKAGE) + ocv_module_disable(nonfree) +endif() + set(the_description "Functionality with possible limitations on the use") ocv_define_module(nonfree opencv_imgproc opencv_features2d)