Το Fedora σχεδιάζει να παρέχει τη δυνατότητα δημιουργίας πακέτων σε Clang αντί για GCC

Για εφαρμογή στο Fedora 33 προγραμματισμένος αλλαγή κανόνες για τη χρήση μεταγλωττιστών στη διανομή, σύμφωνα με τους οποίους μπορεί να επιλεγεί ο μεταγλωττιστής για τη δημιουργία του πακέτου ανάλογα με τις συστάσεις και τις προτιμήσεις του κύριου έργου (ανοδικά). Το Fedora επιβάλλει επί του παρόντος τη χρήση του GCC για τη δημιουργία όλων των πακέτων, εκτός εάν το πακέτο μπορεί να κατασκευαστεί μόνο σε Clang/LLVM.

Ο λόγος για την παροχή της δυνατότητας κατασκευής με Clang είναι ότι ορισμένα έργα, π.χ. Firefox и Χρώμιο, κατά την ανάπτυξη χρησιμοποιούν το Clang ως κύριο μεταγλωττιστή και τα συγκροτήματα που βασίζονται σε αυτό δοκιμάζονται καλύτερα. Η χρήση του Clang για τέτοια πακέτα θα αποφύγει την καταγραφή σφαλμάτων που εμφανίζονται κατά την κατασκευή στο GCC, καθώς και τον συντονισμό επιδιορθώσεων για αυτά τα σφάλματα με το κύριο έργο. Η δημιουργία με GCC έχει θετική επίδραση στη διατήρηση της φορητότητας του κώδικα που αναπτύχθηκε με χρήση Clang, αλλά δημιουργεί μεγαλύτερη επιβάρυνση στους συντηρητές και καθυστερεί τη δημοσίευση ενημερώσεων (για παράδειγμα, Mozilla απαγορεύει χρησιμοποιήστε το εμπορικό σήμα Firefox κατά την εφαρμογή ενημερώσεων κώδικα τρίτων, επομένως πρέπει πρώτα να βεβαιωθείτε ότι οι ενημερώσεις κώδικα περιλαμβάνονται στην κύρια ροή και να απελευθερώσετε την ενημέρωση μόνο αφού εμφανιστούν οι ενημερώσεις κώδικα στο upstream).

Σημειώνεται ότι θα ήταν λογικό να χρησιμοποιηθεί το Clang για πακέτα για τα οποία αυτός ο μεταγλωττιστής ταιριάζει καλύτερα και χρησιμοποιείται στο κύριο έργο. Για τέτοια πακέτα, θα ήταν δυνατό να μειωθεί η επιβάρυνση της συντήρησης εάν τα πακέτα προετοιμαστούν από εκπροσώπους του κύριου έργου. Εάν ένας εκπρόσωπος από την κοινότητα δημιουργεί το πακέτο, τότε η δυνατότητα επιλογής μεταγλωττιστή προτείνεται να δοθεί στον συντηρητή. Για πακέτα των οποίων τα κύρια έργα δεν ευνοούν τον έναν ή τον άλλο μεταγλωττιστή, συνιστάται η διατήρηση του status quo (κατασκευή στο GCC όπως πριν). Ο συντάκτης της πρότασης είναι ο Jeff Law από την Red Hat, ο οποίος είναι ένας από τους συντηρητές του GCC και της Binutils.

Πηγή: opennet.ru

Αγοράστε αξιόπιστη φιλοξενία για ιστότοπους με προστασία DDoS, διακομιστές VPS VDS 🔥 Αγοράστε αξιόπιστη φιλοξενία ιστοσελίδων με προστασία DDoS, διακομιστές VPS VDS | ProHoster