ఫెడోరా GCCకి బదులుగా క్లాంగ్లో ప్యాకేజీలను నిర్మించగల సామర్థ్యాన్ని అందించాలని యోచిస్తోంది
ఫెడోరా 33లో అమలు కోసం షెడ్యూల్ చేయబడిందిమార్పు పంపిణీలో కంపైలర్లను ఉపయోగించడం కోసం నియమాలు, దీని ప్రకారం ప్యాకేజీని నిర్మించడానికి కంపైలర్ను ప్రధాన ప్రాజెక్ట్ (అప్స్ట్రీమ్) యొక్క సిఫార్సులు మరియు ప్రాధాన్యతలను బట్టి ఎంచుకోవచ్చు. ఫెడోరా ప్రస్తుతం అన్ని ప్యాకేజీలను రూపొందించడానికి GCC వినియోగాన్ని అమలు చేస్తోంది, ప్యాకేజీని Clang/LLVMలో మాత్రమే నిర్మించవచ్చు.
క్లాంగ్తో నిర్మించడం సాధ్యమయ్యే ఉద్దేశ్యం ఏమిటంటే కొన్ని ప్రాజెక్ట్లు, ఉదాహరణకు, ఫైర్ఫాక్స్ и క్రోమియం, అభివృద్ధి చేస్తున్నప్పుడు, గణగణమని ద్వని చేయు ప్రధాన కంపైలర్గా ఉపయోగించండి మరియు దాని ఆధారంగా నిర్మాణాలు మరింత గుణాత్మకంగా పరీక్షించబడతాయి. అటువంటి ప్యాకేజీల కోసం క్లాంగ్ని ఉపయోగించడం వలన GCCలో నిర్మించేటప్పుడు పాప్ అప్ అయ్యే బగ్లను క్యాచ్ చేయడాన్ని నివారించవచ్చు, అలాగే ఈ బగ్ల కోసం ప్రధాన ప్రాజెక్ట్తో సమన్వయ పరిష్కారాలు ఉంటాయి. GCCతో నిర్మించడం అనేది క్లాంగ్ ఉపయోగించి అభివృద్ధి చేయబడిన కోడ్ యొక్క పోర్టబిలిటీని నిర్వహించడంపై సానుకూల ప్రభావాన్ని చూపుతుంది, కానీ నిర్వహణదారులపై పెద్ద భారాన్ని సృష్టిస్తుంది మరియు నవీకరణల ప్రచురణను ఆలస్యం చేస్తుంది (ఉదాహరణకు, మొజిల్లా నిషేధిస్తుంది థర్డ్-పార్టీ ప్యాచ్లను వర్తింపజేసేటప్పుడు Firefox ట్రేడ్మార్క్ని ఉపయోగించండి, కాబట్టి మీరు ముందుగా మెయిన్ స్ట్రీమ్లో పాచెస్ను పొందాలి మరియు అప్స్ట్రీమ్లో పరిష్కారాలు కనిపించిన తర్వాత మాత్రమే నవీకరణను విడుదల చేయాలి).
ఈ కంపైలర్ ఉత్తమంగా సరిపోయే మరియు ప్రధాన ప్రాజెక్ట్లో ఉపయోగించబడే ప్యాకేజీల కోసం క్లాంగ్ను ఉపయోగించడం లాజికల్గా ఉంటుందని గుర్తించబడింది. అటువంటి ప్యాకేజీల కోసం, ప్రధాన ప్రాజెక్ట్ యొక్క ప్రతినిధులచే ప్యాకేజీల తయారీని నిర్వహించినట్లయితే నిర్వహణ భారాన్ని తగ్గించడం సాధ్యమవుతుంది. కమ్యూనిటీ నుండి ఒక ప్రతినిధి ప్యాకేజీని నిర్మిస్తుంటే, కంపైలర్ ఎంపికను నిర్వహించేవారికి వదిలివేయాలని ప్రతిపాదించబడింది. ప్రధాన ప్రాజెక్ట్లు ఒక కంపైలర్కు అనుకూలంగా ఉండని ప్యాకేజీల కోసం, యథాతథ స్థితిని కొనసాగించాలని సిఫార్సు చేయబడింది (గతంలో వలె GCCలో నిర్మించండి). ప్రతిపాదన యొక్క రచయిత Red Hat యొక్క జెఫ్ లా, అతను GCC మరియు Binutils యొక్క నిర్వహణదారు.