Skip to content

[SYCL][UR] Rebuild debug UR libraries when UR sources change - #23658

Open
VerenaBeckham wants to merge 2 commits into
intel:syclfrom
VerenaBeckham:verena/ur_build_fix
Open

VerenaBeckham wants to merge 2 commits into
intel:syclfrom
VerenaBeckham:verena/ur_build_fix

Conversation

@VerenaBeckham

Copy link
Copy Markdown
Contributor

On Windows, the d-suffixed debug UR libraries (e.g. ur_adapter_opencld.dll) are built by the "unified-runtimed" ExternalProject. ExternalProject steps only re-run when their stamp files are out of date, and nothing tied the build step to the UR sources. As a result, editing a file under unified-runtime/ did not rebuild the debug libraries in an incremental build, although the release libraries (built via add_subdirectory) were rebuilt.

Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com

On Windows, the d-suffixed debug UR libraries (e.g. ur_adapter_opencld.dll)
are built by the "unified-runtimed" ExternalProject. ExternalProject steps
only re-run when their stamp files are out of date, and nothing tied the
build step to the UR sources. As a result, editing a file under
unified-runtime/ did not rebuild the debug libraries in an incremental
build, although the release libraries (built via add_subdirectory) were
rebuilt.

Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com

Copilot AI left a comment

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.

🟡 Changes recommended

Clean Ninja builds can fail because ur_commond.lib is undeclared with the default static loader and INSTALL_BYPRODUCTS is unsupported on supported CMake versions 3.20–3.25.

2 open issues
What changed in this PR

This PR aims to keep Windows debug Unified Runtime libraries up to date after source changes, matching the incremental rebuild behavior of the release libraries.

Changes:

  • Runs the debug external-project build on every build so it checks for source changes.
  • Declares installed library byproducts and adds file dependencies so rebuilt libraries are copied into the main build directory.
File Description
sycl/​cmake/​modules/​BuildUnifiedRuntime.cmake Updates debug UR rebuild scheduling and dependencies for copying installed libraries.

Review effort: Balanced

@ldorau ldorau left a comment

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 fix the Copilot's issues and failing CI build

Apply suggested fixes.

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
@VerenaBeckham

Copy link
Copy Markdown
Contributor Author

Please fix the Copilot's issues and failing CI build

I applied the suggestions. I think you need to trigger another build? Thanks!

This branch has not been deployed

No deployments
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.

3 participants