Для GCC подготовлены патчи для сборки универсальных исполняемых файлов

Представлен набор патчей для GCC, позволяющий генерировать исполняемые файлы в формате APE (Actually Portable Executable), которые при связывании приложений со стандартной Си-библиотекой Cosmopolitan дают возможность создавать универсальные сборки приложений, запускаемые в разных операционных системах. Исполняемый файл в формате APE не привязан к отдельным платформам и может быть запущен в Linux, FreeBSD, macOS, OpenBSD, NetBSD и Windows.

Патчи добавляют в GCC 11.2 новый флаг “-fportcosmo”, упрощающий перевод программ, написанных на языке Си, на использование библиотеки Cosmopolitan. Код предложенных изменений опубликован под лицензией ISC (упрощённый вариант MIT/BSD). В качестве примеров программ, которые могут быть собраны с библиотекой Cosmopolitan для одновременного выполнения в разных ОС, отмечены bash, curl, git, ninja, lua, cpython и gcc.

Release. Ссылка here.