From de8de29df255263a2e62993426c6e7c9a64ec00c Mon Sep 17 00:00:00 2001 From: Jonas Zaugg Date: Fri, 31 Jul 2020 02:07:34 +0200 Subject: [PATCH] Mirror changes made to the spm-xcframework branch and include SparkleCore --- Configurations/make-release-package.sh | 26 +++++++++++++++++++------- Makefile | 4 +++- Package-template.swift | 23 ----------------------- Package.swift | 2 +- 4 files changed, 23 insertions(+), 32 deletions(-) delete mode 100644 Package-template.swift diff --git a/Configurations/make-release-package.sh b/Configurations/make-release-package.sh index ac3a58ce..9403bc00 100755 --- a/Configurations/make-release-package.sh +++ b/Configurations/make-release-package.sh @@ -12,19 +12,27 @@ if [ "$ACTION" = "" ] ; then fi rm -rf "$CONFIGURATION_BUILD_DIR/staging" + rm -rf "$CONFIGURATION_BUILD_DIR/staging-spm" rm -f "Sparkle-$CURRENT_PROJECT_VERSION.tar.xz" + rm -f "Sparkle-SPM-$CURRENT_PROJECT_VERSION.zip" mkdir -p "$CONFIGURATION_BUILD_DIR/staging" + mkdir -p "$CONFIGURATION_BUILD_DIR/staging-spm" cp "$SRCROOT/CHANGELOG" "$SRCROOT/LICENSE" "$SRCROOT/INSTALL.markdown" "$SRCROOT/Resources/SampleAppcast.xml" "$CONFIGURATION_BUILD_DIR/staging" + cp "$SRCROOT/CHANGELOG" "$SRCROOT/LICENSE" "$SRCROOT/INSTALL.markdown" "$SRCROOT/Resources/SampleAppcast.xml" "$CONFIGURATION_BUILD_DIR/staging-spm" cp -R "$SRCROOT/bin" "$CONFIGURATION_BUILD_DIR/staging" cp "$CONFIGURATION_BUILD_DIR/BinaryDelta" "$CONFIGURATION_BUILD_DIR/staging/bin" cp "$CONFIGURATION_BUILD_DIR/generate_appcast" "$CONFIGURATION_BUILD_DIR/staging/bin" cp "$CONFIGURATION_BUILD_DIR/generate_keys" "$CONFIGURATION_BUILD_DIR/staging/bin" cp "$CONFIGURATION_BUILD_DIR/sign_update" "$CONFIGURATION_BUILD_DIR/staging/bin" cp -R "$CONFIGURATION_BUILD_DIR/Sparkle Test App.app" "$CONFIGURATION_BUILD_DIR/staging" + cp -R "$CONFIGURATION_BUILD_DIR/Sparkle Test App.app" "$CONFIGURATION_BUILD_DIR/staging-spm" cp -R "$CONFIGURATION_BUILD_DIR/sparkle.app" "$CONFIGURATION_BUILD_DIR/staging" + cp -R "$CONFIGURATION_BUILD_DIR/sparkle.app" "$CONFIGURATION_BUILD_DIR/staging-spm" cp -R "$CONFIGURATION_BUILD_DIR/Sparkle.framework" "$CONFIGURATION_BUILD_DIR/staging" + cp -R "$CONFIGURATION_BUILD_DIR/Sparkle.xcframework" "$CONFIGURATION_BUILD_DIR/staging-spm" cp -R "$CONFIGURATION_BUILD_DIR/SparkleCore.framework" "$CONFIGURATION_BUILD_DIR/staging" + cp -R "$CONFIGURATION_BUILD_DIR/SparkleCore.xcframework" "$CONFIGURATION_BUILD_DIR/staging-spm" mkdir -p "$CONFIGURATION_BUILD_DIR/staging/XPCServices" @@ -43,7 +51,9 @@ if [ "$ACTION" = "" ] ; then cp -R "$CONFIGURATION_BUILD_DIR/generate_keys.dSYM" "$CONFIGURATION_BUILD_DIR/staging/bin" cp -R "$CONFIGURATION_BUILD_DIR/sign_update.dSYM" "$CONFIGURATION_BUILD_DIR/staging/bin" cp -R "$CONFIGURATION_BUILD_DIR/Sparkle Test App.app.dSYM" "$CONFIGURATION_BUILD_DIR/staging" + cp -R "$CONFIGURATION_BUILD_DIR/Sparkle Test App.app.dSYM" "$CONFIGURATION_BUILD_DIR/staging-spm" cp -R "$CONFIGURATION_BUILD_DIR/sparkle.app.dSYM" "$CONFIGURATION_BUILD_DIR/staging" + cp -R "$CONFIGURATION_BUILD_DIR/sparkle.app.dSYM" "$CONFIGURATION_BUILD_DIR/staging-spm" cp -R "$CONFIGURATION_BUILD_DIR/Sparkle.framework.dSYM" "$CONFIGURATION_BUILD_DIR/staging" cp -R "$CONFIGURATION_BUILD_DIR/SparkleCore.framework.dSYM" "$CONFIGURATION_BUILD_DIR/staging" @@ -52,6 +62,8 @@ if [ "$ACTION" = "" ] ; then cp -R "$CONFIGURATION_BUILD_DIR/$INSTALLER_CONNECTION_BUNDLE_ID.xpc.dSYM" "$CONFIGURATION_BUILD_DIR/staging/XPCServices" cp -R "$CONFIGURATION_BUILD_DIR/$INSTALLER_STATUS_BUNDLE_ID.xpc.dSYM" "$CONFIGURATION_BUILD_DIR/staging/XPCServices" fi + cp -R "$CONFIGURATION_BUILD_DIR/staging/bin" "$CONFIGURATION_BUILD_DIR/staging-spm" + cp -R "$CONFIGURATION_BUILD_DIR/staging/XPCServices" "$CONFIGURATION_BUILD_DIR/staging-spm" cd "$CONFIGURATION_BUILD_DIR/staging" # Sorted file list groups similar files together, which improves tar compression @@ -59,19 +71,19 @@ if [ "$ACTION" = "" ] ; then rm -rf "$CONFIGURATION_BUILD_DIR/staging" # Generate zip containing the xcframework for SPM - cd "$CONFIGURATION_BUILD_DIR" - rm -rf "Sparkle.xcarchive" - zip -rqyX "Sparkle-SPM-$CURRENT_PROJECT_VERSION.zip" "Sparkle.xcframework" + cd "$CONFIGURATION_BUILD_DIR/staging-spm" + #rm -rf "$CONFIGURATION_BUILD_DIR/Sparkle.xcarchive" + zip -rqyX -9 "../Sparkle-SPM-$CURRENT_PROJECT_VERSION.zip" * # Generate new Package manifest - cp "$SRCROOT/Package-template.swift" "$CONFIGURATION_BUILD_DIR" - mv "Package-template.swift" "Package.swift" + cd "$CONFIGURATION_BUILD_DIR" + cp "$SRCROOT/Package.swift" "$CONFIGURATION_BUILD_DIR" # is equivalent to shasum -a 256 FILE spm_checksum=$(swift package compute-checksum "Sparkle-SPM-$CURRENT_PROJECT_VERSION.zip") rm -rf ".build" - sed -i '' -e "s/VERSION_PLACEHOLDER/$CURRENT_PROJECT_VERSION/g" "Package.swift" - sed -i '' -e "s/CHECKSUM_PLACEHOLDER/$spm_checksum/g" "Package.swift" + sed -E -i '' -e "/let version/ s/[[:digit:]]+\.[[:digit:]]+\.[[:digit:]]+/$CURRENT_PROJECT_VERSION/" -e "/let checksum/ s/[[:xdigit:]]{64}/$spm_checksum/" "Package.swift" cp "Package.swift" "$SRCROOT" echo "Package.swift updated with the following values:" echo "Version: $CURRENT_PROJECT_VERSION" echo "Checksum: $spm_checksum" + rm -rf "$CONFIGURATION_BUILD_DIR/staging-spm" fi diff --git a/Makefile b/Makefile index 072d1d45..9d94c65c 100644 --- a/Makefile +++ b/Makefile @@ -14,7 +14,9 @@ localizable-strings: release: xcodebuild -scheme Sparkle -configuration Release -derivedDataPath "$(BUILDDIR)" -archivePath "$(BUILDDIR)/Build/Products/Release/Sparkle.xcarchive" BUILD_LIBRARY_FOR_DISTRIBUTION=YES SKIP_INSTALL=NO archive - xcodebuild -create-xcframework -framework "$(BUILDDIR)/Build/Products/Release/Sparkle.xcarchive/Products/Library/Frameworks/Sparkle.framework" -output "$(BUILDDIR)/Build/Products/Release/Sparkle.xcframework" + xcodebuild -create-xcframework -framework "$(BUILDDIR)/Build/Products/Release/Sparkle.xcarchive/Products/Library/Frameworks/Sparkle.framework" -debug-symbols "$(BUILDDIR)/Build/Products/Release/Sparkle.xcarchive/dSYMs/Sparkle.framework.dSYM" -output "$(BUILDDIR)/Build/Products/Release/Sparkle.xcframework" + xcodebuild -scheme SparkleCore -configuration Release -derivedDataPath "$(BUILDDIR)" -archivePath "$(BUILDDIR)/Build/Products/Release/SparkleCore.xcarchive" BUILD_LIBRARY_FOR_DISTRIBUTION=YES SKIP_INSTALL=NO archive + xcodebuild -create-xcframework -framework "$(BUILDDIR)/Build/Products/Release/SparkleCore.xcarchive/Products/Library/Frameworks/SparkleCore.framework" -debug-symbols "$(BUILDDIR)/Build/Products/Release/SparkleCore.xcarchive/dSYMs/SparkleCore.framework.dSYM" -output "$(BUILDDIR)/Build/Products/Release/SparkleCore.xcframework" xcodebuild -scheme Distribution -configuration Release -derivedDataPath "$(BUILDDIR)" build open "$(BUILDDIR)/Build/Products/Release/" cat Sparkle.podspec diff --git a/Package-template.swift b/Package-template.swift deleted file mode 100644 index 8915811a..00000000 --- a/Package-template.swift +++ /dev/null @@ -1,23 +0,0 @@ -// swift-tools-version:5.3 -import PackageDescription - -let version = "VERSION_PLACEHOLDER" -let checksum = "CHECKSUM_PLACEHOLDER" -let url = "https://github.com/sparkle-project/Sparkle/releases/download/\(version)/Sparkle-SPM-\(version).zip" - -let package = Package( - name: "Sparkle", - platforms: [.macOS(.v10_11)], - products: [ - .library( - name: "Sparkle", - targets: ["Sparkle"]) - ], - targets: [ - .binaryTarget( - name: "Sparkle", - url: url, - checksum: checksum - ) - ] -) diff --git a/Package.swift b/Package.swift index 78115567..980af6e7 100644 --- a/Package.swift +++ b/Package.swift @@ -2,7 +2,7 @@ import PackageDescription let version = "2.0.0" -let checksum = "ced6b1d5691f948df49206eba9abe75fcabbef3dcfae685e8352c8df5d60ea22" +let checksum = "c37a2b9b19743f4fe0d01f3e1782f799421b3e07ff46fc1ab8fe1f7e818c4437" let url = "https://github.com/sparkle-project/Sparkle/releases/download/\(version)/Sparkle-SPM-\(version).zip" let package = Package(