build: fix v25 iOS device-only Bazel release inputs
Some checks failed
validate-scripts / validate-scripts (push) Has been cancelled
Some checks failed
validate-scripts / validate-scripts (push) Has been cancelled
This commit is contained in:
@@ -675,6 +675,9 @@ MLN_CORE_SOURCE = [
|
||||
})
|
||||
|
||||
MLN_CORE_HEADERS = [
|
||||
"src/mln/renderer/symbol_render_inputs.hpp",
|
||||
"src/mln/renderer/symbol_render_result.hpp",
|
||||
"src/mln/renderer/symbol_shader_provenance.hpp",
|
||||
"include/mln/particle/field/field_data_adapter.hpp",
|
||||
"include/mln/particle/field/field_profile_contract.hpp",
|
||||
"include/mln/particle/field/field_profile_validator.hpp",
|
||||
|
||||
21
docs/报告/V25_iOS实体机Bazel构建兼容性修复与资源溯源_v1.md
Normal file
21
docs/报告/V25_iOS实体机Bazel构建兼容性修复与资源溯源_v1.md
Normal file
@@ -0,0 +1,21 @@
|
||||
# V25 iOS 实体机 Bazel 构建兼容性修复与资源溯源 v1
|
||||
|
||||
日期:2026-10-11。范围:仅 Particle 统一发行的 iOS Metal 实体机 arm64 构建与 Bazel Core 文件声明;不改共享运行时 API,不引入 Simulator slice。
|
||||
|
||||
## 故障与原因
|
||||
|
||||
- V25 首次统一发行 `release.sh 25 build` 的 Android 四 ABI Release AAR 与 Maven Local PASS;在 iOS Bazel opt `AssetCatalogCompile` 因 Xcode `actool` 返回 `No available simulator runtimes for platform iphonesimulator` 中断。手工指定 `actool --platform iphoneos` 亦同样失败,不能将其误读为 XCFramework 需要模拟器架构。
|
||||
- 后续尝试暴露 Bazel Core 声明缺失:当前源码已新增 `src/mln/renderer/symbol_shader_provenance.hpp`、`symbol_render_inputs.hpp`、`symbol_render_result.hpp`,原 `bazel/core.bzl` 中 `MLN_CORE_HEADERS` 未登记;已补齐三项。
|
||||
|
||||
## 实体机资源输入与溯源
|
||||
|
||||
- v23 正式发行:`13.6.1-particle.23` / iOS `6.29.0-particle.23`,来源 `release/maplibre-particle/13.6.1-particle.23/SOURCE_LOCK.json` 的正式发行 iOS ZIP。该 ZIP 本地 SHA-256=`9dbc477458377ab7e207bfd125d8f4106d3d83e7f923499a7bc048e39f74a76a`,与 v23 Source Lock 一致。
|
||||
- 提取 ZIP 内 `MapLibre.xcframework/ios-arm64/MapLibre.framework/Assets.car`,本次纳入版本控制 `platform/ios/resources/Assets.car`,SHA-256=`997014687d17e93b9a979b4a47229d082e04a03587b01b4718ac7cb20f1a196b`。
|
||||
- 核对 `git diff 87f3d1c59a52581fb8339f0ea7d106b9f4b94fef HEAD -- platform/ios/resources/Images.xcassets` 为无差异;即资源原始输入自 v23 冻结源码未改变。保留原始 `.xcassets` 文件供其他构建使用,仅 `apple_xcframework(name="MapLibre.dynamic")` 的资源输入使用上述受控、可追溯的已编译 `Assets.car`,避免当前 Xcode 环境的 `actool` 错误。
|
||||
- 该预编译资源绑定 Xcode 26.3 (`17C529`) 工具链;后续原始资源改变或 Xcode 资源格式变更时,须重新生成并记录 Hash,不能无限期假设可复用。
|
||||
|
||||
## 验证与边界
|
||||
|
||||
- 原 Bazel opt Metal 真机命令:`bazel build -c opt --//:renderer=metal //platform/ios:MapLibre.dynamic`。本阶段候选资源及头文件修正的验证结果为 `Build completed successfully`,exit 0;约 772 项,实际构建 563 actions 后的增量验证通过。
|
||||
- 产生 `bazel-bin/platform/ios/MapLibre.dynamic.xcframework.zip`,仅 `ios-arm64`,无 Simulator;ZIP 内 `MapLibre.framework/Assets.car` SHA-256 与输入 `997014...` 一致。
|
||||
- 以上仅证明 iOS 实体机二进制**可以构建**,不代表 iOS 真机运行通过、NavSea RN 宿主端验收、正式公网发行已通过。正式 Build Source Commit、Android/iOS/RN 同源构建、GSRL Source Lock、远端制品 SHA 需另行严格验收。
|
||||
@@ -143,8 +143,8 @@ apple_xcframework(
|
||||
bundle_name = "MapLibre",
|
||||
data = glob([
|
||||
"resources/*.lproj/**",
|
||||
"resources/*.xcassets/**",
|
||||
]) + [
|
||||
"resources/Assets.car",
|
||||
"PrivacyInfo.xcprivacy",
|
||||
"resources/metal-cpp-ignores.txt",
|
||||
],
|
||||
|
||||
BIN
platform/ios/resources/Assets.car
Normal file
BIN
platform/ios/resources/Assets.car
Normal file
Binary file not shown.
Reference in New Issue
Block a user