GCC sil fuortsmiten wurde fan 'e haad FreeBSD-opstelling

FreeBSD-ûntwikkelders presintearre plan om GCC 4.2.1 te ferwiderjen fan 'e FreeBSD-basissysteemboarnen. GCC-komponinten sille wurde fuortsmiten foardat de FreeBSD 13-tûke wurdt forkeard, dy't allinich de Clang-kompiler sil befetsje. GCC, as winske, kin wurde levere út de havens dêr't it wurdt oanbean GCC 9, 7 и 8, likegoed as al oerdroegen oan de kategory fan ferâldere saken GCC 4.8, 5, 6 и 7.

Arsjitektueren dy't op GCC fertrouwe en net kinne migrearje nei Clang sille wurde frege om te migrearjen nei eksterne ark ynstalleare fan havens. As tarieding op it fuortheljen fan GCC út it basissysteem wurdt wurk pland om de yntegraasje fan it basissysteembousysteem te ferbetterjen mei eksterne ark. Bygelyks, foar de amd64-arsjitektuer hat it trochgeande yntegraasjesysteem al de mooglikheid tafoege om te bouwen mei gcc 6.4 fan havens, dy't kinne wurde brûkt as basis foar it oersetten fan oare arsjitektuer.

Lit ús ûnthâlde dat begjinnend mei FreeBSD 10, it basissysteem foar de i386, AMD64 en ARM-arsjitektueren waard oerbrocht nei de standertlevering fan 'e Clang-kompiler en de libc ++-biblioteek ûntwikkele troch it LLVM-projekt. GCC en libstdc ++ foar dizze arsjitektuer waarden net mear boud as ûnderdiel fan it basissysteem, mar bleau standert wurde levere foar de powerpc, mips, mips64 en sparc64 arsjitektuer, en koe ek wurde ynstallearre by werbou mei de oantsjutte WITH_GCC en WITH_GNUCXX flaggen. De ferâldere ferzje fan GCC 4.2.1 waard ferstjoerd fanwegen lisinsjebeperkingen.

FreeBSD koe net migrearje nei in nijere ferzje fan GCC, om't sûnt release 4.2.2 GCC wie oerset De GPLv3-lisinsje en GCC 4.2.2-yntegraasje waarden hindere troch de ynkompatibiliteit fan GCC-runtime-komponinten mei de BSD-lisinsje. Letter, yn ferzje GCC 4.4 dizze ynkompatibiliteit waard eliminearre, mar de tafoeging fan GPLv3-lisinsje komponinten oan de FreeBSD basis systeem wie ûnmooglik fûn fanwege tsjinstridichheden mei doelen fan it FreeBSD-projekt en ûnwilligens om ekstra beheiningen op te lizzen oan brûkers, lykas ferbod tivoization.

It proses om GCC kwyt te reitsjen yn it basissysteem sil wurde ferdield yn ferskate stadia en sil 9 moannen duorje, wat ûntwikkelders fan GCC-bûne arsjitektueren (powerpc, mips, mips64 en sparc64) tiid sil jaan om nei Clang te migrearjen of te wikseljen nei it brûken eksterne ark. De earste etappe sil begjinne op 31 augustus en sil liede ta de útsluting fan gcc 4.2.1 fan de trochgeande yntegraasje systeem build, likegoed as it beëinigjen fan de "-Werror" flagge foar GCC-bound platfoarms en it útskeakeljen fan GCC builds troch standert by it útfieren fan "make universe".

Op 31 desimber 2019 sil de GCC-build standert wurde útskeakele, mar kin noch weromdraaid wurde troch bepaalde flaggen op te jaan. Op 31 maart 2020 sil GCC fuortsmiten wurde fan it SVN-repository, en op 31 maaie sille alle platfoarms dy't net wurde bedekt troch trochgeande yntegraasje, LLVM net stypje, of net omboud binne om eksterne build-ark te brûken, wurde fuortsmiten fan SVN . Op 31 july 2020 sil de definitive ferwidering fan SVN wurde útfierd fan alle oerbleaune platfoarms dy't it gebrûk fan eksterne ark nedich binne, mar net wurde stipe yn skripts foar releasegeneraasje.

Boarne: opennet.ru

Add a comment