Skip to content

build: read plugin CMake entry from manifest#642

Draft
voltjia wants to merge 1 commit into
ci/path-aware-shadowfrom
build/manifest-cmake-entry
Draft

build: read plugin CMake entry from manifest#642
voltjia wants to merge 1 commit into
ci/path-aware-shadowfrom
build/manifest-cmake-entry

Conversation

@voltjia
Copy link
Copy Markdown
Collaborator

@voltjia voltjia commented Jun 4, 2026

Summary

Make CMake respect the cmake_entry declared by each plugin manifest instead of assuming the entry file is always plugin.cmake.

This PR is stacked on #641 (ci/path-aware-shadow).

Changes

  • Locate a plugin through its plugin.json manifest across configured plugin roots.
  • Parse the manifest cmake_entry field and include that CMake entry.
  • Reject absolute or escaping cmake_entry values at CMake configure time.
  • Preserve existing built-in plugin behavior because their manifests still declare plugin.cmake.

Validation

  • .venv/bin/python -m pytest -s -q tests/test_plugin_registry.py tests/test_plugin_test_matrix.py tests/test_generate_wrappers_plugins.py
  • .venv/bin/ruff check scripts/infini_ops_plugin_registry.py scripts/infini_ops_plugin_test_matrix.py scripts/generate_wrappers.py tests/test_plugin_registry.py tests/test_plugin_test_matrix.py tests/test_generate_wrappers_plugins.py
  • .venv/bin/python -m py_compile scripts/infini_ops_plugin_registry.py scripts/infini_ops_plugin_test_matrix.py scripts/generate_wrappers.py
  • git diff --check
  • CPU plugin CMake configure/build smoke
  • External plugin with custom cmake_entry configure/build smoke

Full-platform validation

Full stack validation was run on the top branch build/external-plugin-source-paths at pre-style-rebase commit 907eff70; see #643 validation comment: #643 (comment). The later rebase only updates PR metadata and diagnostic wording for CONTRIBUTING.md compliance.

  • NVIDIA: build passed; pytest failed with 1 failed, 3687 passed, 4404 skipped due to CUDA OOM in tests/test_torch_ops.py::test_op[..., svd] on the PyTorch reference path.
  • MetaX: 3183 passed, 3400 skipped.
  • Iluvatar: 2689 passed, 3894 skipped.
  • Moore: passed after preloading the container OpenMP runtime, 2949 passed, 3643 skipped.
  • Cambricon: 1781 passed, 4694 skipped.
  • Ascend: pytest passed with 3359 passed, 3233 skipped, but the container exited with code 137; treat as not fully green by the quality gate.

@voltjia voltjia changed the title Read plugin CMake entry from manifest build: read plugin CMake entry from manifest Jun 5, 2026
@voltjia voltjia force-pushed the ci/path-aware-shadow branch from 678b5df to d132b5a Compare June 5, 2026 08:19
@voltjia voltjia force-pushed the build/manifest-cmake-entry branch from e7ed421 to 9129246 Compare June 5, 2026 08:26
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.

1 participant