mirror of
https://github.com/AngelAuraMC/angelauramc-openjdk-build.git
synced 2025-08-03 23:55:58 -04:00
Jre17 but *smol* (#8)
- a lot of commits idk xdxd Co-authored-by: ArtDev <45949002+artdeell@users.noreply.github.com>
This commit is contained in:
parent
26218412d4
commit
ebf9aff0c1
4
.github/workflows/build.yml
vendored
4
.github/workflows/build.yml
vendored
@ -14,10 +14,10 @@ jobs:
|
|||||||
steps:
|
steps:
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v2
|
||||||
- name: set up JDK 1.16
|
- name: set up JDK 1.17
|
||||||
uses: actions/setup-java@v1
|
uses: actions/setup-java@v1
|
||||||
with:
|
with:
|
||||||
java-version: 1.16
|
java-version: 1.17
|
||||||
- name: Build with CI build script
|
- name: Build with CI build script
|
||||||
run: bash "ci_build_arch_${{matrix.arch}}.sh"
|
run: bash "ci_build_arch_${{matrix.arch}}.sh"
|
||||||
- name: Upload JDK build output
|
- name: Upload JDK build output
|
||||||
|
@ -71,6 +71,7 @@ bash ./configure \
|
|||||||
--enable-headless-only=yes \
|
--enable-headless-only=yes \
|
||||||
--with-toolchain-type=gcc \
|
--with-toolchain-type=gcc \
|
||||||
--with-jvm-variants=$JVM_VARIANTS \
|
--with-jvm-variants=$JVM_VARIANTS \
|
||||||
|
--with-jvm-features=-dtrace,-zero,-vm-structs,-epsilongc \
|
||||||
--with-cups-include=$CUPS_DIR \
|
--with-cups-include=$CUPS_DIR \
|
||||||
--with-devkit=$TOOLCHAIN \
|
--with-devkit=$TOOLCHAIN \
|
||||||
--with-debug-level=$JDK_DEBUG_LEVEL \
|
--with-debug-level=$JDK_DEBUG_LEVEL \
|
||||||
|
@ -20,10 +20,21 @@ cp freetype-$BUILD_FREETYPE_VERSION/build_android-$TARGET_SHORT/lib/libfreetype.
|
|||||||
cp -r $imagespath/jdk jdkout
|
cp -r $imagespath/jdk jdkout
|
||||||
|
|
||||||
# JDK no longer create separate JRE image, so we have to create one manually.
|
# JDK no longer create separate JRE image, so we have to create one manually.
|
||||||
mkdir -p jreout/bin
|
#mkdir -p jreout/bin
|
||||||
cp jdkout/bin/{java,jfr,keytool,rmiregistry} jreout/bin/
|
#cp jdkout/bin/{java,jfr,keytool,rmiregistry} jreout/bin/
|
||||||
cp -r jdkout/{conf,legal,lib,man,release} jreout/
|
#cp -r jdkout/{conf,legal,lib,man,release} jreout/
|
||||||
rm jreout/lib/src.zip
|
#rm jreout/lib/src.zip
|
||||||
|
|
||||||
|
# Produce the jre equivalent from the jdk (https://blog.adoptium.net/2021/10/jlink-to-produce-own-runtime/)
|
||||||
|
jlink \
|
||||||
|
--module-path=jdkout/jmods \
|
||||||
|
--add-modules java.base,java.compiler,java.datatransfer,java.desktop,java.instrument,java.logging,java.management,java.management.rmi,java.naming,java.net.http,java.prefs,java.rmi,java.scripting,java.se,java.security.jgss,java.security.sasl,java.sql,java.sql.rowset,java.transaction.xa,java.xml,java.xml.crypto,jdk.accessibility,jdk.charsets,jdk.crypto.cryptoki,jdk.crypto.ec,jdk.dynalink,jdk.httpserver,jdk.jdwp.agent,jdk.jfr,jdk.jsobject,jdk.localedata,jdk.management,jdk.management.agent,jdk.management.jfr,jdk.naming.dns,jdk.naming.rmi,jdk.net,jdk.nio.mapmode,jdk.sctp,jdk.security.auth,jdk.security.jgss,jdk.unsupported,jdk.xml.dom,jdk.zipfs \
|
||||||
|
--output jreout \
|
||||||
|
--strip-debug \
|
||||||
|
--no-man-pages \
|
||||||
|
--no-header-files \
|
||||||
|
--release-info=jdkout/release \
|
||||||
|
--compress=0
|
||||||
|
|
||||||
# mv jreout/lib/${TARGET_JDK}/libfontmanager.diz jreout/lib/${TARGET_JDK}/libfontmanager.diz.keep
|
# mv jreout/lib/${TARGET_JDK}/libfontmanager.diz jreout/lib/${TARGET_JDK}/libfontmanager.diz.keep
|
||||||
# find jreout -name "*.debuginfo" | xargs -- rm
|
# find jreout -name "*.debuginfo" | xargs -- rm
|
||||||
|
40
repackjre.sh
40
repackjre.sh
@ -16,10 +16,46 @@ mkdir -p "$out"
|
|||||||
|
|
||||||
# here comes a not-so-complicated functions to easily make desired arch
|
# here comes a not-so-complicated functions to easily make desired arch
|
||||||
## Usage: makearch [jre_libs_dir_name] [name_in_tarball]
|
## Usage: makearch [jre_libs_dir_name] [name_in_tarball]
|
||||||
makearch () { echo "Making $2..."; cd "$work"; tar xf $(find "$in" -name jre8-$2-*release.tar.xz) > /dev/null 2>&1; mv bin "$work1"/; mkdir -p "$work1"/lib; mv lib/$1 "$work1"/lib/; mv lib/jexec "$work1"/lib/; tar cJf bin-$2.tar.xz -C "$work1" . > /dev/null 2>&1; mv bin-$2.tar.xz "$out"/; rm -rf "$work"/*; rm -rf "$work1"/*; }
|
makearch () {
|
||||||
|
echo "Making $2...";
|
||||||
|
cd "$work";
|
||||||
|
tar xf $(find "$in" -name jre17-$2-*release.tar.xz) > /dev/null 2>&1;
|
||||||
|
mv bin "$work1"/;
|
||||||
|
mkdir -p "$work1"/lib;
|
||||||
|
|
||||||
|
#mv lib/$1 "$work1"/lib/;
|
||||||
|
mv lib/jexec "$work1"/lib/;
|
||||||
|
|
||||||
|
# server contains the libjvm.so
|
||||||
|
mv lib/server "$work1"/lib/;
|
||||||
|
|
||||||
|
# All the other .so files are at the root of the lib folder
|
||||||
|
find ./ -name '*.so' -execdir mv {} "$work1"/lib/{} \;
|
||||||
|
|
||||||
|
mv release "$work1"/release
|
||||||
|
|
||||||
|
tar cJf bin-$2.tar.xz -C "$work1" . > /dev/null 2>&1;
|
||||||
|
mv bin-$2.tar.xz "$out"/;
|
||||||
|
rm -rf "$work"/*;
|
||||||
|
rm -rf "$work1"/*;
|
||||||
|
}
|
||||||
|
|
||||||
# this one's static
|
# this one's static
|
||||||
makeuni () { echo "Making universal..."; cd "$work"; tar xf $(find "$in" -name jre8-arm64-*release.tar.xz) > /dev/null 2>&1; rm -rf bin; rm -rf lib/aarch64; rm lib/jexec; tar cJf universal.tar.xz * > /dev/null 2>&1; mv universal.tar.xz "$out"/; rm -rf "$work"/*; }
|
makeuni () {
|
||||||
|
echo "Making universal...";
|
||||||
|
cd "$work";
|
||||||
|
tar xf $(find "$in" -name jre17-arm64-*release.tar.xz) > /dev/null 2>&1;
|
||||||
|
|
||||||
|
rm -rf bin;
|
||||||
|
rm -rf lib/server;
|
||||||
|
rm lib/jexec;
|
||||||
|
find ./ -name '*.so' -execdir rm {} \; # Remove arch specific shared objects
|
||||||
|
rm release
|
||||||
|
|
||||||
|
tar cJf universal.tar.xz * > /dev/null 2>&1;
|
||||||
|
mv universal.tar.xz "$out"/;
|
||||||
|
rm -rf "$work"/*;
|
||||||
|
}
|
||||||
|
|
||||||
# now time to use them!
|
# now time to use them!
|
||||||
makeuni
|
makeuni
|
||||||
|
Loading…
x
Reference in New Issue
Block a user