| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[bugfix]: 补齐合并算子原型头的增量构建依赖 Co-authored-by: zmuxuny<xiahoumuxuan@gmail.com> # message auto-generated for no-merge-commit merge: !12044 merge fix/merged-proto-dependencies into master [bugfix]: 补齐合并算子原型头的增量构建依赖 Created-by: z__y Commit-by: zmuxuny Merged-by: cann-robot Description: ## 描述 merge_graph_headers() 生成 ops_proto_nn.h 的 add_custom_command 没有声明输入原型头或 merge_proto.py 依赖。第一次构建后更新正常算子 proto、补充 proto 或合并脚本,再次构建目标仍成功退出且保留旧头文件;依赖该头复制出的 ops_proto_nn.cpp 也未刷新。开发者增量修改原型时会使用旧的合并定义。 为已有生成命令声明全部 proto_headers 及 merge_proto.py 为 DEPENDS,增加真实 Unix Makefiles 增量构建回归。 ## 关联的Issue Fixes #6719 https://gitcode.com/cann/ops-nn/issues/6719 ## 测试 - 源码基线:master / e03cebe43e8e134b5bde943edb77f70676109d40。 - 位置:[cmake/gen_ops_info.cmake](https://gitcode.com/cann/ops-nn/blob/e03cebe43e8e134b5bde943edb77f70676109d40/cmake/gen_ops_info.cmake)。 - 回归命令(测试随修复提交):python -m pytest tests/host/test_merge_graph_headers_incremental.py -q。 - 相同回归在原版:**3 failed in 6.37s**;修复后:**3 passed in 6.36s**。 - 本地 Python 3.10;修改文件的 pre-commit(含 Ruff/OAT)通过。 1. 使用临时 LANGUAGES NONE CMake 工程 include 仓内真实 gen_ops_info.cmake,建立真实 *_proto_headers interface target 并调用 merge_graph_headers。 2. 首次构建成功;无修改再次构建时产物时间不变。 3. 分别更新普通 proto 中的属性值、op_nn_proto_extend.h 中的属性值、真实合并器输出标记,再构建相同目标。 4. 原版三种情况均仍是旧输出;修复后 .h 和 .cpp 均包含最新内容。 临时工程调用仓内真实函数和合并器,不编译生成的 C++;没有执行 CANN 工程或 NPU 测试。 ## 文档更新 无公开参数变化。 ## 类型标签 - [x] Bug修复 - [ ] 新特性 - [ ] 性能优化 - [ ] 文档更新 - [ ] 其他,请描述: ## AI/Agent生成声明 - [x] AI辅助编写 See merge request: cann/ops-nn!12044 | 10 天前 |