mirror of
https://github.com/OneOfEleven/uv-k5-firmware-custom.git
synced 2025-08-03 01:26:33 +03:00
Initial commit
This commit is contained in:
105
external/CMSIS_5/docker/dockerfile
vendored
Normal file
105
external/CMSIS_5/docker/dockerfile
vendored
Normal file
@@ -0,0 +1,105 @@
|
||||
# Due to bandwidth limitation, we need to keep the base image into our
|
||||
# Artifactory Docker Registry. Because we have more than one registry,
|
||||
# we need to set during build time which Artifactory Docker Registry to use.
|
||||
ARG DOCKER_REGISTRY
|
||||
FROM ${DOCKER_REGISTRY}/ubuntu:focal
|
||||
|
||||
# jenkins user needs to be present to work on CI
|
||||
# User 1000 for Kubernetes
|
||||
RUN useradd -u 1000 -U -m -c Jenkins jenkins
|
||||
|
||||
# install packages from official Ubuntu repo
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
# hadolint ignore=DL3008
|
||||
RUN apt-get update && \
|
||||
apt-get install --no-install-recommends -y \
|
||||
bc \
|
||||
build-essential \
|
||||
curl \
|
||||
dos2unix \
|
||||
git \
|
||||
lib32stdc++6 \
|
||||
mscgen \
|
||||
p7zip-full \
|
||||
python3 \
|
||||
python3-pip \
|
||||
tar \
|
||||
unzip \
|
||||
wget \
|
||||
libxml2-utils \
|
||||
zip && \
|
||||
apt-get autoremove -y && \
|
||||
apt-get autoclean -y && \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Create build ARGs for installer files & versions
|
||||
ARG ARMCC=ArmCompiler-5.06u7-linux.sh
|
||||
ARG ARMCLANG=ArmCompiler-6.16-linux-x86_64.sh
|
||||
ARG ARMCLANGLTM=ArmCompiler-6.6.4-linux-x86_64.sh
|
||||
ARG GCC=gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux.tar.bz2
|
||||
ARG DOXYGEN=doxygen_1.8.6-2_amd64.deb
|
||||
ARG FASTMODELS=fvp-11.12-linux-x86_64.tar.gz
|
||||
|
||||
# Including dependency folder
|
||||
ARG DEPENDENCIESFOLDER=dependenciesFiles
|
||||
ARG TOOLS_PATH=/opt
|
||||
ARG INSTALLER_PATH=/tmp/dependenciesFiles
|
||||
RUN mkdir -p ${INSTALLER_PATH}
|
||||
COPY dependenciesFiles/ ${INSTALLER_PATH}
|
||||
|
||||
# install & setup armcc
|
||||
RUN ${INSTALLER_PATH}/${ARMCC} --i-agree-to-the-contained-eula --no-interactive -v -d ${TOOLS_PATH}/armcc
|
||||
ENV PATH=${PATH}:${TOOLS_PATH}/armcc/bin
|
||||
ENV CI_ARMCC5_TOOLCHAIN_ROOT=${TOOLS_PATH}/armclang/bin
|
||||
|
||||
# install & setup armclang
|
||||
RUN ${INSTALLER_PATH}/${ARMCLANG} --i-agree-to-the-contained-eula --no-interactive -v -d ${TOOLS_PATH}/armclang
|
||||
ENV PATH=${PATH}:${TOOLS_PATH}/armclang/bin
|
||||
ENV CI_ARMCC6_TOOLCHAIN_ROOT=${TOOLS_PATH}/armclang/bin
|
||||
|
||||
# install & setup armclang ltm
|
||||
RUN ${INSTALLER_PATH}/${ARMCLANGLTM} --i-agree-to-the-contained-eula --no-interactive -v -d ${TOOLS_PATH}/armclangltm
|
||||
ENV CI_ARMCC6LTM_TOOLCHAIN_ROOT=${TOOLS_PATH}/armclangltm/bin
|
||||
|
||||
# install & setup gcc
|
||||
RUN mkdir -p ${TOOLS_PATH}
|
||||
WORKDIR ${TOOLS_PATH}
|
||||
RUN tar -xvf ${INSTALLER_PATH}/${GCC}
|
||||
ENV PATH=${PATH}:${TOOLS_PATH}/gcc-arm-none-eabi-10-2020-q4-major/bin
|
||||
ENV CI_GCC_TOOLCHAIN_ROOT=${TOOLS_PATH}/gcc-arm-none-eabi-10-2020-q4-major/bin
|
||||
WORKDIR /
|
||||
|
||||
# install fast models 11.12
|
||||
RUN mkdir -p ${TOOLS_PATH}/fvp/
|
||||
WORKDIR ${TOOLS_PATH}/fvp/
|
||||
RUN tar -xvf ${INSTALLER_PATH}/${FASTMODELS}
|
||||
ENV PATH=${PATH}:${TOOLS_PATH}/fvp
|
||||
WORKDIR /
|
||||
|
||||
# install doxygen
|
||||
RUN dpkg -i ${INSTALLER_PATH}/${DOXYGEN}
|
||||
|
||||
# install PackChk
|
||||
RUN cp ${INSTALLER_PATH}/PackChk /usr/local/bin/PackChk
|
||||
RUN chmod +x /usr/local/bin/PackChk
|
||||
|
||||
# install Python requirements
|
||||
COPY requirements.txt ${INSTALLER_PATH}/
|
||||
# hadolint ignore=DL3013
|
||||
RUN python3 -m pip install -U --no-cache-dir pip && \
|
||||
python3 -m pip install -U --no-cache-dir -r ${INSTALLER_PATH}/requirements.txt
|
||||
|
||||
# install buildtools
|
||||
RUN python3 -m pip install --no-cache-dir -r ${INSTALLER_PATH}/buildtools/requirements.txt
|
||||
RUN mv ${INSTALLER_PATH}/buildtools ${TOOLS_PATH}
|
||||
COPY rtebuild /home/jenkins/.rtebuild
|
||||
COPY rtebuild /root/.rtebuild
|
||||
ENV PATH=${PATH}:${TOOLS_PATH}/buildtools
|
||||
|
||||
# set ARMLMD_LICENSE_FILE for ARM compilers
|
||||
ENV ARMLMD_LICENSE_FILE="7010@euhpc-lic-armlmd.euhpc.arm.com:7010@euhpc-lic03.euhpc.arm.com:7010@euhpc-lic05.euhpc.arm.com:7010@euhpc-lic07.euhpc.arm.com"
|
||||
|
||||
# remove dependency folder
|
||||
RUN rm -rf ${INSTALLER_PATH}
|
||||
|
||||
CMD ["bash"]
|
64
external/CMSIS_5/docker/dockerfile.gnu
vendored
Normal file
64
external/CMSIS_5/docker/dockerfile.gnu
vendored
Normal file
@@ -0,0 +1,64 @@
|
||||
# Due to bandwidth limitation, we need to keep the base image into our
|
||||
# Artifactory Docker Registry. Because we have more than one registry,
|
||||
# we need to set during build time which Artifactory Docker Registry to use.
|
||||
ARG DOCKER_REGISTRY
|
||||
FROM ${DOCKER_REGISTRY}/ubuntu:focal
|
||||
|
||||
# install packages from official Ubuntu repo
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
# hadolint ignore=DL3008
|
||||
RUN apt-get update && \
|
||||
apt-get install --no-install-recommends -y \
|
||||
bc \
|
||||
build-essential \
|
||||
curl \
|
||||
dos2unix \
|
||||
git \
|
||||
lib32stdc++6 \
|
||||
mscgen \
|
||||
p7zip-full \
|
||||
python3 \
|
||||
python3-pip \
|
||||
tar \
|
||||
unzip \
|
||||
wget \
|
||||
libxml2-utils \
|
||||
zip && \
|
||||
apt-get autoremove -y && \
|
||||
apt-get autoclean -y && \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Create build ARGs for installer files & versions
|
||||
ARG GCC=gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux.tar.bz2
|
||||
|
||||
# Including dependency folder
|
||||
ARG DEPENDENCIESFOLDER=dependenciesFiles
|
||||
ARG TOOLS_PATH=/opt
|
||||
ARG INSTALLER_PATH=/tmp/dependenciesFiles
|
||||
RUN mkdir -p ${INSTALLER_PATH}
|
||||
COPY dependenciesFiles/${GCC} ${INSTALLER_PATH}/${GCC}
|
||||
COPY dependenciesFiles/buildtools ${TOOLS_PATH}/buildtools
|
||||
|
||||
# install & setup gcc
|
||||
RUN mkdir -p ${TOOLS_PATH}
|
||||
WORKDIR ${TOOLS_PATH}
|
||||
RUN tar -xvf ${INSTALLER_PATH}/${GCC}
|
||||
ENV PATH=${PATH}:${TOOLS_PATH}/gcc-arm-none-eabi-10-2020-q4-major/bin
|
||||
ENV CI_GCC_TOOLCHAIN_ROOT=${TOOLS_PATH}/gcc-arm-none-eabi-10-2020-q4-major/bin
|
||||
WORKDIR /
|
||||
|
||||
# install Python requirements
|
||||
COPY requirements.txt ${INSTALLER_PATH}/
|
||||
# hadolint ignore=DL3013
|
||||
RUN python3 -m pip install -U --no-cache-dir pip && \
|
||||
python3 -m pip install -U --no-cache-dir -r ${INSTALLER_PATH}/requirements.txt
|
||||
|
||||
# install buildtools
|
||||
RUN python3 -m pip install --no-cache-dir -r ${TOOLS_PATH}/buildtools/requirements.txt
|
||||
COPY rtebuild /root/.rtebuild
|
||||
ENV PATH=${PATH}:${TOOLS_PATH}/buildtools
|
||||
|
||||
# remove dependency folder
|
||||
RUN rm -rf ${INSTALLER_PATH}
|
||||
|
||||
CMD ["bash"]
|
66
external/CMSIS_5/docker/getDependencies.sh
vendored
Normal file
66
external/CMSIS_5/docker/getDependencies.sh
vendored
Normal file
@@ -0,0 +1,66 @@
|
||||
#!/bin/bash
|
||||
|
||||
# local variables
|
||||
DEPENDENCIES_FOLDER=dependenciesFiles
|
||||
ARTIFACTORY_URL=https://eu-west-1.artifactory.aws.arm.com:443/artifactory
|
||||
ARTIFACTORY_DEPOT=mcu.depot/ci/depot
|
||||
PACKCHK_VERSION=1.3.93
|
||||
|
||||
if [ -z "$ARTIFACTORY_API_KEY" ]; then
|
||||
echo "Please set your Artifactory ARTIFACTORY_API_KEY"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -z "$USER" ]; then
|
||||
echo "Please set your short ARM user e.g. sampel01"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
function downloadFromArtifactory {
|
||||
filename=$(basename $1)
|
||||
echo "Fetching ${filename} ..."
|
||||
if [[ -f "${filename}" ]]; then
|
||||
sha256sum=$(curl -s -I -H "X-JFrog-Art-Api:$ARTIFACTORY_API_KEY" "${ARTIFACTORY_URL}/${1}" | grep "X-Checksum-Sha256" | cut -d" " -f2)
|
||||
if echo "${sha256sum} *${filename}" | sha256sum -c --status; then
|
||||
echo " ... already up to date"
|
||||
else
|
||||
rm ${filename}
|
||||
fi
|
||||
fi
|
||||
if [[ ! -f "${filename}" ]]; then
|
||||
curl -C - -H "X-JFrog-Art-Api:$ARTIFACTORY_API_KEY" -O "${ARTIFACTORY_URL}/${1}"
|
||||
chmod +x ${filename}
|
||||
fi
|
||||
}
|
||||
|
||||
function downloadFromDepot {
|
||||
downloadFromArtifactory "${ARTIFACTORY_DEPOT}/${1}"
|
||||
}
|
||||
|
||||
function gitClone {
|
||||
echo "Cloning/updating ${2} ..."
|
||||
if [[ ! -d "${2}" ]]; then
|
||||
git clone -b $3 $1 $2
|
||||
else
|
||||
pushd $2
|
||||
git clean -fdx
|
||||
git checkout -f $3
|
||||
git pull origin $3
|
||||
popd
|
||||
fi
|
||||
}
|
||||
|
||||
mkdir -p $DEPENDENCIES_FOLDER
|
||||
pushd $DEPENDENCIES_FOLDER || exit
|
||||
|
||||
downloadFromDepot "doxygen_1.8.6-2_amd64.deb"
|
||||
downloadFromDepot "ArmCompiler-5.06u7-linux.sh"
|
||||
downloadFromDepot "ArmCompiler-6.16-linux-x86_64.sh"
|
||||
downloadFromDepot "ArmCompiler-6.6.4-linux-x86_64.sh"
|
||||
downloadFromDepot "gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux.tar.bz2"
|
||||
downloadFromDepot "fvp-11.12-linux-x86_64.tar.gz"
|
||||
downloadFromArtifactory "mcu.promoted/staging/devtools/tools/packchk/${PACKCHK_VERSION}/linux64/PackChk"
|
||||
|
||||
gitClone "ssh://${USER}@eu-gerrit-1.euhpc.arm.com:29418/dsg/cmsis/buildtools" "buildtools" "master"
|
||||
|
||||
popd || exit
|
6
external/CMSIS_5/docker/requirements.txt
vendored
Normal file
6
external/CMSIS_5/docker/requirements.txt
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
gcovr~=4.2
|
||||
junit-xml~=1.9
|
||||
jira~=2.0
|
||||
junitparser~=1.4
|
||||
Jinja2~=2.11
|
||||
python-matrix-runner~=1.0
|
27
external/CMSIS_5/docker/rtebuild/armcc.rtebuild
vendored
Normal file
27
external/CMSIS_5/docker/rtebuild/armcc.rtebuild
vendored
Normal file
@@ -0,0 +1,27 @@
|
||||
toolchain:
|
||||
ARMCC5:
|
||||
env:
|
||||
PATH : [ "/opt/armcc/bin" ]
|
||||
rte:
|
||||
Tcompiler: "ARMCC"
|
||||
Toptions : "AC5"
|
||||
ccompiler:
|
||||
cmd : "armcc"
|
||||
cmdfile : "--via \""
|
||||
input : "\""
|
||||
output : "-o \""
|
||||
include : "-I\""
|
||||
define : "-D"
|
||||
assembler:
|
||||
cmd : "armasm"
|
||||
cmdfile : "--via \""
|
||||
input : "\""
|
||||
output : "-o \""
|
||||
include : "-I\""
|
||||
define : "--pd \"%{str.join(' SETA ', (str.split(value, '=') + [ '1' ])[0:2])}\""
|
||||
linker:
|
||||
cmd : "armlink"
|
||||
cmdfile : "--via \""
|
||||
input : "\""
|
||||
output : "-o \""
|
||||
script : "--scatter=\""
|
63
external/CMSIS_5/docker/rtebuild/armclang.rtebuild
vendored
Normal file
63
external/CMSIS_5/docker/rtebuild/armclang.rtebuild
vendored
Normal file
@@ -0,0 +1,63 @@
|
||||
toolchain:
|
||||
ARMCC6:
|
||||
env:
|
||||
PATH : [ "/opt/armclang/bin" ]
|
||||
rte:
|
||||
Tcompiler: "ARMCC"
|
||||
Toptions : "AC6"
|
||||
ccompiler:
|
||||
cmd : "armclang"
|
||||
cmdfile : "@\""
|
||||
input : "\""
|
||||
output : "-o \""
|
||||
include : "-I\""
|
||||
define : "-D"
|
||||
assembler:
|
||||
cmd : "armclang"
|
||||
cmdfile : "@\""
|
||||
input : "\""
|
||||
output : "-o \""
|
||||
include : "-I\""
|
||||
define : "-D"
|
||||
linker:
|
||||
cmd : "armclang"
|
||||
cmdfile : "@\""
|
||||
input : "\""
|
||||
output : "-o \""
|
||||
script : "-Wl,--scatter=\""
|
||||
librarian:
|
||||
cmd : "armar"
|
||||
cmdfile : "--Via \""
|
||||
input : "\""
|
||||
output : "--create \""
|
||||
ARMCC6_MDK:
|
||||
env:
|
||||
PATH : [ "/opt/armclang/bin" ]
|
||||
rte:
|
||||
Tcompiler: "ARMCC"
|
||||
Toptions : "AC6"
|
||||
ccompiler:
|
||||
cmd : "armclang"
|
||||
cmdfile : "@\""
|
||||
input : "\""
|
||||
output : "-o \""
|
||||
include : "-I\""
|
||||
define : "-D"
|
||||
assembler:
|
||||
cmd : "armasm"
|
||||
cmdfile : "--Via \""
|
||||
input : "\""
|
||||
output : "-o \""
|
||||
include : "-I\""
|
||||
define : "--pd \"%{value.replace('=', ' SETA ') if '=' in value else value+' SETA 1'}\""
|
||||
linker:
|
||||
cmd : "armlink"
|
||||
cmdfile : "--Via \""
|
||||
input : "\""
|
||||
output : "-o \""
|
||||
script : "--scatter=\""
|
||||
librarian:
|
||||
cmd : "armar"
|
||||
cmdfile : "--Via \""
|
||||
input : "\""
|
||||
output : "--create \""
|
63
external/CMSIS_5/docker/rtebuild/armclang_ltm.rtebuild
vendored
Normal file
63
external/CMSIS_5/docker/rtebuild/armclang_ltm.rtebuild
vendored
Normal file
@@ -0,0 +1,63 @@
|
||||
toolchain:
|
||||
ARMCC6_LTM:
|
||||
env:
|
||||
PATH : [ "/opt/armclangltm/bin" ]
|
||||
rte:
|
||||
Tcompiler: "ARMCC"
|
||||
Toptions : "AC6"
|
||||
ccompiler:
|
||||
cmd : "armclang"
|
||||
cmdfile : "@\""
|
||||
input : "\""
|
||||
output : "-o \""
|
||||
include : "-I\""
|
||||
define : "-D"
|
||||
assembler:
|
||||
cmd : "armclang"
|
||||
cmdfile : "@\""
|
||||
input : "\""
|
||||
output : "-o \""
|
||||
include : "-I\""
|
||||
define : "-D"
|
||||
linker:
|
||||
cmd : "armclang"
|
||||
cmdfile : "@\""
|
||||
input : "\""
|
||||
output : "-o \""
|
||||
script : "-Wl,--scatter=\""
|
||||
librarian:
|
||||
cmd : "armar"
|
||||
cmdfile : "--Via \""
|
||||
input : "\""
|
||||
output : "--create \""
|
||||
ARMCC6_LTM_MDK:
|
||||
env:
|
||||
PATH : [ "/opt/armclangltm/bin" ]
|
||||
rte:
|
||||
Tcompiler: "ARMCC"
|
||||
Toptions : "AC6"
|
||||
ccompiler:
|
||||
cmd : "armclang"
|
||||
cmdfile : "@\""
|
||||
input : "\""
|
||||
output : "-o \""
|
||||
include : "-I\""
|
||||
define : "-D"
|
||||
assembler:
|
||||
cmd : "armasm"
|
||||
cmdfile : "--Via \""
|
||||
input : "\""
|
||||
output : "-o \""
|
||||
include : "-I\""
|
||||
define : "--pd \"%{value.replace('=', ' SETA ') if '=' in value else value+' SETA 1'}\""
|
||||
linker:
|
||||
cmd : "armlink"
|
||||
cmdfile : "--Via \""
|
||||
input : "\""
|
||||
output : "-o \""
|
||||
script : "--scatter=\""
|
||||
librarian:
|
||||
cmd : "armar"
|
||||
cmdfile : "--Via \""
|
||||
input : "\""
|
||||
output : "--create \""
|
27
external/CMSIS_5/docker/rtebuild/gcc.rtebuild
vendored
Normal file
27
external/CMSIS_5/docker/rtebuild/gcc.rtebuild
vendored
Normal file
@@ -0,0 +1,27 @@
|
||||
toolchain:
|
||||
GCC:
|
||||
env:
|
||||
PATH : [ "/opt/gcc-arm-none-eabi-10-2020-q4-major/bin" ]
|
||||
rte:
|
||||
Tcompiler: "GCC"
|
||||
Toptions : ""
|
||||
ccompiler:
|
||||
cmd : "arm-none-eabi-gcc"
|
||||
cmdfile : "@\""
|
||||
input : "\""
|
||||
output : "-o \""
|
||||
include : "-I\""
|
||||
define : "-D"
|
||||
assembler:
|
||||
cmd : "arm-none-eabi-gcc"
|
||||
cmdfile : "@\""
|
||||
input : "\""
|
||||
output : "-o \""
|
||||
include : "-I\""
|
||||
define : "-D"
|
||||
linker:
|
||||
cmd : "arm-none-eabi-gcc"
|
||||
cmdfile : "@\""
|
||||
input : "\""
|
||||
output : "-o \""
|
||||
script : "-T \""
|
6
external/CMSIS_5/docker/rtebuild/toolchain.rtebuild
vendored
Normal file
6
external/CMSIS_5/docker/rtebuild/toolchain.rtebuild
vendored
Normal file
@@ -0,0 +1,6 @@
|
||||
packdir: ${home}/.rtebuild/PACK
|
||||
import:
|
||||
- armcc.rtebuild
|
||||
- armclang.rtebuild
|
||||
- armclang_ltm.rtebuild
|
||||
- gcc.rtebuild
|
Reference in New Issue
Block a user