@@ -2,34 +2,20 @@ ARG VERSION=1
2
2
FROM ghcr.io/project-chip/chip-build:${VERSION} as build
3
3
LABEL org.opencontainers.image.source https://github.com/project-chip/connectedhomeip
4
4
5
- RUN set -x \
6
- && apt-get update \
7
- && DEBIAN_FRONTEND=noninteractive apt-get install -fy --no-install-recommends \
8
- wget \
9
- && apt-get clean \
10
- && rm -rf /var/lib/apt/lists/ \
11
- && : # last line
12
-
13
5
# Setup toolchain
6
+ WORKDIR /opt/telink
14
7
RUN set -x \
15
- && mkdir /opt/telink \
16
- && cd /opt/telink \
17
- && wget https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v0.16.1/zephyr-sdk-0.16.1_linux-x86_64_minimal.tar.xz \
18
- && wget -O - https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v0.16.1/sha256.sum | shasum --check --ignore-missing \
8
+ && curl --location https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v0.16.1/zephyr-sdk-0.16.1_linux-x86_64_minimal.tar.xz --output zephyr-sdk-0.16.1_linux-x86_64_minimal.tar.xz \
19
9
&& tar xvf zephyr-sdk-0.16.1_linux-x86_64_minimal.tar.xz \
20
10
&& rm -rf zephyr-sdk-0.16.1_linux-x86_64_minimal.tar.xz \
21
- && cd zephyr-sdk-0.16.1 \
22
- && ./setup.sh -t riscv64-zephyr-elf -h -c \
23
- && cd / \
11
+ && zephyr-sdk-0.16.1/setup.sh -t riscv64-zephyr-elf \
24
12
&& : # last line
25
13
26
14
# Setup Zephyr
27
15
ARG ZEPHYR_REVISION=5e5f3cfde3fb5070b2e6cfb8ab08bc688b5aa3d4
28
16
WORKDIR /opt/telink/zephyrproject
29
17
RUN set -x \
30
- && python3 -m pip install -U --no-cache-dir \
31
- west==1.0.0 \
32
- imgtool==1.7.0 \
18
+ && python3 -m pip install -U --no-cache-dir west \
33
19
&& git clone https://github.com/telink-semi/zephyr \
34
20
&& cd zephyr \
35
21
&& git reset ${ZEPHYR_REVISION} --hard \
@@ -41,45 +27,16 @@ RUN set -x \
41
27
&& : # last line
42
28
43
29
FROM ghcr.io/project-chip/chip-build:${VERSION}
44
- LABEL org.opencontainers.image.source https://github.com/project-chip/connectedhomeip
45
30
46
31
COPY --from=build /opt/telink/zephyr-sdk-0.16.1/ /opt/telink/zephyr-sdk-0.16.1/
47
32
COPY --from=build /opt/telink/zephyrproject/ /opt/telink/zephyrproject/
48
33
49
- ENV ZEPHYR_TOOLCHAIN_VARIANT=zephyr
50
- ENV ZEPHYR_SDK_INSTALL_DIR=/opt/telink/zephyr-sdk-0.16.1
51
-
52
34
RUN set -x \
53
35
&& apt-get update \
54
- && DEBIAN_FRONTEND=noninteractive apt-get install -fy --no-install-recommends \
55
- ccache \
56
- dfu-util=0.9-1 \
57
- device-tree-compiler \
58
- gcc-multilib \
59
- g++-multilib \
60
- libsdl2-dev \
61
36
&& apt-get clean \
62
37
&& rm -rf /var/lib/apt/lists/ \
63
- && python3 -m pip install -U --no-cache-dir \
64
- pyelftools==0.27 \
65
38
&& pip3 install --no-cache-dir --user -r /opt/telink/zephyrproject/zephyr/scripts/requirements.txt \
66
39
&& : # last line
67
40
68
- # Setup Telink tools required for "west flash"
69
- ARG TELINK_TOOLS_BASE=/opt/telink/tools
70
- RUN wget http://wiki.telink-semi.cn/tools_and_sdk/Tools/IDE/telink_riscv_ice_flash_tool.zip -O /opt/telink/tools.zip \
71
- && unzip /opt/telink/tools.zip -d ${TELINK_TOOLS_BASE} \
72
- && rm /opt/telink/tools.zip \
73
- && mv ${TELINK_TOOLS_BASE}/telink_riscv_linux_toolchain/* ${TELINK_TOOLS_BASE} \
74
- && rm -rf ${TELINK_TOOLS_BASE}/telink_riscv_linux_toolchain \
75
- && chmod +x ${TELINK_TOOLS_BASE}/flash/bin/SPI_burn \
76
- && chmod +x ${TELINK_TOOLS_BASE}/ice/ICEman \
77
- && : # last line
78
-
79
- # Add path to Telink tools
80
- ENV PATH="${TELINK_TOOLS_BASE}/flash/bin:${PATH}"
81
- ENV PATH="${TELINK_TOOLS_BASE}/ice:${PATH}"
82
-
83
- ARG ZEPHYR_PROJECT_DIR=/opt/telink/zephyrproject
84
- ENV TELINK_ZEPHYR_BASE=${ZEPHYR_PROJECT_DIR}/zephyr
85
- ENV ZEPHYR_BASE=${ZEPHYR_PROJECT_DIR}/zephyr
41
+ ENV TELINK_ZEPHYR_BASE=/opt/telink/zephyrproject/zephyr
42
+ ENV TELINK_ZEPHYR_SDK_DIR=/opt/telink/zephyr-sdk-0.16.1
0 commit comments