Add support for building with the JDK11 based desugared library
With the new option to test.py one can run
tools/test.py --desugared-library-configuration=jdk11 --desugared-library=HEAD ...
to use the JDK11 based desugared library.
The configuration diff for desugar_jdk_libs.json is:
diff -u2 desugar_jdk_libs.json jdk11/desugar_jdk_libs.json
--- desugar_jdk_libs.json 2021-03-11 14:56:35.790624175 +0100
+++ jdk11/desugar_jdk_libs.json 2021-03-11 15:03:35.983412505 +0100
@@ -76,5 +76,7 @@
"j$.time.": "java.time.",
"java.time.": "j$.time.",
- "java.util.Desugar": "j$.util.Desugar"
+ "java.util.Desugar": "j$.util.Desugar",
+ "sun.misc.Desugar": "j$.sun.misc.Desugar",
+ "jdk.internal.util.Preconditions": "j$.jdk.internal.util.Preconditions"
},
"retarget_lib_member": {
@@ -112,8 +114,12 @@
"java.util.StringJoiner": "j$.util.StringJoiner",
"java.util.Tripwire": "j$.util.Tripwire",
- "java.util.concurrent.DesugarUnsafe": "j$.util.concurrent.DesugarUnsafe",
+ "java.util.concurrent.Helpers": "j$.util.concurrent.Helpers",
"java.util.concurrent.ThreadLocalRandom": "j$.util.concurrent.ThreadLocalRandom",
"java.util.concurrent.atomic.DesugarAtomic": "j$.util.concurrent.atomic.DesugarAtomic",
- "java.util.concurrent.ConcurrentHashMap": "j$.util.concurrent.ConcurrentHashMap"
+ "java.util.concurrent.ConcurrentHashMap": "j$.util.concurrent.ConcurrentHashMap",
+ "java.util.AbstractList": "j$.util.AbstractList",
+ "java.util.CollSer": "j$.util.CollSer",
+ "java.util.ImmutableCollections": "j$.util.ImmutableCollections",
+ "java.util.KeyValueHolder": "j$.util.KeyValueHolder"
},
"retarget_lib_member": {
And for desugar_jdk_libs_alternative_3.json:
diff -u2 desugar_jdk_libs_alternative_3.json jdk11/desugar_jdk_libs_alternative_3.json
--- desugar_jdk_libs_alternative_3.json 2021-03-11 15:01:37.471906496 +0100
+++ jdk11/desugar_jdk_libs_alternative_3.json 2021-03-11 15:00:34.517792562 +0100
@@ -76,5 +76,7 @@
"j$.time.": "java.time.",
"java.time.": "j$.time.",
- "java.util.Desugar": "j$.util.Desugar"
+ "java.util.Desugar": "j$.util.Desugar",
+ "sun.misc.Desugar": "j$.sun.misc.Desugar",
+ "jdk.internal.util.Preconditions": "j$.jdk.internal.util.Preconditions"
},
"retarget_lib_member": {
@@ -112,8 +114,13 @@
"java.util.StringJoiner": "j$.util.StringJoiner",
"java.util.Tripwire": "j$.util.Tripwire",
- "java.util.concurrent.DesugarUnsafe": "j$.util.concurrent.DesugarUnsafe",
+ "java.util.concurrent.Helpers": "j$.util.concurrent.Helpers",
"java.util.concurrent.ThreadLocalRandom": "j$.util.concurrent.ThreadLocalRandom",
"java.util.concurrent.atomic.DesugarAtomic": "j$.util.concurrent.atomic.DesugarAtomic",
"java.util.concurrent.ConcurrentHashMap": "j$.util.concurrent.ConcurrentHashMap",
+ "java.util.concurrent.ConcurrentHashMap": "j$.util.concurrent.ConcurrentHashMap",
+ "java.util.AbstractList": "j$.util.AbstractList",
+ "java.util.CollSer": "j$.util.CollSer",
+ "java.util.ImmutableCollections": "j$.util.ImmutableCollections",
+ "java.util.KeyValueHolder": "j$.util.KeyValueHolder",
"java.io.DesugarBufferedReader": "j$.io.DesugarBufferedReader",
"java.io.UncheckedIOException": "j$.io.UncheckedIOException"
Bug: 182463100
Change-Id: I31b4bb20b7ee80e351f996b0d1e9280285a1d0ff
diff --git a/tools/utils.py b/tools/utils.py
index 1820991..da4a0e4 100644
--- a/tools/utils.py
+++ b/tools/utils.py
@@ -83,6 +83,7 @@
BAZEL_SHA_FILE = os.path.join(THIRD_PARTY, 'bazel.tar.gz.sha1')
BAZEL_TOOL = os.path.join(THIRD_PARTY, 'bazel')
JAVA8_SHA_FILE = os.path.join(THIRD_PARTY, 'openjdk', 'jdk8', 'linux-x86.tar.gz.sha1')
+JAVA11_SHA_FILE = os.path.join(THIRD_PARTY, 'openjdk', 'jdk-11', 'linux.tar.gz.sha1')
IGNORE_WARNINGS_RULES = os.path.join(REPO_ROOT, 'src', 'test', 'ignorewarnings.rules')
ANDROID_HOME_ENVIROMENT_NAME = "ANDROID_HOME"