Implementovaná schopnosť zostaviť Glibc pomocou sady nástrojov LLVM

Inžinieri z Collabora zverejnili správu o realizácii projektu na zabezpečenie zostavenia systémovej knižnice GNU C Library (glibc) pomocou sady nástrojov LLVM (Clang, LLD, kompilátor-rt) namiesto GCC. Až donedávna zostal Glibc jednou z významných komponentov distribúcií, ktoré podporovali vytváranie iba pomocou GCC.

Ťažkosti s prispôsobením Glibc na zostavovanie pomocou LLVM sú spôsobené rozdielmi v správaní GCC a Clang pri spracovaní určitých konštruktov (napríklad výrazy so symbolom $, vnorené funkcie, štítky v blokoch asm, typy long double a float128), a potreba nahradiť runtime balíkom libgcc na kompilátore-rt.

Na zabezpečenie zostavenia Glibc pomocou LLVM bolo pripravených asi 150 záplat pre prostredie Gentoo a 160 pre prostredie založené na ChromiumOS. V súčasnej podobe zostava v systéme ChromiumOS už úspešne prechádza testovacou súpravou, ale ešte nie je predvolene povolená. Ďalším krokom bude prenesenie pripravených zmien do hlavnej štruktúry Glibc a LLVM, pokračovanie v testovaní a oprave atypických problémov, ktoré sa objavia. Niektoré zo záplat už boli prijaté do vetvy Glibc 2.37.

Zdroj: opennet.ru

Pridať komentár