Распространенный файл Sconstruct, такой как Makefile.common - PullRequest
0 голосов
/ 22 мая 2011

Есть ли способ иметь Sconstruct.common в каталоге верхнего уровня, который имеет все параметры компилятора / компоновщика, общие для отдельных подкаталогов и имеющие отдельные файлы Sconstruct в каждом отдельном подкаталоге с настраиваемыми параметрами, которые задают дополнительные аргументы дляопции компилятора / компоновщика?

(аналогично наличию Makefile.common в директории верхнего уровня и отдельного Makefile во вложенных папках, включая Makefile.common и добавлении дополнительных аргументов с использованием переменных)

спасибо, Prakash

1 Ответ

2 голосов
/ 23 мая 2011

Да, Scons обычно состоит из файла SConstruct верхнего уровня, который устанавливает общие команды сборки (в среде) и файлы SConscript в подкаталогах проекта, которые создают локальные артефакты (объекты, библиотеки, исполняемые файлы и т. Д.),В SConstruct верхнего уровня вы перечисляете файлы SConscript, которые вы хотите включить, используя команду SConscript .В ваших файлах SConscript вы можете либо переопределить определенные переменные окружения, как это необходимо для конкретной команды сборки, либо вы можете клонировать свою общую среду сборки и переопределить переменные таким образом.

Я настоятельно рекомендую прочитать руководство пользователя Scons .

Кроме того, Scons - это Python, поэтому вы также можете import Python-код для действий по сборке или развертыванию, которые могут быть общими для всех проектов.

...