Fedora prévoit d'offrir la possibilité de créer des packages en Clang au lieu de GCC

Pour implémentation dans Fedora 33 décrit changer les règles d'utilisation des compilateurs dans la distribution, selon lesquelles le compilateur pour construire le package peut être sélectionné en fonction des recommandations et préférences du projet principal (en amont). Fedora impose actuellement l'utilisation de GCC pour construire tous les packages, sauf si le package ne peut être construit qu'en Clang/LLVM.

La raison pour laquelle nous offrons la possibilité de construire avec Clang est que certains projets, par ex. Firefox и Chrome, pendant le développement, ils utilisent Clang comme compilateur principal et les assemblys basés sur celui-ci sont mieux testés. L'utilisation de Clang pour de tels packages évitera de détecter les erreurs qui apparaissent lors de la construction dans GCC, ainsi que de coordonner les correctifs de ces erreurs avec le projet principal. Construire avec GCC a un effet positif sur le maintien de la portabilité du code développé avec Clang, mais crée une charge plus lourde pour les responsables et retarde la publication des mises à jour (par exemple, Mozilla interdit utilisez la marque Firefox lors de l'application de correctifs tiers, vous devez donc d'abord vous assurer que les correctifs sont inclus dans le flux principal et publier la mise à jour uniquement après que les correctifs soient apparus en amont).

Il est à noter qu'il serait logique d'utiliser Clang pour les packages pour lesquels ce compilateur est mieux adapté et utilisé dans le projet principal. Pour de tels packages, il serait possible de réduire la charge de maintenance si les packages étaient préparés par des représentants du projet principal. Si un représentant de la communauté construit le paquet, il est proposé de donner au responsable la possibilité de choisir un compilateur. Pour les packages dont les projets principaux ne favorisent pas l'un ou l'autre compilateur, il est recommandé de maintenir le statu quo (build dans GCC comme auparavant). L'auteur de la proposition est Jeff Law de Red Hat, qui est l'un des responsables de GCC et Binutils.

Source: opennet.ru

Ajouter un commentaire