Release av GNU Mes 0.23, en verktygslåda för fristående distributionsbyggande

Efter ett års utveckling släpptes GNU Mes 0.23-verktygslådan, som tillhandahåller en bootstrap-process för GCC och möjliggör en sluten cykel av återuppbyggnad från källkoden. Verktygslådan löser problemet med verifierad initial kompilatorsammansättning i distributioner, bryter kedjan av cyklisk ombyggnad (att bygga en kompilator kräver körbara filer från en redan byggd kompilator, och binära kompilatorsammansättningar är en potentiell källa till dolda bokmärken, vilket inte tillåter fullständig garanti integriteten hos sammansättningar från referenskällkoder).

GNU Mes erbjuder en självvärd tolk för Scheme-språket, skriven på C-språket, och en enkel kompilator för C-språket (MesCC), skriven på Scheme-språket. Båda komponenterna kan monteras ihop. Scheme-tolken gör det möjligt att bygga MesCC C-kompilatorn, som sedan låter dig bygga en avskalad version av TinyCC-kompilatorn (tcc), vars kapacitet redan är tillräcklig för att bygga GCC.

Scheme-språktolken är ganska kompakt, tar upp cirka 5000 rader kod i den enklaste delmängden av C-språket och kan konverteras till en körbar fil med hjälp av M2-Planets universella översättare eller en enkel C-kompilator sammansatt med den självmonterade hex0 assembler, som inte kräver externa beroenden. Samtidigt inkluderar tolken en fullfjädrad sophämtare och tillhandahåller ett bibliotek med laddningsbara moduler.

Den nya utgåvan inkluderar stöd för ARM-arkitekturen (armhf-linux och aarch-linux). Lade till möjligheten att använda Mes tillsammans med en reducerad uppsättning bootstrap-filer från GNU Guix-projektet (GNU Guix Reduced Binary Seed). Implementerat stöd för att bygga Mes och Mes C-biblioteket med GCC 10.x. MesCC-kompilatorn skickar nu sitt eget libmescc.a-bibliotek (-lmescc), och när man bygger med GCC anges nu "-lgcc". Tillhandahöll stöd för att bygga MesCC med Guile 3.0.x.

Källa: opennet.ru

Lägg en kommentar