Files
rosetta/configure-build

66 lines
1.3 KiB
Plaintext
Raw Permalink Normal View History

2026-02-05 09:54:46 +00:00
#!/bin/bash
# vim: ft=bash
target_arch=$1
if [ ! -n "$target_arch" ]; then
echo "Usage: $0 <target arch>"
exit -1
fi
build_type=Debug
2026-02-05 09:54:46 +00:00
source_dir=$(realpath $(dirname "$0"))
toolchain_build_dir=$source_dir/build/toolchain
2026-02-05 09:54:46 +00:00
target_build_dir=$source_dir/build
sysroot_dir=$target_build_dir/sysroot
if [ ! -d "$source_dir/arch/$target_arch" ]; then
echo "FATAL: Specified target architecture $target_arch is not supported. See arch/ directory for a list of supported architectures."
exit -1
fi
rm -rf $toolchain_build_dir $target_build_dir
mkdir -p $toolchain_build_dir $target_build_dir
2026-02-05 09:54:46 +00:00
pushd $toolchain_build_dir > /dev/null
2026-02-05 09:54:46 +00:00
cmake \
-DCMAKE_EXPORT_COMPILE_COMMANDS=ON \
-DCMAKE_BUILD_TYPE=$build_type \
$source_dir/toolchain
case $CMAKE_GENERATOR in
Ninja)
ninja
;;
"Unix Makefiles")
make
;;
*)
make
;;
esac
2026-02-05 09:54:46 +00:00
popd
pushd $target_build_dir > /dev/null
cmake \
-DBUILD_TOOLS_DIR=$toolchain_build_dir/bin \
2026-02-05 09:54:46 +00:00
-DCMAKE_INSTALL_PREFIX=$sysroot_dir \
-DCMAKE_EXPORT_COMPILE_COMMANDS=ON \
-DTARGET_ARCH=$target_arch \
-DCMAKE_BUILD_TYPE=$build_type \
2026-02-05 09:54:46 +00:00
$source_dir \
-DCMAKE_MODULE_PATH=$source_dir/arch/$target_arch \
-DCMAKE_SYSTEM_NAME=Rosetta \
-DCMAKE_TOOLCHAIN_FILE=$source_dir/arch/$target_arch/Platform/Rosetta.cmake
python3 \
$source_dir/util/merge-compiledb.py \
compile_commands.json \
toolchain/compile_commands.json
2026-02-05 09:54:46 +00:00
popd > /dev/null