- SCons
-
SCons Тип Разработчик Steven Knight
Написана на Операционная система Последняя версия Лицензия Сайт SCons — это инструмент для автоматизации сборки программных проектов, разработанный как замена утилиты make с интегрированной функциональностью аналогичной autoconf/automake. SCons автоматически анализирует зависимости между исходными файлами и требования адаптации к операционной системе исходя из описания проекта, и генерирует конечные бинарные файлы для установки на целевую ОС.
SCons использует язык Python в качестве основы, поэтому конфигурация проектов и инструменты для управления процессом сборки являются сценариями на Python.
Содержание
Возможности
- Файлы конфигурации являются сценариями на языке Python, что позволяет использовать все возможности этого языка программирования.
- Встроенная поддержка C, C++, D, Java, Fortran, Objective-C, Yacc, Lex, Qt и SWIG. Возможность генерации документов TeX и LaTeX. Поддержка других языков или форматов файлов может быть реализована с помощью пользовательских сборщиков (builders).
- Для языков C, C++ и Fortran автоматически анализируются зависимости. В отличие от make не нужно отдельно выполнять команду make depend.
- Сборка из репозиториев систем контроля версий.
- Встроенная поддержка получения исходных кодов из SCCS, RCS, CVS, Subversion, BitKeeper и Perforce.
- Поддержка проектов Microsoft Visual Studio .NET и более ранних версий Visual Studio, с возможностями генерации файлов .dsp, .dsw, .sln и .vcproj.
- Обнаружение изменения содержимого файлов по контрольным суммам MD5, наряду с традиционным обнаружением изменений по времени записи файла.
- Возможность параллельной сборки.
- Встроенная возможность поиска необходимых для сборки файлов (#include файлы, библиотеки, и т. д.).
- Способность кеширования собираемых файлов для ускорения параллельной сборки — подобно ccache, но для любых типов файлов.
- Изначальная поддержка кросплатформенности. В настоящее время работает в Linux и др. POSIX-системах (AIX, *BSD systems, HP-UX, IRIX, Solaris), Windows NT, Mac OS X, OS/2.
Пример использования
В самом простом варианте файл SConstruct будет содержать всего одну строку
Program('main.c')
При выполнении команды scons, из файла main.c будет сгенерирована программа main (в Linux) или main.exe (в Windows).
История и связанные проекты
Проект SCons стартовал под именем ScCons и выиграл конкурс Software Carpentry SC Build в августе 2000. Прототипом послужила утилита Cons.
SCons послужил прототипом для проекта Waf, первоначально известного под именем «SCons/BKsys» и рождённого в сообществе KDE. Некоторое время его планировали использовать для KDE4 и последующих версий, но от этой идеи отказались в пользу CMake. [1]
Программные проекты, использующие SCons
- Ardour
- Battlefield 1942
- Blender
- Csound
- Delta3D
- Google Chrome[1]
- GtkRadiant[2]
- id Software
- Nullsoft Scriptable Install System
- NVDA
- SuperCollider
- VMware
- MongoDB
Примечания
- ↑ Kegel, Daniel Understanding The Construction System of Chromium. Google Code (April 3, 2009). Архивировано из первоисточника 20 марта 2012. Проверено 21 июля 2009.
- ↑ Developer documentation for GtkRadiant 1.6.0 (Zeroradiant) (30 июня 2008). Проверено 28 декабря 2009.
См. также
Ссылки
- SCons: A software construction tool (англ.). — Официальная страница проекта. Архивировано из первоисточника 20 марта 2012. Проверено 5 февраля 2009.
- C. Axnix; T. Hendel, M. Mueller, A. Nuñez Mencias, H. Penner, and S. Usenbinz Open-standard development environment for IBM System z9 host firmware. IBM Research (6 декабря 2006).(недоступная ссылка — история) Проверено 11 ноября 2008.
Системы автоматизации сборки Системы автоматизации сборки Make · Premake · CMake · SCons · Apache Ant · Apache Maven · NAnt · Buildout · MSBuild · Waf · Rake · Autotools Категории:- Программное обеспечение по алфавиту
- Автоматизация сборки
- Программное обеспечение с лицензией MIT
- Свободное программное обеспечение, написанное на Python
- Свободные инструменты для разработки программного обеспечения
Wikimedia Foundation. 2010.