Add OpenJDK 18 (ea+33)
Content of README.google:
Name: Java Development Kit (JDK)
URL: https://jdk.java.net/17/
Version: 18+ea-33
Revision: NA
License: the GNU General Public License, version 2, with the Classpath Exception.
Description:
This is pulled directly from the website for the JDK releases that has an open source license.
Synlinks have reen resolved using `cp -rL` before uploading.
Change-Id: I9cba1173fd4edb3e387056af6c2c897c7f885f18
diff --git a/.gitignore b/.gitignore
index 17af682..b9fc551 100644
--- a/.gitignore
+++ b/.gitignore
@@ -135,32 +135,12 @@
third_party/openjdk/desugar_jdk_libs_releases/1.1.1.tar.gz
third_party/openjdk/desugar_jdk_libs_releases/1.1.5
third_party/openjdk/desugar_jdk_libs_releases/1.1.5.tar.gz
-third_party/openjdk/jdk-17/linux
-third_party/openjdk/jdk-17/linux.tar.gz
-third_party/openjdk/jdk-17/osx
-third_party/openjdk/jdk-17/osx.tar.gz
-third_party/openjdk/jdk-17/windows
-third_party/openjdk/jdk-17/windows.tar.gz
-third_party/openjdk/jdk-16/linux
-third_party/openjdk/jdk-16/linux.tar.gz
-third_party/openjdk/jdk-16/osx
-third_party/openjdk/jdk-16/osx.tar.gz
-third_party/openjdk/jdk-16/windows
-third_party/openjdk/jdk-16/windows.tar.gz
-third_party/openjdk/jdk-15/linux
-third_party/openjdk/jdk-15/linux.tar.gz
-third_party/openjdk/jdk-15/osx
-third_party/openjdk/jdk-15/osx.tar.gz
-third_party/openjdk/jdk-15/windows
-third_party/openjdk/jdk-15/windows.tar.gz
-third_party/openjdk/jdk-11-test
-third_party/openjdk/jdk-11-test.tar.gz
-third_party/openjdk/jdk-11/linux
-third_party/openjdk/jdk-11/linux.tar.gz
-third_party/openjdk/jdk-11/osx
-third_party/openjdk/jdk-11/osx.tar.gz
-third_party/openjdk/jdk-11/windows
-third_party/openjdk/jdk-11/windows.tar.gz
+third_party/openjdk/jdk-[0-9][0-9]/linux
+third_party/openjdk/jdk-[0-9][0-9]/linux.tar.gz
+third_party/openjdk/jdk-[0-9][0-9]/osx
+third_party/openjdk/jdk-[0-9][0-9]/osx.tar.gz
+third_party/openjdk/jdk-[0-9][0-9]/windows
+third_party/openjdk/jdk-[0-9][0-9]/windows.tar.gz
third_party/openjdk/jdk8/darwin-x86
third_party/openjdk/jdk8/darwin-x86.tar.gz
third_party/openjdk/jdk8/linux-x86
diff --git a/build.gradle b/build.gradle
index 02f53e1..4bac765 100644
--- a/build.gradle
+++ b/build.gradle
@@ -399,18 +399,21 @@
"third_party": ["openjdk/openjdk-9.0.4/linux",
"openjdk/jdk8/linux-x86",
"openjdk/jdk-11/linux",
- "openjdk/jdk-17/linux"],
+ "openjdk/jdk-17/linux",
+ "openjdk/jdk-18/linux"],
],
osx: [
"third_party": ["openjdk/openjdk-9.0.4/osx",
"openjdk/jdk8/darwin-x86",
"openjdk/jdk-11/osx",
- "openjdk/jdk-17/osx"],
+ "openjdk/jdk-17/osx",
+ "openjdk/jdk-18/osx"],
],
windows: [
"third_party": ["openjdk/openjdk-9.0.4/windows",
"openjdk/jdk-11/windows",
- "openjdk/jdk-17/windows"],
+ "openjdk/jdk-17/windows",
+ "openjdk/jdk-18/windows"],
],
]
diff --git a/scripts/add-openjdk.sh b/scripts/add-openjdk.sh
index 6f8bada..f6b3284 100755
--- a/scripts/add-openjdk.sh
+++ b/scripts/add-openjdk.sh
@@ -14,13 +14,16 @@
# Create directory third_party/openjdk/jdk-X
# cd into third_party/openjdk/jdk-X
# Prepare README.google
-# Update JDK_VERSION below
+# Update JDK_VERSION and JDK_VERSION_FULL below
# Now run script with fingers crossed!
-JDK_VERSION=17
+JDK_VERSION="18"
+JDK_VERSION_FULL=${JDK_VERSION}
+# For ea versions the full version name has a postfix.
+# JDK_VERSION_FULL="${JDK_VERSION}-ea+33"
-tar xf ~/Downloads/openjdk-${JDK_VERSION}_linux-x64_bin.tar.gz
+tar xf ~/Downloads/openjdk-${JDK_VERSION_FULL}_linux-x64_bin.tar.gz
cp -rL jdk-${JDK_VERSION} linux
cp README.google linux
upload_to_google_storage.py -a --bucket r8-deps linux
@@ -28,7 +31,7 @@
rm -rf linux
rm linux.tar.gz
-tar xf ~/Downloads/openjdk-${JDK_VERSION}_macos-x64_bin.tar.gz
+tar xf ~/Downloads/openjdk-${JDK_VERSION_FULL}_macos-x64_bin.tar.gz
cp -rL jdk-${JDK_VERSION}.jdk osx
cp README.google osx
upload_to_google_storage.py -a --bucket r8-deps osx
@@ -36,7 +39,7 @@
rm -rf jdk-${JDK_VERSION}.jdk
rm osx.tar.gz
-unzip ~/Downloads/openjdk-${JDK_VERSION}_windows-x64_bin.zip
+unzip ~/Downloads/openjdk-${JDK_VERSION_FULL}_windows-x64_bin.zip
cp -rL jdk-${JDK_VERSION} windows
cp README.google windows
upload_to_google_storage.py -a --bucket r8-deps windows
diff --git a/src/main/java/com/android/tools/r8/cf/CfVersion.java b/src/main/java/com/android/tools/r8/cf/CfVersion.java
index b23d44d..9ce8c64 100644
--- a/src/main/java/com/android/tools/r8/cf/CfVersion.java
+++ b/src/main/java/com/android/tools/r8/cf/CfVersion.java
@@ -38,6 +38,8 @@
public static final CfVersion V16_PREVIEW = new CfVersion(Opcodes.V16 | Opcodes.V_PREVIEW);
public static final CfVersion V17 = new CfVersion(Opcodes.V17);
public static final CfVersion V17_PREVIEW = new CfVersion(Opcodes.V17 | Opcodes.V_PREVIEW);
+ public static final CfVersion V18 = new CfVersion(Opcodes.V18);
+ public static final CfVersion V18_PREVIEW = new CfVersion(Opcodes.V18 | Opcodes.V_PREVIEW);
private final int version;
@@ -58,7 +60,8 @@
CfVersion.V14,
CfVersion.V15,
CfVersion.V16,
- CfVersion.V17
+ CfVersion.V17,
+ CfVersion.V18
};
// Private constructor in case we want to canonicalize versions.
diff --git a/src/test/java/com/android/tools/r8/TestRuntime.java b/src/test/java/com/android/tools/r8/TestRuntime.java
index a4b8697..dd19c1e 100644
--- a/src/test/java/com/android/tools/r8/TestRuntime.java
+++ b/src/test/java/com/android/tools/r8/TestRuntime.java
@@ -30,6 +30,7 @@
JDK10("jdk10", 54),
JDK11("jdk11", 55),
JDK17("jdk17", 61),
+ JDK18("jdk18", 62),
;
/** This should generally be the latest checked in CF runtime we fully support. */
diff --git a/third_party/openjdk/jdk-18/linux.tar.gz.sha1 b/third_party/openjdk/jdk-18/linux.tar.gz.sha1
new file mode 100644
index 0000000..3c8efd9
--- /dev/null
+++ b/third_party/openjdk/jdk-18/linux.tar.gz.sha1
@@ -0,0 +1 @@
+b545df5778c9025fe105dddcd8b3830d8731137b
\ No newline at end of file
diff --git a/third_party/openjdk/jdk-18/osx.tar.gz.sha1 b/third_party/openjdk/jdk-18/osx.tar.gz.sha1
new file mode 100644
index 0000000..9699f89
--- /dev/null
+++ b/third_party/openjdk/jdk-18/osx.tar.gz.sha1
@@ -0,0 +1 @@
+527883f93a157ae249f83f461b0368d87c8fe6a1
\ No newline at end of file
diff --git a/third_party/openjdk/jdk-18/windows.tar.gz.sha1 b/third_party/openjdk/jdk-18/windows.tar.gz.sha1
new file mode 100644
index 0000000..854167c
--- /dev/null
+++ b/third_party/openjdk/jdk-18/windows.tar.gz.sha1
@@ -0,0 +1 @@
+b1e3cb3be67dd78423a0a96c0214ac97b5edd112
\ No newline at end of file