Add VCPKG port for C++ package management #16713
Draft
+254
−1
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
Adds VCPKG port configuration to enable C++ package management integration. Users can now install ExecuTorch via
vcpkg install executorchalongside traditional pip installation.Port structure (
ports/executorch/):vcpkg.json- Manifest with 10 optional features (xnnpack, coreml, mps, vulkan, qnn, portable-ops, optimized-ops, quantized-ops, pybind, tests)portfile.cmake- CMake-based build script usingvcpkg_from_github, feature-conditional configuration, and standard install patternsusage- CMake integration examples and target documentation../README.md- Maintenance guide for registry submission and version updatesUsage:
Static linkage only. SHA512 hash placeholder (0) requires update on first build. No modifications to existing build system.
Test plan
Manual verification of port file structure and CMake configuration logic. Code review and CodeQL passed with no issues. Actual VCPKG installation testing requires copying port to VCPKG installation directory and updating SHA512 hash.
Original prompt
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.