Fedora beplan om die vermoë te bied om pakkette in Clang in plaas van GCC te bou

Vir implementering in Fedora 33 geskeduleer verander reëls vir die gebruik van samestellers in die verspreiding, waarvolgens die samesteller vir die bou van die pakket gekies kan word afhangende van die aanbevelings en voorkeure van die hoofprojek (stroomop). Fedora dwing tans die gebruik van GCC af om alle pakkette te bou, tensy die pakket slegs in Clang/LLVM gebou kan word.

Die rede vir die verskaffing van die vermoë om met Clang te bou, is dat sommige projekte, bv. Firefox и Chroom, tydens ontwikkeling gebruik hulle Clang as die hoofsamesteller en samestellings wat daarop gebaseer is, word beter getoets. Deur Clang vir sulke pakkette te gebruik, sal dit vermy om foute op te vang wat opduik wanneer GCC gebou word, asook om regstellings vir hierdie foute met die hoofprojek te koördineer. Om met GCC te bou het 'n positiewe uitwerking op die handhawing van die oordraagbaarheid van kode wat met Clang ontwikkel is, maar skep 'n groter las op instandhouers en vertraag die publikasie van opdaterings (byvoorbeeld Mozilla verbied gebruik die Firefox-handelsmerk wanneer u derdeparty-kolle toepas, dus moet u eers seker maak dat die pleisters by die hoofstroom ingesluit is en die opdatering eers vrystel nadat die regstellings in die stroomop verskyn het).

Daar word kennis geneem dat dit logies sal wees om Clang te gebruik vir pakkette waarvoor hierdie samesteller beter geskik is en in die hoofprojek gebruik word. Vir sulke pakkette sou dit moontlik wees om die instandhoudingslas te verminder indien die pakkette deur verteenwoordigers van die hoofprojek voorberei word. As 'n verteenwoordiger van die gemeenskap die pakket bou, word voorgestel dat die vermoë om 'n samesteller te kies aan die instandhouer gegee word. Vir pakkette waarvan die hoofprojekte nie een of ander samesteller bevoordeel nie, word dit aanbeveel om die status quo te handhaaf (bou in GCC soos voorheen). Die skrywer van die voorstel is Jeff Law van Red Hat, wat een van die GCC- en Binutils-onderhouers is.

Bron: opennet.ru

Voeg 'n opmerking