@@ -55,31 +55,47 @@ RUN curl -sLO ${DOTNET_URL} && \
55
55
ENV PATH=$PATH:${DOTNET_INSTALL_DIR}
56
56
57
57
# - Mounriver Toolchain & Debugger ----------------------------------------------
58
- ARG MOUNRIVER_VERSION=1.92
59
- # ARG MOUNRIVER_URL="http://file.mounriver.com/tools/MRS_Toolchain_Linux_x64_V$ MOUNRIVER_VERSION.tar.xz"
60
- ARG MOUNRIVER_URL="/tmp/MRS_Toolchain_Linux_x64_V$ MOUNRIVER_VERSION.tar.xz"
61
- ARG MOUNRIVER_MD5="370603b2bf606ac1ccb15531bd22f012 "
58
+ ARG MOUNRIVER_VERSION=210
59
+ # ARG MOUNRIVER_URL="http://file-oss .mounriver.com/upgrade/MounRiverStudio_Linux_X64_V${ MOUNRIVER_VERSION} .tar.xz"
60
+ ARG MOUNRIVER_URL="/tmp/MounRiverStudio_Linux_X64_V${ MOUNRIVER_VERSION} .tar.xz"
61
+ ARG MOUNRIVER_MD5="53daec6011d4b5b9302681a7237ffeb4 "
62
62
ARG MOUNRIVER_OPENOCD_INSTALL_DIR="/opt/openocd"
63
63
ARG MOUNRIVER_TOOLCHAIN_INSTALL_DIR="/opt/gcc-riscv-none-elf"
64
64
ARG MOUNRIVER_RULES_INSTALL_DIR="/opt/wch/rules"
65
+ ARG MOUNRIVER_FIRMWARE_INSTALL_DIR="/opt/wch/firmware"
66
+ ARG MOUNRIVER_SVD_INSTALL_DIR="/opt/wch/svd"
65
67
66
68
# Download and install package
67
- # RUN curl -sLO ${MOUNRIVER_URL} && \
68
- COPY MRS_Toolchain_Linux_x64_V$MOUNRIVER_VERSION.tar.xz /tmp
69
- RUN echo "${MOUNRIVER_MD5} $(basename ${MOUNRIVER_URL})" | md5sum -c - && \
69
+ # RUN curl -sLO ${MOUNRIVER_URL}
70
+ COPY MounRiverStudio_Linux_X64_V${MOUNRIVER_VERSION}.tar.xz /tmp
71
+ RUN mkdir -p ${MOUNRIVER_RULES_INSTALL_DIR} && \
72
+ mkdir -p ${MOUNRIVER_TOOLCHAIN_INSTALL_DIR} && \
73
+ mkdir -p ${MOUNRIVER_SVD_INSTALL_DIR} && \
74
+ echo "${MOUNRIVER_MD5} $(basename ${MOUNRIVER_URL})" | md5sum -c - && \
70
75
MOUNRIVER_TMP=$(mktemp -d) && \
71
76
tar -xf $(basename "${MOUNRIVER_URL}" ) -C $MOUNRIVER_TMP --strip-components=1 && \
72
77
rm $(basename "${MOUNRIVER_URL}" ) && \
73
78
mv $MOUNRIVER_TMP/beforeinstall/lib* /usr/lib/ && ldconfig && \
74
- mkdir -p ${MOUNRIVER_RULES_INSTALL_DIR} && \
75
79
mv $MOUNRIVER_TMP/beforeinstall/*.rules ${MOUNRIVER_RULES_INSTALL_DIR} && \
76
- mv $MOUNRIVER_TMP/RISC-V_Embedded_GCC12 ${MOUNRIVER_TOOLCHAIN_INSTALL_DIR} && \
77
- rm $MOUNRIVER_TMP/OpenOCD/bin/wch-arm.cfg && \
78
- mv $MOUNRIVER_TMP/OpenOCD ${MOUNRIVER_OPENOCD_INSTALL_DIR} && \
80
+ mv $MOUNRIVER_TMP/MRS-linux-x64/resources/app/resources/linux/components/WCH/Toolchain/RISC-V\ Embedded\ GCC12 ${MOUNRIVER_TOOLCHAIN_INSTALL_DIR}/wch && \
81
+ rm $MOUNRIVER_TMP/MRS-linux-x64/resources/app/resources/linux/components/WCH/OpenOCD/OpenOCD/bin/wch-arm.cfg && \
82
+ mv $MOUNRIVER_TMP/MRS-linux-x64/resources/app/resources/linux/components/WCH/OpenOCD/OpenOCD ${MOUNRIVER_OPENOCD_INSTALL_DIR} && \
83
+ mv $MOUNRIVER_TMP/MRS-linux-x64/resources/app/resources/linux/components/WCH/Others/Firmware_Link/default ${MOUNRIVER_FIRMWARE_INSTALL_DIR} && \
84
+ for i in $(find $MOUNRIVER_TMP/MRS-linux-x64/resources/app/resources/linux/components/WCH/SDK/default/RISC-V/ -name *.svd | uniq); do mv $i ${MOUNRIVER_SVD_INSTALL_DIR}; done && \
79
85
rm -rf $MOUNRIVER_TMP
80
86
COPY gcc-riscv-none-elf.cmake ${CMAKE_CONFIGS_PATH}
81
87
ENV PATH=$PATH:${MOUNRIVER_TOOLCHAIN_INSTALL_DIR}/bin:${MOUNRIVER_OPENOCD_INSTALL_DIR}/bin
82
88
89
+ # Fix broken openocd file permissions
90
+ RUN chmod +x ${MOUNRIVER_OPENOCD_INSTALL_DIR}/bin/openocd
91
+
92
+ # Workaround: link to mis-named toolchain binaries
93
+ RUN mkdir -p ${MOUNRIVER_TOOLCHAIN_INSTALL_DIR}/bin && \
94
+ for i in $(ls ${MOUNRIVER_TOOLCHAIN_INSTALL_DIR}/wch/bin/riscv-wch-elf-*); do k=$(echo "$(basename $i)" | sed s/wch/none/g); ln -s ${MOUNRIVER_TOOLCHAIN_INSTALL_DIR}/wch/bin/$(basename $i) ${MOUNRIVER_TOOLCHAIN_INSTALL_DIR}/bin/$k; done
95
+
96
+ # Create links to SVD files
97
+ RUN ln -s -t ${MOUNRIVER_SVD_INSTALL_DIR}/../ $(ls ${MOUNRIVER_SVD_INSTALL_DIR}/*.svd)
98
+
83
99
# Display warning for mis-configured toolchains
84
100
ARG MOUNRIVER_LEGACY_TOOLCHAIN_INSTALL_DIR="/opt/gcc-riscv-none-embed"
85
101
COPY path-info.sh ${MOUNRIVER_LEGACY_TOOLCHAIN_INSTALL_DIR}/bin/path-info.sh
@@ -98,27 +114,6 @@ RUN curl -sLO ${ISPTOOL_URL} && \
98
114
rm -rf $(basename ${ISPTOOL_URL})
99
115
ENV PATH=$PATH:${ISPTOOL_INSTALL_DIR}
100
116
101
- # - Debugger SVD and ISP Firmware files -----------------------------------------
102
- ARG UPDATE_VERSION=191
103
- # ARG UPDATE_URL="http://file.mounriver.com/upgrade/MounRiver_Update_V$UPDATE_VERSION.zip"
104
- ARG UPDATE_URL="/tmp/MounRiver_Update_V$UPDATE_VERSION.zip"
105
- ARG UPDATE_MD5="fadf314169815d819fbc477891859259"
106
- ARG UPDATE_FIRMWARE_INSTALL_DIR="/opt/wch/firmware"
107
- ARG UPDATE_SVD_INSTALL_DIR="/opt/wch/svd"
108
-
109
- # Download update package, extract firmware/SVD files and install
110
- # RUN curl -sLO ${UPDATE_URL} && \
111
- COPY MounRiver_Update_V$UPDATE_VERSION.zip /tmp
112
- RUN echo "${UPDATE_MD5} $(basename ${UPDATE_URL})" | md5sum -c - && \
113
- UPDATE_TMP=$(mktemp -d) && \
114
- unzip $(basename ${UPDATE_URL}) -d $UPDATE_TMP && \
115
- rm $(basename ${UPDATE_URL}) && \
116
- mv $UPDATE_TMP/update/Firmware_Link ${UPDATE_FIRMWARE_INSTALL_DIR} && \
117
- mkdir -p ${UPDATE_SVD_INSTALL_DIR} && \
118
- for i in $(find $UPDATE_TMP/template/wizard/WCH/RISC-V/ -name *.svd | uniq); do mv $i ${UPDATE_SVD_INSTALL_DIR}; done && \
119
- rm -rf $UPDATE_TMP && \
120
- ln -s -t ${UPDATE_SVD_INSTALL_DIR}/../ $(ls ${UPDATE_SVD_INSTALL_DIR}/*.svd)
121
-
122
117
# - CH32X035 PIOC assembler -----------------------------------------------------
123
118
ARG WASM53B_COMMIT="3c09f65938122733a0af728c30999bac51a9abbf"
124
119
ARG WASM53B_URL="https://github.com/openwch/ch32x035/raw/${WASM53B_COMMIT}/EVT/EXAM/PIOC/Tool_Manual/Tool/WASM53B.EXE"
0 commit comments