47 lines
1.4 KiB
Docker
47 lines
1.4 KiB
Docker
# Specify the cross compiler version
|
|
# See: https://github.com/xpack-dev-tools/arm-none-eabi-gcc-xpack
|
|
ARG XPM_ARM_XCOMPILER_VERSION_DEFAULT="10.2.1-1.1.2"
|
|
|
|
# Stage 0
|
|
|
|
FROM ubuntu:latest
|
|
# Issues with XPM cross-compiler on alpine..
|
|
# FROM alpine:latest
|
|
ARG XPM_ARM_XCOMPILER_VERSION_DEFAULT
|
|
ENV XPM_ARM_XCOMPILER_VERSION=$XPM_ARM_XCOMPILER_VERSION_DEFAULT
|
|
|
|
RUN apt-get update ; \
|
|
DEBIAN_FRONTEND="noninteractive" apt-get -y install tzdata; \
|
|
apt-get install -y npm; \
|
|
npm install --global xpm@latest; \
|
|
xpm install --global @xpack-dev-tools/arm-none-eabi-gcc@${XPM_ARM_XCOMPILER_VERSION}
|
|
# RUN apk add cmake make bash npm; \
|
|
# npm install --global xpm@latest; \
|
|
# xpm install --global @xpack-dev-tools/arm-none-eabi-gcc@latest
|
|
|
|
# Stage 1
|
|
|
|
FROM ubuntu:latest
|
|
# FROM alpine:latest
|
|
COPY --from=0 /root/.local/xPacks/@xpack-dev-tools /usr/tools/
|
|
ARG XPM_ARM_XCOMPILER_VERSION_DEFAULT
|
|
ENV XPM_ARM_XCOMPILER_VERSION=$XPM_ARM_XCOMPILER_VERSION_DEFAULT
|
|
RUN echo ${XPM_ARM_XCOMPILER_VERSION}
|
|
|
|
RUN apt-get update && apt-get install -y cmake g++
|
|
# RUN apk add cmake make g++
|
|
|
|
ENV PATH="/usr/tools/arm-none-eabi-gcc/${XPM_ARM_XCOMPILER_VERSION}/.content/bin:${PATH}"
|
|
|
|
WORKDIR /usr/src/app
|
|
COPY . .
|
|
|
|
RUN set -ex; \
|
|
rm -rf build-freertos; \
|
|
mkdir build-freertos; \
|
|
cd build-freertos; \
|
|
cmake -DCMAKE_BUILD_TYPE=Release -DOS_FSFW=freertos -DTGT_BSP=arm/stm32h743zi-nucleo ..;
|
|
|
|
ENTRYPOINT ["cmake", "--build", "build-freertos"]
|
|
CMD ["-j"]
|