| feat: build系统添加host_product主机模式编译支持
## 新增功能
为OpenHarmony构建系统添加主机模式(host mode)编译支持,允许在主机上编译工具链而无需完整的设备配置。
## 主要变更
### 1. 构建配置优化
- 添加 is_host_product 和 compile_mode 参数支持
- 优化 device_company 和 device_build_path 配置,支持可选定义
- 新增 common_cross_packages 分组,支持主机模式依赖管理
### 2. Python构建脚本优化
- **hb/resolver/build_args_resolver.py**: 增强构建参数解析,支持主机模式
- **hb/resolver/set_args_resolver.py**: 优化参数设置逻辑
- **hb/resources/config.py**: 更新配置处理
- **hb/services/loader.py**: 增强模块加载,支持主机产品
- **hb/services/preloader.py**: 添加主机模式预加载支持
- **hb/util/loader/load_bundle_file.py**: 优化bundle文件加载
- **hb/util/loader/load_ohos_build.py**: 更新ohos构建加载逻辑
- **hb/util/preloader/preloader_process_data.py**: 优化预加载处理
- **hb/util/product_util.py**: 增强产品工具函数
### 3. GN构建配置
- **common/BUILD.gn**: 添加 common_cross_packages 模板
- **config/components/musl/BUILD.gn**: 优化 musl 组件配置
- **core/gn/BUILD.gn**: 更新 gn 工具链配置
- **ohos.gni**: 添加主机模式相关变量
- **ohos/packages/BUILD.gn**: 新增 packages 构建支持
- **ohos/packages/modules_install.py**: 更新模块安装逻辑
- **rust/rustc_toolchain.gni**: 更新 Rust 工具链配置
- **templates/idl/ohos_idl.gni**: 更新 IDL 配置
## 技术细节
- 主机模式不需要设备板级信息和内核配置
- 支持标准的 packages 和 images 构建语义
- 保持与现有构建流程的完全兼容
## 文件变更
- 20个文件变更,480行新增,206行删除
## 测试计划
- ✅ 本地构建测试通过
- ✅ 主机模式编译验证正确
- ✅ 与其他组件逻辑保持一致
Co-Authored-By: Agent
Signed-off-by: handyohos <zhangxiaotian@huawei.com>
Change-Id: Id323814f4d68c69a8cb55097179a05bc9a394f6d
| 26 天前 |