Files
sdk/pkg/vm/tool/shared_functions.sh
Ryan Macnak 79df09999e Fix recognizing X64C in pkg/vm/tool/precompiler2.
TEST=dartfuzz
Change-Id: Ia1a716c703da2f9968d8d3f926d6be1aaca1ceaf
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/406182
Reviewed-by: Tess Strickland <sstrickl@google.com>
Commit-Queue: Tess Strickland <sstrickl@google.com>
2025-01-28 03:45:19 -08:00

61 lines
1.1 KiB
Bash

# Copyright (c) 2025, the Dart project authors. Please see the AUTHORS file
# for details. All rights reserved. Use of this source code is governed by a
# BSD-style license that can be found in the LICENSE file.
# Shared functions for both precompiler2 and dart_precompiled_runtime2.
function host_arch() {
# Use uname to determine the host architecture.
case `uname -m` in
x86_64)
echo "X64"
;;
aarch64 | arm64 | armv8*)
echo "ARM64"
;;
arm | arm7*)
echo "ARM"
;;
*)
echo "Unknown host architecture" `uname -m` >&2
exit 1
;;
esac
}
function parse_target_arch() {
case "$1" in
*X64 | \
*X64C)
echo "X64"
;;
*ARM64 | \
*ARM64C)
echo "ARM64"
;;
*ARM)
echo "ARM"
;;
*IA32)
echo "IA32"
;;
*RISCV32)
echo "RISCV32"
;;
*RISCV64)
echo "RISCV64"
;;
*)
echo "Cannot deduce target architecture from $1" >&2
exit 1
;;
esac
}
function is_cross_compiled() {
local host_arch="$1"
local target_arch="$2"
[[ ("$host_arch" != "ARM64" || "$target_arch" != "ARM") && \
("$host_arch" != "$target_arch") ]]
}