blob: a97eee6bcf3d78ac2c847b04a2898b34a0f0a0bd [file] [log] [blame]
#!/usr/bin/env bash
# Copyright 2021 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
set -ex
sudo apt-get install --yes --no-install-recommends \
g++-aarch64-linux-gnu \
gcc-aarch64-linux-gnu \
ipxe-qemu \
libc-dev:arm64 \
libcap-dev:arm64 \
libdbus-1-dev:arm64 \
libdrm-dev:arm64 \
libepoxy-dev:arm64 \
libssl-dev:arm64 \
libwayland-dev:arm64 \
libxext-dev:arm64 \
qemu-efi-aarch64 \
qemu-system-aarch64 \
qemu-user-static
rustup target add aarch64-unknown-linux-gnu
# Generate a cross file for meson to compile for aarch64
sudo mkdir -p -m 0755 /usr/local/share/meson/cross
sudo tee /usr/local/share/meson/cross/aarch64 >/dev/null <<EOF
[binaries]
c = '/usr/bin/aarch64-linux-gnu-gcc'
cpp = '/usr/bin/aarch64-linux-gnu-g++'
ar = '/usr/bin/aarch64-linux-gnu-ar'
strip = '/usr/bin/aarch64-linux-gnu-strip'
objcopy = '/usr/bin/aarch64-linux-gnu-objcopy'
ld= '/usr/bin/aarch64-linux-gnu-ld'
pkgconfig = '/usr/bin/aarch64-linux-gnu-pkg-config'
[properties]
[host_machine]
system = 'linux'
cpu_family = 'aarch64'
cpu = 'arm64'
endian = 'little'
EOF