[Android] gradle: set the java target version once for all targets
Steve Lhomme
git at videolan.org
Mon Jul 20 13:06:15 UTC 2026
vlc-android | branch: master | Steve Lhomme <robux4 at ycbcr.xyz> | Tue Jun 16 15:07:01 2026 +0200| [b9a49ba9b07faf56851a528dbf06d04105710d27] | committer: Duncan McNamara
gradle: set the java target version once for all targets
No need to spread this all over the place and forget some.
> https://code.videolan.org/videolan/vlc-android/commit/b9a49ba9b07faf56851a528dbf06d04105710d27
---
application/app/build.gradle | 3 ---
application/donations/build.gradle | 4 ----
application/live-plot-graph/build.gradle | 5 -----
application/mediadb/build.gradle | 5 -----
application/moviepedia/build.gradle | 5 -----
application/remote-access-client/build.gradle | 4 ----
application/remote-access-server/build.gradle | 2 --
application/resources/build.gradle | 5 -----
application/television/build.gradle | 5 -----
application/tools/build.gradle | 4 ----
application/vlc-android/build.gradle | 5 -----
build.gradle | 18 +++++++++++++++++-
medialibrary/build.gradle | 4 ----
13 files changed, 17 insertions(+), 52 deletions(-)
diff --git a/application/app/build.gradle b/application/app/build.gradle
index 9062b16d36..19c753c32a 100644
--- a/application/app/build.gradle
+++ b/application/app/build.gradle
@@ -6,8 +6,6 @@ plugins {
android {
compileOptions {
coreLibraryDesugaringEnabled = true
- sourceCompatibility "$rootProject.ext.targetJVM"
- targetCompatibility "$rootProject.ext.targetJVM"
}
packagingOptions {
@@ -161,7 +159,6 @@ android {
output.outputFileName = outputName
}
}
-
}
dependencies {
diff --git a/application/donations/build.gradle b/application/donations/build.gradle
index c40636f0bf..1f34b6f51d 100644
--- a/application/donations/build.gradle
+++ b/application/donations/build.gradle
@@ -63,10 +63,6 @@ android {
matchingFallbacks = ['release']
}
}
- compileOptions {
- sourceCompatibility "$rootProject.ext.targetJVM"
- targetCompatibility "$rootProject.ext.targetJVM"
- }
namespace = 'org.videolan.vlc.donations'
buildFeatures {
aidl = true
diff --git a/application/live-plot-graph/build.gradle b/application/live-plot-graph/build.gradle
index 471f511f72..48b4651508 100644
--- a/application/live-plot-graph/build.gradle
+++ b/application/live-plot-graph/build.gradle
@@ -34,11 +34,6 @@ android {
consumerProguardFiles 'consumer-rules.pro'
}
- compileOptions {
- sourceCompatibility "$rootProject.ext.targetJVM"
- targetCompatibility "$rootProject.ext.targetJVM"
- }
-
buildTypes {
release {
minifyEnabled false
diff --git a/application/mediadb/build.gradle b/application/mediadb/build.gradle
index 2d06a84dfe..7f55a73cbc 100644
--- a/application/mediadb/build.gradle
+++ b/application/mediadb/build.gradle
@@ -35,11 +35,6 @@ android {
}
}
- compileOptions {
- sourceCompatibility "$rootProject.ext.targetJVM"
- targetCompatibility "$rootProject.ext.targetJVM"
- }
-
defaultConfig {
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
consumerProguardFiles 'consumer-rules.pro'
diff --git a/application/moviepedia/build.gradle b/application/moviepedia/build.gradle
index bf2b21766d..d5fe61d2c9 100644
--- a/application/moviepedia/build.gradle
+++ b/application/moviepedia/build.gradle
@@ -26,11 +26,6 @@ android {
multiDexEnabled = true
}
- compileOptions {
- sourceCompatibility "$rootProject.ext.targetJVM"
- targetCompatibility "$rootProject.ext.targetJVM"
- }
-
buildTypes {
release {
minifyEnabled false
diff --git a/application/remote-access-client/build.gradle b/application/remote-access-client/build.gradle
index 3e52d3af56..b49ea57031 100644
--- a/application/remote-access-client/build.gradle
+++ b/application/remote-access-client/build.gradle
@@ -60,10 +60,6 @@ android {
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
- compileOptions {
- sourceCompatibility "$rootProject.ext.targetJVM"
- targetCompatibility "$rootProject.ext.targetJVM"
- }
task webCopy(type: Copy) {
from 'remoteaccess/dist'
diff --git a/application/remote-access-server/build.gradle b/application/remote-access-server/build.gradle
index 6d63134890..caf48b6a62 100644
--- a/application/remote-access-server/build.gradle
+++ b/application/remote-access-server/build.gradle
@@ -44,8 +44,6 @@ android {
compileOptions {
coreLibraryDesugaringEnabled = true
- sourceCompatibility "$rootProject.ext.targetJVM"
- targetCompatibility "$rootProject.ext.targetJVM"
}
buildFeatures {
buildConfig = true
diff --git a/application/resources/build.gradle b/application/resources/build.gradle
index e404e03364..b40a519124 100644
--- a/application/resources/build.gradle
+++ b/application/resources/build.gradle
@@ -19,11 +19,6 @@ android {
vectorDrawables.useSupportLibrary = true
}
- compileOptions {
- sourceCompatibility "$rootProject.ext.targetJVM"
- targetCompatibility "$rootProject.ext.targetJVM"
- }
-
buildTypes {
release {
minifyEnabled false
diff --git a/application/television/build.gradle b/application/television/build.gradle
index 146ac647fe..b825e5b23c 100644
--- a/application/television/build.gradle
+++ b/application/television/build.gradle
@@ -22,11 +22,6 @@ android {
consumerProguardFiles 'consumer-rules.pro'
}
- compileOptions {
- sourceCompatibility "$rootProject.ext.targetJVM"
- targetCompatibility "$rootProject.ext.targetJVM"
- }
-
buildTypes {
release {
minifyEnabled false
diff --git a/application/tools/build.gradle b/application/tools/build.gradle
index f1c96824ae..8167e19a0e 100644
--- a/application/tools/build.gradle
+++ b/application/tools/build.gradle
@@ -9,10 +9,6 @@ android {
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
- compileOptions {
- sourceCompatibility "$rootProject.ext.targetJVM"
- targetCompatibility "$rootProject.ext.targetJVM"
- }
buildTypes {
release {
diff --git a/application/vlc-android/build.gradle b/application/vlc-android/build.gradle
index 5dc4253d21..0b906f08b0 100644
--- a/application/vlc-android/build.gradle
+++ b/application/vlc-android/build.gradle
@@ -66,11 +66,6 @@ android {
}
}
- compileOptions {
- sourceCompatibility "$rootProject.ext.targetJVM"
- targetCompatibility "$rootProject.ext.targetJVM"
- }
-
buildTypes {
release {
proguardFile 'proguard.cfg'
diff --git a/build.gradle b/build.gradle
index 57a8126aa1..167d55fd5c 100644
--- a/build.gradle
+++ b/build.gradle
@@ -36,11 +36,27 @@ allprojects {
tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).configureEach {
kotlin {
compilerOptions {
- jvmTarget.set("$rootProject.ext.targetJVMKotlin")
+ jvmTarget.set(rootProject.ext.targetJVMKotlin)
optIn.add("kotlin.RequiresOptIn")
}
}
}
+
+ tasks.withType(JavaCompile).configureEach {
+ sourceCompatibility = rootProject.ext.targetJVM.toString()
+ targetCompatibility = rootProject.ext.targetJVM.toString()
+ }
+
+ afterEvaluate { project ->
+ if (project.hasProperty('android')) {
+ project.android {
+ compileOptions {
+ sourceCompatibility rootProject.ext.targetJVM
+ targetCompatibility rootProject.ext.targetJVM
+ }
+ }
+ }
+ }
}
ext {
diff --git a/medialibrary/build.gradle b/medialibrary/build.gradle
index cb378fec54..192716ee4a 100644
--- a/medialibrary/build.gradle
+++ b/medialibrary/build.gradle
@@ -36,10 +36,6 @@ base {
}
android {
namespace = 'org.videolan.medialibrary'
- compileOptions {
- sourceCompatibility "$rootProject.ext.targetJVM"
- targetCompatibility "$rootProject.ext.targetJVM"
- }
defaultConfig {
ndkVersion = rootProject.ext.toolchainNdkVersion
More information about the Android
mailing list