Compare commits
3 Commits
6b48f905d2
...
53a844e818
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
53a844e818 | ||
|
|
a4c6047d70 | ||
|
|
078ba40b76 |
@@ -6,7 +6,7 @@ const marker = "// MapLibreParticleRNTestHost NavSea Particle release SDK";
|
|||||||
module.exports = function withParticleNativeAndroid(config) {
|
module.exports = function withParticleNativeAndroid(config) {
|
||||||
return withProjectBuildGradle(config, (project) => {
|
return withProjectBuildGradle(config, (project) => {
|
||||||
if (project.modResults.contents.includes(marker)) return project;
|
if (project.modResults.contents.includes(marker)) return project;
|
||||||
project.modResults.contents += `\n${marker}\ngradle.projectsEvaluated {\n allprojects { p ->\n p.repositories.maven { repository -> repository.url = p.uri("https://pbf.jpcn.ccwu.cc/maven") }\n p.configurations.configureEach { configuration ->\n configuration.resolutionStrategy.dependencySubstitution {\n substitute module("org.maplibre.gl:android-sdk-opengl") using module("cc.navsea.maplibre:android-sdk-particle-opengl:13.4.1-particle.19")\n }\n }\n }\n}\nrootProject.ext.set("org.maplibre.reactnative.nativeVersion", "13.4.1")\nrootProject.ext.set("org.maplibre.reactnative.nativeVariant", "opengl")\n`;
|
project.modResults.contents += `\n${marker}\ngradle.projectsEvaluated {\n allprojects { p ->\n p.repositories.maven { repository -> repository.url = p.uri("https://pbf.jpcn.ccwu.cc/maven") }\n p.configurations.configureEach { configuration ->\n configuration.resolutionStrategy.dependencySubstitution {\n substitute module("org.maplibre.gl:android-sdk-opengl") using module("cc.navsea.maplibre:android-sdk-particle-opengl:13.4.1-particle.20")\n }\n }\n }\n}\nrootProject.ext.set("org.maplibre.reactnative.nativeVersion", "13.4.1")\nrootProject.ext.set("org.maplibre.reactnative.nativeVariant", "opengl")\n`;
|
||||||
return project;
|
return project;
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -2,6 +2,9 @@
|
|||||||
|
|
||||||
## Unreleased
|
## Unreleased
|
||||||
|
|
||||||
|
## 13.4.1-particle.20(Android / iOS 统一发行)
|
||||||
|
|
||||||
|
- Mac unified release pipeline 统一生成 Android Native、RN package 与 iOS SwiftPM/XCFramework;共享 Particle revision 20。
|
||||||
## 13.4.1-particle.19(Android / iOS 统一发行)
|
## 13.4.1-particle.19(Android / iOS 统一发行)
|
||||||
|
|
||||||
- Mac unified release pipeline 统一生成 Android Native、RN package 与 iOS SwiftPM/XCFramework;共享 Particle revision 19。
|
- Mac unified release pipeline 统一生成 Android Native、RN package 与 iOS SwiftPM/XCFramework;共享 Particle revision 19。
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# @navsea/maplibre-particle-rn
|
# @navsea/maplibre-particle-rn
|
||||||
|
|
||||||
当前版本:`13.4.1-particle.19`。Android Native 必须配套 `cc.navsea.maplibre:android-sdk-particle-opengl:13.4.1-particle.19`。本包是 React Native 的薄控制面,不负责 Map 组件、provider、HTTP、manifest、下载、缓存或 NavSea 业务策略。
|
当前版本:`13.4.1-particle.20`。Android Native 必须配套 `cc.navsea.maplibre:android-sdk-particle-opengl:13.4.1-particle.20`。本包是 React Native 的薄控制面,不负责 Map 组件、provider、HTTP、manifest、下载、缓存或 NavSea 业务策略。
|
||||||
|
|
||||||
## 当前推荐主链:QBIN V4
|
## 当前推荐主链:QBIN V4
|
||||||
|
|
||||||
@@ -37,7 +37,7 @@ Podfile 的 `post_install do |installer|` 必须同时调用 `$MLRN.post_install
|
|||||||
RN tgz:
|
RN tgz:
|
||||||
|
|
||||||
```text
|
```text
|
||||||
https://pbf.jpcn.ccwu.cc/npm/navsea-maplibre-particle-rn-13.4.1-particle.19.tgz
|
https://pbf.jpcn.ccwu.cc/npm/navsea-maplibre-particle-rn-13.4.1-particle.20.tgz
|
||||||
```
|
```
|
||||||
|
|
||||||
Native Maven repository:
|
Native Maven repository:
|
||||||
@@ -49,7 +49,7 @@ https://pbf.jpcn.ccwu.cc/maven
|
|||||||
Native coordinate:
|
Native coordinate:
|
||||||
|
|
||||||
```text
|
```text
|
||||||
cc.navsea.maplibre:android-sdk-particle-opengl:13.4.1-particle.19
|
cc.navsea.maplibre:android-sdk-particle-opengl:13.4.1-particle.20
|
||||||
```
|
```
|
||||||
|
|
||||||
Expo plugin 与 `android/build.gradle` 必须指向同一 `.19`。正常 Consumer 不复制 AAR、不依赖 MapLibreParticleLab 源码路径,也不以 Maven Local 作为公网验证主路径。完整 Linux 发布与 Win11 验证流程见 `docs/50_Step记录/STEP-080_Android_AAR与RNTestHost标准构建流水线_v2.md`。
|
Expo plugin 与 `android/build.gradle` 必须指向同一 `.20`。正常 Consumer 不复制 AAR、不依赖 MapLibreParticleLab 源码路径,也不以 Maven Local 作为公网验证主路径。完整 Linux 发布与 Win11 验证流程见 `docs/50_Step记录/STEP-080_Android_AAR与RNTestHost标准构建流水线_v2.md`。
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ android {
|
|||||||
dependencies {
|
dependencies {
|
||||||
implementation "com.facebook.react:react-android"
|
implementation "com.facebook.react:react-android"
|
||||||
implementation "org.jetbrains.kotlin:kotlin-stdlib:2.1.20"
|
implementation "org.jetbrains.kotlin:kotlin-stdlib:2.1.20"
|
||||||
implementation "cc.navsea.maplibre:android-sdk-particle-opengl:13.4.1-particle.19"
|
implementation "cc.navsea.maplibre:android-sdk-particle-opengl:13.4.1-particle.20"
|
||||||
compileOnly project(":maplibre_maplibre-react-native")
|
compileOnly project(":maplibre_maplibre-react-native")
|
||||||
testImplementation "junit:junit:4.13.2"
|
testImplementation "junit:junit:4.13.2"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ const iosTag = "navsea-maplibre-particle-rn-maplibre-spm";
|
|||||||
module.exports = function withNavSeaMapLibreParticle(config) {
|
module.exports = function withNavSeaMapLibreParticle(config) {
|
||||||
config = withProjectBuildGradle(config, (project) => {
|
config = withProjectBuildGradle(config, (project) => {
|
||||||
if (project.modResults.contents.includes(androidMarker)) return project;
|
if (project.modResults.contents.includes(androidMarker)) return project;
|
||||||
project.modResults.contents += `\n${androidMarker}\ngradle.projectsEvaluated {\n allprojects { p ->\n p.repositories.maven { repository -> repository.url = p.uri("https://pbf.jpcn.ccwu.cc/maven") }\n p.configurations.configureEach { configuration ->\n configuration.resolutionStrategy.dependencySubstitution {\n substitute module("org.maplibre.gl:android-sdk-opengl") using module("cc.navsea.maplibre:android-sdk-particle-opengl:13.4.1-particle.19")\n }\n }\n }\n}\nrootProject.ext.set("org.maplibre.reactnative.nativeVersion", "13.4.1")\nrootProject.ext.set("org.maplibre.reactnative.nativeVariant", "opengl")\n`;
|
project.modResults.contents += `\n${androidMarker}\ngradle.projectsEvaluated {\n allprojects { p ->\n p.repositories.maven { repository -> repository.url = p.uri("https://pbf.jpcn.ccwu.cc/maven") }\n p.configurations.configureEach { configuration ->\n configuration.resolutionStrategy.dependencySubstitution {\n substitute module("org.maplibre.gl:android-sdk-opengl") using module("cc.navsea.maplibre:android-sdk-particle-opengl:13.4.1-particle.20")\n }\n }\n }\n}\nrootProject.ext.set("org.maplibre.reactnative.nativeVersion", "13.4.1")\nrootProject.ext.set("org.maplibre.reactnative.nativeVariant", "opengl")\n`;
|
||||||
return project;
|
return project;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "@navsea/maplibre-particle-rn",
|
"name": "@navsea/maplibre-particle-rn",
|
||||||
"version": "13.4.1-particle.19",
|
"version": "13.4.1-particle.20",
|
||||||
"description": "NavSea MapLibre Particle React Native pure Field Renderer API.",
|
"description": "NavSea MapLibre Particle React Native pure Field Renderer API.",
|
||||||
"license": "BSD-2-Clause",
|
"license": "BSD-2-Clause",
|
||||||
"main": "src/index.ts",
|
"main": "src/index.ts",
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
13.4.1-particle.19
|
13.4.1-particle.20
|
||||||
|
|||||||
@@ -9,8 +9,8 @@ let package = Package(
|
|||||||
targets: [
|
targets: [
|
||||||
.binaryTarget(
|
.binaryTarget(
|
||||||
name: "MapLibre",
|
name: "MapLibre",
|
||||||
url: "https://pbf.jpcn.ccwu.cc/swift/maplibre-particle/6.28.0-particle.19/MapLibre.dynamic.xcframework.zip",
|
url: "https://pbf.jpcn.ccwu.cc/swift/maplibre-particle/6.28.0-particle.20/MapLibre.dynamic.xcframework.zip",
|
||||||
checksum: "221c069b6ca073854716799d8593784310d4f0050be9c9d9a88215b352512efd"
|
checksum: "f31468a13356e7a3be10ab5308af65974f4ce2a87573ab7e699c5a1086c78ccd"
|
||||||
),
|
),
|
||||||
]
|
]
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -1,17 +1,17 @@
|
|||||||
# MapLibre Particle iOS 发行
|
# MapLibre Particle iOS 发行
|
||||||
|
|
||||||
当前正式发行:6.28.0-particle.19
|
当前正式发行:6.28.0-particle.20
|
||||||
|
|
||||||
- Renderer:Metal
|
- Renderer:Metal
|
||||||
- Product / Module:MapLibre
|
- Product / Module:MapLibre
|
||||||
- Binary:https://pbf.jpcn.ccwu.cc/swift/maplibre-particle/6.28.0-particle.19/MapLibre.dynamic.xcframework.zip
|
- Binary:https://pbf.jpcn.ccwu.cc/swift/maplibre-particle/6.28.0-particle.20/MapLibre.dynamic.xcframework.zip
|
||||||
- SHA-256:221c069b6ca073854716799d8593784310d4f0050be9c9d9a88215b352512efd
|
- SHA-256:f31468a13356e7a3be10ab5308af65974f4ce2a87573ab7e699c5a1086c78ccd
|
||||||
- SwiftPM:https://pbf.jpcn.ccwu.cc/swift/maplibre-particle-spm.git
|
- SwiftPM:https://pbf.jpcn.ccwu.cc/swift/maplibre-particle-spm.git
|
||||||
- Exact Version:6.28.0-particle.19
|
- Exact Version:6.28.0-particle.20
|
||||||
- Source Commit:7c5ed27b0b3ae5fe74ab245cbef9dabf913dde4f
|
- Source Commit:a4c6047d7092523ad8aa6c14cb2b2246f4a88b8d
|
||||||
|
|
||||||
构建命令固定为:
|
构建命令固定为:
|
||||||
|
|
||||||
bazel build --//:renderer=metal //platform/ios:MapLibre.dynamic
|
bazel build -c opt --//:renderer=metal //platform/ios:MapLibre.dynamic
|
||||||
|
|
||||||
不得用默认 OpenGL XCFramework 覆盖同版本。新版本必须使用新的 Particle revision。
|
不得用默认 OpenGL XCFramework 覆盖同版本。新版本必须使用新的 Particle revision。
|
||||||
|
|||||||
@@ -1,20 +1,21 @@
|
|||||||
{
|
{
|
||||||
"schemaVersion": 2,
|
"schemaVersion": 2,
|
||||||
"status": "PUBLISHED_PUBLIC_READBACK_PASS",
|
"status": "PUBLISHED_PUBLIC_READBACK_PASS",
|
||||||
"distributionVersion": "6.28.0-particle.19",
|
"distributionVersion": "6.28.0-particle.20",
|
||||||
"moduleName": "MapLibre",
|
"moduleName": "MapLibre",
|
||||||
|
"compilationMode": "opt",
|
||||||
"artifact": {
|
"artifact": {
|
||||||
"fileName": "MapLibre.dynamic.xcframework.zip",
|
"fileName": "MapLibre.dynamic.xcframework.zip",
|
||||||
"sizeBytes": 8480397,
|
"sizeBytes": 4119687,
|
||||||
"sha256": "221c069b6ca073854716799d8593784310d4f0050be9c9d9a88215b352512efd",
|
"sha256": "f31468a13356e7a3be10ab5308af65974f4ce2a87573ab7e699c5a1086c78ccd",
|
||||||
"url": "https://pbf.jpcn.ccwu.cc/swift/maplibre-particle/6.28.0-particle.19/MapLibre.dynamic.xcframework.zip"
|
"url": "https://pbf.jpcn.ccwu.cc/swift/maplibre-particle/6.28.0-particle.20/MapLibre.dynamic.xcframework.zip"
|
||||||
},
|
},
|
||||||
"sourceCommit": "7c5ed27b0b3ae5fe74ab245cbef9dabf913dde4f",
|
"sourceCommit": "a4c6047d7092523ad8aa6c14cb2b2246f4a88b8d",
|
||||||
"swiftPackage": {
|
"swiftPackage": {
|
||||||
"url": "https://pbf.jpcn.ccwu.cc/swift/maplibre-particle-spm.git",
|
"url": "https://pbf.jpcn.ccwu.cc/swift/maplibre-particle-spm.git",
|
||||||
"requirement": "exactVersion",
|
"requirement": "exactVersion",
|
||||||
"version": "6.28.0-particle.19",
|
"version": "6.28.0-particle.20",
|
||||||
"productName": "MapLibre"
|
"productName": "MapLibre"
|
||||||
},
|
},
|
||||||
"notes": "Metal renderer release built with bazel build --//:renderer=metal //platform/ios:MapLibre.dynamic"
|
"notes": "Metal renderer optimized release built with bazel build -c opt --//:renderer=metal //platform/ios:MapLibre.dynamic"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,48 +1,49 @@
|
|||||||
{
|
{
|
||||||
"schemaVersion": 2,
|
"schemaVersion": 2,
|
||||||
"releaseState": "PUBLISHED_PUBLIC_READBACK_PASS",
|
"releaseState": "PUBLISHED_PUBLIC_READBACK_PASS",
|
||||||
"particleRevision": 19,
|
"particleRevision": 20,
|
||||||
"sourceCommit": "7c5ed27b0b3ae5fe74ab245cbef9dabf913dde4f",
|
"sourceCommit": "a4c6047d7092523ad8aa6c14cb2b2246f4a88b8d",
|
||||||
"generatedAtUtc": "2026-10-07T07:17:04.530231+00:00",
|
"generatedAtUtc": "2026-10-07T12:35:15.522160+00:00",
|
||||||
"reactNative": {
|
"reactNative": {
|
||||||
"name": "@navsea/maplibre-particle-rn",
|
"name": "@navsea/maplibre-particle-rn",
|
||||||
"version": "13.4.1-particle.19",
|
"version": "13.4.1-particle.20",
|
||||||
"artifact": {
|
"artifact": {
|
||||||
"fileName": "navsea-maplibre-particle-rn-13.4.1-particle.19.tgz",
|
"fileName": "navsea-maplibre-particle-rn-13.4.1-particle.20.tgz",
|
||||||
"sizeBytes": 28825,
|
"sizeBytes": 28827,
|
||||||
"sha256": "c98f1aef868c671a99556dbdd2518cdaa3a88a3d6133e620e5e8a38080d19b1a",
|
"sha256": "fdc19f62cc2ab3c5bd521faa202d05ca69b17057c1afb5d8ce5e15722cc13c58",
|
||||||
"url": "https://pbf.jpcn.ccwu.cc/npm/navsea-maplibre-particle-rn-13.4.1-particle.19.tgz"
|
"url": "https://pbf.jpcn.ccwu.cc/npm/navsea-maplibre-particle-rn-13.4.1-particle.20.tgz"
|
||||||
},
|
},
|
||||||
"mapLibreReactNative": "11.3.6"
|
"mapLibreReactNative": "11.3.6"
|
||||||
},
|
},
|
||||||
"android": {
|
"android": {
|
||||||
"version": "13.4.1-particle.19",
|
"version": "13.4.1-particle.20",
|
||||||
"coordinate": "cc.navsea.maplibre:android-sdk-particle-opengl:13.4.1-particle.19",
|
"coordinate": "cc.navsea.maplibre:android-sdk-particle-opengl:13.4.1-particle.20",
|
||||||
"renderer": "opengl",
|
"renderer": "opengl",
|
||||||
"artifact": {
|
"artifact": {
|
||||||
"fileName": "android-sdk-particle-opengl-13.4.1-particle.19.aar",
|
"fileName": "android-sdk-particle-opengl-13.4.1-particle.20.aar",
|
||||||
"sizeBytes": 170726451,
|
"sizeBytes": 170731109,
|
||||||
"sha256": "8ef9de51564aad6d5d8a9678534120cee34d3ee65c41f9f266c29bf057029712",
|
"sha256": "213924d5970a83ce953b7a2be908cfb72419127e8d10cb36949681f7dac16844",
|
||||||
"url": "https://pbf.jpcn.ccwu.cc/maven/cc/navsea/maplibre/android-sdk-particle-opengl/13.4.1-particle.19/android-sdk-particle-opengl-13.4.1-particle.19.aar"
|
"url": "https://pbf.jpcn.ccwu.cc/maven/cc/navsea/maplibre/android-sdk-particle-opengl/13.4.1-particle.20/android-sdk-particle-opengl-13.4.1-particle.20.aar"
|
||||||
},
|
},
|
||||||
"ndk": "28.2.13676358",
|
"ndk": "28.2.13676358",
|
||||||
"gradle": "9.5.1",
|
"gradle": "9.5.1",
|
||||||
"jdk": "openjdk version \"17.0.20.1\" 2026-08-18"
|
"jdk": "openjdk version \"17.0.20.1\" 2026-08-18"
|
||||||
},
|
},
|
||||||
"ios": {
|
"ios": {
|
||||||
"distributionVersion": "6.28.0-particle.19",
|
"distributionVersion": "6.28.0-particle.20",
|
||||||
"renderer": "metal",
|
"renderer": "metal",
|
||||||
|
"compilationMode": "opt",
|
||||||
"moduleName": "MapLibre",
|
"moduleName": "MapLibre",
|
||||||
"artifact": {
|
"artifact": {
|
||||||
"fileName": "MapLibre.dynamic.xcframework.zip",
|
"fileName": "MapLibre.dynamic.xcframework.zip",
|
||||||
"sizeBytes": 8480397,
|
"sizeBytes": 4119687,
|
||||||
"sha256": "221c069b6ca073854716799d8593784310d4f0050be9c9d9a88215b352512efd",
|
"sha256": "f31468a13356e7a3be10ab5308af65974f4ce2a87573ab7e699c5a1086c78ccd",
|
||||||
"url": "https://pbf.jpcn.ccwu.cc/swift/maplibre-particle/6.28.0-particle.19/MapLibre.dynamic.xcframework.zip"
|
"url": "https://pbf.jpcn.ccwu.cc/swift/maplibre-particle/6.28.0-particle.20/MapLibre.dynamic.xcframework.zip"
|
||||||
},
|
},
|
||||||
"swiftPackage": {
|
"swiftPackage": {
|
||||||
"url": "https://pbf.jpcn.ccwu.cc/swift/maplibre-particle-spm.git",
|
"url": "https://pbf.jpcn.ccwu.cc/swift/maplibre-particle-spm.git",
|
||||||
"requirement": "exactVersion",
|
"requirement": "exactVersion",
|
||||||
"version": "6.28.0-particle.19",
|
"version": "6.28.0-particle.20",
|
||||||
"productName": "MapLibre"
|
"productName": "MapLibre"
|
||||||
},
|
},
|
||||||
"xcode": "Xcode 26.3 Build version 17C529 ",
|
"xcode": "Xcode 26.3 Build version 17C529 ",
|
||||||
|
|||||||
@@ -25,7 +25,7 @@
|
|||||||
- CMake 3.31.6
|
- CMake 3.31.6
|
||||||
- Android renderer:OpenGL
|
- Android renderer:OpenGL
|
||||||
- iOS renderer:Metal
|
- iOS renderer:Metal
|
||||||
- iOS binary build:bazel build --//:renderer=metal //platform/ios:MapLibre.dynamic(仅真机 ios-arm64,不包含 Simulator slice)
|
- iOS binary build:bazel build -c opt --//:renderer=metal //platform/ios:MapLibre.dynamic(正式优化构建;仅真机 ios-arm64,不包含 Simulator slice)
|
||||||
|
|
||||||
## 发布目标
|
## 发布目标
|
||||||
|
|
||||||
|
|||||||
@@ -94,6 +94,7 @@ def main() -> None:
|
|||||||
"ios": {
|
"ios": {
|
||||||
"distributionVersion": ios_version,
|
"distributionVersion": ios_version,
|
||||||
"renderer": "metal",
|
"renderer": "metal",
|
||||||
|
"compilationMode": "opt",
|
||||||
"moduleName": "MapLibre",
|
"moduleName": "MapLibre",
|
||||||
"artifact": ios,
|
"artifact": ios,
|
||||||
"swiftPackage": {
|
"swiftPackage": {
|
||||||
@@ -116,12 +117,13 @@ def main() -> None:
|
|||||||
"status": "PUBLISHED_PUBLIC_READBACK_PASS",
|
"status": "PUBLISHED_PUBLIC_READBACK_PASS",
|
||||||
"distributionVersion": ios_version,
|
"distributionVersion": ios_version,
|
||||||
"moduleName": "MapLibre",
|
"moduleName": "MapLibre",
|
||||||
|
"compilationMode": "opt",
|
||||||
"artifact": ios,
|
"artifact": ios,
|
||||||
"sourceCommit": source_commit,
|
"sourceCommit": source_commit,
|
||||||
"swiftPackage": manifest["ios"]["swiftPackage"],
|
"swiftPackage": manifest["ios"]["swiftPackage"],
|
||||||
"notes": (
|
"notes": (
|
||||||
"Metal renderer release built with "
|
"Metal renderer optimized release built with "
|
||||||
"bazel build --//:renderer=metal //platform/ios:MapLibre.dynamic"
|
"bazel build -c opt --//:renderer=metal //platform/ios:MapLibre.dynamic"
|
||||||
),
|
),
|
||||||
}
|
}
|
||||||
(ROOT / "release/maplibre-particle/ios/release-manifest.json").write_text(
|
(ROOT / "release/maplibre-particle/ios/release-manifest.json").write_text(
|
||||||
@@ -163,7 +165,7 @@ let package = Package(
|
|||||||
|
|
||||||
构建命令固定为:
|
构建命令固定为:
|
||||||
|
|
||||||
bazel build --//:renderer=metal //platform/ios:MapLibre.dynamic
|
bazel build -c opt --//:renderer=metal //platform/ios:MapLibre.dynamic
|
||||||
|
|
||||||
不得用默认 OpenGL XCFramework 覆盖同版本。新版本必须使用新的 Particle revision。
|
不得用默认 OpenGL XCFramework 覆盖同版本。新版本必须使用新的 Particle revision。
|
||||||
"""
|
"""
|
||||||
|
|||||||
@@ -98,10 +98,11 @@ build_release() {
|
|||||||
cp "$M2_DIR/$f" "$ARTIFACT_DIR/"
|
cp "$M2_DIR/$f" "$ARTIFACT_DIR/"
|
||||||
done
|
done
|
||||||
|
|
||||||
note "building iOS Metal XCFramework"
|
note "building iOS Metal XCFramework (Bazel opt)"
|
||||||
(cd "$ROOT" && bazel build --//:renderer=metal //platform/ios:MapLibre.dynamic)
|
(cd "$ROOT" && bazel build -c opt --//:renderer=metal //platform/ios:MapLibre.dynamic)
|
||||||
IOS_SOURCE="$ROOT/bazel-out/darwin_x86_64-fastbuild/bin/platform/ios/$IOS_ZIP_NAME"
|
IOS_SOURCE="$ROOT/bazel-out/darwin_x86_64-opt/bin/platform/ios/$IOS_ZIP_NAME"
|
||||||
[[ -f "$IOS_SOURCE" ]] || die "iOS XCFramework zip missing"
|
[[ "$IOS_SOURCE" == *"-opt/"* ]] || die "iOS release artifact is not from Bazel opt output: $IOS_SOURCE"
|
||||||
|
[[ -f "$IOS_SOURCE" ]] || die "iOS XCFramework zip missing: $IOS_SOURCE"
|
||||||
local ios_listing
|
local ios_listing
|
||||||
ios_listing="$(unzip -Z1 "$IOS_SOURCE")"
|
ios_listing="$(unzip -Z1 "$IOS_SOURCE")"
|
||||||
grep -Fq "/ios-arm64/" <<<"$ios_listing" || die "iOS XCFramework missing ios-arm64 device slice"
|
grep -Fq "/ios-arm64/" <<<"$ios_listing" || die "iOS XCFramework missing ios-arm64 device slice"
|
||||||
|
|||||||
Reference in New Issue
Block a user