A Fedora azt tervezi, hogy a GCC helyett Clang nyelven is készíthet csomagokat

Fedora 33-ban való megvalósításhoz Ütemezett változás A fordítók disztribúcióban való használatára vonatkozó szabályok, amelyek szerint a csomag felépítéséhez szükséges fordító a fő projekt ajánlásaitól és preferenciáitól függően választható ki (upstream). A Fedora jelenleg a GCC használatát kényszeríti az összes csomag összeállítására, kivéve, ha a csomag csak Clang/LLVM-ben építhető.

A Clanggel való építési lehetőség biztosításának oka, hogy egyes projektek, pl. Firefox и Króm, a fejlesztés során a Clang-ot használják fő fordítónak, és az arra épülő szerelvények jobban tesztelhetők. A Clang használata az ilyen csomagokhoz elkerülheti a GCC-ben való építés során felbukkanó hibák elkapását, valamint a hibák javításának összehangolását a fő projekttel. A GCC-vel való építés pozitív hatással van a Clang segítségével fejlesztett kód hordozhatóságának fenntartására, de nagyobb terhet ró a karbantartókra és késlelteti a frissítések közzétételét (például Mozilla tiltja használja a Firefox védjegyét harmadik féltől származó javítások alkalmazásakor, ezért először meg kell győződnie arról, hogy a javítások szerepelnek a fő adatfolyamban, és csak azután adják ki a frissítést, hogy a javítások megjelennek az upstreamben).

Megjegyzendő, hogy logikus lenne a Clang használata olyan csomagokhoz, amelyekhez ez a fordító alkalmasabb és a fő projektben használható. Az ilyen csomagok esetében a karbantartási terhek csökkenthetők, ha a csomagokat a fő projekt képviselői készítik. Ha a közösség képviselője készíti a csomagot, akkor a fordító kiválasztásának lehetőségét javasoljuk a fenntartónak adni. Azoknál a csomagoknál, amelyek fő projektjei nem részesítik előnyben egyik vagy másik fordítót, javasolt a status quo fenntartása (a korábbiak szerint a GCC-ben építeni). A javaslat szerzője Jeff Law a Red Hattől, aki a GCC és a Binutils egyik karbantartója.

Forrás: opennet.ru

Hozzászólás