From 57b6c4814fa8608c10bfb059df651e1cba320524 Mon Sep 17 00:00:00 2001 From: Victor Pavlychko Date: Wed, 11 Sep 2019 16:35:57 +0300 Subject: [PATCH] Adding support for Swift Package Manager - moved public headers to `include/` - added `Package.swift` matching configuration specified in `SSZipArchive.podspec` - updated original project to reflect new folder structure - updated `SSZipArchive.podspec` to reflect new folder structure - added `.build/` to the ignore list - removed eXecute permission flag from source files --- .gitignore | 3 ++ Package.swift | 35 +++++++++++++++++++++++ SSZipArchive.podspec | 4 +-- SSZipArchive/SSZipArchive.m | 0 SSZipArchive/{ => include}/SSZipArchive.h | 0 SSZipArchive/{ => include}/SSZipCommon.h | 0 SSZipArchive/{ => include}/ZipArchive.h | 0 SSZipArchive/minizip/mz_compat.h | 2 +- ZipArchive.xcodeproj/project.pbxproj | 14 +++++++-- 9 files changed, 52 insertions(+), 6 deletions(-) create mode 100644 Package.swift mode change 100755 => 100644 SSZipArchive/SSZipArchive.m rename SSZipArchive/{ => include}/SSZipArchive.h (100%) mode change 100755 => 100644 rename SSZipArchive/{ => include}/SSZipCommon.h (100%) rename SSZipArchive/{ => include}/ZipArchive.h (100%) diff --git a/.gitignore b/.gitignore index 50994a7..9c800dd 100644 --- a/.gitignore +++ b/.gitignore @@ -21,3 +21,6 @@ Pods/ # Add this line if you want to avoid checking in source code from Carthage dependencies. **/Carthage/Checkouts **/Carthage/Build + +# Swift Package Manager +.build/ diff --git a/Package.swift b/Package.swift new file mode 100644 index 0000000..4bc1fde --- /dev/null +++ b/Package.swift @@ -0,0 +1,35 @@ +// swift-tools-version:5.0 +// The swift-tools-version declares the minimum version of Swift required to build this package. + +import PackageDescription + +let package = Package( + name: "ZipArchive", + platforms: [ + .iOS(.v9), + .tvOS(.v9), + .macOS(.v10_10), + .watchOS(.v2), + ], + products: [ + .library(name: "ZipArchive", targets: ["ZipArchive"]), + ], + targets: [ + .target( + name: "ZipArchive", + path: "SSZipArchive", + cSettings: [ + .define("HAVE_INTTYPES_H"), + .define("HAVE_PKCRYPT"), + .define("HAVE_STDINT_H"), + .define("HAVE_WZAES"), + .define("HAVE_ZLIB"), + ], + linkerSettings: [ + .linkedLibrary("z"), + .linkedLibrary("iconv"), + .linkedFramework("Security"), + ] + ) + ] +) diff --git a/SSZipArchive.podspec b/SSZipArchive.podspec index 8a44050..543de82 100644 --- a/SSZipArchive.podspec +++ b/SSZipArchive.podspec @@ -11,8 +11,8 @@ Pod::Spec.new do |s| s.tvos.deployment_target = '9.0' s.osx.deployment_target = '10.8' s.watchos.deployment_target = '2.0' - s.source_files = 'SSZipArchive/*.{m,h}', 'SSZipArchive/minizip/*.{c,h}' - s.public_header_files = 'SSZipArchive/*.h' + s.source_files = 'SSZipArchive/*.{m,h}', 'SSZipArchive/include/*.{m,h}', 'SSZipArchive/minizip/*.{c,h}' + s.public_header_files = 'SSZipArchive/include/*.h' s.libraries = 'z', 'iconv' s.framework = 'Security' s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES', diff --git a/SSZipArchive/SSZipArchive.m b/SSZipArchive/SSZipArchive.m old mode 100755 new mode 100644 diff --git a/SSZipArchive/SSZipArchive.h b/SSZipArchive/include/SSZipArchive.h old mode 100755 new mode 100644 similarity index 100% rename from SSZipArchive/SSZipArchive.h rename to SSZipArchive/include/SSZipArchive.h diff --git a/SSZipArchive/SSZipCommon.h b/SSZipArchive/include/SSZipCommon.h similarity index 100% rename from SSZipArchive/SSZipCommon.h rename to SSZipArchive/include/SSZipCommon.h diff --git a/SSZipArchive/ZipArchive.h b/SSZipArchive/include/ZipArchive.h similarity index 100% rename from SSZipArchive/ZipArchive.h rename to SSZipArchive/include/ZipArchive.h diff --git a/SSZipArchive/minizip/mz_compat.h b/SSZipArchive/minizip/mz_compat.h index 011fbfb..41c7a60 100644 --- a/SSZipArchive/minizip/mz_compat.h +++ b/SSZipArchive/minizip/mz_compat.h @@ -15,7 +15,7 @@ #define MZ_COMPAT_H #include "mz.h" -#include "../SSZipCommon.h" +#include "../include/SSZipCommon.h" #ifdef __cplusplus extern "C" { diff --git a/ZipArchive.xcodeproj/project.pbxproj b/ZipArchive.xcodeproj/project.pbxproj index 8b4440b..755474b 100644 --- a/ZipArchive.xcodeproj/project.pbxproj +++ b/ZipArchive.xcodeproj/project.pbxproj @@ -269,6 +269,16 @@ name = Frameworks; sourceTree = ""; }; + 579FC27523292ABA007FEA3C /* include */ = { + isa = PBXGroup; + children = ( + B423AE481C0DF7950004A2F1 /* SSZipArchive.h */, + 93CE5D5D227FE5C50003464F /* SSZipCommon.h */, + B423AE4A1C0DF7950004A2F1 /* ZipArchive.h */, + ); + path = include; + sourceTree = ""; + }; B423AE101C0DF76A0004A2F1 = { isa = PBXGroup; children = ( @@ -293,11 +303,9 @@ isa = PBXGroup; children = ( B423AE3D1C0DF7950004A2F1 /* Info.plist */, + 579FC27523292ABA007FEA3C /* include */, B423AE3E1C0DF7950004A2F1 /* minizip */, - B423AE481C0DF7950004A2F1 /* SSZipArchive.h */, B423AE491C0DF7950004A2F1 /* SSZipArchive.m */, - 93CE5D5D227FE5C50003464F /* SSZipCommon.h */, - B423AE4A1C0DF7950004A2F1 /* ZipArchive.h */, ); path = SSZipArchive; sourceTree = "";