From 37d7579bd1e4459b018eaa5471b9948a3a5aa8a6 Mon Sep 17 00:00:00 2001 From: Giuppe Date: Sun, 10 Nov 2024 23:46:43 +0100 Subject: [PATCH 1/2] allow setting gradle jvmargs in project.xml --- src/lime/tools/ProjectXMLParser.hx | 5 ++++- templates/android/template/gradle.properties | 4 ++++ tools/platforms/AndroidPlatform.hx | 1 + 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/src/lime/tools/ProjectXMLParser.hx b/src/lime/tools/ProjectXMLParser.hx index 687015c776..f28c45fd66 100644 --- a/src/lime/tools/ProjectXMLParser.hx +++ b/src/lime/tools/ProjectXMLParser.hx @@ -1738,10 +1738,13 @@ class ProjectXMLParser extends HXProject case "gradle-version": config.set("android.gradle-version", value); - + case "gradle-plugin": config.set("android.gradle-plugin", value); + case "gradle-jvmargs": + config.set("android.gradle-jvmargs", value); + default: name = formatAttributeName(attribute); } diff --git a/templates/android/template/gradle.properties b/templates/android/template/gradle.properties index a1cbbf4260..e4252ab1d8 100644 --- a/templates/android/template/gradle.properties +++ b/templates/android/template/gradle.properties @@ -13,6 +13,10 @@ # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects # org.gradle.parallel=true +::if (ANDROID_GRADLE_JVMARGS != ""):: +org.gradle.jvmargs=::ANDROID_GRADLE_JVMARGS:: +::end:: + VERSION_NAME=::META_VERSION:: VERSION_CODE=::META_BUILD_NUMBER:: diff --git a/tools/platforms/AndroidPlatform.hx b/tools/platforms/AndroidPlatform.hx index 4d4caaaf12..79a8133214 100644 --- a/tools/platforms/AndroidPlatform.hx +++ b/tools/platforms/AndroidPlatform.hx @@ -475,6 +475,7 @@ class AndroidPlatform extends PlatformTarget ]); context.ANDROID_GRADLE_VERSION = project.config.getString("android.gradle-version", "7.4.2"); context.ANDROID_GRADLE_PLUGIN = project.config.getString("android.gradle-plugin", "7.3.1"); + context.ANDROID_GRADLE_JVMARGS = project.config.getString("android.gradle-jvmargs", ""); context.ANDROID_USE_ANDROIDX = project.config.getString("android.useAndroidX", "true"); context.ANDROID_ENABLE_JETIFIER = project.config.getString("android.enableJetifier", "false"); From c98cae2b60a16607a1340dae0f01f7035cd6bba3 Mon Sep 17 00:00:00 2001 From: Joseph Cloutier Date: Wed, 4 Jun 2025 22:46:26 -0400 Subject: [PATCH 2/2] Make gradle.properties fully configurable from project.xml. --- src/lime/tools/ProjectXMLParser.hx | 3 --- templates/android/template/gradle.properties | 8 +++----- tools/platforms/AndroidPlatform.hx | 2 +- 3 files changed, 4 insertions(+), 9 deletions(-) diff --git a/src/lime/tools/ProjectXMLParser.hx b/src/lime/tools/ProjectXMLParser.hx index f28c45fd66..8ecdd9e5ed 100644 --- a/src/lime/tools/ProjectXMLParser.hx +++ b/src/lime/tools/ProjectXMLParser.hx @@ -1742,9 +1742,6 @@ class ProjectXMLParser extends HXProject case "gradle-plugin": config.set("android.gradle-plugin", value); - case "gradle-jvmargs": - config.set("android.gradle-jvmargs", value); - default: name = formatAttributeName(attribute); } diff --git a/templates/android/template/gradle.properties b/templates/android/template/gradle.properties index e4252ab1d8..dcf0a583d7 100644 --- a/templates/android/template/gradle.properties +++ b/templates/android/template/gradle.properties @@ -13,10 +13,6 @@ # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects # org.gradle.parallel=true -::if (ANDROID_GRADLE_JVMARGS != ""):: -org.gradle.jvmargs=::ANDROID_GRADLE_JVMARGS:: -::end:: - VERSION_NAME=::META_VERSION:: VERSION_CODE=::META_BUILD_NUMBER:: @@ -33,4 +29,6 @@ KEY_STORE=::KEY_STORE:: KEY_STORE_PASSWORD=::KEY_STORE_PASSWORD:: KEY_STORE_ALIAS=::KEY_STORE_ALIAS:: KEY_STORE_ALIAS_PASSWORD=::KEY_STORE_ALIAS_PASSWORD:: -::end:: \ No newline at end of file +::end:: +::foreach ANDROID_GRADLE_PROPERTIES::::if ((value != null) && (value != ""))::::key::=::value:: +::end::::end:: \ No newline at end of file diff --git a/tools/platforms/AndroidPlatform.hx b/tools/platforms/AndroidPlatform.hx index 79a8133214..98dbccec06 100644 --- a/tools/platforms/AndroidPlatform.hx +++ b/tools/platforms/AndroidPlatform.hx @@ -475,9 +475,9 @@ class AndroidPlatform extends PlatformTarget ]); context.ANDROID_GRADLE_VERSION = project.config.getString("android.gradle-version", "7.4.2"); context.ANDROID_GRADLE_PLUGIN = project.config.getString("android.gradle-plugin", "7.3.1"); - context.ANDROID_GRADLE_JVMARGS = project.config.getString("android.gradle-jvmargs", ""); context.ANDROID_USE_ANDROIDX = project.config.getString("android.useAndroidX", "true"); context.ANDROID_ENABLE_JETIFIER = project.config.getString("android.enableJetifier", "false"); + context.ANDROID_GRADLE_PROPERTIES = project.config.getKeyValueArray("android.gradle-properties"); context.ANDROID_APPLICATION = project.config.getKeyValueArray("android.application", { "android:label": project.meta.title,