Интегрировать PVS-Studio в файл MSBuild

0

У меня много проектов, для которых я создал общий файл MSBuild для запуска. Я пытаюсь интегрировать статический анализ PVS Studio в сборку, не создавая ее во второй раз. Я следил за документацией на сайте PVS, но я должен что-то пропускать. Я говорю, что, потому что, когда я создаю PVS, мне не кажется, что я вызвал/вызвал. Кто-нибудь имеет опыт с этим и может дать мне руку?

Вот бит PVS моего файла сборки.

 <UsingTask TaskName="ProgramVerificationSystems.PVSStudio.PVSStudio" 
    AssemblyFile="C:\Program Files (x86)\PVS-Studio\PVS-Studio-MSBuild.dll" />
    <Target Name="PVSStudioAnalysisBeforeCompile" BeforeTargets="ClCompile">
    <Exec Command="echo PVSStudio initiating now."/>
    <PVSStudio Condition="'%(ClCompile.ExcludedFromBuild)'!='true'" 
        Sources="@(ClCompile)" 
        BeforeClCompile="true" 
        BuildingInIDE="false" 
        TrackerLogDirectory="%(ClCompile.TrackerLogDirectory)" 
        PreprocessorPath="$(VCInstallDir)" 
        Platform="$(Platform)" 
        ProjectFullPath="$(MSBuildProjectFullPath)" 
        SolutionDir="$(SolutionDir)">
     <Output TaskParameter="SourcesAfterTlogParsing"    
        ItemName="CLCompileAfterTlogParsing" />
     </PVSStudio>
   </Target>
<Target Name="PVSStudioAnalysisAfterCompile" AfterTargets="ClCompile">
<PVSStudio Sources="@(CLCompileAfterTlogParsing)" 
    BeforeClCompile="false" 
    BuildingInIDE="$(BuildingInsideVisualStudio)" 
    PreprocessorPath="$(VCInstallDir)" 
    OutputFilePath   ="$(OutputDir)" 
    Platform="$(Platform)" 
    ProjectFullPath="$(MSBuildProjectFullPath)" 
    SolutionDir="$(SolutionDir)" />
<Exec Command="echo PVSStudio finished"/>

Я уверен, что вам все потребуется немного больше информации, чтобы понять это, поэтому дайте мне знать, что я должен получить за вас.

Благодаря,

ТБГ

Теги:
msbuild
pvs-studio

1 ответ

1
Лучший ответ

Вы должны сделать одно из следующего:

  1. Если вы хотите, выход анализатора должны быть сохранены в файл, то вы должны установить BuildingInIDE приписывать false в обеих задачах, следует также указать файл для вывода должны быть сохранены, например, OutputFilePath = "$(OutputDir)"/pvs.log. Вы сможете просмотреть такой журнал из подключаемого модуля PVS-Studio IDE/Standalone, открыв его как unparsed log.

  2. Если вы хотите создать свой проект внутри Visual Studio и PVS-Studio плагин для подключения результатов анализатора к нему выходному окну сразу, то вы должны установить оба BuildingInIDE атрибуты true (или "$(BuildingInsideVisualStudio)") и включить в режиме MSBuild, перейдя в PVS-Studio → Options → Specific Analyzer Settings → MSBuild Output Log Monitoring и установите значение true.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню