Skip to content

build: add Conan 2 + CMakePresets build system#154

Draft
mc-nv wants to merge 1 commit intomainfrom
mchornyi/TRI-122/conan-next
Draft

build: add Conan 2 + CMakePresets build system#154
mc-nv wants to merge 1 commit intomainfrom
mchornyi/TRI-122/conan-next

Conversation

@mc-nv
Copy link
Copy Markdown
Contributor

@mc-nv mc-nv commented Apr 13, 2026

Resolves: TRI-122
triton-inference-server/backend#123
triton-inference-server/core#490
triton-inference-server/server#8734
triton-inference-server/third_party#74

Description

Introduces Conan 2 package manager and CMakePresets-based build system for dependency management in the common repository, as part of the broader Triton CMake/Conan migration (TRI-122).

Changes

  • build: add Conan 2 + CMakePresets build system

Affected Files

  • CMakeLists.txt
  • CMakePresets.json
  • cmake/CMakePresets.json
  • conanfile.py
  • profiles/linux-gcc13-debug
  • profiles/linux-gcc13-release
  • protobuf/CMakeLists.txt
  • src/test/CMakeLists.txt

Introduce CMake-native + Conan 2 workflow to replace build.py-driven
FetchContent/ExternalProject approach.

- CMakeLists.txt: guard FetchContent behind TRITON_SKIP_THIRD_PARTY_FETCH;
  add TRITON_COMMON_ENABLE_GRPC / METRICS option guards
- protobuf/CMakeLists.txt: use protobuf::libprotobuf Conan imported target
- src/test/CMakeLists.txt: use Conan imported targets (re2::re2,
  protobuf::libprotobuf) instead of Find-module variables
- CMakePresets.json / cmake/CMakePresets.json: configure + build presets
  for Release and Debug on Linux x86_64 and aarch64
- conanfile.py: Conan package descriptor for triton-common
- profiles/: GCC 13 host/build profiles (release + debug)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant