GCC itaondolewa kwenye safu kuu ya FreeBSD

Watengenezaji wa FreeBSD imewasilishwa mpango wa kuondoa GCC 4.2.1 kutoka kwa vyanzo vya msingi vya mfumo wa FreeBSD. Vipengee vya GCC vitaondolewa kabla ya tawi la FreeBSD 13 kugawanywa, ambalo litajumuisha tu mkusanyaji wa Clang. GCC, ikiwa inataka, inaweza kutolewa kutoka kwa bandari ambayo hutolewa GCC 9, 7 ΠΈ 8, pamoja na wale ambao tayari wamehamishiwa kwenye kategoria ya kizamani mambo GCC 4.8, 5, 6 ΠΈ 7.

Usanifu ambao unategemea GCC na hauwezi kuhamia Clang utaombwa kuhamia zana za nje zilizosakinishwa kutoka bandarini. Katika maandalizi ya kuondolewa kwa GCC kutoka kwa mfumo wa msingi, kazi imepangwa kuboresha ushirikiano wa mfumo wa kujenga mfumo wa msingi na zana za nje. Kwa mfano, kwa usanifu wa amd64, mfumo wa ujumuishaji unaoendelea tayari umeongeza uwezo wa kujenga kwa kutumia gcc 6.4 kutoka kwa bandari, ambayo inaweza kutumika kama msingi wa kutafsiri usanifu mwingine.

Hebu tukumbuke kwamba kuanzia na FreeBSD 10, mfumo wa msingi wa usanifu wa i386, AMD64 na ARM ulihamishiwa kwenye uwasilishaji chaguo-msingi wa mkusanyaji wa Clang na maktaba ya libc++ iliyotengenezwa na mradi wa LLVM. GCC na libstdc++ za usanifu huu hazikujengwa tena kama sehemu ya mfumo msingi, lakini ziliendelea kutolewa kwa chaguomsingi kwa usanifu wa powerpc, mips, mips64 na sparc64, na pia inaweza kusakinishwa wakati wa kujenga upya kwa kutumia bendera za WITH_GCC na WITH_GNUCXX zilizobainishwa. Toleo la zamani la GCC 4.2.1 lilisafirishwa kwa sababu ya vikwazo vya leseni.

FreeBSD haikuweza kuhamia toleo jipya zaidi la GCC, kwani tangu toleo la 4.2.2 GCC lilikuwa kutafsiriwa Leseni ya GPLv3 na muunganisho wa GCC 4.2.2 ulitatizwa na kutopatana kwa vipengele vya wakati wa kutumika vya GCC na leseni ya BSD. Baadaye, katika toleo la GCC 4.4 kutopatana huku iliondolewa, lakini nyongeza ya vipengele vilivyoidhinishwa na GPLv3 kwenye mfumo msingi wa FreeBSD ilikuwa kupatikana haiwezekani kutokana na migongano na malengo ya mradi wa FreeBSD na kusita kuweka vikwazo vya ziada kwa watumiaji, kama vile kupiga marufuku tivoization.

Mchakato wa kuondoa GCC katika mfumo wa msingi utagawanywa katika hatua kadhaa na itachukua muda wa miezi 9, ambayo itawapa watengenezaji wa usanifu wa GCC (powerpc, mips, mips64 na sparc64) wakati wa kuhamia Clang au kubadili kutumia. zana za nje. Hatua ya kwanza itaanza Agosti 31 na itasababisha kutengwa kwa gcc 4.2.1 kutoka kwa muundo endelevu wa mfumo wa ujumuishaji, na pia kukomesha bendera ya "-Werror" kwa majukwaa yanayofungamana na GCC na kulemaza kwa GCC. chaguo-msingi wakati wa kuendesha "tengeneza ulimwengu".

Tarehe 31 Desemba 2019, muundo wa GCC utazimwa kwa chaguomsingi, lakini bado unaweza kurejeshwa kwa kubainisha alama fulani. Mnamo Machi 31, 2020, GCC itaondolewa kwenye hazina ya SVN, na tarehe 31 Mei, mifumo yote ambayo haijashughulikiwa na ujumuishaji unaoendelea, haitumii LLVM, au ambayo haijabadilishwa kutumia zana za ujenzi wa nje itaondolewa kwenye SVN. . Tarehe 31 Julai 2020, uondoaji wa mwisho kutoka kwa SVN wa mifumo yote iliyosalia ambayo inahitaji matumizi ya zana za nje, lakini haitumiki katika hati za kutengeneza toleo, itatekelezwa.

Chanzo: opennet.ru

Kuongeza maoni