From 18e0e5705f00e6471bcdf383c574f7dffbe78104 Mon Sep 17 00:00:00 2001 From: Mugi Khan Date: Wed, 18 Dec 2024 17:39:24 +0200 Subject: [PATCH 1/3] Add debug symbols and dysm for ios and macos builds --- Cargo.toml | 5 +++++ tool/build_xcframework.sh | 34 ++++++++++++++++++++++------------ 2 files changed, 27 insertions(+), 12 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 669657c..836d3ee 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -17,6 +17,11 @@ strip = true opt-level = "z" lto = true +[profile.release_apple] +inherits = "release" +strip = false +debug = true + [profile.wasm] inherits = "release" diff --git a/tool/build_xcframework.sh b/tool/build_xcframework.sh index 4b6331c..0f7d831 100755 --- a/tool/build_xcframework.sh +++ b/tool/build_xcframework.sh @@ -38,31 +38,41 @@ EOF echo "===================== create ios device framework =====================" mkdir -p "${BUILD_DIR}/ios-arm64/powersync-sqlite-core.framework" echo "${plist}" > "${BUILD_DIR}/ios-arm64/powersync-sqlite-core.framework/Info.plist" - cp -f "./target/aarch64-apple-ios/release/libpowersync.dylib" "${BUILD_DIR}/ios-arm64/powersync-sqlite-core.framework/powersync-sqlite-core" + cp -f "./target/aarch64-apple-ios/release_apple/libpowersync.dylib" "${BUILD_DIR}/ios-arm64/powersync-sqlite-core.framework/powersync-sqlite-core" install_name_tool -id "@rpath/powersync-sqlite-core.framework/powersync-sqlite-core" "${BUILD_DIR}/ios-arm64/powersync-sqlite-core.framework/powersync-sqlite-core" + # Generate dSYM for iOS Device + dsymutil "${BUILD_DIR}/ios-arm64/powersync-sqlite-core.framework/powersync-sqlite-core" -o "${BUILD_DIR}/ios-arm64/powersync-sqlite-core.framework.dSYM" echo "===================== create ios simulator framework =====================" mkdir -p "${BUILD_DIR}/ios-arm64_x86_64-simulator/powersync-sqlite-core.framework" echo "${plist}" > "${BUILD_DIR}/ios-arm64_x86_64-simulator/powersync-sqlite-core.framework/Info.plist" - lipo ./target/aarch64-apple-ios-sim/release/libpowersync.dylib ./target/x86_64-apple-ios/release/libpowersync.dylib -create -output "${BUILD_DIR}/ios-arm64_x86_64-simulator/powersync-sqlite-core.framework/powersync-sqlite-core" + lipo ./target/aarch64-apple-ios-sim/release_apple/libpowersync.dylib ./target/x86_64-apple-ios/release_apple/libpowersync.dylib -create -output "${BUILD_DIR}/ios-arm64_x86_64-simulator/powersync-sqlite-core.framework/powersync-sqlite-core" install_name_tool -id "@rpath/powersync-sqlite-core.framework/powersync-sqlite-core" "${BUILD_DIR}/ios-arm64_x86_64-simulator/powersync-sqlite-core.framework/powersync-sqlite-core" + # Generate dSYM for iOS Simulator + dsymutil "${BUILD_DIR}/ios-arm64_x86_64-simulator/powersync-sqlite-core.framework/powersync-sqlite-core" -o "${BUILD_DIR}/ios-arm64_x86_64-simulator/powersync-sqlite-core.framework.dSYM" echo "===================== create macos framework =====================" mkdir -p "${BUILD_DIR}/macos-arm64_x86_64/powersync-sqlite-core.framework/Versions/A/Resources" echo "${plist}" > "${BUILD_DIR}/macos-arm64_x86_64/powersync-sqlite-core.framework/Versions/A/Resources/Info.plist" - lipo ./target/x86_64-apple-darwin/release/libpowersync.dylib ./target/aarch64-apple-darwin/release/libpowersync.dylib -create -output "${BUILD_DIR}/macos-arm64_x86_64/powersync-sqlite-core.framework/Versions/A/powersync-sqlite-core" + lipo ./target/x86_64-apple-darwin/release_apple/libpowersync.dylib ./target/aarch64-apple-darwin/release_apple/libpowersync.dylib -create -output "${BUILD_DIR}/macos-arm64_x86_64/powersync-sqlite-core.framework/Versions/A/powersync-sqlite-core" install_name_tool -id "@rpath/powersync-sqlite-core.framework/powersync-sqlite-core" "${BUILD_DIR}/macos-arm64_x86_64/powersync-sqlite-core.framework/Versions/A/powersync-sqlite-core" - ln -s A "${BUILD_DIR}/macos-arm64_x86_64/powersync-sqlite-core.framework/Versions/Current" - ln -s Versions/Current/powersync-sqlite-core "${BUILD_DIR}/macos-arm64_x86_64/powersync-sqlite-core.framework/powersync-sqlite-core" - ln -s Versions/Current/Resources "${BUILD_DIR}/macos-arm64_x86_64/powersync-sqlite-core.framework/Resources" + ln -sf A "${BUILD_DIR}/macos-arm64_x86_64/powersync-sqlite-core.framework/Versions/Current" + ln -sf Versions/Current/powersync-sqlite-core "${BUILD_DIR}/macos-arm64_x86_64/powersync-sqlite-core.framework/powersync-sqlite-core" + ln -sf Versions/Current/Resources "${BUILD_DIR}/macos-arm64_x86_64/powersync-sqlite-core.framework/Resources" + # Generate dSYM for macOS + dsymutil "${BUILD_DIR}/macos-arm64_x86_64/powersync-sqlite-core.framework/Versions/A/powersync-sqlite-core" -o "${BUILD_DIR}/macos-arm64_x86_64/powersync-sqlite-core.framework.dSYM" echo "===================== create xcframework =====================" rm -rf "${BUILD_DIR}/powersync-sqlite-core.xcframework" + # "-debug-symbols" requires the absolute path xcodebuild -create-xcframework \ -framework "${BUILD_DIR}/ios-arm64/powersync-sqlite-core.framework" \ + -debug-symbols "$(pwd -P)/${BUILD_DIR}/ios-arm64/powersync-sqlite-core.framework.dSYM" \ -framework "${BUILD_DIR}/ios-arm64_x86_64-simulator/powersync-sqlite-core.framework" \ + -debug-symbols "$(pwd -P)/${BUILD_DIR}/ios-arm64_x86_64-simulator/powersync-sqlite-core.framework.dSYM" \ -framework "${BUILD_DIR}/macos-arm64_x86_64/powersync-sqlite-core.framework" \ - -output "${BUILD_DIR}/powersync-sqlite-core.xcframework" + -debug-symbols "$(pwd -P)/${BUILD_DIR}/macos-arm64_x86_64/powersync-sqlite-core.framework.dSYM" \ + -output "${BUILD_DIR}/powersync-sqlite-core.xcframework" \ cp -Rf "${BUILD_DIR}/powersync-sqlite-core.xcframework" "powersync-sqlite-core.xcframework" zip -r --symlinks powersync-sqlite-core.xcframework.zip powersync-sqlite-core.xcframework LICENSE README.md @@ -75,12 +85,12 @@ EOF rm -rf powersync-sqlite-core.xcframework # iOS -cargo build -p powersync_loadable --release --target aarch64-apple-ios -Zbuild-std +cargo build -p powersync_loadable --profile release_apple --target aarch64-apple-ios -Zbuild-std # Simulator -cargo build -p powersync_loadable --release --target aarch64-apple-ios-sim -Zbuild-std -cargo build -p powersync_loadable --release --target x86_64-apple-ios -Zbuild-std +cargo build -p powersync_loadable --profile release_apple --target aarch64-apple-ios-sim -Zbuild-std +cargo build -p powersync_loadable --profile release_apple --target x86_64-apple-ios -Zbuild-std # macOS -cargo build -p powersync_loadable --release --target aarch64-apple-darwin -Zbuild-std -cargo build -p powersync_loadable --release --target x86_64-apple-darwin -Zbuild-std +cargo build -p powersync_loadable --profile release_apple --target aarch64-apple-darwin -Zbuild-std +cargo build -p powersync_loadable --profile release_apple --target x86_64-apple-darwin -Zbuild-std createXcframework From 681ca9956071d39f0907e32aa4c528b332ab983c Mon Sep 17 00:00:00 2001 From: stevensJourney Date: Wed, 15 Jan 2025 15:06:32 +0200 Subject: [PATCH 2/3] chore: update versions --- Cargo.lock | 8 ++++---- Cargo.toml | 2 +- android/build.gradle.kts | 2 +- android/src/prefab/prefab.json | 2 +- powersync-sqlite-core.podspec | 2 +- tool/build_xcframework.sh | 4 ++-- 6 files changed, 10 insertions(+), 10 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index f938be8..492783c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -205,7 +205,7 @@ checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099" [[package]] name = "powersync_core" -version = "0.3.7" +version = "0.3.8" dependencies = [ "bytes", "num-derive", @@ -218,7 +218,7 @@ dependencies = [ [[package]] name = "powersync_loadable" -version = "0.3.7" +version = "0.3.8" dependencies = [ "powersync_core", "sqlite_nostd", @@ -226,7 +226,7 @@ dependencies = [ [[package]] name = "powersync_sqlite" -version = "0.3.7" +version = "0.3.8" dependencies = [ "cc", "powersync_core", @@ -331,7 +331,7 @@ checksum = "43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3" [[package]] name = "sqlite3" -version = "0.3.7" +version = "0.3.8" dependencies = [ "cc", ] diff --git a/Cargo.toml b/Cargo.toml index 836d3ee..f993ae8 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -29,7 +29,7 @@ inherits = "release" inherits = "wasm" [workspace.package] -version = "0.3.7" +version = "0.3.8" edition = "2021" authors = ["JourneyApps"] keywords = ["sqlite", "powersync"] diff --git a/android/build.gradle.kts b/android/build.gradle.kts index e46132a..5f09b83 100644 --- a/android/build.gradle.kts +++ b/android/build.gradle.kts @@ -6,7 +6,7 @@ plugins { } group = "co.powersync" -version = "0.3.7" +version = "0.3.8" description = "PowerSync Core SQLite Extension" repositories { diff --git a/android/src/prefab/prefab.json b/android/src/prefab/prefab.json index be8f6f1..3dff7b3 100644 --- a/android/src/prefab/prefab.json +++ b/android/src/prefab/prefab.json @@ -2,5 +2,5 @@ "name": "powersync_sqlite_core", "schema_version": 2, "dependencies": [], - "version": "0.3.7" + "version": "0.3.8" } diff --git a/powersync-sqlite-core.podspec b/powersync-sqlite-core.podspec index fe15be6..7eb31b1 100644 --- a/powersync-sqlite-core.podspec +++ b/powersync-sqlite-core.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'powersync-sqlite-core' - s.version = '0.3.7' + s.version = '0.3.8' s.summary = 'PowerSync SQLite Extension' s.description = <<-DESC PowerSync extension for SQLite. diff --git a/tool/build_xcframework.sh b/tool/build_xcframework.sh index 0f7d831..b9e4d41 100755 --- a/tool/build_xcframework.sh +++ b/tool/build_xcframework.sh @@ -28,9 +28,9 @@ function createXcframework() { MinimumOSVersion 11.0 CFBundleVersion - 0.3.7 + 0.3.8 CFBundleShortVersionString - 0.3.7 + 0.3.8 EOF From e3290b092be8cd358bfb8f5749d62da1f74927f7 Mon Sep 17 00:00:00 2001 From: stevensJourney Date: Wed, 15 Jan 2025 15:22:53 +0200 Subject: [PATCH 3/3] chore: bump versions --- Cargo.lock | 8 ++++---- Cargo.toml | 2 +- android/build.gradle.kts | 2 +- android/src/prefab/prefab.json | 2 +- powersync-sqlite-core.podspec | 2 +- tool/build_xcframework.sh | 4 ++-- 6 files changed, 10 insertions(+), 10 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 492783c..5751c1e 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -205,7 +205,7 @@ checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099" [[package]] name = "powersync_core" -version = "0.3.8" +version = "0.3.9" dependencies = [ "bytes", "num-derive", @@ -218,7 +218,7 @@ dependencies = [ [[package]] name = "powersync_loadable" -version = "0.3.8" +version = "0.3.9" dependencies = [ "powersync_core", "sqlite_nostd", @@ -226,7 +226,7 @@ dependencies = [ [[package]] name = "powersync_sqlite" -version = "0.3.8" +version = "0.3.9" dependencies = [ "cc", "powersync_core", @@ -331,7 +331,7 @@ checksum = "43b2853a4d09f215c24cc5489c992ce46052d359b5109343cbafbf26bc62f8a3" [[package]] name = "sqlite3" -version = "0.3.8" +version = "0.3.9" dependencies = [ "cc", ] diff --git a/Cargo.toml b/Cargo.toml index f993ae8..790a462 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -29,7 +29,7 @@ inherits = "release" inherits = "wasm" [workspace.package] -version = "0.3.8" +version = "0.3.9" edition = "2021" authors = ["JourneyApps"] keywords = ["sqlite", "powersync"] diff --git a/android/build.gradle.kts b/android/build.gradle.kts index 5f09b83..2907900 100644 --- a/android/build.gradle.kts +++ b/android/build.gradle.kts @@ -6,7 +6,7 @@ plugins { } group = "co.powersync" -version = "0.3.8" +version = "0.3.9" description = "PowerSync Core SQLite Extension" repositories { diff --git a/android/src/prefab/prefab.json b/android/src/prefab/prefab.json index 3dff7b3..7fce44e 100644 --- a/android/src/prefab/prefab.json +++ b/android/src/prefab/prefab.json @@ -2,5 +2,5 @@ "name": "powersync_sqlite_core", "schema_version": 2, "dependencies": [], - "version": "0.3.8" + "version": "0.3.9" } diff --git a/powersync-sqlite-core.podspec b/powersync-sqlite-core.podspec index 7eb31b1..36153da 100644 --- a/powersync-sqlite-core.podspec +++ b/powersync-sqlite-core.podspec @@ -1,6 +1,6 @@ Pod::Spec.new do |s| s.name = 'powersync-sqlite-core' - s.version = '0.3.8' + s.version = '0.3.9' s.summary = 'PowerSync SQLite Extension' s.description = <<-DESC PowerSync extension for SQLite. diff --git a/tool/build_xcframework.sh b/tool/build_xcframework.sh index b9e4d41..3cf43af 100755 --- a/tool/build_xcframework.sh +++ b/tool/build_xcframework.sh @@ -28,9 +28,9 @@ function createXcframework() { MinimumOSVersion 11.0 CFBundleVersion - 0.3.8 + 0.3.9 CFBundleShortVersionString - 0.3.8 + 0.3.9 EOF