GCC do të hiqet nga formacioni kryesor i FreeBSD

Zhvilluesit e FreeBSD prezantuar planifikoni të hiqni GCC 4.2.1 nga burimet e sistemit bazë FreeBSD. Komponentët e GCC do të hiqen përpara se dega FreeBSD 13 të ndahet, e cila do të përfshijë vetëm përpiluesin Clang. GCC, nëse dëshironi, mund të dorëzohet nga portet në të cilat ofrohet GCC 9, 7 и 8, si dhe ato të transferuara tashmë në kategorinë e të vjetëruarve çështjet GCC 4.8, 5, 6 и 7.

Arkitekturave që mbështeten në GCC dhe nuk mund të migrojnë në Clang do t'u kërkohet të migrojnë në mjete të jashtme të instaluara nga portet. Në përgatitje për heqjen e GCC nga sistemi bazë, është planifikuar puna për të përmirësuar integrimin e sistemit të ndërtimit të sistemit bazë me mjete të jashtme. Për shembull, për arkitekturën amd64, sistemi i integrimit të vazhdueshëm ka shtuar tashmë aftësinë për të ndërtuar duke përdorur gcc 6.4 nga portet, e cila mund të përdoret si bazë për përkthimin e arkitekturave të tjera.

Le të kujtojmë se duke filluar me FreeBSD 10, sistemi bazë për arkitekturat i386, AMD64 dhe ARM u transferua në dorëzimin e paracaktuar të përpiluesit Clang dhe bibliotekës libc++ të zhvilluar nga projekti LLVM. GCC dhe libstdc++ për këto arkitektura nuk u ndërtuan më si pjesë e sistemit bazë, por vazhduan të furnizoheshin si parazgjedhje për arkitekturat powerpc, mips, mips64 dhe sparc64 dhe mund të instaloheshin gjithashtu gjatë rindërtimit me flamujt WITH_GCC dhe WITH_GNUCXX të specifikuar. Versioni i vjetëruar i GCC 4.2.1 u dërgua për shkak të kufizimeve të licencimit.

FreeBSD nuk mund të migronte në një version më të ri të GCC, pasi që nga lëshimi 4.2.2 GCC ishte përkthyer Licenca GPLv3 dhe integrimi GCC 4.2.2 u penguan nga papajtueshmëria e komponentëve të kohës së ekzekutimit të GCC me licencën BSD. Më vonë, në versionin GCC 4.4 kjo papajtueshmëri u eliminua, por shtimi i komponentëve të licencuar nga GPLv3 në sistemin bazë FreeBSD ishte u gjet e pamundur për shkak të kontradiktave me qëllimet e projektit FreeBSD dhe hezitimi për të vendosur kufizime shtesë për përdoruesit, si ndalimi tivoizimi.

Procesi i heqjes së GCC në sistemin bazë do të ndahet në disa faza dhe do të zgjasë 9 muaj, gjë që do t'u japë kohë zhvilluesve të arkitekturave të lidhura me GCC (powerpc, mips, mips64 dhe sparc64) të migrojnë në Clang ose të kalojnë në përdorimin mjete të jashtme. Faza e parë do të fillojë më 31 gusht dhe do të çojë në përjashtimin e gcc 4.2.1 nga ndërtimi i sistemit të integrimit të vazhdueshëm, si dhe përfundimin e flamurit "-Werror" për platformat e lidhura me GCC dhe çaktivizimin e ndërtimeve GCC nga parazgjedhje kur ekzekutohet "make universe".

Më 31 dhjetor 2019, ndërtimi i GCC do të çaktivizohet si parazgjedhje, por gjithsesi mund të rikthehet duke specifikuar disa flamuj. Më 31 mars 2020, GCC do të hiqet nga depoja e SVN dhe më 31 maj, të gjitha platformat që nuk mbulohen nga integrimi i vazhdueshëm, nuk mbështesin LLVM ose nuk janë konvertuar për të përdorur mjete të jashtme ndërtimi do të hiqen nga SVN . Më 31 korrik 2020, do të kryhet heqja përfundimtare nga SVN e të gjitha platformave të mbetura që kërkojnë përdorimin e mjeteve të jashtme, por që nuk mbështeten në skriptet e gjenerimit të lëshimeve.

Burimi: opennet.ru

Shto një koment