nosqlbench/nb/build-bin.sh
2021-12-21 16:44:32 -06:00

82 lines
1.6 KiB
Bash
Executable File

#!/usr/bin/env bash
set -e
set -x
APPDIR=target/NB.AppDir
mkdir -p ${APPDIR}
BUILD_OPENJ9="false"
if [ "$1" = "--with-openj9" ]
then
BUILD_OPENJ9="true"
printf "using openj9 for build\n"
shift;
fi
if [ ! -f target/nb.jar ]
then
printf "target/nb.jar does not exist"
exit 2
fi
#if [ -x "target/nb" ]
#then
# printf "Removing stale target/nb...\n"
# rm target/nb
#fi
rsync -av appimage/skel/ "${APPDIR}/"
cp target/nb.jar "${APPDIR}/usr/bin/nb.jar"
JAVA_VERSION="17"
mkdir -p "${APPDIR}/usr/bin/jre"
if [ "$JAVA_VERSION" == "17" ]
then
if [ ! -d "cache/jdk17" ] ; then
printf "getting jdk17 once into cache/jdk17\n";
mkdir -p cache
(cd cache && (
wget -c https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.1%2B12/OpenJDK17U-jdk_x64_linux_hotspot_17.0.1_12.tar.gz
tar -xf OpenJDK17U-jdk_x64_linux_hotspot_17.0.1_12.tar.gz
mv jdk-17.0.1+12 jdk17
rm OpenJDK17U-jdk_x64_linux_hotspot_17.0.1_12.tar.gz
))
fi
rsync -av cache/jdk17/ "${APPDIR}/usr/bin/jre/"
else
printf "Unknown java version indicated in $0"
exit 2
fi
if [ ! -f "${APPDIR}/AppRun" ]
then
( cd ${APPDIR} && (
printf "Linking AppRun...\n";
ln -s usr/bin/nb AppRun
))
fi
printf "getting appimage tool and building image...\n";
( cd target && (
if [ ! -x "appimagetool-x86_64.AppImage" ]
then
wget -c https://github.com/AppImage/AppImageKit/releases/download/12/appimagetool-x86_64.AppImage
chmod +x appimagetool-x86_64.AppImage
fi
ARCH=x86_64 ./appimagetool-x86_64.AppImage NB.AppDir nb
# && chmod +x nb
)
)
if [ -x "target/nb" ]
then
printf "nosqlbench AppImage binary was built at target/nb\n";
fi