Vydanie GNU Mes 0.26, sady nástrojov pre samostatné budovanie distribúcie

Bola vydaná GNU Mes 0.26, sada nástrojov na zavádzanie GCC, ktorá umožňuje zostavenie zo zdrojového kódu v uzavretej slučke. Táto sada nástrojov rieši problém overených počiatočných zostavení kompilátorov v distribúciách prerušením cyklu prestavovania (zostavenia kompilátorov vyžadujú spustiteľné súbory už zostaveného kompilátora a binárne zostavenia kompilátorov sú potenciálnym zdrojom skrytých zadných vrátok, čo bráni úplnému zaručeniu integrity zostavení z referenčného zdrojového kódu).

GNU Mes ponúka samohostiaci tlmočník pre jazyk Scheme napísaný v jazyku C a jednoduchý kompilátor pre jazyk C (MesCC) napísaný v jazyku Scheme. Oba komponenty sú vzájomne zložiteľné. Interpret schémy umožňuje zostaviť kompilátor MesCC C, ktorý potom umožňuje zostaviť skrátenú verziu kompilátora TinyCC (tcc), ktorého možnosti sú už dostatočné na zostavenie GCC.

Interpret Scheme je veľmi kompaktný a zaberá približne 5 000 riadkov kódu v jednoduchej podmnožine jazyka C. Dá sa previesť na spustiteľný súbor pomocou univerzálneho prekladača M2-Planet alebo jednoduchého kompilátora C zostaveného pomocou samozostavovacieho assembleru hex0, ktorý nevyžaduje žiadne externé závislosti. Interpret tiež obsahuje plnohodnotný zberač odpadu a poskytuje knižnicu načítateľných modulov. Projekt tiež vyvíja knižnicu Mes C, ktorá je postačujúca na zostavenie glibc 2.2.5, binutils 2.20.1 a gcc 2.95.3, ktoré sú potrebné na nasadenie distribúcie Guix pre platformy i686-linux, x86_64-linux, armhf-linux a aarch64-linux s použitím iba zdrojového kódu (Full Source Bootstrap).

Nová verzia pridáva podporu pre moduly, ktoré sú plne kompatibilné s Guile a poskytuje možnosť spúšťať Gash a Gash-Utils. Tvrdenia boli zmenené na výnimky. Bola pridaná podpora pre regulárne výrazy. Bolo implementovaných deväť nových modulov (ftw, i18n, receive, regex, io ports, bytevectors, srfi-2, srfi-11 a srfi-37). Bolo pridaných 46 nových funkcií vrátane chdir, clone-port, closedir, concatenate, drop, environ, execle, mkdir, opendir, partition, pipe, readdir, reduce, rmdir, seek, span, sleep, umask, uname a utimes. Očakáva sa, že budúce verzie budú obsahovať podporu pre bootovanie NixOS iba zo zdrojového kódu, možnosť bootovania gcc 4.6.4 a podporu pre úplné zostavenie celého systému zo zdrojového kódu v... Linux-prostredia založené na architektúrach armhf a riscv64.

Zdroj: opennet.ru

Kúpte si spoľahlivý hosting pre stránky s DDoS ochranou, VPS VDS servery 🔥 Kúpte si spoľahlivý webhosting s ochranou DDoS, VPS VDS servery | ProHoster