From 537f0a740aa462e096f6d88c973e676c5bb59d7e Mon Sep 17 00:00:00 2001 From: reuk Date: Fri, 30 Jan 2026 14:18:29 +0000 Subject: [PATCH] Projucer: Use more modern alternative to variantFilter in build.gradle --- .../Builds/Android/app/build.gradle | 16 ++++++---------- .../Builds/Android/app/build.gradle | 16 ++++++---------- .../Builds/Android/app/build.gradle | 16 ++++++---------- .../Builds/Android/app/build.gradle | 16 ++++++---------- .../jucer_ProjectExport_Android.h | 19 +++++++++++-------- 5 files changed, 35 insertions(+), 48 deletions(-) diff --git a/examples/DemoRunner/Builds/Android/app/build.gradle b/examples/DemoRunner/Builds/Android/app/build.gradle index 7178aabcaa..4417c4a5ef 100644 --- a/examples/DemoRunner/Builds/Android/app/build.gradle +++ b/examples/DemoRunner/Builds/Android/app/build.gradle @@ -77,16 +77,12 @@ android { } } - variantFilter { variant -> - def names = variant.flavors*.name - if (names.contains ("debug_") - && variant.buildType.name != "debug") { - setIgnore(true) - } - if (names.contains ("release_") - && variant.buildType.name != "release") { - setIgnore(true) - } + androidComponents { + beforeVariants(selector().all(), { variant -> + variant.enabled = false + variant.enabled |= variant.productFlavors*.second.contains ("debug_") && variant.buildType == "debug" + variant.enabled |= variant.productFlavors*.second.contains ("release_") && variant.buildType == "release" + }) } sourceSets { diff --git a/extras/AudioPerformanceTest/Builds/Android/app/build.gradle b/extras/AudioPerformanceTest/Builds/Android/app/build.gradle index 120dfa86aa..e31a18a9f9 100644 --- a/extras/AudioPerformanceTest/Builds/Android/app/build.gradle +++ b/extras/AudioPerformanceTest/Builds/Android/app/build.gradle @@ -77,16 +77,12 @@ android { } } - variantFilter { variant -> - def names = variant.flavors*.name - if (names.contains ("debug_") - && variant.buildType.name != "debug") { - setIgnore(true) - } - if (names.contains ("release_") - && variant.buildType.name != "release") { - setIgnore(true) - } + androidComponents { + beforeVariants(selector().all(), { variant -> + variant.enabled = false + variant.enabled |= variant.productFlavors*.second.contains ("debug_") && variant.buildType == "debug" + variant.enabled |= variant.productFlavors*.second.contains ("release_") && variant.buildType == "release" + }) } sourceSets { diff --git a/extras/AudioPluginHost/Builds/Android/app/build.gradle b/extras/AudioPluginHost/Builds/Android/app/build.gradle index 1f08eff201..58e8c87ea4 100644 --- a/extras/AudioPluginHost/Builds/Android/app/build.gradle +++ b/extras/AudioPluginHost/Builds/Android/app/build.gradle @@ -77,16 +77,12 @@ android { } } - variantFilter { variant -> - def names = variant.flavors*.name - if (names.contains ("debug_") - && variant.buildType.name != "debug") { - setIgnore(true) - } - if (names.contains ("release_") - && variant.buildType.name != "release") { - setIgnore(true) - } + androidComponents { + beforeVariants(selector().all(), { variant -> + variant.enabled = false + variant.enabled |= variant.productFlavors*.second.contains ("debug_") && variant.buildType == "debug" + variant.enabled |= variant.productFlavors*.second.contains ("release_") && variant.buildType == "release" + }) } sourceSets { diff --git a/extras/NetworkGraphicsDemo/Builds/Android/app/build.gradle b/extras/NetworkGraphicsDemo/Builds/Android/app/build.gradle index 635ffd6a33..d96a342d0d 100644 --- a/extras/NetworkGraphicsDemo/Builds/Android/app/build.gradle +++ b/extras/NetworkGraphicsDemo/Builds/Android/app/build.gradle @@ -77,16 +77,12 @@ android { } } - variantFilter { variant -> - def names = variant.flavors*.name - if (names.contains ("debug_") - && variant.buildType.name != "debug") { - setIgnore(true) - } - if (names.contains ("release_") - && variant.buildType.name != "release") { - setIgnore(true) - } + androidComponents { + beforeVariants(selector().all(), { variant -> + variant.enabled = false + variant.enabled |= variant.productFlavors*.second.contains ("debug_") && variant.buildType == "debug" + variant.enabled |= variant.productFlavors*.second.contains ("release_") && variant.buildType == "release" + }) } sourceSets { diff --git a/extras/Projucer/Source/ProjectSaving/jucer_ProjectExport_Android.h b/extras/Projucer/Source/ProjectSaving/jucer_ProjectExport_Android.h index afdd522a7a..b3cfaf64bd 100644 --- a/extras/Projucer/Source/ProjectSaving/jucer_ProjectExport_Android.h +++ b/extras/Projucer/Source/ProjectSaving/jucer_ProjectExport_Android.h @@ -858,20 +858,23 @@ private: MemoryOutputStream mo; mo.setNewLineString (getNewLineString()); - mo << " variantFilter { variant ->" << newLine; - mo << " def names = variant.flavors*.name" << newLine; + mo << " androidComponents {" << newLine + << " beforeVariants(selector().all(), { variant ->" << newLine + << " variant.enabled = false" << newLine; for (ConstConfigIterator config (*this); config.next();) { auto& cfg = dynamic_cast (*config); - - mo << " if (names.contains (\"" << cfg.getProductFlavourNameIdentifier() << "\")" << newLine; - mo << " && variant.buildType.name != \"" << (cfg.isDebug() ? "debug" : "release") << "\") {" << newLine; - mo << " setIgnore(true)" << newLine; - mo << " }" << newLine; + mo << " variant.enabled |= variant.productFlavors*.second.contains (\"" + << cfg.getProductFlavourNameIdentifier() + << "\") && variant.buildType == \"" + << (cfg.isDebug() ? "debug" : "release") + << '"' + << newLine; } - mo << " }" << newLine; + mo << " })" << newLine + << " }" << newLine; return mo.toString(); }