@@ -114,28 +114,22 @@ EOF
114
114
echo " ===================== create watchos device framework ====================="
115
115
mkdir -p " ${BUILD_DIR} /watchos-arm64/powersync-sqlite-core.framework/Versions/A/Resources"
116
116
echo " ${watchos_plist} " > " ${BUILD_DIR} /watchos-arm64/powersync-sqlite-core.framework/Versions/A/Resources/Info.plist"
117
- cp -f " ./target/aarch64-apple-watchos/release_apple/libpowersync.dylib" " ${BUILD_DIR} /watchos-arm64/powersync-sqlite-core.framework/Versions/A/powersync-sqlite-core"
118
- install_name_tool -id " @rpath/powersync-sqlite-core.framework/powersync-sqlite-core" " ${BUILD_DIR} /watchos-arm64/powersync-sqlite-core.framework/Versions/A/powersync-sqlite-core"
117
+ cp -f " ./target/aarch64-apple-watchos/release_apple/libpowersync.a" " ${BUILD_DIR} /watchos-arm64/powersync-sqlite-core.framework/Versions/A/powersync-sqlite-core"
119
118
ln -sf A " ${BUILD_DIR} /watchos-arm64/powersync-sqlite-core.framework/Versions/Current"
120
119
ln -sf Versions/Current/powersync-sqlite-core " ${BUILD_DIR} /watchos-arm64/powersync-sqlite-core.framework/powersync-sqlite-core"
121
120
ln -sf Versions/Current/Resources " ${BUILD_DIR} /watchos-arm64/powersync-sqlite-core.framework/Resources"
122
- # Generate dSYM for watchOS device
123
- dsymutil " ${BUILD_DIR} /watchos-arm64/powersync-sqlite-core.framework/Versions/A/powersync-sqlite-core" -o " ${BUILD_DIR} /watchos-arm64/powersync-sqlite-core.framework.dSYM"
124
121
125
122
echo " ===================== create watchos simulator framework ====================="
126
123
mkdir -p " ${BUILD_DIR} /watchos-arm64-simulator/powersync-sqlite-core.framework/Versions/A/Resources"
127
124
echo " ${watchos_plist} " > " ${BUILD_DIR} /watchos-arm64-simulator/powersync-sqlite-core.framework/Versions/A/Resources/Info.plist"
128
- cp -f " ./target/aarch64-apple-watchos-sim/release_apple/libpowersync.dylib" " ${BUILD_DIR} /watchos-arm64-simulator/powersync-sqlite-core.framework/Versions/A/powersync-sqlite-core"
129
- install_name_tool -id " @rpath/powersync-sqlite-core.framework/powersync-sqlite-core" " ${BUILD_DIR} /watchos-arm64-simulator/powersync-sqlite-core.framework/Versions/A/powersync-sqlite-core"
125
+ lipo ./target/aarch64-apple-watchos-sim/release_apple/libpowersync.a ./target/x86_64-apple-watchos-sim/release_apple/libpowersync.a -create -output " ${BUILD_DIR} /watchos-arm64-simulator/powersync-sqlite-core.framework/Versions/A/powersync-sqlite-core"
130
126
ln -sf A " ${BUILD_DIR} /watchos-arm64-simulator/powersync-sqlite-core.framework/Versions/Current"
131
127
ln -sf Versions/Current/powersync-sqlite-core " ${BUILD_DIR} /watchos-arm64-simulator/powersync-sqlite-core.framework/powersync-sqlite-core"
132
128
ln -sf Versions/Current/Resources " ${BUILD_DIR} /watchos-arm64-simulator/powersync-sqlite-core.framework/Resources"
133
- # Generate dSYM for watchOS simulator
134
- dsymutil " ${BUILD_DIR} /watchos-arm64-simulator/powersync-sqlite-core.framework/Versions/A/powersync-sqlite-core" -o " ${BUILD_DIR} /watchos-arm64-simulator/powersync-sqlite-core.framework.dSYM"
135
129
136
130
echo " ===================== create xcframework ====================="
137
131
rm -rf " ${BUILD_DIR} /powersync-sqlite-core.xcframework"
138
- # Create iOS/macOS XCFramework
132
+
139
133
xcodebuild -create-xcframework \
140
134
-framework " ${BUILD_DIR} /ios-arm64/powersync-sqlite-core.framework" \
141
135
-debug-symbols " $( pwd -P) /${BUILD_DIR} /ios-arm64/powersync-sqlite-core.framework.dSYM" \
145
139
-debug-symbols " $( pwd -P) /${BUILD_DIR} /macos-arm64_x86_64/powersync-sqlite-core.framework.dSYM" \
146
140
-output " ${BUILD_DIR} /powersync-sqlite-core.xcframework"
147
141
148
- # Create watchOS XCFramework
149
- xcodebuild -create-xcframework \
150
- -framework " ${BUILD_DIR} /watchos-arm64/powersync-sqlite-core.framework" \
151
- -framework " ${BUILD_DIR} /watchos-arm64-simulator/powersync-sqlite-core.framework" \
152
- -output " ${BUILD_DIR} /powersync-sqlite-core-watchos.xcframework"
153
-
154
- # Copy the iOS/macOS XCFramework to the final location
155
- cp -Rf " ${BUILD_DIR} /powersync-sqlite-core.xcframework" " powersync-sqlite-core.xcframework"
142
+ # how to create a watchOS XCFramework with static libraries, possible?
156
143
157
- # Create a zip file with both XCFrameworks
158
- zip -r --symlinks powersync-sqlite-core.xcframework.zip powersync-sqlite-core.xcframework powersync-sqlite-core-watchos.xcframework LICENSE README.md
144
+ zip -r --symlinks powersync-sqlite-core.xcframework.zip powersync-sqlite-core.xcframework " ${BUILD_DIR} /watchos-arm64/powersync-sqlite-core.framework/libpowersync.a" " ${BUILD_DIR} /watchos-arm64-simulator/powersync-sqlite-core.framework/libpowersync.a" LICENSE README.md
159
145
rm -rf ${BUILD_DIR}
160
146
}
161
147
@@ -173,15 +159,8 @@ cargo build -p powersync_loadable --profile release_apple --target x86_64-apple-
173
159
cargo build -p powersync_loadable --profile release_apple --target aarch64-apple-darwin -Zbuild-std
174
160
cargo build -p powersync_loadable --profile release_apple --target x86_64-apple-darwin -Zbuild-std
175
161
# watchOS
176
- export SDKROOT=$( xcrun --sdk watchos --show-sdk-path)
177
- export CARGO_TARGET_AARCH64_APPLE_WATCHOS_LINKER=$( xcrun --sdk watchos --find clang)
178
- export CARGO_TARGET_AARCH64_APPLE_WATCHOS_AR=$( xcrun --sdk watchos --find ar)
179
- export CARGO_TARGET_AARCH64_APPLE_WATCHOS_RANLIB=$( xcrun --sdk watchos --find ranlib)
180
162
cargo build -p powersync_loadable --profile release_apple -Zbuild-std=std,panic_abort --target aarch64-apple-watchos
181
- export SDKROOT=$( xcrun --sdk watchsimulator --show-sdk-path)
182
- export CARGO_TARGET_AARCH64_APPLE_WATCHOS_SIM_LINKER=$( xcrun --sdk watchsimulator --find clang)
183
- export CARGO_TARGET_AARCH64_APPLE_WATCHOS_SIM_AR=$( xcrun --sdk watchsimulator --find ar)
184
- export CARGO_TARGET_AARCH64_APPLE_WATCHOS_SIM_RANLIB=$( xcrun --sdk watchsimulator --find ranlib)
185
163
cargo build -p powersync_loadable --profile release_apple -Zbuild-std=std,panic_abort --target aarch64-apple-watchos-sim
164
+ cargo build -p powersync_loadable --profile release_apple -Zbuild-std=std,panic_abort --target x86_64-apple-watchos-sim
186
165
187
166
createXcframework
0 commit comments