diff --git a/CMakeLists.txt b/CMakeLists.txt index 7bcb5960..333ec8e4 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -70,6 +70,8 @@ install(PROGRAMS org.kde.kasts.desktop DESTINATION ${KDE_INSTALL_APPDIR}) install(FILES org.kde.kasts.appdata.xml DESTINATION ${KDE_INSTALL_METAINFODIR}) install(FILES kasts.svg DESTINATION ${KDE_INSTALL_FULL_ICONDIR}/hicolor/scalable/apps) +configure_file(${CMAKE_CURRENT_SOURCE_DIR}/android/version.gradle.in ${CMAKE_BINARY_DIR}/version.gradle) + add_subdirectory(src) feature_summary(WHAT ALL INCLUDE_QUIET_PACKAGES FATAL_ON_MISSING_REQUIRED_PACKAGES) diff --git a/android/build.gradle b/android/build.gradle new file mode 100644 index 00000000..dd715eb7 --- /dev/null +++ b/android/build.gradle @@ -0,0 +1,96 @@ +/* + SPDX-FileCopyrightText: 2018-2020 Volker Krause + SPDX-FileCopyrightText: 2019 Nicolas Fella + SPDX-FileCopyrightText: 2020 Gabriel Souza Franco + SPDX-License-Identifier: BSD-3-Clause +*/ + +buildscript { + repositories { + google() + jcenter() + } + + dependencies { + classpath 'com.android.tools.build:gradle:3.6.4' + } +} + +repositories { + google() + jcenter() +} + + +apply plugin: 'com.android.application' +apply from: '../version.gradle' +def timestamp = (int)(new Date().getTime()/1000) + +dependencies { + implementation fileTree(dir: 'libs', include: ['*.jar', '*.aar']) +} + +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'] + } + } + + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 + } + + lintOptions { + abortOnError false + } + + defaultConfig { + minSdkVersion qtMinSdkVersion + targetSdkVersion qtTargetSdkVersion + manifestPlaceholders = [versionName: projectVersionFull, versionCode: timestamp] + } + + packagingOptions { + exclude 'lib/*/*RemoteObjects*' + exclude 'lib/*/*StateMachine*' + exclude 'lib/*/*_imageformats_qico_*' + exclude 'lib/*/*_imageformats_qicns_*' + exclude 'lib/*/*_imageformats_qtga_*' + exclude 'lib/*/*_imageformats_qtiff_*' + exclude 'lib/*/*_qmltooling_*' + } + + aaptOptions { + // different syntax than above + // see https://android.googlesource.com/platform/frameworks/base/+/refs/heads/pie-release/tools/aapt2/util/Files.h#90 + ignoreAssetsPattern '!ECM:!aclocal:!doc:!gtk-doc:!iso-codes:!man:!mime:!pkgconfig:!qlogging-categories5:!iso_15924.mo:!iso_3166-2.mo:!iso_3166-3.mo:!iso_4217.mo:!iso_639-2.mo:!iso_639-3.mo:!iso_639-5.mo:!kcodecs5_qt.qm:!kde5_xml_mimetypes.qm' + } + + +} diff --git a/android/version.gradle.in b/android/version.gradle.in new file mode 100644 index 00000000..fcd087f5 --- /dev/null +++ b/android/version.gradle.in @@ -0,0 +1,6 @@ +// SPDX-FileCopyrightText: 2021 Volker Krause +// SPDX-License-Identifier: BSD-3-Clause + +ext { + projectVersionFull = "@PROJECT_VERSION@" +} diff --git a/kasts b/kasts new file mode 120000 index 00000000..e7d8d7fd --- /dev/null +++ b/kasts @@ -0,0 +1 @@ +/home/user/src/kasts \ No newline at end of file