В условиях конкуренции с Clang Эрик Реймонд предложил отменить ограничения GCC в области плагинов

Эрик Реймонд (Eric S. Raymond), один из основателей организации OSI (Open Source Initiative), стоявший у истоков движения открытого ПО и написавший в свое время известное эссе «Собор и Базар», обратился к Фонду СПО и разработчикам набора компиляторов GCC с призывам отказаться от политики, запрещающей использование проприетарных плагинов в GCC чтобы поднять интерес к проекту коммерческих компаний. В условиях когда GCC доминировал и занимал монопольную позицию, практика принуждения к открытию кода плагинов была оправдана, но в настоящее время стремительными темпами развивается конкурирующая с GCC система Clang, которая пока не достигла уровня зрелости GCC, но уже готова к промышленному использованию и опережает GCC в некоторых областях, таких как выявление ошибок в коде. Ограничения в области плагинов только препятствуют развитию GCC и увеличивают конкурентные преимущества Clang.

По мнению Эрика Реймонда стиль пропаганды Фонда СПО мешает достижению цели в создании открытой и контролируемой пользователями экносистемы. GCC является одним из ключевых орудий в арсенале GCC для достижения данной цели, поэтому стоит максимально эффективно использовать его для продвижения идей свободы и открытости, предотвращения привязки к вендору и недопустимости проприетарного контроля.

В ответ один из разработчиков GCC из компании Google обратил внимание на то, что суть проблемы с разработкой плагинов к GCC не столько лицензионная, сколько техническая. Перед изменением лицензионной политики следует вначале привести в должный вид и стабилизировать интерфейс для подключения плагинов к GCC. В настоящее время данный API слишком привязан к внутренней структуре GCC и постоянно изменяется, что требует переработки плагинов для каждого нового значительного выпуска GCC. Поэтому для разработки дополнений к GCC приходится использовать сторонние инструменты, такие как MELT или постоянно синхронизировать плагин с изменениями в GCC, поддерживая несколько вариантов для разных веток свободного набора компиляторов.

©  OpenNet