ikvm
ikvm copied to clipboard
GitHub Actions: Include OpenJDK binaries file in release (for building IKVM from source)
This should be an easy task for those who wish to help us out. We are already building openjdk-build-linux-x86_64-normal-server-release.zip
and uploading it as a GitHub Actions artifact, however, there are a couple of issues:
- The GitHub Release doesn't include the file.
- The file was historically named after the JDK tag that it is based upon with an
openjdk-
prefix and-stripped.zip
suffix (for example, openjdk-8u45-b14-stripped.zip is based on the tagJdk8u45-b14
)). The file included a folder within namedlinux-x86_64-normal-server-release
that contain the OpenJDK contents.
This file is not required for normal IKVM usage, but its contents are required to be placed in the <repo-root>/openjdk/build/linux-x86_64-normal-server-release
folder in order to compile IKVM from source and run the tests locally.
NOTE: Although the folder name says "linux", it will build on Windows also.
Historically, IKVM has always included the JDK binary file that corresponds to a given release so it is clear which version to use when building from a specific repository tag from source. We have recovered the historical files from the internet archive and placed them in this repository. For example 8.1.5717.0 includes the openjdk-8u45-b14-stripped.zip
file. This will become important again when we upgrade to a newer JDK version (see #120), since without this in place it is not clear what version of OpenJDK a specific IKVM release depends on.
I might have not understood correctly. But I recommend keeping the option to have a binary that doesn't ship with jdk, for people who use Kotlin instead.
I meant to include the file in the GitHub Release (which we have done already for legacy versions). It won't be distributed on NuGet - you would need to download it separately. And it is basically only useful if you build IKVM from source.