dropshell/source/multibuild.sh
Your Name 6ac651d4f0
Some checks failed
Dropshell Test / Build_and_Test (push) Failing after 2m40s
Tidying
2025-05-26 22:49:37 +12:00

40 lines
1.1 KiB
Bash
Executable File

#!/bin/bash
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )"
# Create output directory
mkdir -p ${SCRIPT_DIR}/output
function build_arch() {
local arch=$1
local PREVDIR=$PWD
cd ${SCRIPT_DIR}
if [ ! -f "${HOME}/.musl-cross/${arch}-linux-musl-cross/bin/${arch}-linux-musl-c++" ]; then
echo "Musl cross compiler for ${arch} not found. Please run install_build_prerequisites.sh first."
exit 1
fi
CMAKE_BUILD_TYPE=Release
CC="${HOME}/.musl-cross/${arch}-linux-musl-cross/bin/${arch}-linux-musl-gcc"
CXX="${HOME}/.musl-cross/${arch}-linux-musl-cross/bin/${arch}-linux-musl-g++"
BUILDDIR=${SCRIPT_DIR}/build/${arch}
mkdir -p ${BUILDDIR}
cmake -B ${BUILDDIR} -G Ninja -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} -DCMAKE_C_COMPILER=${CC} -DCMAKE_CXX_COMPILER=${CXX}
cmake --build ${BUILDDIR}
upx ${BUILDDIR}/dropshell
cp ${BUILDDIR}/dropshell ${SCRIPT_DIR}/output/dropshell.${arch}
cd ${PREVDIR}
}
build_arch x86_64
build_arch aarch64
echo "Static binaries have been created:"
ls -la output