declare_args() {
# Minerva architecture to build for
minerva_arch = "x86_64"
# Minerva compiler to use, Clang or GNU
minerva_toolchain = "GNU"
}
if (minerva_toolchain == "GNU") {
toolchain_root =
rebase_path("//Toolchain/Local/$minerva_arch/", root_build_dir)
toolchain_bin = toolchain_root + "bin/"
minerva_cc = toolchain_bin + minerva_arch + "-pc-minerva-gcc"
minerva_cxx = toolchain_bin + minerva_arch + "-pc-minerva-g++"
minerva_ld = minerva_cxx
minerva_nm = toolchain_bin + minerva_arch + "-pc-minerva-nm"
minerva_objcopy = toolchain_bin + minerva_arch + "-pc-minerva-objcopy"
minerva_compiler_version = "13.1.0"
} else {
assert(minerva_toolchain == "Clang",
"Expected GNU or Clang for minerva_toolchain")
toolchain_root = rebase_path("//Toolchain/Local/clang/", root_build_dir)
toolchain_bin = toolchain_root + "bin/"
minerva_cc = toolchain_bin + minerva_arch + "-pc-minerva-clang"
minerva_cxx = toolchain_bin + minerva_arch + "-pc-minerva-clang++"
minerva_ld = minerva_cxx
minerva_nm = toolchain_bin + "llvm-nm"
minerva_objcopy = toolchain_bin + "llvm-objcopy"
minerva_compiler_version = "16"
}