Como adicionar uma etapa de build personalizada a projetos MSBuild
Uma etapa de build personalizada é uma etapa definida pelo usuário em um build. Uma etapa de build personalizada se comporta como qualquer outra etapa de ferramenta de comando, como a etapa de ferramenta de compilação ou link padrão.
Especifique uma etapa de build personalizada no arquivo de projeto (.vcxproj). A etapa pode especificar uma linha de comando a ser executada, qualquer arquivo de entrada ou saída adicional e uma mensagem a ser exibida. Se MSBuild determinar que os arquivos de saída estão desa datados em relação aos arquivos de entrada, ele exibirá a mensagem e executará o comando.
Para especificar o local da etapa de build personalizada na sequência de destinos de build, use CustomBuildAfterTargets
CustomBuildBeforeTargets
um ou ambos os elementos XML e no arquivo de projeto. Por exemplo, você pode especificar que a etapa de build personalizada seja executado após o destino da ferramenta de link e antes do destino da ferramenta de manifesto. O conjunto real de destinos disponíveis depende de seu build específico.
Especifique CustomBuildBeforeTargets
o elemento para executar a etapa de build personalizada antes que um destino específico seja executado, CustomBuildAfterTargets
o elemento para executar a etapa após a execução de um destino específico ou ambos os elementos para executar a etapa entre dois destinos adjacentes. Se nenhum elemento for especificado, sua ferramenta de build personalizada será executada em seu local padrão, que é após o destino Link .
As etapas de build personalizadas e as ferramentas de build personalizadas compartilham as informações especificadas nos elementos CustomBuildBeforeTargets
CustomBuildAfterTargets
e XML. Portanto, especifique esses destinos apenas uma vez no arquivo de projeto.
Para definir o que é executado pela etapa de build personalizada
Adicione um grupo de propriedades ao arquivo de projeto. Nesse grupo de propriedades, especifique o comando, suas entradas e saídas e uma mensagem, conforme mostrado no exemplo a seguir. Este exemplo cria um .cab do arquivo main.cpp criado em Passo a passo: usando MSBuild para criar um arquivo C++ Project.
<ItemDefinitionGroup> <CustomBuildStep> <Command>makecab.exe $(ProjectDir)main.cpp $(TargetName).cab</Command> <Outputs>$(TargetName).cab</Outputs> <Inputs>$(ProjectDir)main.cpp</Inputs> </CustomBuildStep> </ItemDefinitionGroup>
Para definir onde no build a etapa de build personalizada será executada
Adicione o grupo de propriedades a seguir ao arquivo de projeto. Você pode especificar ambos os destinos ou pode omitir um se quiser apenas que a etapa personalizada seja executada antes ou depois de um destino específico. Este exemplo informa MSBuild executar a etapa personalizada após a etapa de compilação, mas antes da etapa de link.
<PropertyGroup> <CustomBuildAfterTargets>ClCompile</CustomBuildAfterTargets> <CustomBuildBeforeTargets>Link</CustomBuildBeforeTargets> </PropertyGroup>
Consulte também
Passo a passo: usando MSBuild para criar um C++ Project
Como usar eventos de build em MSBuild projetos
Como adicionar ferramentas de build personalizadas para MSBuild projetos