diff --git a/src/apps/marble-maps/CMakeLists.txt b/src/apps/marble-maps/CMakeLists.txt
--- a/src/apps/marble-maps/CMakeLists.txt
+++ b/src/apps/marble-maps/CMakeLists.txt
@@ -3,20 +3,18 @@
include_directories(${CMAKE_CURRENT_BINARY_DIR})
-if (CMAKE_SYSTEM_NAME STREQUAL Android)
- set(TARGET Marble)
+add_executable(marble-maps ${marble_SRCS} ${marble_QRCS})
+if (ANDROID)
find_package(Qt5 ${REQUIRED_QT_VERSION} REQUIRED
COMPONENTS
AndroidExtras
QuickControls2
)
- add_library (${TARGET} SHARED ${marble_SRCS} ${marble_QRCS})
-
# while not directly linked, need to be listed here to have deployqt pick up those libs
target_link_libraries (
- ${TARGET}
+ marble-maps
marblewidget
astro
Qt5::Concurrent
@@ -35,54 +33,12 @@
if (TARGET Qt5::WebEngineWidgets)
target_link_libraries(${TARGET} Qt5::WebEngineWidgets Qt5::WebEngine)
endif()
-else()
- set(TARGET marble-maps)
- add_executable (${TARGET} ${marble_SRCS} ${marble_QRCS})
endif()
target_link_libraries (
- ${TARGET}
+ marble-maps
marbledeclarative
)
FILE(GLOB QML_FILES *.qml)
add_custom_target(marble-maps_resources ALL SOURCES ${QML_FILES} package/AndroidManifest.xml)
-
-if (CMAKE_SYSTEM_NAME STREQUAL Android)
- install(DIRECTORY "../../../data/android/" DESTINATION "${CMAKE_INSTALL_PREFIX}/res")
- set(ABSOLUTE_INSTALL_PATH "${CMAKE_INSTALL_PREFIX}")
- if(NOT IS_ABSOLUTE "${ABSOLUTE_INSTALL_PATH}")
- set(ABSOLUTE_INSTALL_PATH "${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_PREFIX}")
- endif()
- get_filename_component(ABSOLUTE_INSTALL_PATH "${ABSOLUTE_INSTALL_PATH}" ABSOLUTE)
- get_filename_component(QT_ANDROID_QT_ROOT "${Qt5Core_DIR}/../../.." ABSOLUTE)
- set(ANDROID_SDK_ROOT $ENV{ANDROID_SDK_ROOT})
- set(ANDROID_NDK_ROOT $ENV{ANDROID_NDK_ROOT})
- set(QT_ANDROID_APP_PATH "${ABSOLUTE_INSTALL_PATH}/libs/${ANDROID_ABI}/libMarble.so")
- set(QT_ANDROID_APP_EXTRA_LIBS "${ABSOLUTE_INSTALL_PATH}/lib/libastro.so,${ABSOLUTE_INSTALL_PATH}/lib/libmarblewidget-qt5.so,${ABSOLUTE_INSTALL_PATH}/lib/libmarbledeclarative.so")
- set(QT_ANDROID_APP_PACKAGE_SOURCE_ROOT "${CMAKE_CURRENT_SOURCE_DIR}/package")
- set(QT_ANDROID_APP_PACKAGE_NAME "org.kde.marble.maps")
- set(QT_ANDROID_APP_NAME "Marble Maps")
- set(QT_ANDROID_APP_EXTRA_PLUGINS "${ABSOLUTE_INSTALL_PATH}//share,${ABSOLUTE_INSTALL_PATH}//lib/qml")
- configure_file(package/deploy-marble-maps.json.in ${CMAKE_CURRENT_BINARY_DIR}/deploy-marble-maps.json @ONLY)
- install(FILES ${CMAKE_CURRENT_BINARY_DIR}/deploy-marble-maps.json DESTINATION "${CMAKE_INSTALL_PREFIX}/share")
- install(TARGETS ${TARGET} LIBRARY DESTINATION libs/${ANDROID_ABI})
- if (TARGET create-apk-Marble)
- set(PACKAGE_DIR "${CMAKE_BINARY_DIR}/Marble_projects/")
- set_target_properties(create-apk-Marble PROPERTIES ANDROID_APK_DIR "${PACKAGE_DIR}")
- add_custom_target(marble-move-metadata ALL
- COMMAND cmake -E echo "Moving Marble shared Android resources"
- COMMAND cmake -E remove_directory "${PACKAGE_DIR}"
- COMMAND cmake -E copy_directory "${CMAKE_CURRENT_SOURCE_DIR}/package" "${PACKAGE_DIR}"
- COMMAND cmake -E copy_directory "${CMAKE_SOURCE_DIR}/data/android/" "${PACKAGE_DIR}/res"
- )
- add_dependencies(create-apk-Marble marble-move-metadata)
- endif()
-else()
- if(MARBLE_INSTALL_ANDROID_APPS)
- if(APPS_INSTALL_DIR)
- install(PROGRAMS org.kde.marble.maps.desktop DESTINATION ${APPS_INSTALL_DIR})
- endif(APPS_INSTALL_DIR)
- install(TARGETS ${TARGET} RUNTIME DESTINATION bin)
- endif()
-endif()
diff --git a/src/apps/marble-maps/package/AndroidManifest.xml b/src/apps/marble-maps/package/AndroidManifest.xml
--- a/src/apps/marble-maps/package/AndroidManifest.xml
+++ b/src/apps/marble-maps/package/AndroidManifest.xml
@@ -19,7 +19,7 @@
-
+
diff --git a/src/apps/marble-maps/package/build.gradle b/src/apps/marble-maps/package/build.gradle
new file mode 100644
--- /dev/null
+++ b/src/apps/marble-maps/package/build.gradle
@@ -0,0 +1,58 @@
+buildscript {
+ repositories {
+ google()
+ jcenter()
+ }
+
+ dependencies {
+ classpath 'com.android.tools.build:gradle:3.2.0'
+ }
+}
+
+repositories {
+ google()
+ jcenter()
+}
+
+apply plugin: 'com.android.application'
+
+dependencies {
+ compile fileTree(dir: 'libs', include: ['*.jar', '*.aar'])
+ compile 'com.android.support:support-v4:28.0.0'
+}
+
+android {
+ /*******************************************************
+ * The following variables:
+ * - androidBuildToolsVersion,
+ * - androidCompileSdkVersion
+ * - qt5AndroidDir - holds the path to qt android files
+ * needed to build any Qt application
+ * on Android.
+ *
+ * are defined in gradle.properties file. This file is
+ * updated by QtCreator and androiddeployqt tools.
+ * Changing them manually might break the compilation!
+ *******************************************************/
+
+ compileSdkVersion androidCompileSdkVersion.toInteger()
+
+ buildToolsVersion androidBuildToolsVersion
+
+ sourceSets {
+ main {
+ manifest.srcFile 'AndroidManifest.xml'
+ java.srcDirs = [qt5AndroidDir + '/src', 'src', 'java']
+ aidl.srcDirs = [qt5AndroidDir + '/src', 'src', 'aidl']
+ res.srcDirs = [qt5AndroidDir + '/res', 'res']
+ resources.srcDirs = ['src']
+ renderscript.srcDirs = ['src']
+ assets.srcDirs = ['assets']
+ jniLibs.srcDirs = ['libs']
+ }
+ }
+
+ lintOptions {
+ abortOnError false
+ }
+}
diff --git a/src/apps/marble-maps/package/deploy-marble-maps.json.in b/src/apps/marble-maps/package/deploy-marble-maps.json.in
deleted file mode 100644
--- a/src/apps/marble-maps/package/deploy-marble-maps.json.in
+++ /dev/null
@@ -1,17 +0,0 @@
-{
- "description": "This file is to be read by androiddeployqt",
- "qt": "@QT_ANDROID_QT_ROOT@",
- "sdk": "@ANDROID_SDK_ROOT@",
- "ndk": "@ANDROID_NDK_ROOT@",
- "toolchain-prefix": "@ANDROID_TOOLCHAIN@",
- "tool-prefix": "@ANDROID_TOOLCHAIN@",
- "toolchain-version": "@ANDROID_GCC_VERSION@",
- "ndk-host": "@_HOST@",
- "target-architecture": "@ANDROID_ABI@",
- "application-binary": "@QT_ANDROID_APP_PATH@",
- "android-package": "@QT_ANDROID_APP_PACKAGE_NAME@",
- "android-app-name": "@QT_ANDROID_APP_NAME@",
- "android-extra-libs": "@QT_ANDROID_APP_EXTRA_LIBS@",
- "android-extra-plugins": "@QT_ANDROID_APP_EXTRA_PLUGINS@",
- "android-package-source-directory": "@QT_ANDROID_APP_PACKAGE_SOURCE_ROOT@"
-}
diff --git a/src/apps/marble-maps/package/res/drawable-hdpi/marblelogo.png b/src/apps/marble-maps/package/res/drawable-hdpi/marblelogo.png
new file mode 100644
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000
GIT binary patch
literal 0
Hc$@
+
+ -
+
+
+
+
+ -
+
+
+
diff --git a/src/apps/marble-maps/package/res/drawable/splash_logo.png b/src/apps/marble-maps/package/res/drawable/splash_logo.png
new file mode 100644
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000
GIT binary patch
literal 0
Hc$@
+
+
+