Compartilhar via


Como: adicionar uma etapa de compilação personalizado para projetos do MSBuild

Uma etapa de compilação personalizada é uma etapa em uma compilação definida pelo usuário.Uma etapa de compilação personalizada se comporta como qualquer outro ferramenta de comando etapa, como, por exemplo, a etapa de ferramenta de compilação ou link padrão.

Especifique uma etapa de compilação personalizada no arquivo de projeto (.vcxproj).A etapa pode especificar uma linha de comando para executar, qualquer entrada adicional ou arquivos de saída e uma mensagem para exibir.Se MSBuild determina que os arquivos de saída estão desatualizados em relação aos seus arquivos de entrada, ele exibe a mensagem e executa o comando.

Para especificar a localização da compilação personalizada etapa na seqüência de destinos de compilação, use um ou ambos os CustomBuildAfterTargets e CustomBuildBeforeTargets elementos XML no arquivo de projeto.Por exemplo, você poderia especificar que a etapa de compilação personalizado é executado após o destino de link de ferramenta e antes do destino da ferramenta de manifesto.O conjunto real de destinos disponíveis depende da sua compilação específica.

Especificar o CustomBuildBeforeTargets elemento para executar a etapa de compilação personalizada antes de ser executado em um destino específico, o CustomBuildAfterTargets elemento para executar a etapa após a execução de um destino específico, ou os dois elementos para executar a etapa entre dois destinos adjacentes.Se nenhum elemento for especificado, a ferramenta de compilação personalizada executa em seu local padrão, que é posterior a Link destino.

Etapas de compilação personalizada e ferramentas de compilação personalizada compartilham as informações especificadas na CustomBuildBeforeTargets e CustomBuildAfterTargets elementos XML.Portanto, especifique esses destinos apenas uma vez no seu arquivo de projeto.

Para definir o que é executado pela etapa de compilação personalizada

  • Adicione um grupo de propriedade para o arquivo de projeto.Nesse grupo de propriedade, especifique o comando, suas entradas e saídas e uma mensagem, conforme mostrado no exemplo a seguir.Este exemplo cria um arquivo. cab do arquivo de main.cpp que você criou na Passo a passo: Usando o MSBuild para criar um projeto do Visual C++.

      <ItemDefinitionGroup>
        <CustomBuildStep>
          <Command>makecab.exe $(ProjectDir)main.cpp $(TargetName).cab</Command>
          <Outputs>$(TargetName).cab</Outputs>
          <Inputs>$(TargetFileName)</Inputs>
        </CustomBuildStep>
      </ItemDefinitionGroup>
    

Para definir onde na compilação de etapa de compilação personalizada será executado

  • Adicione o grupo de propriedade a seguir ao arquivo de projeto.Você pode especificar ambos os destinos, ou você pode omitir um se desejar apenas a etapa personalizada para executar antes ou depois de um destino específico.Este exemplo informa ao MSBuild para 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

Tarefas

Passo a passo: Usando o MSBuild para criar um projeto do Visual C++

Como: usar os eventos de compilação em projetos do MSBuild

Como: adicionar ferramentas de compilação personalizado para projetos do MSBuild