From 3806526aaf8eeb4b1d4a4c7cc24159db590eb2f4 Mon Sep 17 00:00:00 2001 From: Francisco Gindre Date: Mon, 9 Sep 2019 12:30:38 -0300 Subject: [PATCH 1/5] Cocoapods Support + Example Project --- .gitignore | 7 + Example/ZcashLightClientSample/Podfile | 19 + Example/ZcashLightClientSample/Podfile.lock | 16 + .../project.pbxproj | 728 ++++++++++++++++++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcschemes/ZcashLightClientSample.xcscheme | 111 +++ .../contents.xcworkspacedata | 10 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + .../ZcashLightClientSample/AppDelegate.swift | 46 ++ .../AppIcon.appiconset/Contents.json | 98 +++ .../Assets.xcassets/Contents.json | 6 + .../Base.lproj/LaunchScreen.storyboard | 25 + .../Base.lproj/Main.storyboard | 24 + .../ZcashLightClientSample/Info.plist | 45 ++ .../ViewController.swift | 20 + .../ZcashLightClientSampleTests/Info.plist | 22 + .../ZcashLightClientSampleTests.swift | 49 ++ .../ZcashLightClientSampleUITests/Info.plist | 22 + .../ZcashLightClientSampleUITests.swift | 34 + ZcashLightClientKit.modulemap | 13 + ZcashLightClientKit.podspec | 40 + ZcashLightClientKit/ZcashRustBackend.swift | 2 +- build_librustzcash.sh | 22 + prepare.rb | 3 + prepare.sh | 7 + 27 files changed, 1399 insertions(+), 1 deletion(-) create mode 100644 Example/ZcashLightClientSample/Podfile create mode 100644 Example/ZcashLightClientSample/Podfile.lock create mode 100644 Example/ZcashLightClientSample/ZcashLightClientSample.xcodeproj/project.pbxproj create mode 100644 Example/ZcashLightClientSample/ZcashLightClientSample.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 Example/ZcashLightClientSample/ZcashLightClientSample.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 Example/ZcashLightClientSample/ZcashLightClientSample.xcodeproj/xcshareddata/xcschemes/ZcashLightClientSample.xcscheme create mode 100644 Example/ZcashLightClientSample/ZcashLightClientSample.xcworkspace/contents.xcworkspacedata create mode 100644 Example/ZcashLightClientSample/ZcashLightClientSample.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 Example/ZcashLightClientSample/ZcashLightClientSample.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 Example/ZcashLightClientSample/ZcashLightClientSample/AppDelegate.swift create mode 100644 Example/ZcashLightClientSample/ZcashLightClientSample/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 Example/ZcashLightClientSample/ZcashLightClientSample/Assets.xcassets/Contents.json create mode 100644 Example/ZcashLightClientSample/ZcashLightClientSample/Base.lproj/LaunchScreen.storyboard create mode 100644 Example/ZcashLightClientSample/ZcashLightClientSample/Base.lproj/Main.storyboard create mode 100644 Example/ZcashLightClientSample/ZcashLightClientSample/Info.plist create mode 100644 Example/ZcashLightClientSample/ZcashLightClientSample/ViewController.swift create mode 100644 Example/ZcashLightClientSample/ZcashLightClientSampleTests/Info.plist create mode 100644 Example/ZcashLightClientSample/ZcashLightClientSampleTests/ZcashLightClientSampleTests.swift create mode 100644 Example/ZcashLightClientSample/ZcashLightClientSampleUITests/Info.plist create mode 100644 Example/ZcashLightClientSample/ZcashLightClientSampleUITests/ZcashLightClientSampleUITests.swift create mode 100644 ZcashLightClientKit.modulemap create mode 100644 ZcashLightClientKit.podspec create mode 100755 build_librustzcash.sh create mode 100644 prepare.rb create mode 100644 prepare.sh diff --git a/.gitignore b/.gitignore index b289c192..ee0bb62a 100644 --- a/.gitignore +++ b/.gitignore @@ -68,3 +68,10 @@ iOSInjectionProject/ .DS_Store .AppleDouble .LSOverride + +#ignore Pods directory for example project +Pods + +# do not commit generated libraries to this repo +lib +*.a diff --git a/Example/ZcashLightClientSample/Podfile b/Example/ZcashLightClientSample/Podfile new file mode 100644 index 00000000..de57fd6e --- /dev/null +++ b/Example/ZcashLightClientSample/Podfile @@ -0,0 +1,19 @@ +platform :ios, '11.0' + +target 'ZcashLightClientSample' do + # Comment the next line if you don't want to use dynamic frameworks + use_frameworks! + + # Pods for ZcashLightClientSample + pod 'ZcashLightClientKit', :path => '../../' + target 'ZcashLightClientSampleTests' do + inherit! :search_paths + # Pods for testing + end + + target 'ZcashLightClientSampleUITests' do + inherit! :search_paths + # Pods for testing + end + +end diff --git a/Example/ZcashLightClientSample/Podfile.lock b/Example/ZcashLightClientSample/Podfile.lock new file mode 100644 index 00000000..67339e4b --- /dev/null +++ b/Example/ZcashLightClientSample/Podfile.lock @@ -0,0 +1,16 @@ +PODS: + - ZcashLightClientKit (0.0.1) + +DEPENDENCIES: + - ZcashLightClientKit (from `../../`) + +EXTERNAL SOURCES: + ZcashLightClientKit: + :path: "../../" + +SPEC CHECKSUMS: + ZcashLightClientKit: eacf5e530a210e9eef6e9608696a5d70893cb997 + +PODFILE CHECKSUM: 7c9d39272319433442b14024a916deb276e81da4 + +COCOAPODS: 1.7.5 diff --git a/Example/ZcashLightClientSample/ZcashLightClientSample.xcodeproj/project.pbxproj b/Example/ZcashLightClientSample/ZcashLightClientSample.xcodeproj/project.pbxproj new file mode 100644 index 00000000..8a90899a --- /dev/null +++ b/Example/ZcashLightClientSample/ZcashLightClientSample.xcodeproj/project.pbxproj @@ -0,0 +1,728 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 50; + objects = { + +/* Begin PBXBuildFile section */ + 0D907F162322CC5900D641FE /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0D907F152322CC5900D641FE /* AppDelegate.swift */; }; + 0D907F182322CC5900D641FE /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0D907F172322CC5900D641FE /* ViewController.swift */; }; + 0D907F1B2322CC5900D641FE /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 0D907F192322CC5900D641FE /* Main.storyboard */; }; + 0D907F1D2322CC5B00D641FE /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 0D907F1C2322CC5B00D641FE /* Assets.xcassets */; }; + 0D907F202322CC5B00D641FE /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 0D907F1E2322CC5B00D641FE /* LaunchScreen.storyboard */; }; + 0D907F2B2322CC5B00D641FE /* ZcashLightClientSampleTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0D907F2A2322CC5B00D641FE /* ZcashLightClientSampleTests.swift */; }; + 0D907F362322CC5B00D641FE /* ZcashLightClientSampleUITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0D907F352322CC5B00D641FE /* ZcashLightClientSampleUITests.swift */; }; + 30AB89006A2D6891F32BFBF0 /* Pods_ZcashLightClientSample.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 17A69D88CA6DB45FA9D21E75 /* Pods_ZcashLightClientSample.framework */; }; + 868A42CEE1EBA7F9B0E48927 /* Pods_ZcashLightClientSampleUITests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3E9E0B112B9AFA48C27C4BC7 /* Pods_ZcashLightClientSampleUITests.framework */; }; + F54D714D7D2CBD7882AB31D4 /* Pods_ZcashLightClientSampleTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EC7ACB694E10039AC19A90BE /* Pods_ZcashLightClientSampleTests.framework */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 0D907F272322CC5B00D641FE /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 0D907F0A2322CC5900D641FE /* Project object */; + proxyType = 1; + remoteGlobalIDString = 0D907F112322CC5900D641FE; + remoteInfo = ZcashLightClientSample; + }; + 0D907F322322CC5B00D641FE /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 0D907F0A2322CC5900D641FE /* Project object */; + proxyType = 1; + remoteGlobalIDString = 0D907F112322CC5900D641FE; + remoteInfo = ZcashLightClientSample; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXFileReference section */ + 0D907F122322CC5900D641FE /* ZcashLightClientSample.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = ZcashLightClientSample.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 0D907F152322CC5900D641FE /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + 0D907F172322CC5900D641FE /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = ""; }; + 0D907F1A2322CC5900D641FE /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; + 0D907F1C2322CC5B00D641FE /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + 0D907F1F2322CC5B00D641FE /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; + 0D907F212322CC5B00D641FE /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 0D907F262322CC5B00D641FE /* ZcashLightClientSampleTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = ZcashLightClientSampleTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + 0D907F2A2322CC5B00D641FE /* ZcashLightClientSampleTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ZcashLightClientSampleTests.swift; sourceTree = ""; }; + 0D907F2C2322CC5B00D641FE /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 0D907F312322CC5B00D641FE /* ZcashLightClientSampleUITests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = ZcashLightClientSampleUITests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + 0D907F352322CC5B00D641FE /* ZcashLightClientSampleUITests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ZcashLightClientSampleUITests.swift; sourceTree = ""; }; + 0D907F372322CC5B00D641FE /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 17A69D88CA6DB45FA9D21E75 /* Pods_ZcashLightClientSample.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_ZcashLightClientSample.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 1BEB1273671D6E7883C81472 /* Pods-ZcashLightClientSample.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ZcashLightClientSample.release.xcconfig"; path = "Target Support Files/Pods-ZcashLightClientSample/Pods-ZcashLightClientSample.release.xcconfig"; sourceTree = ""; }; + 3E9E0B112B9AFA48C27C4BC7 /* Pods_ZcashLightClientSampleUITests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_ZcashLightClientSampleUITests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 59BA5F37462FF34F64350712 /* Pods-ZcashLightClientSampleUITests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ZcashLightClientSampleUITests.debug.xcconfig"; path = "Target Support Files/Pods-ZcashLightClientSampleUITests/Pods-ZcashLightClientSampleUITests.debug.xcconfig"; sourceTree = ""; }; + 7725E5618226722E4FF54D35 /* Pods-ZcashLightClientSampleTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ZcashLightClientSampleTests.debug.xcconfig"; path = "Target Support Files/Pods-ZcashLightClientSampleTests/Pods-ZcashLightClientSampleTests.debug.xcconfig"; sourceTree = ""; }; + 89F6F4B8F441C9EC43B7412A /* Pods-ZcashLightClientSampleUITests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ZcashLightClientSampleUITests.release.xcconfig"; path = "Target Support Files/Pods-ZcashLightClientSampleUITests/Pods-ZcashLightClientSampleUITests.release.xcconfig"; sourceTree = ""; }; + 93F435FD5C95BEE3BC7BBC28 /* Pods-ZcashLightClientSample.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ZcashLightClientSample.debug.xcconfig"; path = "Target Support Files/Pods-ZcashLightClientSample/Pods-ZcashLightClientSample.debug.xcconfig"; sourceTree = ""; }; + AB3C9B79B6C5CC564852A806 /* Pods-ZcashLightClientSampleTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-ZcashLightClientSampleTests.release.xcconfig"; path = "Target Support Files/Pods-ZcashLightClientSampleTests/Pods-ZcashLightClientSampleTests.release.xcconfig"; sourceTree = ""; }; + EC7ACB694E10039AC19A90BE /* Pods_ZcashLightClientSampleTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_ZcashLightClientSampleTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 0D907F0F2322CC5900D641FE /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 30AB89006A2D6891F32BFBF0 /* Pods_ZcashLightClientSample.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 0D907F232322CC5B00D641FE /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + F54D714D7D2CBD7882AB31D4 /* Pods_ZcashLightClientSampleTests.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 0D907F2E2322CC5B00D641FE /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 868A42CEE1EBA7F9B0E48927 /* Pods_ZcashLightClientSampleUITests.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 0D907F092322CC5900D641FE = { + isa = PBXGroup; + children = ( + 0D907F142322CC5900D641FE /* ZcashLightClientSample */, + 0D907F292322CC5B00D641FE /* ZcashLightClientSampleTests */, + 0D907F342322CC5B00D641FE /* ZcashLightClientSampleUITests */, + 0D907F132322CC5900D641FE /* Products */, + 66EF5A44FD6A5AC92244F054 /* Pods */, + A4E309895AA511479901D67E /* Frameworks */, + ); + sourceTree = ""; + }; + 0D907F132322CC5900D641FE /* Products */ = { + isa = PBXGroup; + children = ( + 0D907F122322CC5900D641FE /* ZcashLightClientSample.app */, + 0D907F262322CC5B00D641FE /* ZcashLightClientSampleTests.xctest */, + 0D907F312322CC5B00D641FE /* ZcashLightClientSampleUITests.xctest */, + ); + name = Products; + sourceTree = ""; + }; + 0D907F142322CC5900D641FE /* ZcashLightClientSample */ = { + isa = PBXGroup; + children = ( + 0D907F152322CC5900D641FE /* AppDelegate.swift */, + 0D907F172322CC5900D641FE /* ViewController.swift */, + 0D907F192322CC5900D641FE /* Main.storyboard */, + 0D907F1C2322CC5B00D641FE /* Assets.xcassets */, + 0D907F1E2322CC5B00D641FE /* LaunchScreen.storyboard */, + 0D907F212322CC5B00D641FE /* Info.plist */, + ); + path = ZcashLightClientSample; + sourceTree = ""; + }; + 0D907F292322CC5B00D641FE /* ZcashLightClientSampleTests */ = { + isa = PBXGroup; + children = ( + 0D907F2A2322CC5B00D641FE /* ZcashLightClientSampleTests.swift */, + 0D907F2C2322CC5B00D641FE /* Info.plist */, + ); + path = ZcashLightClientSampleTests; + sourceTree = ""; + }; + 0D907F342322CC5B00D641FE /* ZcashLightClientSampleUITests */ = { + isa = PBXGroup; + children = ( + 0D907F352322CC5B00D641FE /* ZcashLightClientSampleUITests.swift */, + 0D907F372322CC5B00D641FE /* Info.plist */, + ); + path = ZcashLightClientSampleUITests; + sourceTree = ""; + }; + 66EF5A44FD6A5AC92244F054 /* Pods */ = { + isa = PBXGroup; + children = ( + 93F435FD5C95BEE3BC7BBC28 /* Pods-ZcashLightClientSample.debug.xcconfig */, + 1BEB1273671D6E7883C81472 /* Pods-ZcashLightClientSample.release.xcconfig */, + 7725E5618226722E4FF54D35 /* Pods-ZcashLightClientSampleTests.debug.xcconfig */, + AB3C9B79B6C5CC564852A806 /* Pods-ZcashLightClientSampleTests.release.xcconfig */, + 59BA5F37462FF34F64350712 /* Pods-ZcashLightClientSampleUITests.debug.xcconfig */, + 89F6F4B8F441C9EC43B7412A /* Pods-ZcashLightClientSampleUITests.release.xcconfig */, + ); + name = Pods; + path = Pods; + sourceTree = ""; + }; + A4E309895AA511479901D67E /* Frameworks */ = { + isa = PBXGroup; + children = ( + 17A69D88CA6DB45FA9D21E75 /* Pods_ZcashLightClientSample.framework */, + EC7ACB694E10039AC19A90BE /* Pods_ZcashLightClientSampleTests.framework */, + 3E9E0B112B9AFA48C27C4BC7 /* Pods_ZcashLightClientSampleUITests.framework */, + ); + name = Frameworks; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 0D907F112322CC5900D641FE /* ZcashLightClientSample */ = { + isa = PBXNativeTarget; + buildConfigurationList = 0D907F3A2322CC5B00D641FE /* Build configuration list for PBXNativeTarget "ZcashLightClientSample" */; + buildPhases = ( + 33EFC5F94E60AC06AD108A01 /* [CP] Check Pods Manifest.lock */, + 0D907F0E2322CC5900D641FE /* Sources */, + 0D907F0F2322CC5900D641FE /* Frameworks */, + 0D907F102322CC5900D641FE /* Resources */, + 6F790CD178809E37D3EE225C /* [CP] Embed Pods Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = ZcashLightClientSample; + productName = ZcashLightClientSample; + productReference = 0D907F122322CC5900D641FE /* ZcashLightClientSample.app */; + productType = "com.apple.product-type.application"; + }; + 0D907F252322CC5B00D641FE /* ZcashLightClientSampleTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 0D907F3D2322CC5B00D641FE /* Build configuration list for PBXNativeTarget "ZcashLightClientSampleTests" */; + buildPhases = ( + F0CBB1827AD1030E7E0B4C2A /* [CP] Check Pods Manifest.lock */, + 0D907F222322CC5B00D641FE /* Sources */, + 0D907F232322CC5B00D641FE /* Frameworks */, + 0D907F242322CC5B00D641FE /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 0D907F282322CC5B00D641FE /* PBXTargetDependency */, + ); + name = ZcashLightClientSampleTests; + productName = ZcashLightClientSampleTests; + productReference = 0D907F262322CC5B00D641FE /* ZcashLightClientSampleTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + 0D907F302322CC5B00D641FE /* ZcashLightClientSampleUITests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 0D907F402322CC5B00D641FE /* Build configuration list for PBXNativeTarget "ZcashLightClientSampleUITests" */; + buildPhases = ( + DF7247036A849FB9CB2C5856 /* [CP] Check Pods Manifest.lock */, + 0D907F2D2322CC5B00D641FE /* Sources */, + 0D907F2E2322CC5B00D641FE /* Frameworks */, + 0D907F2F2322CC5B00D641FE /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 0D907F332322CC5B00D641FE /* PBXTargetDependency */, + ); + name = ZcashLightClientSampleUITests; + productName = ZcashLightClientSampleUITests; + productReference = 0D907F312322CC5B00D641FE /* ZcashLightClientSampleUITests.xctest */; + productType = "com.apple.product-type.bundle.ui-testing"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 0D907F0A2322CC5900D641FE /* Project object */ = { + isa = PBXProject; + attributes = { + LastSwiftUpdateCheck = 1020; + LastUpgradeCheck = 1020; + ORGANIZATIONNAME = "Electric Coin Company"; + TargetAttributes = { + 0D907F112322CC5900D641FE = { + CreatedOnToolsVersion = 10.2.1; + }; + 0D907F252322CC5B00D641FE = { + CreatedOnToolsVersion = 10.2.1; + TestTargetID = 0D907F112322CC5900D641FE; + }; + 0D907F302322CC5B00D641FE = { + CreatedOnToolsVersion = 10.2.1; + TestTargetID = 0D907F112322CC5900D641FE; + }; + }; + }; + buildConfigurationList = 0D907F0D2322CC5900D641FE /* Build configuration list for PBXProject "ZcashLightClientSample" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 0D907F092322CC5900D641FE; + productRefGroup = 0D907F132322CC5900D641FE /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 0D907F112322CC5900D641FE /* ZcashLightClientSample */, + 0D907F252322CC5B00D641FE /* ZcashLightClientSampleTests */, + 0D907F302322CC5B00D641FE /* ZcashLightClientSampleUITests */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 0D907F102322CC5900D641FE /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 0D907F202322CC5B00D641FE /* LaunchScreen.storyboard in Resources */, + 0D907F1D2322CC5B00D641FE /* Assets.xcassets in Resources */, + 0D907F1B2322CC5900D641FE /* Main.storyboard in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 0D907F242322CC5B00D641FE /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 0D907F2F2322CC5B00D641FE /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 33EFC5F94E60AC06AD108A01 /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-ZcashLightClientSample-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; + 6F790CD178809E37D3EE225C /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-ZcashLightClientSample/Pods-ZcashLightClientSample-frameworks-${CONFIGURATION}-input-files.xcfilelist", + ); + name = "[CP] Embed Pods Frameworks"; + outputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-ZcashLightClientSample/Pods-ZcashLightClientSample-frameworks-${CONFIGURATION}-output-files.xcfilelist", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-ZcashLightClientSample/Pods-ZcashLightClientSample-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; + DF7247036A849FB9CB2C5856 /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-ZcashLightClientSampleUITests-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; + F0CBB1827AD1030E7E0B4C2A /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-ZcashLightClientSampleTests-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 0D907F0E2322CC5900D641FE /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 0D907F182322CC5900D641FE /* ViewController.swift in Sources */, + 0D907F162322CC5900D641FE /* AppDelegate.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 0D907F222322CC5B00D641FE /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 0D907F2B2322CC5B00D641FE /* ZcashLightClientSampleTests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 0D907F2D2322CC5B00D641FE /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 0D907F362322CC5B00D641FE /* ZcashLightClientSampleUITests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 0D907F282322CC5B00D641FE /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 0D907F112322CC5900D641FE /* ZcashLightClientSample */; + targetProxy = 0D907F272322CC5B00D641FE /* PBXContainerItemProxy */; + }; + 0D907F332322CC5B00D641FE /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 0D907F112322CC5900D641FE /* ZcashLightClientSample */; + targetProxy = 0D907F322322CC5B00D641FE /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin PBXVariantGroup section */ + 0D907F192322CC5900D641FE /* Main.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 0D907F1A2322CC5900D641FE /* Base */, + ); + name = Main.storyboard; + sourceTree = ""; + }; + 0D907F1E2322CC5B00D641FE /* LaunchScreen.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 0D907F1F2322CC5B00D641FE /* Base */, + ); + name = LaunchScreen.storyboard; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + 0D907F382322CC5B00D641FE /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.2; + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + }; + name = Debug; + }; + 0D907F392322CC5B00D641FE /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 12.2; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = YES; + SDKROOT = iphoneos; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 0D907F3B2322CC5B00D641FE /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 93F435FD5C95BEE3BC7BBC28 /* Pods-ZcashLightClientSample.debug.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = 6J82A38BF9; + INFOPLIST_FILE = ZcashLightClientSample/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = co.electriccoin.ZcashLightClientSample; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 0D907F3C2322CC5B00D641FE /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 1BEB1273671D6E7883C81472 /* Pods-ZcashLightClientSample.release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = 6J82A38BF9; + INFOPLIST_FILE = ZcashLightClientSample/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = co.electriccoin.ZcashLightClientSample; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Release; + }; + 0D907F3E2322CC5B00D641FE /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7725E5618226722E4FF54D35 /* Pods-ZcashLightClientSampleTests.debug.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = 6J82A38BF9; + INFOPLIST_FILE = ZcashLightClientSampleTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = co.electriccoin.ZcashLightClientSampleTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/ZcashLightClientSample.app/ZcashLightClientSample"; + }; + name = Debug; + }; + 0D907F3F2322CC5B00D641FE /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = AB3C9B79B6C5CC564852A806 /* Pods-ZcashLightClientSampleTests.release.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = 6J82A38BF9; + INFOPLIST_FILE = ZcashLightClientSampleTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = co.electriccoin.ZcashLightClientSampleTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/ZcashLightClientSample.app/ZcashLightClientSample"; + }; + name = Release; + }; + 0D907F412322CC5B00D641FE /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 59BA5F37462FF34F64350712 /* Pods-ZcashLightClientSampleUITests.debug.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = 6J82A38BF9; + INFOPLIST_FILE = ZcashLightClientSampleUITests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = co.electriccoin.ZcashLightClientSampleUITests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_TARGET_NAME = ZcashLightClientSample; + }; + name = Debug; + }; + 0D907F422322CC5B00D641FE /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 89F6F4B8F441C9EC43B7412A /* Pods-ZcashLightClientSampleUITests.release.xcconfig */; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = 6J82A38BF9; + INFOPLIST_FILE = ZcashLightClientSampleUITests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = co.electriccoin.ZcashLightClientSampleUITests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_TARGET_NAME = ZcashLightClientSample; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 0D907F0D2322CC5900D641FE /* Build configuration list for PBXProject "ZcashLightClientSample" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 0D907F382322CC5B00D641FE /* Debug */, + 0D907F392322CC5B00D641FE /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 0D907F3A2322CC5B00D641FE /* Build configuration list for PBXNativeTarget "ZcashLightClientSample" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 0D907F3B2322CC5B00D641FE /* Debug */, + 0D907F3C2322CC5B00D641FE /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 0D907F3D2322CC5B00D641FE /* Build configuration list for PBXNativeTarget "ZcashLightClientSampleTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 0D907F3E2322CC5B00D641FE /* Debug */, + 0D907F3F2322CC5B00D641FE /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 0D907F402322CC5B00D641FE /* Build configuration list for PBXNativeTarget "ZcashLightClientSampleUITests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 0D907F412322CC5B00D641FE /* Debug */, + 0D907F422322CC5B00D641FE /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 0D907F0A2322CC5900D641FE /* Project object */; +} diff --git a/Example/ZcashLightClientSample/ZcashLightClientSample.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/Example/ZcashLightClientSample/ZcashLightClientSample.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 00000000..9b56a154 --- /dev/null +++ b/Example/ZcashLightClientSample/ZcashLightClientSample.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/Example/ZcashLightClientSample/ZcashLightClientSample.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/Example/ZcashLightClientSample/ZcashLightClientSample.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 00000000..18d98100 --- /dev/null +++ b/Example/ZcashLightClientSample/ZcashLightClientSample.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/Example/ZcashLightClientSample/ZcashLightClientSample.xcodeproj/xcshareddata/xcschemes/ZcashLightClientSample.xcscheme b/Example/ZcashLightClientSample/ZcashLightClientSample.xcodeproj/xcshareddata/xcschemes/ZcashLightClientSample.xcscheme new file mode 100644 index 00000000..1fc2d090 --- /dev/null +++ b/Example/ZcashLightClientSample/ZcashLightClientSample.xcodeproj/xcshareddata/xcschemes/ZcashLightClientSample.xcscheme @@ -0,0 +1,111 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Example/ZcashLightClientSample/ZcashLightClientSample.xcworkspace/contents.xcworkspacedata b/Example/ZcashLightClientSample/ZcashLightClientSample.xcworkspace/contents.xcworkspacedata new file mode 100644 index 00000000..809ee900 --- /dev/null +++ b/Example/ZcashLightClientSample/ZcashLightClientSample.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,10 @@ + + + + + + + diff --git a/Example/ZcashLightClientSample/ZcashLightClientSample.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/Example/ZcashLightClientSample/ZcashLightClientSample.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 00000000..18d98100 --- /dev/null +++ b/Example/ZcashLightClientSample/ZcashLightClientSample.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/Example/ZcashLightClientSample/ZcashLightClientSample.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/Example/ZcashLightClientSample/ZcashLightClientSample.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 00000000..949b6789 --- /dev/null +++ b/Example/ZcashLightClientSample/ZcashLightClientSample.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + BuildSystemType + Original + + diff --git a/Example/ZcashLightClientSample/ZcashLightClientSample/AppDelegate.swift b/Example/ZcashLightClientSample/ZcashLightClientSample/AppDelegate.swift new file mode 100644 index 00000000..568e9f54 --- /dev/null +++ b/Example/ZcashLightClientSample/ZcashLightClientSample/AppDelegate.swift @@ -0,0 +1,46 @@ +// +// AppDelegate.swift +// ZcashLightClientSample +// +// Created by Francisco Gindre on 06/09/2019. +// Copyright © 2019 Electric Coin Company. All rights reserved. +// + +import UIKit + +@UIApplicationMain +class AppDelegate: UIResponder, UIApplicationDelegate { + + var window: UIWindow? + + + func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { + // Override point for customization after application launch. + return true + } + + func applicationWillResignActive(_ application: UIApplication) { + // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state. + // Use this method to pause ongoing tasks, disable timers, and invalidate graphics rendering callbacks. Games should use this method to pause the game. + } + + func applicationDidEnterBackground(_ application: UIApplication) { + // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. + // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits. + } + + func applicationWillEnterForeground(_ application: UIApplication) { + // Called as part of the transition from the background to the active state; here you can undo many of the changes made on entering the background. + } + + func applicationDidBecomeActive(_ application: UIApplication) { + // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface. + } + + func applicationWillTerminate(_ application: UIApplication) { + // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:. + } + + +} + diff --git a/Example/ZcashLightClientSample/ZcashLightClientSample/Assets.xcassets/AppIcon.appiconset/Contents.json b/Example/ZcashLightClientSample/ZcashLightClientSample/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 00000000..d8db8d65 --- /dev/null +++ b/Example/ZcashLightClientSample/ZcashLightClientSample/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,98 @@ +{ + "images" : [ + { + "idiom" : "iphone", + "size" : "20x20", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "20x20", + "scale" : "3x" + }, + { + "idiom" : "iphone", + "size" : "29x29", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "29x29", + "scale" : "3x" + }, + { + "idiom" : "iphone", + "size" : "40x40", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "40x40", + "scale" : "3x" + }, + { + "idiom" : "iphone", + "size" : "60x60", + "scale" : "2x" + }, + { + "idiom" : "iphone", + "size" : "60x60", + "scale" : "3x" + }, + { + "idiom" : "ipad", + "size" : "20x20", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "20x20", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "29x29", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "29x29", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "40x40", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "40x40", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "76x76", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "76x76", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "83.5x83.5", + "scale" : "2x" + }, + { + "idiom" : "ios-marketing", + "size" : "1024x1024", + "scale" : "1x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/Example/ZcashLightClientSample/ZcashLightClientSample/Assets.xcassets/Contents.json b/Example/ZcashLightClientSample/ZcashLightClientSample/Assets.xcassets/Contents.json new file mode 100644 index 00000000..da4a164c --- /dev/null +++ b/Example/ZcashLightClientSample/ZcashLightClientSample/Assets.xcassets/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "version" : 1, + "author" : "xcode" + } +} \ No newline at end of file diff --git a/Example/ZcashLightClientSample/ZcashLightClientSample/Base.lproj/LaunchScreen.storyboard b/Example/ZcashLightClientSample/ZcashLightClientSample/Base.lproj/LaunchScreen.storyboard new file mode 100644 index 00000000..bfa36129 --- /dev/null +++ b/Example/ZcashLightClientSample/ZcashLightClientSample/Base.lproj/LaunchScreen.storyboard @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Example/ZcashLightClientSample/ZcashLightClientSample/Base.lproj/Main.storyboard b/Example/ZcashLightClientSample/ZcashLightClientSample/Base.lproj/Main.storyboard new file mode 100644 index 00000000..f1bcf384 --- /dev/null +++ b/Example/ZcashLightClientSample/ZcashLightClientSample/Base.lproj/Main.storyboard @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Example/ZcashLightClientSample/ZcashLightClientSample/Info.plist b/Example/ZcashLightClientSample/ZcashLightClientSample/Info.plist new file mode 100644 index 00000000..16be3b68 --- /dev/null +++ b/Example/ZcashLightClientSample/ZcashLightClientSample/Info.plist @@ -0,0 +1,45 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + APPL + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + LSRequiresIPhoneOS + + UILaunchStoryboardName + LaunchScreen + UIMainStoryboardFile + Main + UIRequiredDeviceCapabilities + + armv7 + + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + + diff --git a/Example/ZcashLightClientSample/ZcashLightClientSample/ViewController.swift b/Example/ZcashLightClientSample/ZcashLightClientSample/ViewController.swift new file mode 100644 index 00000000..f9cc95e8 --- /dev/null +++ b/Example/ZcashLightClientSample/ZcashLightClientSample/ViewController.swift @@ -0,0 +1,20 @@ +// +// ViewController.swift +// ZcashLightClientSample +// +// Created by Francisco Gindre on 06/09/2019. +// Copyright © 2019 Electric Coin Company. All rights reserved. +// + +import UIKit + +class ViewController: UIViewController { + + override func viewDidLoad() { + super.viewDidLoad() + // Do any additional setup after loading the view. + } + + +} + diff --git a/Example/ZcashLightClientSample/ZcashLightClientSampleTests/Info.plist b/Example/ZcashLightClientSample/ZcashLightClientSampleTests/Info.plist new file mode 100644 index 00000000..6c40a6cd --- /dev/null +++ b/Example/ZcashLightClientSample/ZcashLightClientSampleTests/Info.plist @@ -0,0 +1,22 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + BNDL + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + + diff --git a/Example/ZcashLightClientSample/ZcashLightClientSampleTests/ZcashLightClientSampleTests.swift b/Example/ZcashLightClientSample/ZcashLightClientSampleTests/ZcashLightClientSampleTests.swift new file mode 100644 index 00000000..bcbb8bbe --- /dev/null +++ b/Example/ZcashLightClientSample/ZcashLightClientSampleTests/ZcashLightClientSampleTests.swift @@ -0,0 +1,49 @@ +// +// ZcashLightClientSampleTests.swift +// ZcashLightClientSampleTests +// +// Created by Francisco Gindre on 06/09/2019. +// Copyright © 2019 Electric Coin Company. All rights reserved. +// + +import XCTest +import ZcashLightClientKit +@testable import ZcashLightClientSample + +class ZcashLightClientSampleTests: XCTestCase { + + var dbData: URL? = nil + + override func setUp() { + let dataDir = try! FileManager.default.url(for: .documentDirectory, in: .userDomainMask, appropriateFor: nil, create: true) + dbData = dataDir.appendingPathComponent("data.db") + } + + override func tearDown() { + // Delete test database between runs + do { + try FileManager.default.removeItem(at: dbData!) + } catch { + } + } + + func testInitAndGetAddress() { + let seed = "seed" + + XCTAssert(ZcashRustBackend.initDataDb(dbData: dbData!)) + XCTAssertEqual(ZcashRustBackend.getLastError(), nil) + + let _ = ZcashRustBackend.initAccountsTable(dbData: dbData!, seed: Array(seed.utf8), accounts: 1) + XCTAssertEqual(ZcashRustBackend.getLastError(), nil) + + let addr = ZcashRustBackend.getAddress(dbData: dbData!, account: 0) + XCTAssertEqual(ZcashRustBackend.getLastError(), nil) + XCTAssertEqual(addr, Optional("ztestsapling1meqz0cd598fw0jlq2htkuarg8gqv36fam83yxmu5mu3wgkx4khlttqhqaxvwf57urm3rqsq9t07")) + + // Test invalid account + let addr2 = ZcashRustBackend.getAddress(dbData: dbData!, account: 1) + XCTAssert(ZcashRustBackend.getLastError() != nil) + XCTAssertEqual(addr2, nil) + } + +} diff --git a/Example/ZcashLightClientSample/ZcashLightClientSampleUITests/Info.plist b/Example/ZcashLightClientSample/ZcashLightClientSampleUITests/Info.plist new file mode 100644 index 00000000..6c40a6cd --- /dev/null +++ b/Example/ZcashLightClientSample/ZcashLightClientSampleUITests/Info.plist @@ -0,0 +1,22 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + BNDL + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + + diff --git a/Example/ZcashLightClientSample/ZcashLightClientSampleUITests/ZcashLightClientSampleUITests.swift b/Example/ZcashLightClientSample/ZcashLightClientSampleUITests/ZcashLightClientSampleUITests.swift new file mode 100644 index 00000000..7e2c98a8 --- /dev/null +++ b/Example/ZcashLightClientSample/ZcashLightClientSampleUITests/ZcashLightClientSampleUITests.swift @@ -0,0 +1,34 @@ +// +// ZcashLightClientSampleUITests.swift +// ZcashLightClientSampleUITests +// +// Created by Francisco Gindre on 06/09/2019. +// Copyright © 2019 Electric Coin Company. All rights reserved. +// + +import XCTest + +class ZcashLightClientSampleUITests: XCTestCase { + + override func setUp() { + // Put setup code here. This method is called before the invocation of each test method in the class. + + // In UI tests it is usually best to stop immediately when a failure occurs. + continueAfterFailure = false + + // UI tests must launch the application that they test. Doing this in setup will make sure it happens for each test method. + XCUIApplication().launch() + + // In UI tests it’s important to set the initial state - such as interface orientation - required for your tests before they run. The setUp method is a good place to do this. + } + + override func tearDown() { + // Put teardown code here. This method is called after the invocation of each test method in the class. + } + + func testExample() { + // Use recording to get started writing UI tests. + // Use XCTAssert and related functions to verify your tests produce the correct results. + } + +} diff --git a/ZcashLightClientKit.modulemap b/ZcashLightClientKit.modulemap new file mode 100644 index 00000000..77da91ea --- /dev/null +++ b/ZcashLightClientKit.modulemap @@ -0,0 +1,13 @@ +framework module ZcashLightClientKit { + umbrella header "ZcashLightClientKit.h" + + export * + module * { export * } + + module Zcashlc [system][extern_c] { + header "zcashlc.h" + export * + } + +} + diff --git a/ZcashLightClientKit.podspec b/ZcashLightClientKit.podspec new file mode 100644 index 00000000..52938263 --- /dev/null +++ b/ZcashLightClientKit.podspec @@ -0,0 +1,40 @@ +Pod::Spec.new do |s| + s.name = 'ZcashLightClientKit' + s.version = '0.0.1' + s.summary = 'Zcash Light Client wallet SDK for iOS' + + s.description = <<-DESC + Zcash Light Client wallet SDK for iOS + DESC + + s.homepage = 'https://github.com/zcash/ZcashLightClientKit' + s.license = { :type => 'Apache 2.0', :file => 'LICENSE' } + s.author = { 'Francisco Gindre' => 'francisco.gindre@gmail.com' } + s.source = { :git => 'https://github.com/zcash/ZcashLightClientKit.git', :tag => s.version.to_s } + + s.public_header_files = 'ZcashLightClientKit/**/*.h' + s.source_files = 'ZcashLightClientKit/**/*.{swift,h,a}' + s.module_map = 'ZcashLightClientKit.modulemap' + + # s.script_phases = [ + # { + # :name => "build librustzcash", + # :script => '${PODS_TARGET_SRCROOT}/build_librustzcash.sh', + # :execution_position => :before_compile + # } + # ] + s.swift_version = '5.0' + s.ios.deployment_target = '11.0' + s.ios.vendored_libraries = 'lib/libzcashlc.a' + #s.prepare_command = 'sh prepare.sh' + s.prepare_command = <<-CMD + BASEPATH="${PWD}" + echo "Building librustzcash library..." + cargo build && cargo lipo + + mkdir -p lib + cp target/universal/debug/* lib/ + cp -rf target/universal/debug/* ZcashLightClientKit/zcashlc + CMD + end + \ No newline at end of file diff --git a/ZcashLightClientKit/ZcashRustBackend.swift b/ZcashLightClientKit/ZcashRustBackend.swift index 418c06b6..a06f6f67 100644 --- a/ZcashLightClientKit/ZcashRustBackend.swift +++ b/ZcashLightClientKit/ZcashRustBackend.swift @@ -7,7 +7,7 @@ // import Foundation -import Zcashlc + public class ZcashRustBackend { static func osStrFromURL(_ url: URL) -> (String, UInt) { diff --git a/build_librustzcash.sh b/build_librustzcash.sh new file mode 100755 index 00000000..15ba6a89 --- /dev/null +++ b/build_librustzcash.sh @@ -0,0 +1,22 @@ +export PATH="$HOME/.cargo/bin:$PATH" +export RUST_LIB_PATH="${PODS_TARGET_SRCROOT}/lib" +export ZCASH_LIB_RUST_PATH="${PODS_TARGET_SRCROOT}/target" +export ZCASH_LIB_RUST_NAME="libzcashlc.a" +if [ "$ACTION" = "clean" ]; then + cargo clean + if [ -d "${RUST_LIB_PATH}" ]; then + rm -rf "${RUST_LIB_PATH}" + fi + if [ -d "${ZCASH_LIB_RUST_PATH}" ]; then + rm -rf "${ZCASH_LIB_RUST_PATH}" + fi + +else + cargo lipo --xcode-integ --manifest-path ${PODS_TARGET_SRCROOT}/Cargo.toml + + if [ ! -d "${RUST_LIB_PATH}" ]; then + mkdir -p "${RUST_LIB_PATH}" + fi + + cp -f "${ZCASH_LIB_RUST_PATH}/universal/${CONFIGURATION}/${ZCASH_LIB_RUST_NAME}" ${ZCASH_LIB_RUST_PATH} +fi \ No newline at end of file diff --git a/prepare.rb b/prepare.rb new file mode 100644 index 00000000..0295bdbb --- /dev/null +++ b/prepare.rb @@ -0,0 +1,3 @@ +require 'xcodeproj' + + diff --git a/prepare.sh b/prepare.sh new file mode 100644 index 00000000..22cc415f --- /dev/null +++ b/prepare.sh @@ -0,0 +1,7 @@ +if [ ! -d lib ]; then + mkdir -p lib +fi +pushd . +cd lib +touch libzcashlc.a +popd \ No newline at end of file From cb54a800b43375d2788d16788d475d8f5aa2096c Mon Sep 17 00:00:00 2001 From: Francisco Gindre Date: Mon, 9 Sep 2019 12:47:03 -0300 Subject: [PATCH 2/5] improve README.md --- README.md | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 4316f107..b8bf30e7 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,8 @@ # Zcash iOS Framework +A Zcash Lightweight Client SDK for iOS -## Build dependencies + +# Build dependencies Install [Rust](https://www.rust-lang.org/learn/get-started), and then `cargo-lipo`: @@ -8,3 +10,25 @@ Install [Rust](https://www.rust-lang.org/learn/get-started), and then `cargo-lip $ cargo install cargo-lipo $ rustup target add aarch64-apple-ios x86_64-apple-ios ``` + +# Cocoapods Support + +```` ruby +use_frameworks! + +pod 'ZcashLightClientKit' +```` +## Troubleshooting + +#### _function_name referenced from... +if you get a build error similar to ```_function_name referenced from...``` + +* on your project root directory * +1. remove the 'Pods' directory ``` rm -rf Pods/``` +2. delete derived data and clean +3. run ```pod install``` +4. build + + +# License +Apache License Version 2.0 From 43575094b4e727eff22f2cf1af10a9ce4a2350ad Mon Sep 17 00:00:00 2001 From: Francisco Gindre Date: Mon, 9 Sep 2019 12:54:21 -0300 Subject: [PATCH 3/5] Podspec clean up --- Example/ZcashLightClientSample/Podfile.lock | 16 ---------------- ZcashLightClientKit.podspec | 14 ++++---------- 2 files changed, 4 insertions(+), 26 deletions(-) delete mode 100644 Example/ZcashLightClientSample/Podfile.lock diff --git a/Example/ZcashLightClientSample/Podfile.lock b/Example/ZcashLightClientSample/Podfile.lock deleted file mode 100644 index 67339e4b..00000000 --- a/Example/ZcashLightClientSample/Podfile.lock +++ /dev/null @@ -1,16 +0,0 @@ -PODS: - - ZcashLightClientKit (0.0.1) - -DEPENDENCIES: - - ZcashLightClientKit (from `../../`) - -EXTERNAL SOURCES: - ZcashLightClientKit: - :path: "../../" - -SPEC CHECKSUMS: - ZcashLightClientKit: eacf5e530a210e9eef6e9608696a5d70893cb997 - -PODFILE CHECKSUM: 7c9d39272319433442b14024a916deb276e81da4 - -COCOAPODS: 1.7.5 diff --git a/ZcashLightClientKit.podspec b/ZcashLightClientKit.podspec index 52938263..5fca7ec2 100644 --- a/ZcashLightClientKit.podspec +++ b/ZcashLightClientKit.podspec @@ -9,24 +9,18 @@ Pod::Spec.new do |s| s.homepage = 'https://github.com/zcash/ZcashLightClientKit' s.license = { :type => 'Apache 2.0', :file => 'LICENSE' } - s.author = { 'Francisco Gindre' => 'francisco.gindre@gmail.com' } + s.author = { + 'Francisco Gindre' => 'francisco.gindre@gmail.com', + 'Jack Grigg' => 'str4d@electriccoin.co' + } s.source = { :git => 'https://github.com/zcash/ZcashLightClientKit.git', :tag => s.version.to_s } s.public_header_files = 'ZcashLightClientKit/**/*.h' s.source_files = 'ZcashLightClientKit/**/*.{swift,h,a}' s.module_map = 'ZcashLightClientKit.modulemap' - - # s.script_phases = [ - # { - # :name => "build librustzcash", - # :script => '${PODS_TARGET_SRCROOT}/build_librustzcash.sh', - # :execution_position => :before_compile - # } - # ] s.swift_version = '5.0' s.ios.deployment_target = '11.0' s.ios.vendored_libraries = 'lib/libzcashlc.a' - #s.prepare_command = 'sh prepare.sh' s.prepare_command = <<-CMD BASEPATH="${PWD}" echo "Building librustzcash library..." From dc5496e6ff902278c5cb949aba2c388388e1eee6 Mon Sep 17 00:00:00 2001 From: Francisco Gindre Date: Mon, 9 Sep 2019 12:54:39 -0300 Subject: [PATCH 4/5] remove unused script --- prepare.sh | 7 ------- 1 file changed, 7 deletions(-) delete mode 100644 prepare.sh diff --git a/prepare.sh b/prepare.sh deleted file mode 100644 index 22cc415f..00000000 --- a/prepare.sh +++ /dev/null @@ -1,7 +0,0 @@ -if [ ! -d lib ]; then - mkdir -p lib -fi -pushd . -cd lib -touch libzcashlc.a -popd \ No newline at end of file From d5debab6848e703cc68cd6bd85b8c64fa98f825f Mon Sep 17 00:00:00 2001 From: Francisco Gindre Date: Mon, 9 Sep 2019 15:33:26 -0300 Subject: [PATCH 5/5] Add SwiftGRPC dependency --- ZcashLightClientKit.podspec | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ZcashLightClientKit.podspec b/ZcashLightClientKit.podspec index 5fca7ec2..e5814b9f 100644 --- a/ZcashLightClientKit.podspec +++ b/ZcashLightClientKit.podspec @@ -20,6 +20,10 @@ Pod::Spec.new do |s| s.module_map = 'ZcashLightClientKit.modulemap' s.swift_version = '5.0' s.ios.deployment_target = '11.0' + + s.dependency 'SwiftGRPC' + + s.ios.vendored_libraries = 'lib/libzcashlc.a' s.prepare_command = <<-CMD BASEPATH="${PWD}"