39 lines
1.1 KiB
Bash
Executable File
39 lines
1.1 KiB
Bash
Executable File
#!/bin/sh
|
|
# Download and build latest version of ARM Trusted Firmware
|
|
|
|
PLAT="${1}" # For example "sun50i_a64"
|
|
TUPLE="${2}" # For example "aarch64-linux-gnu"
|
|
|
|
set -ex
|
|
|
|
ATF_GIT_URL_DEFAULT="https://github.com/ARM-software/arm-trusted-firmware.git"
|
|
|
|
if [ ! -z "${ATF_GIT_REV}" ]
|
|
then
|
|
git clone --depth 1 \
|
|
--reference-if-able "${WORKDIR}/arm-trusted-firmware" \
|
|
--branch "${ATF_GIT_REV}" \
|
|
"${ATF_GIT_URL:-${ATF_GIT_URL_DEFAULT}}" arm-trusted-firmware
|
|
else
|
|
git clone --depth 1 \
|
|
--reference-if-able "${WORKDIR}/atf" \
|
|
"${ATF_GIT_URL:-${ATF_GIT_URL_DEFAULT}}" arm-trusted-firmware
|
|
fi
|
|
|
|
# Collect version of ATF
|
|
(echo -n atf,; git -C arm-trusted-firmware describe --tags --always --abbrev=10) >> versions.csv
|
|
|
|
# Step into ATF directory
|
|
cd arm-trusted-firmware
|
|
|
|
# Apply patches
|
|
if [ -d "${ATF_PATCHES_DIR}" ]; then
|
|
git apply "${ATF_PATCHES_DIR}"/*.patch || :
|
|
fi
|
|
|
|
# CROSS_COMPILE must point to a valid compiler path prefix
|
|
export CROSS_COMPILE=$(dirname $(which "${TUPLE}-gcc"))/"${TUPLE}-"
|
|
|
|
# Build ATF
|
|
make ${MAKEFLAGS:--j$(nproc)} PLAT="${PLAT}" DEBUG=1 bl31
|