Skip to content

Commit ef51e5e

Browse files
committed
Add tiny build images
This adds Alpine based images intended for use with make BUILD_IN_DOCKER=1 DOCKER_IMAGE=docker.io/riot/tinybuild-<ARCH> This adds the following images: - tinybuild-base: Base tools needed by all images - tinybuild-native64: Toolchain and headers needed to build `native64` - tinybuild-native32: 32-bit version of above, as needed for `native32` - tinybuild-avr: Toolchain and AVR libc, as needed for AVR boards - tinybuild-arm: Toolchain, newlib, and picolibc for ARM boards - tinybuild-msp430: Toolchain and newlib for MSP430 boards - tinybuild-risc-v: Toolchain, newlib, and picolibc for RISC-V boards
1 parent 3509e7d commit ef51e5e

File tree

8 files changed

+150
-0
lines changed

8 files changed

+150
-0
lines changed

.github/workflows/build.yml

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,76 @@ jobs:
5151
with:
5252
driver: docker
5353

54+
- name: Build tinybuild-base
55+
uses: docker/build-push-action@v2
56+
with:
57+
context: ./tinybuild-base
58+
tags: |
59+
${{ env.DOCKER_REGISTRY }}/tinybuild-base:latest
60+
${{ env.DOCKER_REGISTRY }}/tinybuild-base:${{ env.VERSION_TAG }}
61+
build-args: |
62+
DOCKER_REGISTRY=${{ env.DOCKER_REGISTRY }}
63+
64+
- name: Build tinybuild-arm
65+
uses: docker/build-push-action@v2
66+
with:
67+
context: ./tinybuild-arm
68+
tags: |
69+
${{ env.DOCKER_REGISTRY }}/tinybuild-arm:latest
70+
${{ env.DOCKER_REGISTRY }}/tinybuild-arm:${{ env.VERSION_TAG }}
71+
build-args: |
72+
DOCKER_REGISTRY=${{ env.DOCKER_REGISTRY }}
73+
74+
- name: Build tinybuild-avr
75+
uses: docker/build-push-action@v2
76+
with:
77+
context: ./tinybuild-avr
78+
tags: |
79+
${{ env.DOCKER_REGISTRY }}/tinybuild-avr:latest
80+
${{ env.DOCKER_REGISTRY }}/tinybuild-avr:${{ env.VERSION_TAG }}
81+
build-args: |
82+
DOCKER_REGISTRY=${{ env.DOCKER_REGISTRY }}
83+
84+
- name: Build tinybuild-msp430
85+
uses: docker/build-push-action@v2
86+
with:
87+
context: ./tinybuild-msp430
88+
tags: |
89+
${{ env.DOCKER_REGISTRY }}/tinybuild-msp430:latest
90+
${{ env.DOCKER_REGISTRY }}/tinybuild-msp430:${{ env.VERSION_TAG }}
91+
build-args: |
92+
DOCKER_REGISTRY=${{ env.DOCKER_REGISTRY }}
93+
94+
- name: Build tinybuild-native32
95+
uses: docker/build-push-action@v2
96+
with:
97+
context: ./tinybuild-native32
98+
tags: |
99+
${{ env.DOCKER_REGISTRY }}/tinybuild-native32:latest
100+
${{ env.DOCKER_REGISTRY }}/tinybuild-native32:${{ env.VERSION_TAG }}
101+
build-args: |
102+
DOCKER_REGISTRY=${{ env.DOCKER_REGISTRY }}
103+
104+
- name: Build tinybuild-native64
105+
uses: docker/build-push-action@v2
106+
with:
107+
context: ./tinybuild-native64
108+
tags: |
109+
${{ env.DOCKER_REGISTRY }}/tinybuild-native64:latest
110+
${{ env.DOCKER_REGISTRY }}/tinybuild-native64:${{ env.VERSION_TAG }}
111+
build-args: |
112+
DOCKER_REGISTRY=${{ env.DOCKER_REGISTRY }}
113+
114+
- name: Build tinybuild-risc-v
115+
uses: docker/build-push-action@v2
116+
with:
117+
context: ./tinybuild-risc-v
118+
tags: |
119+
${{ env.DOCKER_REGISTRY }}/tinybuild-risc-v:latest
120+
${{ env.DOCKER_REGISTRY }}/tinybuild-risc-v:${{ env.VERSION_TAG }}
121+
build-args: |
122+
DOCKER_REGISTRY=${{ env.DOCKER_REGISTRY }}
123+
54124
- name: Build riotdocker-base
55125
uses: docker/build-push-action@v2
56126
with:

tinybuild-arm/Dockerfile

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
ARG DOCKER_REGISTRY="docker.io/riot"
2+
FROM ${DOCKER_REGISTRY}/tinybuild-base:latest
3+
4+
LABEL maintainer="Marian Buschsieweke <[email protected]>"
5+
6+
RUN \
7+
apk --no-cache add \
8+
newlib-arm-none-eabi \
9+
picolibc-arm-none-eabi

tinybuild-avr/Dockerfile

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
ARG DOCKER_REGISTRY="docker.io/riot"
2+
FROM ${DOCKER_REGISTRY}/tinybuild-base:latest
3+
4+
LABEL maintainer="Marian Buschsieweke <[email protected]>"
5+
6+
RUN \
7+
apk --no-cache add \
8+
avr-libc

tinybuild-base/Dockerfile

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
FROM alpine:latest
2+
3+
LABEL maintainer="Marian Buschsieweke <[email protected]>"
4+
5+
RUN \
6+
apk --no-cache add \
7+
gcc \
8+
musl-dev \
9+
linux-headers

tinybuild-msp430/Dockerfile

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
ARG DOCKER_REGISTRY="docker.io/riot"
2+
FROM ${DOCKER_REGISTRY}/tinybuild-base:latest
3+
4+
LABEL maintainer="Marian Buschsieweke <[email protected]>"
5+
6+
RUN \
7+
apk --no-cache add \
8+
newlib-msp430-elf

tinybuild-native32/Dockerfile

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
# Note: This is not from tinybuild-base,as tinybuild-base is x86_64
2+
# and this is intended to be a i386 image
3+
FROM i386/alpine:latest
4+
5+
LABEL maintainer="Marian Buschsieweke <[email protected]>"
6+
7+
# libucontext-dev requires some fixes for now
8+
RUN \
9+
apk --no-cache add \
10+
libucontext-dev \
11+
&& \
12+
mv /usr/include/arch/common/libucontext/bits.h /usr/include/libucontext && \
13+
rm -rf /usr/include/arch && \
14+
apk --no-cache add \
15+
gcc \
16+
musl-dev \
17+
linux-headers \
18+
python3 \
19+
make \
20+
unzip \
21+
git

tinybuild-native64/Dockerfile

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
ARG DOCKER_REGISTRY="docker.io/riot"
2+
FROM ${DOCKER_REGISTRY}/tinybuild-base:latest
3+
4+
LABEL maintainer="Marian Buschsieweke <[email protected]>"
5+
6+
# libucontext-dev requires some fixes for now
7+
RUN \
8+
apk --no-cache add \
9+
libucontext-dev \
10+
&& \
11+
mv /usr/include/arch/common/libucontext/bits.h /usr/include/libucontext && \
12+
rm -rf /usr/include/arch && \
13+
apk --no-cache add \
14+
gcc \
15+
musl-dev \
16+
linux-headers

tinybuild-risc-v/Dockerfile

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
ARG DOCKER_REGISTRY="docker.io/riot"
2+
FROM ${DOCKER_REGISTRY}/tinybuild-base:latest
3+
4+
LABEL maintainer="Marian Buschsieweke <[email protected]>"
5+
6+
RUN \
7+
apk --no-cache add \
8+
newlib-riscv-none-elf \
9+
picolibc-riscv-none-elf

0 commit comments

Comments
 (0)