@@ -223,6 +223,67 @@ def _gcc_toolchain_impl(rctx):
223223 extra_ldflags = _format_flags (extra_ldflags ),
224224 ))
225225
226+ AVAILABLE_GCC_VERSIONS = {
227+ "12.5.0" : {
228+ "aarch64" : {
229+ "url" : "https://github.com/f0rmiga/gcc-builds/releases/download/18082025/gcc-toolchain-12.5.0-aarch64.tar.xz" ,
230+ "sha256" : "7b0e25133a98d44b648a925ba11f64a3adc470e87668af80ce2c3af389ebe9be" ,
231+ },
232+ "armv7" : {
233+ "url" : "https://github.com/f0rmiga/gcc-builds/releases/download/18082025/gcc-toolchain-12.5.0-armv7.tar.xz" ,
234+ "sha256" : "a0ef76c8cc517b3d76dd2f09b1a371975b2ff1082e2f9372ed79af01b9292934" ,
235+ },
236+ "x86_64" : {
237+ "url" : "https://github.com/f0rmiga/gcc-builds/releases/download/18082025/gcc-toolchain-12.5.0-x86_64.tar.xz" ,
238+ "sha256" : "51076e175839b434bb2dc0006c0096916df585e8c44666d35b0e3ce821d535db" ,
239+ },
240+ },
241+ "13.4.0" : {
242+ "aarch64" : {
243+ "url" : "https://github.com/f0rmiga/gcc-builds/releases/download/18082025/gcc-toolchain-13.4.0-aarch64.tar.xz" ,
244+ "sha256" : "770cf6bf62bdf78763de526d3a9f5cae4c19f1a3aca0ef8f18b05f1a46d1ffaf" ,
245+ },
246+ "armv7" : {
247+ "url" : "https://github.com/f0rmiga/gcc-builds/releases/download/18082025/gcc-toolchain-13.4.0-armv7.tar.xz" ,
248+ "sha256" : "1b2739b5003c5a3f0ab7c4cc7fb95cc99c0e933982512de7255c2bd9ced757ad" ,
249+ },
250+ "x86_64" : {
251+ "url" : "https://github.com/f0rmiga/gcc-builds/releases/download/18082025/gcc-toolchain-13.4.0-x86_64.tar.xz" ,
252+ "sha256" : "d96071c1b98499afd7b7b56ebd69ad414020edf66e982004acffe7df8aaf7e02" ,
253+ },
254+ },
255+ "14.3.0" : {
256+ "aarch64" : {
257+ "url" : "https://github.com/f0rmiga/gcc-builds/releases/download/18082025/gcc-toolchain-14.3.0-aarch64.tar.xz" ,
258+ "sha256" : "74b1f0072769f8865b62897ab962f6fce174115dab2e6596765bb4e700ffe0d1" ,
259+ },
260+ "armv7" : {
261+ "url" : "https://github.com/f0rmiga/gcc-builds/releases/download/18082025/gcc-toolchain-14.3.0-armv7.tar.xz" ,
262+ "sha256" : "0c20a130f424ce83dd4eb2a4ec8fbcd0c0ddc5f42f0b4660bcd0108cb8c0fb21" ,
263+ },
264+ "x86_64" : {
265+ "url" : "https://github.com/f0rmiga/gcc-builds/releases/download/18082025/gcc-toolchain-14.3.0-x86_64.tar.xz" ,
266+ "sha256" : "0b365e5da451f5c7adc594f967885d7181ff6d187d6089a4bcf36f954bf3ccf9" ,
267+ },
268+ },
269+ "15.2.0" : {
270+ "aarch64" : {
271+ "url" : "https://github.com/f0rmiga/gcc-builds/releases/download/18082025/gcc-toolchain-15.2.0-aarch64.tar.xz" ,
272+ "sha256" : "e1ae45038d350b297bea4ac10f095a98e2218971a8a37b8ab95f3faad2ec69f8" ,
273+ },
274+ "armv7" : {
275+ "url" : "https://github.com/f0rmiga/gcc-builds/releases/download/18082025/gcc-toolchain-15.2.0-armv7.tar.xz" ,
276+ "sha256" : "fda64b3ee1c3d7ddcb28378a1b131eadc5d3e3ff1cfab2aab71da7a3f899b601" ,
277+ },
278+ "x86_64" : {
279+ "url" : "https://github.com/f0rmiga/gcc-builds/releases/download/18082025/gcc-toolchain-15.2.0-x86_64.tar.xz" ,
280+ "sha256" : "50dd28021365e7443853d5e77bc94ab1d1c947ad48fd91cbec44dbdfa61412c9" ,
281+ },
282+ },
283+ }
284+
285+ DEFAULT_GCC_VERSION = "14.3.0"
286+
226287_FEATURE_ATTRS = {
227288 "binary_prefix" : attr .string (
228289 doc = "An explicit prefix used by each binary in bin/." ,
@@ -251,68 +312,11 @@ _FEATURE_ATTRS = {
251312 default = "gcc_toolchain" ,
252313 ),
253314 "gcc_version" : attr .string (
254- default = "14.3.0" ,
315+ default = DEFAULT_GCC_VERSION ,
255316 doc = "The version of GCC." ,
256317 ),
257318 "gcc_versions" : attr .string (
258- default = json .encode ({
259- "12.5.0" : {
260- "aarch64" : {
261- "url" : "https://github.com/f0rmiga/gcc-builds/releases/download/18082025/gcc-toolchain-12.5.0-aarch64.tar.xz" ,
262- "sha256" : "7b0e25133a98d44b648a925ba11f64a3adc470e87668af80ce2c3af389ebe9be" ,
263- },
264- "armv7" : {
265- "url" : "https://github.com/f0rmiga/gcc-builds/releases/download/18082025/gcc-toolchain-12.5.0-armv7.tar.xz" ,
266- "sha256" : "a0ef76c8cc517b3d76dd2f09b1a371975b2ff1082e2f9372ed79af01b9292934" ,
267- },
268- "x86_64" : {
269- "url" : "https://github.com/f0rmiga/gcc-builds/releases/download/18082025/gcc-toolchain-12.5.0-x86_64.tar.xz" ,
270- "sha256" : "51076e175839b434bb2dc0006c0096916df585e8c44666d35b0e3ce821d535db" ,
271- },
272- },
273- "13.4.0" : {
274- "aarch64" : {
275- "url" : "https://github.com/f0rmiga/gcc-builds/releases/download/18082025/gcc-toolchain-13.4.0-aarch64.tar.xz" ,
276- "sha256" : "770cf6bf62bdf78763de526d3a9f5cae4c19f1a3aca0ef8f18b05f1a46d1ffaf" ,
277- },
278- "armv7" : {
279- "url" : "https://github.com/f0rmiga/gcc-builds/releases/download/18082025/gcc-toolchain-13.4.0-armv7.tar.xz" ,
280- "sha256" : "1b2739b5003c5a3f0ab7c4cc7fb95cc99c0e933982512de7255c2bd9ced757ad" ,
281- },
282- "x86_64" : {
283- "url" : "https://github.com/f0rmiga/gcc-builds/releases/download/18082025/gcc-toolchain-13.4.0-x86_64.tar.xz" ,
284- "sha256" : "d96071c1b98499afd7b7b56ebd69ad414020edf66e982004acffe7df8aaf7e02" ,
285- },
286- },
287- "14.3.0" : {
288- "aarch64" : {
289- "url" : "https://github.com/f0rmiga/gcc-builds/releases/download/18082025/gcc-toolchain-14.3.0-aarch64.tar.xz" ,
290- "sha256" : "74b1f0072769f8865b62897ab962f6fce174115dab2e6596765bb4e700ffe0d1" ,
291- },
292- "armv7" : {
293- "url" : "https://github.com/f0rmiga/gcc-builds/releases/download/18082025/gcc-toolchain-14.3.0-armv7.tar.xz" ,
294- "sha256" : "0c20a130f424ce83dd4eb2a4ec8fbcd0c0ddc5f42f0b4660bcd0108cb8c0fb21" ,
295- },
296- "x86_64" : {
297- "url" : "https://github.com/f0rmiga/gcc-builds/releases/download/18082025/gcc-toolchain-14.3.0-x86_64.tar.xz" ,
298- "sha256" : "0b365e5da451f5c7adc594f967885d7181ff6d187d6089a4bcf36f954bf3ccf9" ,
299- },
300- },
301- "15.2.0" : {
302- "aarch64" : {
303- "url" : "https://github.com/f0rmiga/gcc-builds/releases/download/18082025/gcc-toolchain-15.2.0-aarch64.tar.xz" ,
304- "sha256" : "e1ae45038d350b297bea4ac10f095a98e2218971a8a37b8ab95f3faad2ec69f8" ,
305- },
306- "armv7" : {
307- "url" : "https://github.com/f0rmiga/gcc-builds/releases/download/18082025/gcc-toolchain-15.2.0-armv7.tar.xz" ,
308- "sha256" : "fda64b3ee1c3d7ddcb28378a1b131eadc5d3e3ff1cfab2aab71da7a3f899b601" ,
309- },
310- "x86_64" : {
311- "url" : "https://github.com/f0rmiga/gcc-builds/releases/download/18082025/gcc-toolchain-15.2.0-x86_64.tar.xz" ,
312- "sha256" : "50dd28021365e7443853d5e77bc94ab1d1c947ad48fd91cbec44dbdfa61412c9" ,
313- },
314- },
315- }),
319+ default = json .encode (AVAILABLE_GCC_VERSIONS ),
316320 doc = "A JSON dictionary of GCC versions to their download URLs and SHA256 hashes." +
317321 " The structure is {<gcc_version>: {<target_arch>: {url: <url>, sha256: <sha256>}}}." ,
318322 ),
0 commit comments