U toolkit GNU Mes 0.26 hè statu publicatu, chì furnisce un prucessu di bootstrap per GCC è permette una ricustruzzione in ciclu chjusu da u codice fonte. U toolkit risolve u prublema di l'assemblea di compilatore iniziale verificatu in distribuzioni, rompendu a catena di ricustruzzione ciclica (a custruzzione di un compilatore richiede i fugliali eseguibili di un compilatore digià custruitu, è l'assemblee di compilatore binari sò una fonte potenziale di marcati nascosti, chì ùn permettenu micca di guarantiscia cumpletamente. l'integrità di l'assemblee da i codici fonte di riferimentu).
GNU Mes offre un interprete self-hosting per a lingua Scheme, scritta in lingua C, è un compilatore simplice per a lingua C (MesCC), scritta in lingua Scheme. I dui cumpunenti sò interassemblable. L'interprete Scheme permette di custruisce u compilatore MesCC C, chì poi permette di custruisce una versione spogliata di u compilatore TinyCC (tcc), e capacità di quale sò digià abbastanza per custruisce GCC.
L'interprete di lingua Scheme hè assai compactu, piglia circa 5000 linee di codice in u subset più simplice di a lingua C è pò esse cunvertitu in un schedariu eseguibile cù u traduttore universale M2-Planet o un compilatore C simplice compilatu cù un assembler hex0 auto-assemblatu. chì ùn hà micca bisognu di dipendenze esterne. À u listessu tempu, l'interprete include un cullettore di basura cumpletu è furnisce una biblioteca di moduli caricabili. U prugettu sviluppa ancu a libreria Mes C C, chì hè abbastanza per custruisce glibc 2.2.5, binutils 2.20.1 è gcc 2.95.3, necessariu per implementà a distribuzione Guix per i686-linux, x86_64-linux, armhf-linux è aarch64. -linux platforms , utilizendu solu codici fonte (Full Source Bootstrap).
A nova versione aghjusta u supportu per i moduli chì sò cumpletamente cumpatibili cù Guile è furnisce a capacità di eseguisce Gash è Gash-Utils. L'asserzioni sò state cambiate in eccezioni. U supportu per l'espressioni regulare hè statu aghjuntu. Nove novi moduli sò stati implementati (ftw, i18n, receive, regex, io ports, bytevectors, srfi-2, srfi-11, è srfi-37). 46 nuove funzioni sò state aghjunte, cumprese chdir, clone-port, closedir, concatenate, drop, environ, execle, mkdir, opendir, partition, pipe, readdir, reduce, rmdir, seek, span, sleep, umask, uname, è utimes. Si prevede chì e versioni future includeranu u supportu per l'avvio di NixOS solu da u codice surghjente, a capacità di avvià gcc 4.6.4, è u supportu per a custruzione cumpleta di tuttu u sistema da u codice surghjente in Linux-ambienti basati nantu à l'architetture armhf è riscv64.
Source: opennet.ru
