xref: /aosp_15_r20/external/crosvm/tools/install-aarch64-deps (revision bb4ee6a4ae7042d18b07a98463b9c8b875e44b39)
1*bb4ee6a4SAndroid Build Coastguard Worker#!/usr/bin/env bash
2*bb4ee6a4SAndroid Build Coastguard Worker# Copyright 2021 The ChromiumOS Authors
3*bb4ee6a4SAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license that can be
4*bb4ee6a4SAndroid Build Coastguard Worker# found in the LICENSE file.
5*bb4ee6a4SAndroid Build Coastguard Workerset -ex
6*bb4ee6a4SAndroid Build Coastguard Worker
7*bb4ee6a4SAndroid Build Coastguard Workersudo apt-get install --yes --no-install-recommends \
8*bb4ee6a4SAndroid Build Coastguard Worker    gcc-aarch64-linux-gnu \
9*bb4ee6a4SAndroid Build Coastguard Worker    ipxe-qemu \
10*bb4ee6a4SAndroid Build Coastguard Worker    libavcodec-dev:arm64 \
11*bb4ee6a4SAndroid Build Coastguard Worker    libavutil-dev:arm64 \
12*bb4ee6a4SAndroid Build Coastguard Worker    libc-dev:arm64 \
13*bb4ee6a4SAndroid Build Coastguard Worker    libcap-dev:arm64 \
14*bb4ee6a4SAndroid Build Coastguard Worker    libdbus-1-dev:arm64 \
15*bb4ee6a4SAndroid Build Coastguard Worker    libdrm-dev:arm64 \
16*bb4ee6a4SAndroid Build Coastguard Worker    libepoxy-dev:arm64 \
17*bb4ee6a4SAndroid Build Coastguard Worker    libssl-dev:arm64 \
18*bb4ee6a4SAndroid Build Coastguard Worker    libswscale-dev:arm64 \
19*bb4ee6a4SAndroid Build Coastguard Worker    libva-dev:arm64 \
20*bb4ee6a4SAndroid Build Coastguard Worker    libwayland-dev:arm64 \
21*bb4ee6a4SAndroid Build Coastguard Worker    libxext-dev:arm64 \
22*bb4ee6a4SAndroid Build Coastguard Worker    qemu-efi-aarch64 \
23*bb4ee6a4SAndroid Build Coastguard Worker    qemu-system-aarch64 \
24*bb4ee6a4SAndroid Build Coastguard Worker    qemu-user-static
25*bb4ee6a4SAndroid Build Coastguard Worker
26*bb4ee6a4SAndroid Build Coastguard Workerrustup target add aarch64-unknown-linux-gnu
27*bb4ee6a4SAndroid Build Coastguard Worker
28*bb4ee6a4SAndroid Build Coastguard Worker# Generate a cross file for meson to compile for aarch64
29*bb4ee6a4SAndroid Build Coastguard Workersudo mkdir -p -m 0755 /usr/local/share/meson/cross
30*bb4ee6a4SAndroid Build Coastguard Workersudo tee /usr/local/share/meson/cross/aarch64 >/dev/null <<EOF
31*bb4ee6a4SAndroid Build Coastguard Worker[binaries]
32*bb4ee6a4SAndroid Build Coastguard Workerc = '/usr/bin/aarch64-linux-gnu-gcc'
33*bb4ee6a4SAndroid Build Coastguard Workercpp = '/usr/bin/aarch64-linux-gnu-g++'
34*bb4ee6a4SAndroid Build Coastguard Workerar = '/usr/bin/aarch64-linux-gnu-ar'
35*bb4ee6a4SAndroid Build Coastguard Workerstrip = '/usr/bin/aarch64-linux-gnu-strip'
36*bb4ee6a4SAndroid Build Coastguard Workerobjcopy = '/usr/bin/aarch64-linux-gnu-objcopy'
37*bb4ee6a4SAndroid Build Coastguard Workerld= '/usr/bin/aarch64-linux-gnu-ld'
38*bb4ee6a4SAndroid Build Coastguard Workerpkgconfig = '/usr/bin/aarch64-linux-gnu-pkg-config'
39*bb4ee6a4SAndroid Build Coastguard Worker
40*bb4ee6a4SAndroid Build Coastguard Worker[properties]
41*bb4ee6a4SAndroid Build Coastguard Worker
42*bb4ee6a4SAndroid Build Coastguard Worker[host_machine]
43*bb4ee6a4SAndroid Build Coastguard Workersystem = 'linux'
44*bb4ee6a4SAndroid Build Coastguard Workercpu_family = 'aarch64'
45*bb4ee6a4SAndroid Build Coastguard Workercpu = 'arm64'
46*bb4ee6a4SAndroid Build Coastguard Workerendian = 'little'
47*bb4ee6a4SAndroid Build Coastguard WorkerEOF
48