mirror of
https://gitlab.freedesktop.org/monado/monado.git
synced 2024-12-27 01:46:51 +00:00
gradle: Upgrade gradle and packages
* Upgrades the gradle version (using AGP upgrade assistant) * Upgrades android package dependencies to latest versions (using project settings upgrade tool) * Bump compile platform SDK level to 34 (required for package updates) * Bump java src compatibility version (required for api level 34) * Fix deprecated warnings * Code compile fixes to account for package changes * explicitly specify cmake version * bump NDK to latest LTS version Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2270>
This commit is contained in:
parent
9e46337a6a
commit
ae37c1bf29
|
@ -138,7 +138,7 @@ win:container_prep:
|
||||||
.monado.variables.debian:bookworm-ndk:
|
.monado.variables.debian:bookworm-ndk:
|
||||||
variables:
|
variables:
|
||||||
FDO_DISTRIBUTION_VERSION: "bookworm"
|
FDO_DISTRIBUTION_VERSION: "bookworm"
|
||||||
FDO_DISTRIBUTION_TAG: "2024-01-16"
|
FDO_DISTRIBUTION_TAG: "2024-07-02"
|
||||||
FDO_REPO_SUFFIX: ndk
|
FDO_REPO_SUFFIX: ndk
|
||||||
|
|
||||||
# Variables for build and usage of Ubuntu focal image
|
# Variables for build and usage of Ubuntu focal image
|
||||||
|
|
|
@ -9,6 +9,7 @@ FILES_IN_SUBDIR := \
|
||||||
.gitlab-ci/distributions \
|
.gitlab-ci/distributions \
|
||||||
.gitlab-ci/reprepro.sh \
|
.gitlab-ci/reprepro.sh \
|
||||||
.gitlab-ci/install-android-sdk.sh \
|
.gitlab-ci/install-android-sdk.sh \
|
||||||
|
.gitlab-ci/install-ndk.sh \
|
||||||
|
|
||||||
CONFIG_FILE := .gitlab-ci/config.yml
|
CONFIG_FILE := .gitlab-ci/config.yml
|
||||||
OUTPUTS := .gitlab-ci.yml \
|
OUTPUTS := .gitlab-ci.yml \
|
||||||
|
|
|
@ -131,13 +131,15 @@ distributions:
|
||||||
distro_version: bookworm
|
distro_version: bookworm
|
||||||
repo_suffix: ndk
|
repo_suffix: ndk
|
||||||
script: android_container_prep.sh
|
script: android_container_prep.sh
|
||||||
tag: "2024-01-16"
|
tag: "2024-07-02"
|
||||||
# This must match ext.sharedCompileSdk in build.gradle
|
# This must match ext.sharedCompileSdk in build.gradle
|
||||||
android_compile_sdk: 32
|
android_compile_sdk: 34
|
||||||
# This must match buildscript.ext.buildToolsVersion in build.gradle
|
# This must match buildscript.ext.buildToolsVersion in build.gradle
|
||||||
android_build_tools: 32.0.0
|
android_build_tools: 34.0.0
|
||||||
|
# This must match ext.ndk_version in build.gradle
|
||||||
|
android_ndk_version: r26d
|
||||||
# look up on https://developer.android.com/studio/index.html#downloads when updating other versions
|
# look up on https://developer.android.com/studio/index.html#downloads when updating other versions
|
||||||
android_cli_tools: 9477386
|
android_cli_tools: 11076708
|
||||||
|
|
||||||
packages:
|
packages:
|
||||||
git:
|
git:
|
||||||
|
|
|
@ -12,10 +12,10 @@
|
||||||
# Partially inspired by https://about.gitlab.com/blog/2018/10/24/setting-up-gitlab-ci-for-android-projects/
|
# Partially inspired by https://about.gitlab.com/blog/2018/10/24/setting-up-gitlab-ci-for-android-projects/
|
||||||
|
|
||||||
set -eo pipefail
|
set -eo pipefail
|
||||||
VERSION=9477386
|
VERSION=11076708
|
||||||
ROOT=${ROOT:-/opt/android-sdk}
|
ROOT=${ROOT:-/opt/android-sdk}
|
||||||
ANDROID_COMPILE_SDK=${ANDROID_COMPILE_SDK:-32}
|
ANDROID_COMPILE_SDK=${ANDROID_COMPILE_SDK:-34}
|
||||||
ANDROID_BUILD_TOOLS=${ANDROID_BUILD_TOOLS:-32.0.0}
|
ANDROID_BUILD_TOOLS=${ANDROID_BUILD_TOOLS:-34.0.0}
|
||||||
|
|
||||||
mkdir -p "$ROOT"
|
mkdir -p "$ROOT"
|
||||||
FN=commandlinetools-linux-${VERSION}_latest.zip
|
FN=commandlinetools-linux-${VERSION}_latest.zip
|
||||||
|
|
|
@ -1,10 +1,18 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
# Copyright 2018-2020, 2022, Collabora, Ltd. and the Monado contributors
|
# Copyright 2018-2020, 2022, 2024 Collabora, Ltd. and the Monado contributors
|
||||||
# SPDX-License-Identifier: BSL-1.0
|
# SPDX-License-Identifier: BSL-1.0
|
||||||
|
|
||||||
# aka 21.4.7075529
|
##
|
||||||
VERSION=r21e
|
#######################################################
|
||||||
FN=android-ndk-${VERSION}-linux-x86_64.zip
|
# GENERATED - DO NOT EDIT #
|
||||||
|
# see .gitlab-ci/install-ndk.sh.jinja instead #
|
||||||
|
#######################################################
|
||||||
|
##
|
||||||
|
|
||||||
|
# Partially inspired by https://about.gitlab.com/blog/2018/10/24/setting-up-gitlab-ci-for-android-projects/
|
||||||
|
|
||||||
|
VERSION=r26d
|
||||||
|
FN=android-ndk-${VERSION}-linux.zip
|
||||||
wget https://dl.google.com/android/repository/$FN
|
wget https://dl.google.com/android/repository/$FN
|
||||||
unzip $FN -d /opt
|
unzip $FN -d /opt
|
||||||
mv /opt/android-ndk-${VERSION} /opt/android-ndk
|
mv /opt/android-ndk-${VERSION} /opt/android-ndk
|
||||||
|
|
23
.gitlab-ci/templates/install-ndk.sh.jinja
Normal file
23
.gitlab-ci/templates/install-ndk.sh.jinja
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
#!/bin/sh
|
||||||
|
# Copyright 2018-2020, 2022, 2024 Collabora, Ltd. and the Monado contributors
|
||||||
|
# SPDX-License-Identifier: BSL-1.0
|
||||||
|
|
||||||
|
#{# ignore the warning, this is actually the template to edit. #}#
|
||||||
|
#######################################################
|
||||||
|
# GENERATED - DO NOT EDIT #
|
||||||
|
# see .gitlab-ci/install-ndk.sh.jinja instead #
|
||||||
|
#######################################################
|
||||||
|
#{#
|
||||||
|
Please run the following after editing:
|
||||||
|
make -f .gitlab-ci/ci-scripts.mk
|
||||||
|
#}#
|
||||||
|
|
||||||
|
# Partially inspired by https://about.gitlab.com/blog/2018/10/24/setting-up-gitlab-ci-for-android-projects/
|
||||||
|
{% for distro in distributions -%} {%- for image in distro.images if "android_ndk_version" in image %}
|
||||||
|
|
||||||
|
VERSION={{image.android_ndk_version}}
|
||||||
|
FN=android-ndk-${VERSION}-linux.zip
|
||||||
|
wget https://dl.google.com/android/repository/$FN
|
||||||
|
unzip $FN -d /opt
|
||||||
|
mv /opt/android-ndk-${VERSION} /opt/android-ndk
|
||||||
|
{% endfor -%} {%- endfor %}
|
31
build.gradle
31
build.gradle
|
@ -3,27 +3,27 @@
|
||||||
|
|
||||||
buildscript {
|
buildscript {
|
||||||
ext {
|
ext {
|
||||||
kotlinVersion = '1.7.10'
|
kotlinVersion = '2.0.0'
|
||||||
|
|
||||||
latestAboutLibsRelease = '8.9.4'
|
latestAboutLibsRelease = '11.2.2'
|
||||||
|
|
||||||
androidxCoreVersion = '1.8.0'
|
androidxCoreVersion = '1.13.1'
|
||||||
androidxAnnotationVersion = '1.3.0'
|
androidxAnnotationVersion = '1.8.0'
|
||||||
androidxAppCompatVersion = '1.5.1'
|
androidxAppCompatVersion = '1.7.0'
|
||||||
androidxLifecycleVersion = '2.5.1'
|
androidxLifecycleVersion = '2.8.2'
|
||||||
androidxConstraintLayoutVersion = '2.1.3'
|
androidxConstraintLayoutVersion = '2.1.4'
|
||||||
androidxCardViewVersion = '1.0.0'
|
androidxCardViewVersion = '1.0.0'
|
||||||
androidxRecyclerViewVersion = '1.2.1'
|
androidxRecyclerViewVersion = '1.3.2'
|
||||||
|
|
||||||
hiltVersion = '2.45'
|
hiltVersion = '2.51.1'
|
||||||
|
|
||||||
materialVersion = '1.8.0'
|
materialVersion = '1.12.0'
|
||||||
|
|
||||||
// This is the version to download if we can't find it locally.
|
// This is the version to download if we can't find it locally.
|
||||||
eigenFetchVersion = '3.4.0'
|
eigenFetchVersion = '3.4.0'
|
||||||
|
|
||||||
// If you update this, must also update .gitlab-ci/config.yml
|
// If you update this, must also update .gitlab-ci/config.yml
|
||||||
buildToolsVersion = '32.0.0'
|
buildToolsVersion = '34.0.0'
|
||||||
}
|
}
|
||||||
repositories {
|
repositories {
|
||||||
google()
|
google()
|
||||||
|
@ -36,8 +36,8 @@ buildscript {
|
||||||
}
|
}
|
||||||
plugins {
|
plugins {
|
||||||
// Android Gradle Plugin
|
// Android Gradle Plugin
|
||||||
id 'com.android.application' version '8.1.0' apply false
|
id 'com.android.application' version '8.5.0' apply false
|
||||||
id 'com.android.library' version '8.1.0' apply false
|
id 'com.android.library' version '8.5.0' apply false
|
||||||
|
|
||||||
id 'org.jetbrains.kotlin.android' version "$kotlinVersion" apply false
|
id 'org.jetbrains.kotlin.android' version "$kotlinVersion" apply false
|
||||||
|
|
||||||
|
@ -70,9 +70,10 @@ spotless {
|
||||||
}
|
}
|
||||||
|
|
||||||
ext {
|
ext {
|
||||||
ndk_version = '21.4.7075529'
|
cmake_version = '3.22.1'
|
||||||
|
ndk_version = '26.3.11579264'
|
||||||
// If you update this, must also update .gitlab-ci/config.yml
|
// If you update this, must also update .gitlab-ci/config.yml
|
||||||
sharedCompileSdk = 32
|
sharedCompileSdk = 34
|
||||||
sharedTargetSdk = 31
|
sharedTargetSdk = 31
|
||||||
sharedMinSdk = 26
|
sharedMinSdk = 26
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
# Copyright 2020, Collabora, Ltd.
|
# Copyright 2020, Collabora, Ltd.
|
||||||
# SPDX-License-Identifier: BSL-1.0
|
# SPDX-License-Identifier: BSL-1.0
|
||||||
|
|
||||||
android.defaults.buildfeatures.buildconfig=true
|
|
||||||
android.nonFinalResIds=false
|
android.nonFinalResIds=false
|
||||||
android.nonTransitiveRClass=false
|
android.nonTransitiveRClass=false
|
||||||
android.useAndroidX = true
|
android.useAndroidX = true
|
||||||
|
|
2
gradle/wrapper/gradle-wrapper.properties
vendored
2
gradle/wrapper/gradle-wrapper.properties
vendored
|
@ -1,6 +1,6 @@
|
||||||
distributionBase=GRADLE_USER_HOME
|
distributionBase=GRADLE_USER_HOME
|
||||||
distributionPath=wrapper/dists
|
distributionPath=wrapper/dists
|
||||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.0-all.zip
|
distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-all.zip
|
||||||
networkTimeout=10000
|
networkTimeout=10000
|
||||||
zipStoreBase=GRADLE_USER_HOME
|
zipStoreBase=GRADLE_USER_HOME
|
||||||
zipStorePath=wrapper/dists
|
zipStorePath=wrapper/dists
|
||||||
|
|
|
@ -26,8 +26,8 @@ android {
|
||||||
}
|
}
|
||||||
|
|
||||||
compileOptions {
|
compileOptions {
|
||||||
sourceCompatibility JavaVersion.VERSION_1_8
|
sourceCompatibility JavaVersion.VERSION_17
|
||||||
targetCompatibility JavaVersion.VERSION_1_8
|
targetCompatibility JavaVersion.VERSION_17
|
||||||
}
|
}
|
||||||
packagingOptions {
|
packagingOptions {
|
||||||
resources {
|
resources {
|
||||||
|
|
|
@ -50,8 +50,8 @@ android {
|
||||||
}
|
}
|
||||||
|
|
||||||
compileOptions {
|
compileOptions {
|
||||||
sourceCompatibility JavaVersion.VERSION_1_8
|
sourceCompatibility JavaVersion.VERSION_17
|
||||||
targetCompatibility JavaVersion.VERSION_1_8
|
targetCompatibility JavaVersion.VERSION_17
|
||||||
}
|
}
|
||||||
packagingOptions {
|
packagingOptions {
|
||||||
resources {
|
resources {
|
||||||
|
@ -64,6 +64,7 @@ android {
|
||||||
}
|
}
|
||||||
buildFeatures {
|
buildFeatures {
|
||||||
aidl true
|
aidl true
|
||||||
|
buildConfig true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -50,8 +50,8 @@ android {
|
||||||
}
|
}
|
||||||
|
|
||||||
compileOptions {
|
compileOptions {
|
||||||
sourceCompatibility JavaVersion.VERSION_1_8
|
sourceCompatibility JavaVersion.VERSION_17
|
||||||
targetCompatibility JavaVersion.VERSION_1_8
|
targetCompatibility JavaVersion.VERSION_17
|
||||||
}
|
}
|
||||||
packagingOptions {
|
packagingOptions {
|
||||||
resources {
|
resources {
|
||||||
|
|
|
@ -83,7 +83,7 @@ class DisplayOverOtherAppsStatusFragment : Fragment() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Suppress("DEPRECATION")
|
@Deprecated("DEPRECATION")
|
||||||
private val isRuntimeServiceRunning: Boolean
|
private val isRuntimeServiceRunning: Boolean
|
||||||
get() {
|
get() {
|
||||||
var running = false
|
var running = false
|
||||||
|
|
|
@ -206,6 +206,7 @@ android {
|
||||||
externalNativeBuild {
|
externalNativeBuild {
|
||||||
cmake {
|
cmake {
|
||||||
path "${rootDir}/CMakeLists.txt"
|
path "${rootDir}/CMakeLists.txt"
|
||||||
|
version "${cmake_version}"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -234,8 +235,8 @@ android {
|
||||||
enableAggregatingTask = true
|
enableAggregatingTask = true
|
||||||
}
|
}
|
||||||
compileOptions {
|
compileOptions {
|
||||||
sourceCompatibility JavaVersion.VERSION_1_8
|
sourceCompatibility JavaVersion.VERSION_17
|
||||||
targetCompatibility JavaVersion.VERSION_1_8
|
targetCompatibility JavaVersion.VERSION_17
|
||||||
}
|
}
|
||||||
packagingOptions {
|
packagingOptions {
|
||||||
resources {
|
resources {
|
||||||
|
@ -249,17 +250,19 @@ android {
|
||||||
lint {
|
lint {
|
||||||
fatal 'StopShip'
|
fatal 'StopShip'
|
||||||
}
|
}
|
||||||
|
buildFeatures {
|
||||||
|
buildConfig true
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
aboutLibraries {
|
aboutLibraries {
|
||||||
// Full license text for license IDs mentioned here
|
// Full license text for license IDs mentioned here
|
||||||
// will be included, even if no detected dependency uses them.
|
// will be included, even if no detected dependency uses them.
|
||||||
additionalLicenses {
|
additionalLicenses = [
|
||||||
mit
|
"mit",
|
||||||
mpl_2_0
|
"mpl_2_0",
|
||||||
bsl_1_0
|
"bsl_1_0"
|
||||||
}
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
|
|
|
@ -16,7 +16,6 @@ import org.freedesktop.monado.android_common.NoticeFragmentProvider
|
||||||
class AboutLibrariesNoticeFragmentProvider @Inject constructor() : NoticeFragmentProvider {
|
class AboutLibrariesNoticeFragmentProvider @Inject constructor() : NoticeFragmentProvider {
|
||||||
override fun makeNoticeFragment(): Fragment =
|
override fun makeNoticeFragment(): Fragment =
|
||||||
LibsBuilder()
|
LibsBuilder()
|
||||||
.withFields(R.string::class.java.fields)
|
|
||||||
.withAboutIconShown(false) // We do this ourselves bigger
|
.withAboutIconShown(false) // We do this ourselves bigger
|
||||||
.withAboutVersionShown(true) // Let the fragment show our version
|
.withAboutVersionShown(true) // Let the fragment show our version
|
||||||
.withLicenseShown(true) // Not sure why you'd do this without license info
|
.withLicenseShown(true) // Not sure why you'd do this without license info
|
||||||
|
|
Loading…
Reference in a new issue