Skip to content

[triton-inference-server] new port - #53479

Open
Tim Paine (timkpaine) wants to merge 5 commits into
microsoft:masterfrom
timkpaine:tkp/triton-inference-server-client
Open

[triton-inference-server] new port#53479
Tim Paine (timkpaine) wants to merge 5 commits into
microsoft:masterfrom
timkpaine:tkp/triton-inference-server-client

Conversation

@timkpaine

Copy link
Copy Markdown
Contributor
  • Changes comply with the maintainer guide.
  • The packaged project is mature and ready for broad sharing with vcpkg users
    • Has a release at least 6 months old or 6 months of demonstrated public development
    • Is an official component of something else meeting that criteria
    • Some other reason (please explain)
  • The packaged project shows strong association with the chosen port name. Check this box if at least one of the following criteria is met:
    • The project is in Repology: https://repology.org/project//versions
    • The project is amongst the first web search results for "" or " C++". Include a screenshot of the search engine results in the PR.
    • The port name follows the 'GitHubOrg-GitHubRepo' form or equivalent Owner-Project form.
  • Optional dependencies of the build are all controlled by the port. A dependency is controlled if it is declared an unconditional dependency in vcpkg.json, or explicitly disabled through patches or build system arguments such as CMAKE_DISABLE_FIND_PACKAGE_Xxx or VCPKG_LOCK_FIND_PACKAGE
  • The versioning scheme in vcpkg.json matches what upstream says.
  • The license declaration in vcpkg.json matches what upstream says.
  • The installed as the "copyright" file matches what upstream says.
  • The source code of the component installed comes from an authoritative source.
  • The generated "usage text" is brief and accurate. See adding-usage for context. Don't add a usage file if the automatically generated usage is correct.
  • The version database is fixed by rerunning ./vcpkg x-add-version --all and committing the result.
  • Exactly one version is added in each modified versions file.

Signed-off-by: Tim Paine <3105306+timkpaine@users.noreply.github.com>
Signed-off-by: Tim Paine <3105306+timkpaine@users.noreply.github.com>
Comment thread ports/triton-inference-server-client/fix-common-install.patch Outdated
Comment thread ports/triton-inference-server-client/fix-install.patch Outdated
Comment thread ports/triton-inference-server-client/fix-install.patch
Comment thread ports/triton-inference-server/portfile.cmake Outdated
Comment thread ports/triton-inference-server/portfile.cmake Outdated
Signed-off-by: Tim Paine <3105306+timkpaine@users.noreply.github.com>
Signed-off-by: Tim Paine <3105306+timkpaine@users.noreply.github.com>
@timkpaine
Tim Paine (timkpaine) marked this pull request as ready for review August 20, 2026 23:07

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please give us the reason when you resolve the review suggestions.

POSITION_INDEPENDENT_CODE ON
)

+ add_library(

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Again, why we need to create several static libraries?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

triton common’s three generated-code targets remain OBJECT libraries for upstream in-tree builds. Without installing their objects, CMake exports them as INTERFACE targets with no object paths, so installed Core/Server packages cannot link their protobuf/gRPC symbols. The three static wrappers package those existing objects separately because downstream uses each upstream target independently. This preserves upstream OBJECT-target behavior instead of converting them directly to STATIC.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't understand, after generating the OBJECT libraries upstream, don't they link them into the normal dynamic/static libraries? Or does the upstream export these OBJECT libraries directly for users to use?

Do you mean these OBJECT libraries are for use by other libraries in the same repository?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

would you prefer to switch to installing the objects directly via OBJECTS DESTINATION?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't understand, after generating the OBJECT libraries upstream, don't they link them into the normal dynamic/static libraries? Or does the upstream export these OBJECT libraries directly for users to use?

Do you mean these OBJECT libraries are for use by other libraries in the same repository?

Yes. The source repo's OBJECT libraries are internal components reused across Client, Core, and Server in one combined CMake build.

vcpkg builds those as separate packages, so the objects disappear at the package boundary. Our static wrappers preserve them for Core and Server.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That make sense.

Comment thread ports/triton-inference-server-client/fix-install.patch
triton-core-serverstub
PRIVATE
- -Wall -Wextra -Wno-unused-parameter -Werror
+ -Wall -Wextra -Wno-unused-parameter

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also, why we need to remove -Werror here?

target_compile_options(
simple
PRIVATE
- -Wall -Wextra -Wno-type-limits -Wno-unused-parameter -Wno-deprecated-declarations -Werror

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If -Werror already has in the source, we can keep it.

Signed-off-by: Tim Paine <3105306+timkpaine@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants