mirror of
https://github.com/AngelAuraMC/angelauramc-openjdk-build.git
synced 2025-08-02 15:15:57 -04:00

Some versions of macOS on some machines might fail the build when xattr is invoked without sudo. Since the reason xattr is invoked is to help with testing, and the attribute it is removing is not relevant for iOS, this line can be safely removed from the build.
angelauramc-openjdk-build
This branch is for OpenJDK 8.
Based on Java for Android and the PojavLauncher variant
Building
Setup
Android
- Download Android NDK r10e from https://developer.android.com/ndk/downloads/older_releases.html and place it in this directory (Can't automatically download because of EULA)
- Warning: Do not attempt to build use newer or older NDK, it will lead to compilation errors.
iOS
- You should get latest Xcode (tested with Xcode 12).
Platform and architecture specific environment variables
Environment variables | |||||||
---|---|---|---|---|---|---|---|
Platform - Architecture | TARGET | TARGET_JDK | |||||
Android - armv8/aarch64 | aarch64-linux-android | aarch64 | |||||
Android - armv7/aarch32 | arm-linux-androideabi | arm | |||||
Android - x86/i686 | i686-linux-android | x86 | |||||
Android - x86_64/amd64 | x86_64-linux-android | x86_64 | |||||
iOS/iPadOS - armv8/aarch64 | aarch64-macos-ios | aarch64 |
Run in this directory:
export BUILD_IOS=1 # only when targeting iOS, default is 0 (target Android)
export BUILD_FREETYPE_VERSION=[2.6.2/.../2.10.4] # default: 2.10.4
export JDK_DEBUG_LEVEL=[release/fastdebug/debug] # default: release
export JVM_VARIANTS=[client/server] # default: client (aarch32), server (other architectures)
# Setup NDK, run once (Android only)
./extractndk.sh
./maketoolchain.sh
# Get CUPS, Freetype and build Freetype
./getlibs.sh
./buildlibs.sh
# Clone JDK, run once
./clonejdk.sh
# Configure JDK and build, if no configuration is changed, run makejdkwithoutconfigure.sh instead
./buildjdk.sh
# Pack the built JDK
./removejdkdebuginfo.sh
./tarjdk.sh
Description
Languages
C
94%
Shell
6%