onnxruntime/tools/ci_build/github/azure-pipelines/mac-objc-static-analysis-ci-pipeline.yml
Edward Chen 9422438782
Objective-C static analysis - use different llvm path to try to find clang-tidy. (#13280)
Use different llvm path to try to find clang-tidy. Sometimes the build fails because it can't find clang-tidy. Hopefully this path works better.
2022-10-12 10:16:26 -07:00

43 lines
1.3 KiB
YAML

jobs:
- job: ObjCStaticAnalysis
pool:
vmImage: 'macOS-12'
timeoutInMinutes: 30
steps:
- checkout: self
clean: true
submodules: recursive
- task: UsePythonVersion@0
inputs:
versionSpec: "3.9"
addToPath: true
architecture: "x64"
- script: |
pip install -r tools/ci_build/github/apple/objectivec/static_analysis/requirements.txt
displayName: Install tools
- script: |
python tools/ci_build/build.py \
--build_dir "$(Build.BinariesDirectory)" \
--cmake_generator "Ninja" \
--config Debug \
--build_shared_lib --use_coreml --build_objc \
--cmake_extra_defines CMAKE_EXPORT_COMPILE_COMMANDS=ON \
--update --skip_submodule_sync \
--build --parallel --target onnx_proto
displayName: Generate compile_commands.json and ONNX protobuf files
- script: |
"$(brew --prefix llvm@14)/bin/clang-tidy" \
-p="$(Build.BinariesDirectory)/Debug" \
--checks="-*,clang-analyzer-*" \
--header-filter="objectivec/include|objectivec/src|onnxruntime/core" \
./objectivec/src/*.mm \
./onnxruntime/core/platform/apple/logging/apple_log_sink.mm \
./onnxruntime/core/providers/coreml/model/*.mm
displayName: Analyze Objective-C/C++ source code