GCC do të hiqet nga struktura kryesore e FreeBSD

Zhvilluesit e FreeBSD prezantuan plani i heqjes së GCC 4.2.1 nga kodet burimore të sistemit bazë FreeBSD. Komponentët e GCC do të hiqen deri në degën e FreeBSD 13, e cila do të përmbajë vetëm kompiluesin Clang. GCC mund të instalohet nëse dëshirohet nga portet, ku ofrohet GCC 9, 7 dhe 8, si dhe ata që tashmë janë konsideruar të vjetëruar çlirimet GCC 4.8, 5, 6 dhe 7.

Arkitekturave që janë të varura nga GCC dhe nuk mund të kalojnë në Clang, do t'u ofrohet të kalojnë në mjete të jashtme, të instaluara nga portet. Në kuadër të përgatitjeve për heqjen e GCC nga sistemi bazë, synohet të bëhet punë për përmirësimin e integrimit të sistemit të ndërtimit të sistemit bazë me mjetet e jashtme. Për shembull, për arkitekturën amd64, në sistemin e integrimit të vazhdueshëm është shtuar tashmë mundësia e ndërtimit me përdorimin e gcc 6.4 nga portet, e cila mund të përdoret si një bazë për kalimin e arkitekturave të tjera.

Le të kujtojmë se që nga FreeBSD 10, sistemi bazë për arkitekturat i386, AMD64 dhe ARM është kaluar në dorëzim me kompiluesin Clang si parazgjedhje dhe bibliotekën libc++ të zhvilluar nga projekti LLVM. GCC dhe libstdc++ për arkitekturat e përmendura nuk u ndërtuan më si pjesë e sistemit bazë, por vazhduan të ofroheshin si parazgjedhje për arkitekturat powerpc, mips, mips64 dhe sparc64, si dhe mund të ishin të instaluara gjatë rindërtimit me shënimin e flagjeve WITH_GCC dhe WITH_GNUCXX. Dorëzimi i versionit të vjetëruar GCC 4.2.1 u arsyetua nga kufizimet e licencës.

FreeBSD nuk mundi të kalonte në një version më të ri të GCC, duke filluar nga çlirimi 4.2.2 GCC ishte kaluar në licencën GPLv3 dhe integrimi i GCC 4.2.2 pengohej nga pasaktësitë e komponentëve runtime të GCC me licencën BSD. Më vonë, në versionin GCC 4.4, kjo pasaktësi u eliminua, por shtimi i komponentëve të licencuar GPLv3 në sistemin bazë të FreeBSD u pranua si e pamundur për shkak të kundërshtimeve me qëllimet e projektit FreeBSD dhe mospranimit për të vënë kufizime shtesë mbi përdoruesit, siç është ndalimi i tiqivozimit.

Procesi i heqjes së GCC nga sistemi bazë do të ndahen në disa faza dhe do të zgjasin 9 muaj, duke i dhënë zhvilluesve të arkitekturave të lidhura me GCC (powerpc, mips, mips64 dhe sparc64) kohë për të kryer migrimin në Clang ose për të kaluar në përdorimin e mjeteve të jashtme. Faza e parë do të nisë më 31 gusht dhe do të çojë në përjashtimin e gcc 4.2.1 nga ndërtimi në sistemin e integrimit të vazhdueshëm, si dhe në ndalimin e përdorimit të flamurit "-Werror" për platformat e lidhura me GCC dhe çaktivizimin e ndërtimit të GCC si të parazgjedhur gjatë ekzekutimit të "make universe".

Më 31 dhjetor 2019, ndërtimi i GCC do të çaktivizohet si të parazgjedhur, por do të mund të riaktivizohet duke specifikuar disa flamuj të caktuar. Më 31 mars 2020, GCC do të hiqet nga repo SVN, ndërsa më 31 maj të gjitha platformat që nuk janë mbuluar nga sistemi i integrimit të vazhdueshëm, që nuk mbështesin LLVM ose që nuk janë kaluar në përdorimin e mjeteve të jashtme të ndërtimit do të hiqen nga SVN. Më 31 korrik 2020 do të bëhet heqja përfundimtare nga SVN e të gjitha platformave që kërkojnë përdorimin e mjeteve të jashtme, por që nuk mbështeten në skriptet e formimit të publikimeve.

Burimi: opennet.ru

Blini hostim të besueshëm për faqe interneti me mbrojtje DDoS, serverë VPS VDS 🔥 Blini hostim të besueshëm për faqe interneti me mbrojtje DDoS, serverë VPS VDS - ProHoster