ГЦЦ ће бити уклоњен из главне ФрееБСД линије

ФрееБСД Девелоперс представљени планирате да уклоните ГЦЦ 4.2.1 из извора основног система ФрееБСД. ГЦЦ компоненте ће бити уклоњене пре него што се грана ФрееБСД 13 рачва, што ће укључивати само Цланг компајлер. ГЦЦ се, по жељи, може испоручити из лука у којима се нуди ГЦЦ КСНУМКС, 7 и 8, као и оне већ пребачене у категорију застарелих питања ГЦЦ КСНУМКС, 5, 6 и 7.

Архитектуре које се ослањају на ГЦЦ и не могу да мигрирају на Цланг биће затражене да мигрирају на спољне алате инсталиране са портова. У припреми за уклањање ГЦЦ-а из основног система, планиран је рад на побољшању интеграције система изградње основног система са екстерним алатима. На пример, за архитектуру амд64, систем континуиране интеграције је већ додао могућност изградње помоћу гцц 6.4 са портова, који се може користити као основа за превођење других архитектура.

Подсетимо се да је, почевши од ФрееБСД 10, основни систем за и386, АМД64 и АРМ архитектуре пребачен на подразумевану испоруку компајлера Цланг и библиотеке либц++ коју је развио ЛЛВМ пројекат. ГЦЦ и либстдц++ за ове архитектуре више нису изграђени као део основног система, али су наставили да се подразумевано испоручују за архитектуре поверпц, мипс, мипс64 и спарц64, а такође су могли да се инсталирају приликом реконструкције са наведеним ознакама ВИТХ_ГЦЦ и ВИТХ_ГНУЦКСКС. Застарела верзија ГЦЦ 4.2.1 је испоручена због ограничења лиценцирања.

ФрееБСД није могао да мигрира на новију верзију ГЦЦ-а, пошто је од издања 4.2.2 ГЦЦ преведено ГПЛв3 лиценцу и ГЦЦ 4.2.2 интеграцију је ометала некомпатибилност ГЦЦ рунтиме компоненти са БСД лиценцом. Касније, у верзији ГЦЦ 4.4 ова некомпатибилност је елиминисан, али додавање ГПЛв3 лиценцираних компоненти основном систему ФрееБСД је било утврђено немогућим због противречности са циљеви ФрееБСД пројекта и неспремност да се наметну додатна ограничења корисницима, као што је забрана тивоизација.

Процес уклањања ГЦЦ-а у основном систему биће подељен у неколико фаза и трајаће 9 месеци, што ће програмерима ГЦЦ везаних архитектура (поверпц, мипс, мипс64 и спарц64) дати времена да пређу на Цланг или пређу на коришћење спољни алати. Прва фаза почеће 31. августа и довешће до искључења гцц 4.2.1 из континуиране изградње система интеграције, као и до укидања ознаке „-Веррор“ за платформе везане за ГЦЦ и онемогућавања ГЦЦ верзија од подразумевано када се покреће „направи универзум“.

31. децембра 2019. ГЦЦ изградња ће подразумевано бити онемогућена, али се и даље може вратити навођењем одређених ознака. 31. марта 2020. ГЦЦ ће бити уклоњен из СВН спремишта, а 31. маја све платформе које нису покривене континуираном интеграцијом, не подржавају ЛЛВМ или нису конвертоване да користе екстерне алате за прављење биће уклоњене из СВН-а . 31. јула 2020. биће извршено коначно уклањање из СВН-а свих преосталих платформи које захтевају коришћење спољних алата, али нису подржане у скриптама за генерисање издања.

Извор: опеннет.ру

Додај коментар