Rename executorch cmake target to prim_ops_lib - #23177
TejasweeSulekh wants to merge 2 commits into
Conversation
🔗 Helpful Links🧪 See artifacts and rendered test results at hud.pytorch.org/pr/pytorch/executorch/23177
Note: Links to docs will display an error until the docs builds have been completed. ❌ 4 New Failures, 2 Pending, 1 Unrelated Failure, 7 Unclassified FailuresAs of commit 0059406 with merge base f55681f ( NEW FAILURES - The following jobs have failed:
UNCLASSIFIED FAILURES - DrCI could not classify the following jobs because the workflow did not run on the merge base. The failures may be pre-existing on trunk or introduced by this PR:
BROKEN TRUNK - The following job failed but were present on the merge base:👉 Rebase onto the `viable/strict` branch to avoid these failures
This comment was automatically generated by Dr. CI and updates every 15 minutes. |
|
@claude review this code. Does _executorch__srcs (which defined the old executorch library) really only contain primp op sources? If so, should _executorch__srcs be renamed? |
|
cc @JacobSzwejbka for core runtime |
|
Claude finished @metascroy's task in 2m 5s —— View job Review: Rename
|
|
Thanks for the thorough review, and my bad I completely missed the downstream linking impacts and hardcoded script names. I'll push an update tomorrow to fix the broken references and add the INTERFACE compatibility target so we don't break existing users. |
90acc60 to
0059406
Compare
|
@pytorchbot label "release notes: build" |
|
Hey @nil-is-all, I've pushed a new commit which is addressing the feedback provided above. Which are as follows:
Just to confirm this is working correctly, I ended up executing a dummy I also took the liberty to update the main description of the PR to be more aligned to the final changes. |
Summary
This PR renames the confusing
executorchCMake target toprim_ops_lib. This change clearly reflects its purpose as the Primitive Operations Library and brings it in line with the naming convention ofportable_ops_lib.Key Changes
executorchtarget definition inCMakeLists.txttoprim_ops_lib, alongside its source file arrays (_prim_ops_lib__srcsandPRIM_OPS_LIB_SRCS).INTERFACECMake target namedexecutorchthat proxies toprim_ops_lib. Downstream consumers callingtarget_link_libraries(myapp executorch)will not break.set_target_properties(... OUTPUT_NAME "executorch")to ensure the compiled archive is still namedlibexecutorch.a. This prevents breakages in the dozens of internal CI shell scripts and iOS Xcode.pbxprojconfigurations that explicitly look for that file.prim_ops_lib.executorch_target_link_options_shared_lib(prim_ops_lib)to its CMake file.Fixes #11761
Test plan
Configured, built, and executed a model at runtime to guarantee no primitive operator symbols were stripped by the linker.
cc @nil-is-all