summaryrefslogtreecommitdiffstats
path: root/src/android/java/CMakeLists.txt
diff options
context:
space:
mode:
authorAssam Boudjelthia <assam.boudjelthia@qt.io>2022-09-30 14:33:40 +0300
committerAssam Boudjelthia <assam.boudjelthia@qt.io>2023-10-12 11:59:32 +0300
commitd1760bc8100c94a831f80080a5433a360266c5e2 (patch)
tree1eeb4307d556fb308cade5bb873910316e76d221 /src/android/java/CMakeLists.txt
parentc03eb94c8a4c776a0315acc35538b3954e031222 (diff)
Android: Simplify the user facing Java bindings
Move QtLoader classes outside of the bindings package and into the internal Android Java package (Qt6Android.jar that is), to simplify Qt for Android project templates. This is because QtLoader classes are used to trigger Qt libs loading and the users don't need to necessarily know about it or find it in the project's source files. The classes in question: QtLoader, QtActivityLoader, and QtServiceLoader. Task-number: QTBUG-115014 Task-number: QTBUG-114593 Change-Id: I61f68abf6ee83fc45bc47ed9af7457db4f7deabc Reviewed-by: Tinja Paavoseppä <tinja.paavoseppa@qt.io>
Diffstat (limited to 'src/android/java/CMakeLists.txt')
-rw-r--r--src/android/java/CMakeLists.txt15
1 files changed, 11 insertions, 4 deletions
diff --git a/src/android/java/CMakeLists.txt b/src/android/java/CMakeLists.txt
index 32697410eb..2ff2fb5791 100644
--- a/src/android/java/CMakeLists.txt
+++ b/src/android/java/CMakeLists.txt
@@ -1,4 +1,4 @@
-# Copyright (C) 2022 The Qt Company Ltd.
+# Copyright (C) 2023 The Qt Company Ltd.
# SPDX-License-Identifier: BSD-3-Clause
# Android Java Resource files
@@ -10,11 +10,8 @@ set(resource_directories
set(java_bindings
"${CMAKE_CURRENT_SOURCE_DIR}/src/org/qtproject/qt/android/bindings/QtActivity.java"
- "${CMAKE_CURRENT_SOURCE_DIR}/src/org/qtproject/qt/android/bindings/QtActivityLoader.java"
"${CMAKE_CURRENT_SOURCE_DIR}/src/org/qtproject/qt/android/bindings/QtService.java"
- "${CMAKE_CURRENT_SOURCE_DIR}/src/org/qtproject/qt/android/bindings/QtServiceLoader.java"
"${CMAKE_CURRENT_SOURCE_DIR}/src/org/qtproject/qt/android/bindings/QtApplication.java"
- "${CMAKE_CURRENT_SOURCE_DIR}/src/org/qtproject/qt/android/bindings/QtLoader.java"
)
set(strings_resouces
@@ -57,3 +54,13 @@ if(NOT QT_WILL_INSTALL)
DIRECTORIES ${resource_directories}
DESTINATION ${destination})
endif()
+
+# To avoid Java build errors after the loader classes have been moved to the internal Jar package,
+# make this step to remove them from the build folder. This mainly useful for existing builds,
+# as clean builds wouldn't have to deal with this case.
+if ("${PROJECT_VERSION}" GREATER_EQUAL "6.7")
+ set(loader_bindings "QtLoader.java" "QtActivityLoader.java" "QtServiceLoader.java")
+ foreach(binding IN LISTS loader_bindings)
+ file(REMOVE "${destination}/src/org/qtproject/qt/android/bindings/${binding}")
+ endforeach()
+endif()