Otettiin käyttöön mahdollisuus rakentaa Glibc LLVM-työkalupakin avulla

Collaboran insinöörit ovat julkaisseet raportin projektin toteuttamisesta varmistaakseen GNU C Libraryn (glibc) järjestelmäkirjaston kokoamisen käyttämällä LLVM-työkalupakkia (Clang, LLD, compiler-rt) GCC:n sijaan. Viime aikoihin asti Glibc pysyi yhtenä merkittävistä komponenteista jakeluissa, jotka tukivat rakentamista vain GCC:tä käyttämällä.

Vaikeudet Glibc:n mukauttamisessa LLVM:ää käyttävään kokoonpanoon johtuvat sekä eroista GCC:n että Clangin käyttäytymisessä tiettyjä rakenteita käsiteltäessä (esimerkiksi lausekkeet, joissa on $-symboli, sisäkkäiset funktiot, nimikkeet asm-lohkoissa, long double- ja float128-tyypit), ja tarve korvata runtime libgcc:llä kääntäjä-rt:ssä.

Glibc:n kokoamisen varmistamiseksi LLVM:n avulla on valmisteltu noin 150 korjaustiedostoa Gentoo-ympäristöön ja 160 ChromiumOS-pohjaiseen ympäristöön. Nykyisessä muodossaan ChromiumOS:n koontiversio läpäisee jo onnistuneesti testipaketin, mutta se ei ole vielä oletuksena käytössä. Seuraava askel on siirtää valmistellut muutokset Glibc:n ja LLVM:n päärakenteeseen, jatkaa testaamista ja ponnahtaa epätyypillisten ongelmien korjaamista. Osa korjauksista on jo hyväksytty Glibc 2.37 -haaraan.

Lähde: opennet.ru

Lisää kommentti