@@ -129,6 +129,53 @@ RUN mkdir /tools/blobs
129
129
RUN cp /tools/esp-idf/examples/get-started/hello_world/build/bootloader/bootloader.bin /tools/blobs/
130
130
RUN cp /tools/esp-idf/examples/get-started/hello_world/build/partition_table/partition-table.bin /tools/blobs/
131
131
132
+ # ##############################################################################
133
+ # Build image for tool required by Renesas builds
134
+ # ##############################################################################
135
+ FROM nuttx-toolchain-base AS nuttx-toolchain-renesas
136
+ # Build Renesas RX GCC toolchain
137
+ RUN apt-get install -y -qq build-essential flex bison texinfo libncurses5-dev m4 make g++ wget
138
+
139
+ # Download toolchain source code
140
+ RUN mkdir -p /tools/renesas-tools/source/binutils && \
141
+ curl -s -L "https://gcc-renesas.com/downloads/d.php?f=rx/binutils/4.8.4.201803-gnurx/rx_binutils2.24_2018Q3.tar.gz" \
142
+ | tar -C renesas-tools/source/binutils --strip-components=1 -xz
143
+ RUN mkdir -p /tools/renesas-tools/source/gcc && \
144
+ curl -s -L "https://gcc-renesas.com/downloads/d.php?f=rx/gcc/4.8.4.201803-gnurx/rx_gcc_4.8.4_2018Q3.tar.gz" \
145
+ | tar -C renesas-tools/source/gcc --strip-components=1 -xz
146
+ RUN mkdir -p /tools/renesas-tools/source/newlib && \
147
+ curl -s -L "https://gcc-renesas.com/downloads/d.php?f=rx/newlib/4.8.4.201803-gnurx/rx_newlib2.2.0_2018Q3.tar.gz" \
148
+ | tar -C renesas-tools/source/newlib --strip-components=1 -xz
149
+
150
+ # Install binutils
151
+ RUN cd renesas-tools/source/binutils && \
152
+ chmod +x ./configure ./mkinstalldirs && \
153
+ mkdir -p /tools/renesas-tools/build/binutils && cd /tools/renesas-tools/build/binutils && \
154
+ /tools/renesas-tools/source/binutils/configure --target=rx-elf --prefix=/tools/renesas-toolchain/rx-elf-gcc --disable-werror &&\
155
+ make && make install
156
+ ENV PATH="/tools/renesas-toolchain/rx-elf-gcc/bin:$PATH"
157
+
158
+ # Install gcc
159
+ RUN cd renesas-tools/source/gcc && \
160
+ chmod +x ./contrib/download_prerequisites ./configure ./move-if-change ./libgcc/mkheader.sh && \
161
+ ./contrib/download_prerequisites && \
162
+ sed -i 's/@tex/\n &/g' ./gcc/doc/gcc.texi && sed -i 's/@end tex/\n &/g' ./gcc/doc/gcc.texi && \
163
+ mkdir -p /tools/renesas-tools/build/gcc && cd /tools/renesas-tools/build/gcc && \
164
+ /tools/renesas-tools/source/gcc/configure --target=rx-elf --prefix=/tools/renesas-toolchain/rx-elf-gcc \
165
+ --disable-shared --disable-multilib --disable-libssp --disable-libstdcxx-pch --disable-werror --enable-lto \
166
+ --enable-gold --with-pkgversion=GCC_Build_1.02 --with-newlib --enable-languages=c && \
167
+ make && make install
168
+ ENV PATH="/tools/renesas-toolchain/rx-elf-gcc/bin:$PATH"
169
+
170
+ # Install newlib
171
+ RUN cd renesas-tools/source/newlib && \
172
+ chmod +x ./configure && \
173
+ mkdir -p /tools/renesas-tools/build/newlib && cd /tools/renesas-tools/build/newlib && \
174
+ /tools/renesas-tools/source/newlib/configure --target=rx-elf --prefix=/tools/renesas-toolchain/rx-elf-gcc && \
175
+ make && make install
176
+ RUN cd /tools/renesas-tools/build/gcc && \
177
+ make && make install
178
+
132
179
133
180
# ##############################################################################
134
181
# Final Docker image used for running CI system. This includes all toolchains
@@ -206,4 +253,8 @@ RUN mkdir -p /tools/blobs/esp32core
206
253
COPY --from=nuttx-toolchain-esp32 /tools/blobs/* /tools/blobs/esp32core/
207
254
RUN pip3 install esptool
208
255
256
+ # Renesas toolchain
257
+ COPY --from=nuttx-toolchain-renesas /tools/renesas-toolchain/rx-elf-gcc/ renesas-toolchain/rx-elf-gcc/
258
+ ENV PATH="/tools/renesas-toolchain/rx-elf-gcc/bin:$PATH"
259
+
209
260
CMD [ "/bin/bash" ]
0 commit comments