GCC estos forigita de la ĉefa FreeBSD-vicigo

FreeBSD Programistoj prezentita planas forigi GCC 4.2.1 el la bazaj sistemfontoj de FreeBSD. La GCC-komponentoj estos forigitaj antaŭ ol la branĉo FreeBSD 13 estas forkigita, kiu nur inkluzivos la Clang-kompililon. GCC, se dezirite, povas esti liverita de la havenoj en kiuj ĝi estas ofertita GCC 9, 7 и 8, same kiel jam translokigita al la kategorio de malnoviĝinta aferoj GCC 4.8, 5, 6 и 7.

Arkitekturoj kiuj dependas de GCC kaj ne povas migri al Clang estos petitaj migri al eksteraj iloj instalitaj de havenoj. En preparo por la forigo de GCC de la baza sistemo, laboro estas planita por plibonigi la integriĝon de la bazsistema konstrusistemo kun eksteraj iloj. Ekzemple, por la arkitekturo amd64, la kontinua integriga sistemo jam aldonis la kapablon konstrui uzante gcc 6.4 el havenoj, kiu povas esti uzata kiel bazo por traduki aliajn arkitekturojn.

Ni rememoru, ke komencante de FreeBSD 10, la baza sistemo por la arkitekturoj i386, AMD64 kaj ARM estis transdonita al la defaŭlta livero de la Clang-kompililo kaj la libc++-biblioteko disvolvita de la projekto LLVM. GCC kaj libstdc++ por tiuj arkitekturoj jam ne estis konstruitaj kiel parto de la bazsistemo, sed daŭre estis liveritaj defaŭlte por la arkitekturoj powerpc, mips, mips64 kaj sparc64, kaj povus ankaŭ esti instalitaj dum rekonstruado kun la WITH_GCC kaj WITH_GNUCXX-flagoj precizigitaj. La malmoderna versio de GCC 4.2.1 estis sendita pro licencaj limigoj.

FreeBSD ne povis migri al pli nova versio de GCC, ĉar ekde eldono 4.2.2 GCC estis tradukita La GPLv3-licenco kaj GCC 4.2.2 integriĝo estis malhelpitaj per la nekongruo de la GCC-rultempaj komponentoj kun la BSD-licenco. Poste, en versio GCC 4.4 ĉi tiu nekongruo estis eliminita, sed la aldono de GPLv3-licencitaj komponentoj al la FreeBSD bazsistemo estis trovis neebla pro kontraŭdiroj kun celoj de la projekto FreeBSD kaj malemo trudi pliajn restriktojn al uzantoj, kiel malpermesado tivoigo.

La procezo forigi GCC en la baza sistemo estos dividita en plurajn stadiojn kaj daŭros 9 monatojn, kio donos al programistoj de GCC-ligitaj arkitekturoj (powerpc, mips, mips64 kaj sparc64) tempon por migri al Clang aŭ ŝanĝi al uzado. eksteraj iloj. La unua etapo komenciĝos la 31-an de aŭgusto kaj kondukos al la ekskludo de gcc 4.2.1 de la kontinua integriga sistemo-konstruo, same kiel la fino de la flago "-Werror" por GCC-ligitaj platformoj kaj la malŝalto de GCC-konstruoj per defaŭlte kiam ruliĝas "fari universon".

La 31-an de decembro 2019, la GCC-konstruo estos malŝaltita defaŭlte, sed ankoraŭ povas esti revertita specifante iujn flagojn. La 31-an de marto 2020, GCC estos forigita de la SVN-deponejo, kaj la 31-an de majo, ĉiuj platformoj kiuj ne estas kovritaj de kontinua integriĝo, ne subtenas LLVM aŭ ne estis konvertitaj por uzi eksterajn konstruajn ilojn estos forigitaj de SVN. . La 31-an de julio 2020, la fina forigo de SVN de ĉiuj ceteraj platformoj, kiuj postulas la uzon de eksteraj iloj, sed ne estas subtenataj en eldongeneraciaj skriptoj, estos farita.

fonto: opennet.ru

Aldoni komenton