blob: a6b2c9b8e8d306794d4a9ec05069e2973de3493e [file] [log] [blame]
Fathi Boudra5a803a62020-11-10 17:38:02 +01001#!/bin/sh
2
3set -e
4
5# Install cppcheck
6wget -q http://github.com/danmar/cppcheck/releases/download/1.81/cppcheck-1.81.tar.gz -O /tmp/cppcheck.tar.gz
7tar -xf /tmp/cppcheck.tar.gz -C /opt
8(cd /opt/cppcheck-*; make CFGDIR=/opt/cppcheck-1.81/cfg; make install; make clean)
9
10# Install PlantUML
11curl --create-dirs -fsSLo ${PLANTUML_JAR_PATH} \
Fathi Boudrabb903d92020-11-11 10:06:36 +010012 https://repo1.maven.org/maven2/net/sourceforge/plantuml/plantuml/1.2019.6/plantuml-1.2019.6.jar
Fathi Boudra5a803a62020-11-10 17:38:02 +010013
14# Install CMake
Fathi Boudra2eae64a2020-11-11 11:09:44 +010015curl --connect-timeout 5 --retry 5 --retry-delay 1 --create-dirs -fsSLo /tmp/cmake-Linux-x86_64.tar.gz \
Fathi Boudrabb903d92020-11-11 10:06:36 +010016 https://cmake.org/files/v3.15/cmake-3.15.0-Linux-x86_64.tar.gz
Fathi Boudra5a803a62020-11-10 17:38:02 +010017tar -xf /tmp/cmake-Linux-x86_64.tar.gz -C ${TOOLS_DIR} --strip-components=1
18
19# Install Arm GCC toolchain (arm-none-eabi)
20curl --create-dirs -fsSLo /tmp/gcc-arm-x86_64-arm-none-eabi.tar.xz \
Fathi Boudrabb903d92020-11-11 10:06:36 +010021 https://developer.arm.com/-/media/Files/downloads/gnu-a/9.2-2019.12/binrel/gcc-arm-9.2-2019.12-x86_64-arm-none-eabi.tar.xz
Fathi Boudra5a803a62020-11-10 17:38:02 +010022tar -Jxf /tmp/gcc-arm-x86_64-arm-none-eabi.tar.xz -C ${TOOLS_DIR} --strip-components=1
23
24# Install Arm GCC toolchain (aarch64-none-elf)
25curl --create-dirs -fsSLo /tmp/gcc-arm-x86_64-aarch64-none-elf.tar.xz \
Fathi Boudrabb903d92020-11-11 10:06:36 +010026 https://developer.arm.com/-/media/Files/downloads/gnu-a/9.2-2019.12/binrel/gcc-arm-9.2-2019.12-x86_64-aarch64-none-elf.tar.xz
Fathi Boudra5a803a62020-11-10 17:38:02 +010027tar -Jxf /tmp/gcc-arm-x86_64-aarch64-none-elf.tar.xz -C ${TOOLS_DIR} --strip-components=1
28
29# Install Linaro GCC 6.2.1 toolchain (aarch64-none-elf), which is required by some platforms, i.e. marvell
30# NOTE: Toolchain is not available through PATH so to use it, CROSS_COMPILE should point to
31# CROSS_COMPILE=${TOOLS_DIR}/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-
32curl --create-dirs -fsSLo /tmp/gcc-linaro-x86_64_aarch64-linux-gnu.tar.xz \
Fathi Boudrabb903d92020-11-11 10:06:36 +010033 https://releases.linaro.org/components/toolchain/binaries/6.2-2016.11/aarch64-linux-gnu/gcc-linaro-6.2.1-2016.11-x86_64_aarch64-linux-gnu.tar.xz
Fathi Boudra5a803a62020-11-10 17:38:02 +010034tar -Jxf /tmp/gcc-linaro-x86_64_aarch64-linux-gnu.tar.xz -C ${TOOLS_DIR}
35
Leonardo Sandovalf8dd5b32020-11-10 11:46:29 -060036# Install Arm Clang 6.8 toolchain (armclang)
Fathi Boudrabb903d92020-11-11 10:06:36 +010037# NOTE: Toolchain is not available through PATH so to use it, CC should point to
38# CC=${TOOLS_DIR}/armclang-6.8/bin/armclang
Leonardo Sandovalf8dd5b32020-11-10 11:46:29 -060039mkdir -p /tmp/armclang-6.8
40curl --create-dirs -fsSLo /tmp/DS500-BN-00026-r5p0-15rel0.tgz \
Fathi Boudrabb903d92020-11-11 10:06:36 +010041 https://developer.arm.com/-/media/Files/downloads/compiler/DS500-BN-00026-r5p0-15rel0.tgz?revision=1f1cb8d5-4d1c-4516-9583-b347f71844f4?product=Arm%20Compiler%206%20Downloads,64-bit,,Linux,6.8
Leonardo Sandovalf8dd5b32020-11-10 11:46:29 -060042tar -xf /tmp/DS500-BN-00026-r5p0-15rel0.tgz -C /tmp/armclang-6.8
43/tmp/armclang-6.8/install_x86_64.sh --no-interactive --i-agree-to-the-contained-eula -d ${TOOLS_DIR}/armclang-6.8
44
Fathi Boudrabb903d92020-11-11 10:06:36 +010045# Install Arm Clang 6.13 (armclang)
46mkdir -p /tmp/armclang-6.13
47curl --create-dirs -fsSLo /tmp/DS500-BN-00026-r5p0-15rel0.tgz \
48 https://developer.arm.com/-/media/Files/downloads/compiler/DS500-BN-00026-r5p0-15rel0.tgz?revision=6a961cf7-1d9a-4664-900b-11d20552dbc7?product=Download%20Arm%20Compiler,64-bit,,Linux,6.13
49tar -xf /tmp/DS500-BN-00026-r5p0-15rel0.tgz -C /tmp/armclang-6.13
50/tmp/armclang-6.13/install_x86_64.sh --no-interactive --i-agree-to-the-contained-eula -d ${TOOLS_DIR}
51
52# Install LLVM Clang toolchain (clang)
Leonardo Sandovaldb344642020-11-10 13:04:28 -060053curl --create-dirs -fsSLo /tmp/clang+llvm-10.0.0-x86_64-linux-gnu-ubuntu-18.04.tar.xz \
Fathi Boudrabb903d92020-11-11 10:06:36 +010054 https://github.com/llvm/llvm-project/releases/download/llvmorg-10.0.0/clang+llvm-10.0.0-x86_64-linux-gnu-ubuntu-18.04.tar.xz
Leonardo Sandovaldb344642020-11-10 13:04:28 -060055tar -xf /tmp/clang+llvm-10.0.0-x86_64-linux-gnu-ubuntu-18.04.tar.xz -C ${TOOLS_DIR} --strip-components=1
56
Fathi Boudra5a803a62020-11-10 17:38:02 +010057# Additional binaries required
58mkdir -p nfs/downloads/linaro/20.01
59cd nfs/downloads/linaro/20.01
60wget -q -c -m -A .zip -np -nd https://releases.linaro.org/members/arm/platforms/20.01/
61rm -f *-android-*.zip sg*.zip
62for file in *.zip; do
63 unzip -q ${file} -d $(basename ${file} .zip)
64done
65rm -f *.zip