fukiame a753e0e862
buildjre8: improvements (#19)
* .github: move apt commands to workflow

the scripts are capable of running on other distros, so "let the host cook"
also explicitly use Python 3 here as the build env do not use Python 2

* treewide: use bash [[

./buildlibs.sh: line 18: [: : integer expression expected
...
./buildjdk.sh: line 53: [: : integer expression expected
...

all scripts has bash shebang anyways,
replace all single brackets [ with bash's double brackets [[

* [hack] tarjdk: force termux-elf-cleaner v2.2.0

g++: error: unrecognized command line option ‘-std=c++20’; did you mean ‘-std=c++2a’?

caused by a mix of our outdated toolchains and an upstream commit [1]
downgrade the version of termux-elf-cleaner we use to the latest stable tag to workaround the issue

[1]: 9578f2c4bc

Test: presubmit
Signed-off-by: fukiame <fukiame@proton.me>

* .github: update actions

The following actions uses node12 which is deprecated and will be forced to run on node16: actions/checkout@v2, actions/setup-java@v1, actions/upload-artifact@v2. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/

* .github: actions runner: update to ubuntu-22.04

a bit of future-proofing wont hurt... right?

* fixup! .github: java setup: its 7 not 1.7

i retartded

---------

Signed-off-by: fukiame <fukiame@proton.me>
2024-01-16 19:33:23 +03:00

42 lines
1016 B
Bash
Executable File

#!/bin/bash
set -e
if [[ "$BUILD_IOS" != "1" ]]; then
unset AR AS CC CXX LD OBJCOPY RANLIB STRIP CPPFLAGS LDFLAGS
git clone --depth 1 -b 'v2.2.0' https://github.com/termux/termux-elf-cleaner
cd termux-elf-cleaner
autoreconf --install
bash configure
make CFLAGS=-D__ANDROID_API__=24
cd ..
findexec() { find $1 -type f -name "*" -not -name "*.o" -exec sh -c '
case "$(head -n 1 "$1")" in
?ELF*) exit 0;;
MZ*) exit 0;;
#!*/ocamlrun*)exit0;;
esac
exit 1
' sh {} \; -print
}
findexec jreout | xargs -- ./termux-elf-cleaner/termux-elf-cleaner
findexec jdkout | xargs -- ./termux-elf-cleaner/termux-elf-cleaner
fi
sudo cp -R jre_override/lib/* jreout/lib/
sudo cp -R jre_override/lib/* jdkout/jre/lib
cd jreout
# Strip in place all .so files thanks to the ndk
find ./ -name '*.so' -execdir ${NDK}${NDK_PREBUILT_ARCH} {} \;
tar cJf ../jre8-${TARGET_SHORT}-`date +%Y%m%d`-${JDK_DEBUG_LEVEL}.tar.xz .
cd ../jdkout
tar cJf ../jdk8-${TARGET_SHORT}-`date +%Y%m%d`-${JDK_DEBUG_LEVEL}.tar.xz .