Vo Fedore plánujú poskytnúť možnosť zostavovania balíkov v Clang miesto GCC

Na implementáciu vo Fedore 33 plánuje zmena pravidiel používania kompilátorov v distribúcii, podľa ktorého sa kompilátor na zostavenie balíka môže vyberať v závislosti od odporúčaní a preferencií hlavného projektu (upstream). V súčasnosti je vo Fedore prísne predpísané používať GCC na zostavenie všetkých balíkov, s výnimkou prípadov, keď môže byť balík zostavený iba pomocou Clang/LLVM.

Motívom poskytnutia možnosti zostavovania pomocou Clang je to, že niektoré projekty, napríklad Firefox a Chromium, pri vývoji používajú Clang ako hlavný kompilátor a zostavy na jeho základe sú lepšie testované. Použitie Clang pre takéto balíky umožní vyhnúť sa chybám, ktoré sa objavujú pri zostavovaní v GCC, ako aj koordinovaniu opráv týchto chýb s hlavným projektom. Zostavenie pomocou GCC pozitívne ovplyvňuje udržiavanie prenositeľnosti kódu, ktorý sa vyvíja pomocou Clang, ale vytvára väčšiu záťaž na údržbu a oneskoruje publikovanie aktualizácií (napríklad Mozilla zakazuje použiť obchodnú značku Firefox pri aplikovaní externých patchov, preto je potrebné najprv dosiahnuť zapracovanie patchov do hlavného zloženia a vydať aktualizáciu až po objavení opráv v upstream).

Je pozoruhodné, že by bolo logické používať Clang pre balíky, pre ktoré sa tento kompilátor hodí lepšie a používa sa v hlavnom projekte. Pre takéto balíky by sa mohla znížiť záťaž na údržbu, ak by sa prípravou balíkov zaoberali zástupcovia hlavného projektu. Ak zostavenie balíka vykonáva zástupca zo spoločenstva, mal by mať maintainer možnosť voľby kompilátora. Pre balíky, ktorých hlavné projekty nedávajú prednosť žiadnemu kompilátoru, sa odporúča zachovať status quo (zostavovať v GCC ako doteraz). Autorom návrhu je Jeff Law zo spoločnosti Red Hat, ktorý patrí medzi maintainerov GCC a Binutils.

Zdroj: opennet.ru

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