Blame


1 9c836066 2024-04-07 benni TOOLS != pwd
2 9c836066 2024-04-07 benni TOP = ${TOOLS}/..
3 9c836066 2024-04-07 benni STAMPS = ${TOOLS}/build/.stamps
4 9c836066 2024-04-07 benni PREFIX = ${TOOLS}
5 d83e2c2b 2024-02-19 benni TARGET = riscv64-unknown-linux-musl
6 556cf3fc 2024-06-11 benni ARCH = rv64ima
7 9c836066 2024-04-07 benni U = ${TOOLS}/util
8 d83e2c2b 2024-02-19 benni
9 9c836066 2024-04-07 benni include ${TOP}/config.mk
10 9c836066 2024-04-07 benni
11 d83e2c2b 2024-02-19 benni BINUTILS_VER = 2.42
12 d83e2c2b 2024-02-19 benni GCC_VER = 13.2.0
13 d83e2c2b 2024-02-19 benni MUSL_VER = 1.2.4
14 d83e2c2b 2024-02-19 benni LINUX_VER = 6.6.17
15 d83e2c2b 2024-02-19 benni LINUX_MAJOR != echo ${LINUX_VER} | cut -d. -f1
16 d83e2c2b 2024-02-19 benni GMP_VER = 6.3.0
17 d83e2c2b 2024-02-19 benni MPFR_VER = 4.2.1
18 d83e2c2b 2024-02-19 benni MPC_VER = 1.3.1
19 6341b1fd 2024-06-15 benni OKSH_VER = 7.5
20 e24fa9f6 2024-07-19 benni DESTRUCT_VER = 0.3
21 ea4a917c 2024-07-06 benni RVFORTH_VER = 0.1
22 d59ba20c 2024-07-06 benni MCU_VER = 1.2
23 2e0e3a8c 2024-07-06 benni GFORTH_VER = 0.7.9_20240627
24 d83e2c2b 2024-02-19 benni
25 9c836066 2024-04-07 benni GMAKE = $U/gmake
26 9c836066 2024-04-07 benni SUDO =
27 d83e2c2b 2024-02-19 benni
28 d83e2c2b 2024-02-19 benni all: build
29 d83e2c2b 2024-02-19 benni
30 2e0e3a8c 2024-07-06 benni extra: rvforth oksh mcu # gforth (broken)
31 ea4a917c 2024-07-06 benni
32 0375feb6 2024-07-05 benni build: ${STAMPS}/libgcc-install ${STAMPS}/destruct-install
33 d83e2c2b 2024-02-19 benni
34 3528385d 2024-04-06 benni distclean: clean
35 3528385d 2024-04-06 benni rm -rf src
36 3528385d 2024-04-06 benni
37 d83e2c2b 2024-02-19 benni clean:
38 d83e2c2b 2024-02-19 benni rm -rf bin build include lib libexec ${TARGET} share
39 d83e2c2b 2024-02-19 benni
40 d83e2c2b 2024-02-19 benni test:
41 9c836066 2024-04-07 benni ${PREFIX}/bin/${TARGET}-gcc -o /dev/null $U/test.c
42 d83e2c2b 2024-02-19 benni
43 2e0e3a8c 2024-07-06 benni download: src/binutils.tgz src/gcc.tgz src/musl.tgz src/linux.tgz src/gmp.tgz src/mpfr.tgz src/mpc.tgz src/oksh.tgz src/destruct.tgz src/rvforth.tgz src/mcu.tgz src/gforth.txz
44 2e0e3a8c 2024-07-06 benni extract: ${STAMPS}/binutils-extract ${STAMPS}/gcc-extract ${STAMPS}/musl-extract ${STAMPS}/linux-extract ${STAMPS}/gmp ${STAMPS}/mpfr ${STAMPS}/mpc ${STAMPS}/oksh ${STAMPS}/destruct ${STAMPS}/rvforth ${STAMPS}/mcu ${STAMPS}/gforth
45 d83e2c2b 2024-02-19 benni
46 d83e2c2b 2024-02-19 benni headers: ${STAMPS}/linux-headers
47 d83e2c2b 2024-02-19 benni install-headers: ${STAMPS}/linux-hdrinst
48 d83e2c2b 2024-02-19 benni binutils: ${STAMPS}/binutils-build
49 d83e2c2b 2024-02-19 benni install-binutils: ${STAMPS}/binutils-install
50 d83e2c2b 2024-02-19 benni
51 d83e2c2b 2024-02-19 benni # DOWNLOAD
52 d83e2c2b 2024-02-19 benni
53 d83e2c2b 2024-02-19 benni src/binutils.tgz:
54 d83e2c2b 2024-02-19 benni mkdir -p src
55 9c836066 2024-04-07 benni $U/download $@ https://ftp.gnu.org/gnu/binutils/binutils-${BINUTILS_VER}.tar.gz
56 d83e2c2b 2024-02-19 benni
57 d83e2c2b 2024-02-19 benni src/gcc.tgz:
58 d83e2c2b 2024-02-19 benni mkdir -p src
59 9c836066 2024-04-07 benni $U/download $@ https://ftp.gnu.org/gnu/gcc/gcc-${GCC_VER}/gcc-${GCC_VER}.tar.gz
60 d83e2c2b 2024-02-19 benni
61 d83e2c2b 2024-02-19 benni src/musl.tgz:
62 d83e2c2b 2024-02-19 benni mkdir -p src
63 9c836066 2024-04-07 benni $U/download $@ http://musl.libc.org/releases/musl-${MUSL_VER}.tar.gz
64 d83e2c2b 2024-02-19 benni
65 d83e2c2b 2024-02-19 benni src/linux.tgz:
66 d83e2c2b 2024-02-19 benni mkdir -p src
67 9c836066 2024-04-07 benni $U/download $@ https://mirrors.edge.kernel.org/pub/linux/kernel/v${LINUX_MAJOR}.x/linux-${LINUX_VER}.tar.gz
68 d83e2c2b 2024-02-19 benni
69 d83e2c2b 2024-02-19 benni src/gmp.tgz:
70 d83e2c2b 2024-02-19 benni mkdir -p src
71 9c836066 2024-04-07 benni $U/download $@ https://gmplib.org/download/gmp/gmp-${GMP_VER}.tar.gz
72 d83e2c2b 2024-02-19 benni
73 d83e2c2b 2024-02-19 benni src/mpfr.tgz:
74 d83e2c2b 2024-02-19 benni mkdir -p src
75 9c836066 2024-04-07 benni $U/download $@ https://www.mpfr.org/mpfr-current/mpfr-${MPFR_VER}.tar.gz
76 d83e2c2b 2024-02-19 benni
77 d83e2c2b 2024-02-19 benni src/mpc.tgz:
78 d83e2c2b 2024-02-19 benni mkdir -p src
79 9c836066 2024-04-07 benni $U/download $@ https://ftp.gnu.org/gnu/mpc/mpc-${MPC_VER}.tar.gz
80 d83e2c2b 2024-02-19 benni
81 6341b1fd 2024-06-15 benni src/oksh.tgz:
82 6341b1fd 2024-06-15 benni mkdir -p src
83 6341b1fd 2024-06-15 benni $U/download $@ https://github.com/ibara/oksh/releases/download/oksh-${OKSH_VER}/oksh-${OKSH_VER}.tar.gz
84 6341b1fd 2024-06-15 benni
85 0375feb6 2024-07-05 benni src/destruct.tgz:
86 0375feb6 2024-07-05 benni mkdir -p src
87 0375feb6 2024-07-05 benni $U/download $@ https://got.stuerz.xyz/download/destruct-${DESTRUCT_VER}.tgz
88 0375feb6 2024-07-05 benni
89 ea4a917c 2024-07-06 benni src/rvforth.tgz:
90 ea4a917c 2024-07-06 benni mkdir -p src
91 ea4a917c 2024-07-06 benni $U/download $@ https://got.stuerz.xyz/download/rvforth-${RVFORTH_VER}.tgz
92 ea4a917c 2024-07-06 benni
93 d59ba20c 2024-07-06 benni src/mcu.tgz:
94 d59ba20c 2024-07-06 benni mkdir -p src
95 d59ba20c 2024-07-06 benni $U/download $@ https://github.com/riscygeek/microcoreutils/archive/refs/tags/v${MCU_VER}.tar.gz
96 d59ba20c 2024-07-06 benni
97 2e0e3a8c 2024-07-06 benni src/gforth.txz:
98 2e0e3a8c 2024-07-06 benni mkdir -p src
99 2e0e3a8c 2024-07-06 benni $U/download $@ https://www.complang.tuwien.ac.at/forth/gforth/Snapshots/${GFORTH_VER}/gforth-${GFORTH_VER}.tar.xz
100 2e0e3a8c 2024-07-06 benni
101 d83e2c2b 2024-02-19 benni # EXTRACT
102 d83e2c2b 2024-02-19 benni
103 d83e2c2b 2024-02-19 benni ${STAMPS}/binutils-extract: src/binutils.tgz
104 d83e2c2b 2024-02-19 benni mkdir -p ${STAMPS}
105 d83e2c2b 2024-02-19 benni rm -rf build/binutils
106 d83e2c2b 2024-02-19 benni tar -C build -xzf src/binutils.tgz
107 d83e2c2b 2024-02-19 benni mv build/binutils-* build/binutils
108 d83e2c2b 2024-02-19 benni touch $@
109 d83e2c2b 2024-02-19 benni
110 d83e2c2b 2024-02-19 benni ${STAMPS}/gcc-extract: src/gcc.tgz
111 d83e2c2b 2024-02-19 benni mkdir -p ${STAMPS}
112 d83e2c2b 2024-02-19 benni rm -rf build/gcc
113 d83e2c2b 2024-02-19 benni tar -C build -xzf src/gcc.tgz
114 d83e2c2b 2024-02-19 benni mv build/gcc-* build/gcc
115 d83e2c2b 2024-02-19 benni cd build/gcc && ln -sf ../gmp ../mpfr ../mpc .
116 9c836066 2024-04-07 benni $U/fix-gcc ${TOOLS}/build/gcc
117 d83e2c2b 2024-02-19 benni touch $@
118 d83e2c2b 2024-02-19 benni
119 d83e2c2b 2024-02-19 benni ${STAMPS}/musl-extract: src/musl.tgz
120 d83e2c2b 2024-02-19 benni mkdir -p ${STAMPS}
121 d83e2c2b 2024-02-19 benni rm -rf build/musl
122 d83e2c2b 2024-02-19 benni tar -C build -xzf src/musl.tgz
123 d83e2c2b 2024-02-19 benni mv build/musl-* build/musl
124 d83e2c2b 2024-02-19 benni touch $@
125 d83e2c2b 2024-02-19 benni
126 d83e2c2b 2024-02-19 benni ${STAMPS}/linux-extract: src/linux.tgz
127 d83e2c2b 2024-02-19 benni mkdir -p ${STAMPS}
128 d83e2c2b 2024-02-19 benni rm -rf build/linux
129 d83e2c2b 2024-02-19 benni tar -C build -xzf src/linux.tgz
130 d83e2c2b 2024-02-19 benni mv build/linux-* build/linux
131 9c836066 2024-04-07 benni $U/fix-headers ${TOOLS}/build/linux/scripts/headers_install.sh
132 d83e2c2b 2024-02-19 benni touch $@
133 d83e2c2b 2024-02-19 benni
134 d83e2c2b 2024-02-19 benni ${STAMPS}/gmp: src/gmp.tgz
135 d83e2c2b 2024-02-19 benni mkdir -p ${STAMPS}
136 d83e2c2b 2024-02-19 benni tar -C build -xzf src/gmp.tgz
137 d83e2c2b 2024-02-19 benni mv build/gmp-* build/gmp
138 d83e2c2b 2024-02-19 benni touch $@
139 d83e2c2b 2024-02-19 benni
140 d83e2c2b 2024-02-19 benni ${STAMPS}/mpfr: src/mpfr.tgz
141 d83e2c2b 2024-02-19 benni mkdir -p ${STAMPS}
142 d83e2c2b 2024-02-19 benni tar -C build -xzf src/mpfr.tgz
143 d83e2c2b 2024-02-19 benni mv build/mpfr-* build/mpfr
144 d83e2c2b 2024-02-19 benni touch $@
145 d83e2c2b 2024-02-19 benni
146 d83e2c2b 2024-02-19 benni ${STAMPS}/mpc: src/mpc.tgz
147 d83e2c2b 2024-02-19 benni mkdir -p ${STAMPS}
148 d83e2c2b 2024-02-19 benni tar -C build -xzf src/mpc.tgz
149 d83e2c2b 2024-02-19 benni mv build/mpc-* build/mpc
150 d83e2c2b 2024-02-19 benni touch $@
151 d83e2c2b 2024-02-19 benni
152 6341b1fd 2024-06-15 benni ${STAMPS}/oksh: src/oksh.tgz
153 6341b1fd 2024-06-15 benni mkdir -p ${STAMPS}
154 6341b1fd 2024-06-15 benni tar -C build -xzf src/oksh.tgz
155 6341b1fd 2024-06-15 benni mv build/oksh-* build/oksh
156 6341b1fd 2024-06-15 benni touch $@
157 d83e2c2b 2024-02-19 benni
158 0375feb6 2024-07-05 benni ${STAMPS}/destruct: src/destruct.tgz
159 0375feb6 2024-07-05 benni mkdir -p ${STAMPS}
160 0375feb6 2024-07-05 benni tar -C build -xzf src/destruct.tgz
161 0375feb6 2024-07-05 benni mv build/destruct-* build/destruct
162 ea4a917c 2024-07-06 benni touch $@
163 ea4a917c 2024-07-06 benni
164 ea4a917c 2024-07-06 benni ${STAMPS}/rvforth: src/rvforth.tgz
165 ea4a917c 2024-07-06 benni mkdir -p ${STAMPS}
166 ea4a917c 2024-07-06 benni tar -C build -xzf src/rvforth.tgz
167 ea4a917c 2024-07-06 benni mv build/rvforth-* build/rvforth
168 0375feb6 2024-07-05 benni touch $@
169 6341b1fd 2024-06-15 benni
170 d59ba20c 2024-07-06 benni ${STAMPS}/mcu: src/mcu.tgz
171 d59ba20c 2024-07-06 benni mkdir -p ${STAMPS}
172 d59ba20c 2024-07-06 benni tar -C build -xzf src/mcu.tgz
173 d59ba20c 2024-07-06 benni mv build/microcoreutils-* build/mcu
174 d59ba20c 2024-07-06 benni touch $@
175 d59ba20c 2024-07-06 benni
176 2e0e3a8c 2024-07-06 benni ${STAMPS}/gforth: src/gforth.txz
177 2e0e3a8c 2024-07-06 benni mkdir -p ${STAMPS}
178 2e0e3a8c 2024-07-06 benni xzcat src/gforth.txz | tar -C build -xf -
179 2e0e3a8c 2024-07-06 benni mv build/gforth-* build/gforth
180 2e0e3a8c 2024-07-06 benni touch $@
181 2e0e3a8c 2024-07-06 benni
182 d83e2c2b 2024-02-19 benni # KERNEL HEADERS
183 d83e2c2b 2024-02-19 benni
184 d83e2c2b 2024-02-19 benni ${STAMPS}/linux-headers: ${STAMPS}/linux-extract
185 9c836066 2024-04-07 benni (cd ${TOOLS}/build/linux && ${GMAKE} ARCH=riscv HOSTCC="${CC}" headers)
186 9c836066 2024-04-07 benni rm -f ${TOOLS}/build/linux/usr/include/Makefile
187 9c836066 2024-04-07 benni rm -f ${TOOLS}/build/linux/usr/include/headers_check.pl
188 d83e2c2b 2024-02-19 benni touch $@
189 d83e2c2b 2024-02-19 benni
190 d83e2c2b 2024-02-19 benni ${STAMPS}/linux-hdrinst: ${STAMPS}/linux-headers
191 d83e2c2b 2024-02-19 benni mkdir -p ${PREFIX}/${TARGET}
192 9c836066 2024-04-07 benni cd ${TOOLS}/build/linux && ${SUDO} cp -rf ${TOOLS}/build/linux/usr/include ${PREFIX}/${TARGET}/
193 d83e2c2b 2024-02-19 benni touch $@
194 d83e2c2b 2024-02-19 benni
195 d83e2c2b 2024-02-19 benni # BINUTILS
196 d83e2c2b 2024-02-19 benni
197 d83e2c2b 2024-02-19 benni ${STAMPS}/binutils-configure: ${STAMPS}/binutils-extract
198 9c836066 2024-04-07 benni mkdir -p ${TOOLS}/build/binutils/build
199 9c836066 2024-04-07 benni cd ${TOOLS}/build/binutils/build \
200 9c836066 2024-04-07 benni && CC="${CC}" CXX="${CXX}" ../configure \
201 d83e2c2b 2024-02-19 benni --prefix=${PREFIX} \
202 d83e2c2b 2024-02-19 benni --target=${TARGET} \
203 d83e2c2b 2024-02-19 benni --with-system-zlib \
204 d83e2c2b 2024-02-19 benni --with-arch=${ARCH} \
205 9c836066 2024-04-07 benni --without-zstd \
206 d83e2c2b 2024-02-19 benni --disable-nls \
207 d83e2c2b 2024-02-19 benni --disable-werror \
208 d83e2c2b 2024-02-19 benni --disable-multilib
209 d83e2c2b 2024-02-19 benni touch $@
210 d83e2c2b 2024-02-19 benni
211 d83e2c2b 2024-02-19 benni ${STAMPS}/binutils-build: ${STAMPS}/binutils-configure
212 9c836066 2024-04-07 benni (cd ${TOOLS}/build/binutils/build && ${GMAKE})
213 d83e2c2b 2024-02-19 benni touch $@
214 d83e2c2b 2024-02-19 benni
215 d83e2c2b 2024-02-19 benni ${STAMPS}/binutils-install: ${STAMPS}/binutils-build
216 9c836066 2024-04-07 benni (cd ${TOOLS}/build/binutils/build && ${SUDO} ${GMAKE} install)
217 d83e2c2b 2024-02-19 benni touch $@
218 d83e2c2b 2024-02-19 benni
219 d83e2c2b 2024-02-19 benni # GCC
220 d83e2c2b 2024-02-19 benni
221 d83e2c2b 2024-02-19 benni ${STAMPS}/gcc-configure: ${STAMPS}/gcc-extract ${STAMPS}/binutils-install ${STAMPS}/gmp ${STAMPS}/mpfr ${STAMPS}/mpc
222 9c836066 2024-04-07 benni mkdir -p ${TOOLS}/build/gcc/build
223 9c836066 2024-04-07 benni cd ${TOOLS}/build/gcc/build \
224 1927278b 2024-06-15 benni && CC="${CC}" CXX="${CXX}" \
225 1927278b 2024-06-15 benni CXXFLAGS="${CXXFLAGS} -Dvec_step=\"xvec_step\"" \
226 1927278b 2024-06-15 benni ../configure \
227 d83e2c2b 2024-02-19 benni --prefix=${PREFIX} \
228 d83e2c2b 2024-02-19 benni --target=${TARGET} \
229 d83e2c2b 2024-02-19 benni --with-system-zlib \
230 d83e2c2b 2024-02-19 benni --with-arch=${ARCH} \
231 d83e2c2b 2024-02-19 benni --with-newlib \
232 d83e2c2b 2024-02-19 benni --without-headers \
233 d83e2c2b 2024-02-19 benni --enable-languages=c \
234 d83e2c2b 2024-02-19 benni --disable-nls \
235 d83e2c2b 2024-02-19 benni --disable-multilib \
236 d83e2c2b 2024-02-19 benni --disable-libssp \
237 d83e2c2b 2024-02-19 benni --disable-libsanitizer \
238 d83e2c2b 2024-02-19 benni --disable-libstdcxx \
239 d83e2c2b 2024-02-19 benni --disable-libgomp \
240 d83e2c2b 2024-02-19 benni --disable-libquadmath \
241 d83e2c2b 2024-02-19 benni --disable-libvtv \
242 d83e2c2b 2024-02-19 benni --disable-shared \
243 d83e2c2b 2024-02-19 benni --enable-static \
244 d83e2c2b 2024-02-19 benni --disable-threads
245 d83e2c2b 2024-02-19 benni touch $@
246 d83e2c2b 2024-02-19 benni
247 d83e2c2b 2024-02-19 benni ${STAMPS}/gcc-build: ${STAMPS}/gcc-configure
248 9c836066 2024-04-07 benni (cd ${TOOLS}/build/gcc/build && ${GMAKE} all-gcc)
249 d83e2c2b 2024-02-19 benni touch $@
250 d83e2c2b 2024-02-19 benni
251 d83e2c2b 2024-02-19 benni ${STAMPS}/gcc-install: ${STAMPS}/gcc-build
252 9c836066 2024-04-07 benni (cd ${TOOLS}/build/gcc/build && ${SUDO} ${GMAKE} install-gcc)
253 d83e2c2b 2024-02-19 benni touch $@
254 d83e2c2b 2024-02-19 benni
255 d83e2c2b 2024-02-19 benni # MUSL
256 d83e2c2b 2024-02-19 benni
257 d83e2c2b 2024-02-19 benni ${STAMPS}/musl-configure: ${STAMPS}/musl-extract ${STAMPS}/gcc-install
258 9c836066 2024-04-07 benni mkdir -p ${TOOLS}/build/musl/build
259 9c836066 2024-04-07 benni cd ${TOOLS}/build/musl/build && \
260 e46639b3 2024-02-20 benni CROSS_COMPILE=${PREFIX}/bin/${TARGET}- \
261 e46639b3 2024-02-20 benni ../configure \
262 d83e2c2b 2024-02-19 benni --prefix=${PREFIX}/${TARGET} \
263 d83e2c2b 2024-02-19 benni --target=${TARGET} \
264 d83e2c2b 2024-02-19 benni --disable-shared \
265 d83e2c2b 2024-02-19 benni --disable-wrapper \
266 d83e2c2b 2024-02-19 benni --enable-static
267 d83e2c2b 2024-02-19 benni touch $@
268 d83e2c2b 2024-02-19 benni
269 d83e2c2b 2024-02-19 benni ${STAMPS}/musl-build: ${STAMPS}/musl-configure ${STAMPS}/linux-hdrinst
270 9c836066 2024-04-07 benni (cd ${TOOLS}/build/musl/build && ${GMAKE})
271 d83e2c2b 2024-02-19 benni touch $@
272 d83e2c2b 2024-02-19 benni
273 d83e2c2b 2024-02-19 benni ${STAMPS}/musl-install: ${STAMPS}/musl-build
274 9c836066 2024-04-07 benni (cd ${TOOLS}/build/musl/build && ${SUDO} ${GMAKE} install)
275 d83e2c2b 2024-02-19 benni touch $@
276 d83e2c2b 2024-02-19 benni
277 d83e2c2b 2024-02-19 benni # LIBGCC
278 d83e2c2b 2024-02-19 benni
279 d83e2c2b 2024-02-19 benni ${STAMPS}/libgcc-build: ${STAMPS}/gcc-install ${STAMPS}/musl-install
280 9c836066 2024-04-07 benni (cd ${TOOLS}/build/gcc/build && ${GMAKE} all-target-libgcc)
281 d83e2c2b 2024-02-19 benni touch $@
282 d83e2c2b 2024-02-19 benni
283 d83e2c2b 2024-02-19 benni ${STAMPS}/libgcc-install: ${STAMPS}/libgcc-build
284 9c836066 2024-04-07 benni (cd ${TOOLS}/build/gcc/build && ${SUDO} ${GMAKE} install-target-libgcc)
285 d83e2c2b 2024-02-19 benni touch $@
286 6341b1fd 2024-06-15 benni
287 6341b1fd 2024-06-15 benni # OKSH
288 6341b1fd 2024-06-15 benni
289 6341b1fd 2024-06-15 benni ${STAMPS}/oksh-configure: ${STAMPS}/oksh ${STAMPS}/gcc-install
290 6341b1fd 2024-06-15 benni cd ${TOOLS}/build/oksh && \
291 c21d1989 2024-06-16 benni CFLAGS="-Og -g" ./configure \
292 6341b1fd 2024-06-15 benni --prefix=/ \
293 6341b1fd 2024-06-15 benni --cc=${PREFIX}/bin/${TARGET}-gcc \
294 6341b1fd 2024-06-15 benni --enable-sh \
295 6341b1fd 2024-06-15 benni --enable-ksh \
296 6341b1fd 2024-06-15 benni --enable-static \
297 6341b1fd 2024-06-15 benni --disable-curses \
298 6341b1fd 2024-06-15 benni --no-thanks
299 6341b1fd 2024-06-15 benni touch $@
300 6341b1fd 2024-06-15 benni
301 6341b1fd 2024-06-15 benni ${STAMPS}/oksh-build: ${STAMPS}/oksh-configure
302 6341b1fd 2024-06-15 benni (cd ${TOOLS}/build/oksh && ${MAKE})
303 6341b1fd 2024-06-15 benni touch $@
304 6341b1fd 2024-06-15 benni
305 6341b1fd 2024-06-15 benni ${TOP}/rootfs/bin/ksh: ${STAMPS}/oksh-build
306 6341b1fd 2024-06-15 benni mkdir -p ${TOP}/rootfs
307 6341b1fd 2024-06-15 benni (cd ${TOOLS}/build/oksh && ${MAKE} DESTDIR=${TOP}/rootfs install)
308 6341b1fd 2024-06-15 benni
309 6341b1fd 2024-06-15 benni oksh: ${TOP}/rootfs/bin/ksh
310 0375feb6 2024-07-05 benni
311 0375feb6 2024-07-05 benni # DESTRUCT
312 0375feb6 2024-07-05 benni
313 0375feb6 2024-07-05 benni ${STAMPS}/destruct-build: ${STAMPS}/destruct
314 0375feb6 2024-07-05 benni (cd ${TOOLS}/build/destruct && ${MAKE})
315 0375feb6 2024-07-05 benni touch $@
316 0375feb6 2024-07-05 benni
317 0375feb6 2024-07-05 benni ${STAMPS}/destruct-install: ${STAMPS}/destruct-build
318 0375feb6 2024-07-05 benni (cd ${TOOLS}/build/destruct && ${MAKE} PREFIX=${TOOLS} install)
319 0375feb6 2024-07-05 benni touch $@
320 d3dcf18f 2024-07-05 benni
321 d3dcf18f 2024-07-05 benni clean-destruct:
322 d3dcf18f 2024-07-05 benni rm -f bin/destruct ${STAMPS}/destruct*
323 d3dcf18f 2024-07-05 benni rm -rf build/destruct
324 d3dcf18f 2024-07-05 benni
325 d3dcf18f 2024-07-05 benni destruct: ${STAMPS}/destruct-install
326 ea4a917c 2024-07-06 benni
327 ea4a917c 2024-07-06 benni # RVFORTH
328 ea4a917c 2024-07-06 benni
329 ea4a917c 2024-07-06 benni ${STAMPS}/rvforth-build: ${STAMPS}/rvforth
330 ea4a917c 2024-07-06 benni (cd ${TOOLS}/build/rvforth && ${MAKE} CC="${PREFIX}/bin/${TARGET}-gcc")
331 ea4a917c 2024-07-06 benni touch $@
332 ea4a917c 2024-07-06 benni
333 ea4a917c 2024-07-06 benni ${TOP}/rootfs/bin/rvforth: ${STAMPS}/rvforth-build
334 ea4a917c 2024-07-06 benni mkdir -p ${TOP}/rootfs/bin
335 ea4a917c 2024-07-06 benni (cd ${TOOLS}/build/rvforth && ${MAKE} PREFIX=/ DESTDIR=${TOP}/rootfs install)
336 ea4a917c 2024-07-06 benni
337 2e0e3a8c 2024-07-06 benni clean-rvforth:
338 2e0e3a8c 2024-07-06 benni rm -f ${STAMPS}/rvforth*
339 2e0e3a8c 2024-07-06 benni rm -rf build/rvforth
340 ea4a917c 2024-07-06 benni
341 ea4a917c 2024-07-06 benni rvforth: ${TOP}/rootfs/bin/rvforth
342 d59ba20c 2024-07-06 benni
343 d59ba20c 2024-07-06 benni # MICROCOREUTILS
344 d59ba20c 2024-07-06 benni
345 d59ba20c 2024-07-06 benni ${STAMPS}/mcu-configure: ${STAMPS}/mcu
346 d59ba20c 2024-07-06 benni cd ${TOOLS}/build/mcu && \
347 d59ba20c 2024-07-06 benni CC=${PREFIX}/bin/${TARGET}-gcc ./configure \
348 d59ba20c 2024-07-06 benni --prefix=/mcu \
349 d59ba20c 2024-07-06 benni --host=${TARGET} \
350 d59ba20c 2024-07-06 benni --enable-extra-progs
351 d59ba20c 2024-07-06 benni touch $@
352 d59ba20c 2024-07-06 benni
353 d59ba20c 2024-07-06 benni ${STAMPS}/mcu-fix: ${STAMPS}/mcu-configure
354 d59ba20c 2024-07-06 benni (cd ${TOOLS}/build/mcu && \
355 d59ba20c 2024-07-06 benni sed '/^#define malloc/d; /^#define realloc/d' config.h > config.h.new && \
356 d59ba20c 2024-07-06 benni mv config.h.new config.h)
357 d59ba20c 2024-07-06 benni touch $@
358 d59ba20c 2024-07-06 benni
359 d59ba20c 2024-07-06 benni ${STAMPS}/mcu-build: ${STAMPS}/mcu-fix
360 d59ba20c 2024-07-06 benni (cd ${TOOLS}/build/mcu && ${MAKE})
361 d59ba20c 2024-07-06 benni touch $@
362 d59ba20c 2024-07-06 benni
363 d59ba20c 2024-07-06 benni ${TOP}/rootfs/mcu/bin/ls: ${STAMPS}/mcu-build
364 d59ba20c 2024-07-06 benni (cd ${TOOLS}/build/mcu && ${MAKE} DESTDIR=${TOP}/rootfs install)
365 d59ba20c 2024-07-06 benni
366 d59ba20c 2024-07-06 benni mcu: ${TOP}/rootfs/mcu/bin/ls
367 2e0e3a8c 2024-07-06 benni
368 2e0e3a8c 2024-07-06 benni # GFORTH
369 2e0e3a8c 2024-07-06 benni
370 2e0e3a8c 2024-07-06 benni ${STAMPS}/gforth-fix: ${STAMPS}/gforth
371 2e0e3a8c 2024-07-06 benni (cd ${TOOLS}/build/gforth && sed '/^CHECKFLAGS=.*$$/d' configure > configure.new && chmod +x configure.new)
372 2e0e3a8c 2024-07-06 benni touch $@
373 2e0e3a8c 2024-07-06 benni
374 2e0e3a8c 2024-07-06 benni ${STAMPS}/gforth-configure: ${STAMPS}/gforth-fix
375 2e0e3a8c 2024-07-06 benni cd ${TOOLS}/build/gforth && \
376 2e0e3a8c 2024-07-06 benni CC=${PREFIX}/bin/${TARGET}-gcc CFLAGS="-O2" ./configure.new \
377 2e0e3a8c 2024-07-06 benni --prefix=/ \
378 2e0e3a8c 2024-07-06 benni --with-arch=riscv \
379 2e0e3a8c 2024-07-06 benni --without-check \
380 2e0e3a8c 2024-07-06 benni --host=${TARGET} \
381 2e0e3a8c 2024-07-06 benni --enable-static \
382 2e0e3a8c 2024-07-06 benni --disable-shared \
383 2e0e3a8c 2024-07-06 benni --disable-version \
384 2e0e3a8c 2024-07-06 benni --disable-lib \
385 2e0e3a8c 2024-07-06 benni --without-pic \
386 2e0e3a8c 2024-07-06 benni ac_cv_sizeof_void_p=8 \
387 2e0e3a8c 2024-07-06 benni ac_cv_sizeof_char_p=8 \
388 2e0e3a8c 2024-07-06 benni ac_cv_sizeof_char=1 \
389 2e0e3a8c 2024-07-06 benni ac_cv_sizeof_short=2 \
390 2e0e3a8c 2024-07-06 benni ac_cv_sizeof_int=4 \
391 2e0e3a8c 2024-07-06 benni ac_cv_sizeof_long=8 \
392 2e0e3a8c 2024-07-06 benni ac_cv_sizeof_long_long=8 \
393 2e0e3a8c 2024-07-06 benni ac_cv_sizeof_intptr_t=8 \
394 2e0e3a8c 2024-07-06 benni ac_cv_sizeof___int128_t=16 \
395 2e0e3a8c 2024-07-06 benni ac_cv_sizeof___uint128_t=16 \
396 2e0e3a8c 2024-07-06 benni ac_cv_sizeof_off_t=8 \
397 2e0e3a8c 2024-07-06 benni ac_cv_c_bigendian=no \
398 2e0e3a8c 2024-07-06 benni ac_cv_func_memcmp_working=yes \
399 2e0e3a8c 2024-07-06 benni ac_cv_func_memmove=yes \
400 2e0e3a8c 2024-07-06 benni ac_cv_func_getpagesize=yes \
401 2e0e3a8c 2024-07-06 benni ac_cv_func_wcwidth=yes \
402 2e0e3a8c 2024-07-06 benni ac_cv_func_mcheck=no \
403 2e0e3a8c 2024-07-06 benni ac_cv_func_dlopen=no \
404 2e0e3a8c 2024-07-06 benni ac_cv_export_dynamic=no
405 2e0e3a8c 2024-07-06 benni (cd ${TOOLS}/build/gforth && \
406 2e0e3a8c 2024-07-06 benni sed 's@\(DITCENGINE\) = \(.*$$\)@\1 = ${TOP}/linurv \2@' Makefile > Makefile.new && \
407 2e0e3a8c 2024-07-06 benni mv Makefile.new Makefile)
408 2e0e3a8c 2024-07-06 benni touch $@
409 2e0e3a8c 2024-07-06 benni
410 2e0e3a8c 2024-07-06 benni ${STAMPS}/gforth-build: ${STAMPS}/gforth-configure
411 2e0e3a8c 2024-07-06 benni (cd ${TOOLS}/build/gforth && ${GMAKE})
412 2e0e3a8c 2024-07-06 benni touch $@
413 2e0e3a8c 2024-07-06 benni
414 2e0e3a8c 2024-07-06 benni ${TOP}/rootfs/bin/gforth: ${STAMPS}/gforth-build
415 2e0e3a8c 2024-07-06 benni (cd ${TOOLS}/build/gforth && ${GMAKE} DESTDIR=${TOP}/rootfs install)
416 2e0e3a8c 2024-07-06 benni touch $@
417 2e0e3a8c 2024-07-06 benni
418 2e0e3a8c 2024-07-06 benni clean-gforth:
419 2e0e3a8c 2024-07-06 benni rm -f ${STAMPS}/gforth*
420 2e0e3a8c 2024-07-06 benni rm -rf build/gforth
421 2e0e3a8c 2024-07-06 benni
422 2e0e3a8c 2024-07-06 benni gforth: ${TOP}/rootfs/bin/gforth