coder.make.BuildTool class

Пакет: coder.make

Представляйте инструмент сборки

Описание

Используйте coder.make.BuildTool получить и задать существующий coder.make.BuildTool по умолчанию объект, или создать coder.make.BuildTool объект.

Работать с BuildTool по умолчанию объекты, используйте получать и задайте подход от ToolchainInfo свойства:

  • coder.make.ToolchainInfo.BuildTools

  • coder.make.ToolchainInfo.PostbuildTools

Примеры, показывающие получать и, задают подход:

Альтернатива тому, чтобы получать и задает подход, создавание нового подхода. Пример, показывающий создавание нового подхода, появляется в, Создают BuildTool Не по умолчанию.

Рисунок показывает отношение между BuildTool по умолчанию объекты и ToolchainInfo. Когда вы исследуете PHONY TARGETS раздел сгенерированного make-файла, различия между BuildTools, PostbuildTools, и PrebuildTools становится более ясным.

  • prebuild – запуски только инструмент перед сборкой.

  • build – запускает инструменты сборки после рабочей предварительной сборки. build генерирует сборку PRODUCT.

  • postbuild – запускает инструмент постсборки после рабочей сборки.

  • all – предварительная сборка запусков, сборка и постсборка. Процесс сборки использует это правило на сборке Ctrl+B.

  • clean – очищает все расширения выходного файла и расширения производного файла всех инструментов в наборе инструментальных средств.

  • info – расширяет и распечатывает все макросы, используемые в make-файле.

Конструкция

h = coder.make.BuildTool(bldtl_name) создает coder.make.BuildTool объект и наборы его Name свойство.

Входные параметры

развернуть все

Создайте имя инструмента в виде вектора символов или строкового скаляра.

Типы данных: char | string

Выходные аргументы

развернуть все

Указатель на объект для coder.make.BuildTool объект в виде переменной.

Пример: tool

Свойства

развернуть все

Представляет использование команды инструмента сборки:

  • Дополнительное макро-имя, такое как: CC.

  • Системный вызов (команда), которая запускает инструмент сборки, такой как: gcc.

Макро-имя и системный вызов появляются вместе в сгенерированном make-файле. Например: CC = gcc

Присвоение значения к этому свойству является дополнительным.

Можно использовать следующие методы с Command:

Атрибуты:

GetAccesspublic
SetAccesspublic

Задает любые специфичные для инструмента директивы, такие как -D поскольку препроцессор задает. Присвоение значения к этому свойству является дополнительным.

Можно использовать следующие методы с Directives:

Атрибуты:

GetAccesspublic
SetAccesspublic

Задает любые специфичные для инструмента расширения файла. Это значение является дополнительным.

Можно использовать следующие методы с FileExtensions:

Атрибуты:

GetAccesspublic
SetAccesspublic

Задает имя инструмента сборки.

Можно использовать следующие методы с Name.

Атрибуты:

GetAccesspublic
SetAccesspublic

Задает любые специфичные для инструмента пути. Если команда находится на системном пути, это значение является дополнительным.

Можно использовать следующие методы с Path:

Атрибуты:

GetAccesspublic
SetAccesspublic

Задает любые специфичные для инструмента выходные форматы. Если инструмент поддерживает все доступные форматы, это значение является дополнительным.

Значением по умолчанию является {'*'}, который указывает на поддержку всех доступных форматов.

Тип данных является массивом ячеек. Содержимым массива ячеек должен быть любой coder.make.BuildOutput перечислимые величины или '*'.

Это свойство не имеет никаких связанных методов. Присвойте значение непосредственно SupportedOutputs. Смотрите addPrebuildToolToToolchainInfo.m пример или addPostbuildToolToToolchainInfo.m пример. Допустимые перечислимые величины:

coder.make.BuildOutput.STATIC_LIBRARYзапрашивает инструменты перед сборкой, инструменты сборки и инструменты пост-сборки
coder.make.BuildOutput.SHARED_LIBRARYзапрашивает инструменты сборки и инструменты пост-сборки; требует лицензии Embedded Coder®
coder.make.BuildOutput.EXECUTABLEзапрашивает инструменты сборки и инструменты пост-сборки

Атрибуты:

GetAccesspublic
SetAccesspublic

Методы

addDirectiveДобавьте директиву в Directives
addFileExtensionДобавьте новую запись расширения файла в FileExtensions
getCommandПолучите команду инструмента сборки
getDirectiveПолучите значение именованной директивы от Directives
getFileExtensionПолучите расширение файла для именованного типа файла в FileExtensions
getNameПолучите имя инструмента сборки
getPathПолучите путь и макрос инструмента сборки в Path
информацияОтобразите свойства инструмента сборки и значения
setCommandУстановите команду инструмента сборки
setCommandPatternУстановленный образец команд для инструментов сборки
setCompilerOptionMapУстановите язык C/C++ стандартные и параметры компилятора для выбранного инструмента сборки (компилятор)
setDirectiveУстановите значение директивы в Directives
setFileExtensionУстановите расширение файла для именованного типа файла в FileExtensions
setNameОпределите имя инструмента сборки
setPathУстановите путь и макрос инструмента сборки в Path
подтвердитьПодтвердите свойства инструмента сборки

Пример

Получите инструмент сборки по умолчанию и набор его свойства

intel_tc.m файл от Добавления Пользовательского Набора инструментальных средств использует следующие линии, чтобы получить инструмент сборки по умолчанию, C Compiler, от ToolchainInfo возразите названному tc, и затем устанавливает его свойства.

% ------------------------------
% C Compiler
% ------------------------------
 
tool = tc.getBuildTool('C Compiler');

tool.setName('Intel C Compiler');
tool.setCommand('icl');
tool.setPath('');

tool.setDirective('IncludeSearchPath','-I');
tool.setDirective('PreprocessorDefine','-D');
tool.setDirective('OutputFlag','-Fo');
tool.setDirective('Debug','-Zi');

tool.setFileExtension('Source','.c');
tool.setFileExtension('Header','.h');
tool.setFileExtension('Object','.obj');

tool.setCommandPattern('|>TOOL<| |>TOOL_OPTIONS<| |>OUTPUT_FLAG<||>OUTPUT<|');

Следующие примеры показывают, что то же самое “получает и задает” подход более подробно:

Создайте BuildTool Не по умолчанию

Создать инструмент сборки:

  1. Создайте файл, который задает BuildTool объект, такой как createBuildTool_1.m или createBuildTool_2.

  2. Создайте файл как addBuildToolToToolchainInfo.m, это:

    • Создает ToolchainInfo объект или использование существующее.

    • Создает BuildTool объект от createBuildTool_1.m или createBuildTool_2.

    • Добавляет BuildTool возразите против ToolchainInfo объект.

  3. Запустите addBuildToolToToolchainInfo.m.

Обратитесь к следующим примерам addBuildToolToToolchainInfo.m, createBuildTool_1.m, и createBuildTool_2.m.

 addBuildToolToToolchainInfo.m

 createBuildTool_1.m

 createBuildTool_2.m

Добавьте предварительную сборку и инструменты пост-сборки к набору инструментальных средств

Код в addPrebuildToolToToolchainInfo.m и addPostbuildToolToToolchainInfo.m примеры показывают, как добавить предварительную сборку и инструменты пост-сборки к набору инструментальных средств.

 addPrebuildToolToToolchainInfo.m

 addPostbuildToolToToolchainInfo.m