fdroiddata/metadata/com.miloshpetrov.sol2.android/2.0.0-android-backport.patch
2022-03-30 09:48:23 +00:00

137 lines
5.3 KiB
Diff

From a28f8f935cdfc81c193809b699b7e7620e6970f9 Mon Sep 17 00:00:00 2001
From: Benjamin Amos <benjamin.amos11@gmail.com>
Date: Tue, 1 Mar 2022 22:58:41 +0000
Subject: [PATCH 1/3] build: fix building with engine v2.0.0
---
build.gradle | 20 ++++++++++++++++++--
1 file changed, 18 insertions(+), 2 deletions(-)
diff --git a/build.gradle b/build.gradle
index f030f6e..9d042e4 100644
--- a/build.gradle
+++ b/build.gradle
@@ -15,7 +15,11 @@ buildscript {
google()
}
dependencies {
- classpath 'com.android.tools.build:gradle:4.1.3'
+ if (version == '2.0.0') {
+ classpath 'com.android.tools.build:gradle:3.2.1'
+ } else {
+ classpath 'com.android.tools.build:gradle:4.1.3'
+ }
}
}
@@ -71,7 +75,11 @@ dependencies {
}
// Android-compatible JOML variant
implementation "org.joml:joml-jdk3:1.9.25"
- implementation(group: 'org.terasology.gestalt', name: 'gestalt-android', version: '7.2.0-SNAPSHOT')
+ implementation(group: 'org.terasology.gestalt', name: 'gestalt-android', version: '7.2.0-SNAPSHOT') {
+ // Only include gestalt-android.
+ // This is safe because gestalt-android has not changed apart from to add the android assets file sources.
+ exclude group: "org.terasology.gestalt"
+ }
// TODO: Needed for gestalt because of an internal dependency but since that dependency is never
// exposed in a public API, I have no idea why it's needed for compilation.
implementation "com.github.zafarkhaja:java-semver:0.10.0"
@@ -289,6 +297,14 @@ task exportModules() {
include "reflections.cache"
}
+ if (version == '2.0.0') {
+ copy {
+ from "$rootDir/engine/build/classes/java/main"
+ into "$projectDir/assets/engine"
+ include "reflections.cache"
+ }
+ }
+
copy {
into "$projectDir/assets/modules"
from("$rootDir/modules") {
From e28414b18a24e86dcae54ccdf45afa7d2c323063 Mon Sep 17 00:00:00 2001
From: Benjamin Amos <benjamin.amos11@gmail.com>
Date: Wed, 2 Mar 2022 20:09:44 +0000
Subject: [PATCH 2/3] fix: fix building modules without code
---
build.gradle | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/build.gradle b/build.gradle
index 9d042e4..e050965 100644
--- a/build.gradle
+++ b/build.gradle
@@ -286,7 +286,10 @@ task exportModules() {
file("$projectDir/assets/modules/${module.name}/build/classes").mkdirs()
Files.createSymbolicLink(Paths.get("$projectDir/assets/modules/${module.name}/build/classes/reflections.cache"), Paths.get("$rootDir/modules/${module.name}/build/classes/reflections.cache"))
- Files.createSymbolicLink(Paths.get("$projectDir/assets/modules/${module.name}/build/dexes"), Paths.get("$rootDir/modules/${module.name}/build/dexes"))
+ def moduleDexesDir = "$rootDir/modules/${module.name}/build/dexes";
+ if (file(moduleDexesDir).exists()) {
+ Files.createSymbolicLink(Paths.get("$projectDir/assets/modules/${module.name}/build/dexes"), Paths.get(moduleDexesDir))
+ }
}
} else {
copy {
From 5cea69c1981fd48f57598145ecf01b421418950e Mon Sep 17 00:00:00 2001
From: Benjamin Amos <benjamin.amos11@gmail.com>
Date: Thu, 17 Mar 2022 20:30:24 +0000
Subject: [PATCH 3/3] fix: correct export of engine reflections
---
build.gradle | 22 ++++++++++++++--------
1 file changed, 14 insertions(+), 8 deletions(-)
diff --git a/build.gradle b/build.gradle
index e050965..9ec8831 100644
--- a/build.gradle
+++ b/build.gradle
@@ -80,6 +80,12 @@ dependencies {
// This is safe because gestalt-android has not changed apart from to add the android assets file sources.
exclude group: "org.terasology.gestalt"
}
+
+ if (version == '2.0.0') {
+ // Gestalt does not use JavaAssist to compile
+ compileOnly 'org.javassist:javassist:3.20.0-GA'
+ }
+
// TODO: Needed for gestalt because of an internal dependency but since that dependency is never
// exposed in a public API, I have no idea why it's needed for compilation.
implementation "com.github.zafarkhaja:java-semver:0.10.0"
@@ -268,6 +274,14 @@ task exportModules() {
boolean canCreateSymlinks
+ if (version == '2.0.0') {
+ copy {
+ from "$rootDir/engine/build/classes/java/main"
+ into "$rootDir/engine/build/resources/main/org/destinationsol"
+ include "reflections.cache"
+ }
+ }
+
try {
Files.createSymbolicLink(Paths.get("$projectDir/assets/engine"), Paths.get("$rootDir/engine/build/resources/main/org/destinationsol"))
canCreateSymlinks = true
@@ -300,14 +314,6 @@ task exportModules() {
include "reflections.cache"
}
- if (version == '2.0.0') {
- copy {
- from "$rootDir/engine/build/classes/java/main"
- into "$projectDir/assets/engine"
- include "reflections.cache"
- }
- }
-
copy {
into "$projectDir/assets/modules"
from("$rootDir/modules") {