Enabled iOS build and tests

This commit is contained in:
Maurice Parker 2019-10-12 07:48:34 -05:00
parent b6cb1b8f21
commit 336f71d9a3
11 changed files with 365 additions and 11 deletions

View File

@ -8,8 +8,7 @@ jobs:
runs-on: macOS-latest
strategy:
matrix:
scheme: ['NetNewsWire']
# scheme: ['NetNewsWire', 'NetNewsWire-iOS']
scheme: ['NetNewsWire', 'NetNewsWire-iOS']
steps:
- name: Checkout Project

View File

@ -92,6 +92,7 @@
5183CCE6226F4E110010922C /* RefreshInterval.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5183CCE4226F4DFA0010922C /* RefreshInterval.swift */; };
5183CCE8226F68D90010922C /* AccountRefreshTimer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5183CCE7226F68D90010922C /* AccountRefreshTimer.swift */; };
5183CCE9226F68D90010922C /* AccountRefreshTimer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5183CCE7226F68D90010922C /* AccountRefreshTimer.swift */; };
518B2EE82351B45600400001 /* NetNewsWire_iOSTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 840D61952029031D009BC708 /* NetNewsWire_iOSTests.swift */; };
51934CCB230F599B006127BE /* ThemedNavigationController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 51934CC1230F5963006127BE /* ThemedNavigationController.swift */; };
51934CCE2310792F006127BE /* ActivityManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 51934CCD2310792F006127BE /* ActivityManager.swift */; };
51938DF2231AFC660055A1A0 /* SearchTimelineFeedDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 51938DF1231AFC660055A1A0 /* SearchTimelineFeedDelegate.swift */; };
@ -424,6 +425,13 @@
remoteGlobalIDString = 51554BEA228B6E8F0055115A;
remoteInfo = SyncDatabase;
};
518B2ED72351B3DD00400001 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 849C64581ED37A5D003D8FC0 /* Project object */;
proxyType = 1;
remoteGlobalIDString = 840D617B2029031C009BC708;
remoteInfo = "NetNewsWire-iOS";
};
51C451AB226377C300C03939 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 841D4D5E2106B3E100DD04E6 /* ArticlesDatabase.xcodeproj */;
@ -768,6 +776,8 @@
5183CCDE226F1FCC0010922C /* UINavigationController+Progress.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "UINavigationController+Progress.swift"; sourceTree = "<group>"; };
5183CCE4226F4DFA0010922C /* RefreshInterval.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RefreshInterval.swift; sourceTree = "<group>"; };
5183CCE7226F68D90010922C /* AccountRefreshTimer.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AccountRefreshTimer.swift; sourceTree = "<group>"; };
518B2ED22351B3DD00400001 /* NetNewsWire-iOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "NetNewsWire-iOSTests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; };
518B2EE92351B4C200400001 /* NetNewsWire_iOSTests_target.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = NetNewsWire_iOSTests_target.xcconfig; sourceTree = "<group>"; };
51934CC1230F5963006127BE /* ThemedNavigationController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ThemedNavigationController.swift; sourceTree = "<group>"; };
51934CCD2310792F006127BE /* ActivityManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ActivityManager.swift; sourceTree = "<group>"; };
51938DF1231AFC660055A1A0 /* SearchTimelineFeedDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SearchTimelineFeedDelegate.swift; sourceTree = "<group>"; };
@ -1060,6 +1070,13 @@
);
runOnlyForDeploymentPostprocessing = 0;
};
518B2ECF2351B3DD00400001 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
6581C73020CED60000F4AD34 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
@ -1717,6 +1734,7 @@
840D617C2029031C009BC708 /* NetNewsWire.app */,
6581C73320CED60000F4AD34 /* Subscribe to Feed.appex */,
513C5CE6232571C2003D4054 /* NetNewsWire iOS Share Extension.appex */,
518B2ED22351B3DD00400001 /* NetNewsWire-iOSTests.xctest */,
);
name = Products;
sourceTree = "<group>";
@ -2067,6 +2085,7 @@
D519E74722EE553300923F27 /* NetNewsWire_safariextension_target.xcconfig */,
51121AA12265430A00BC0EC1 /* NetNewsWire_iOSapp_target.xcconfig */,
515D4FCE2325B3D000EE1167 /* NetNewsWire_iOSshareextension_target.xcconfig */,
518B2EE92351B4C200400001 /* NetNewsWire_iOSTests_target.xcconfig */,
6543108B2322D90900658221 /* common */,
);
path = xcconfig;
@ -2111,6 +2130,24 @@
productReference = 513C5CE6232571C2003D4054 /* NetNewsWire iOS Share Extension.appex */;
productType = "com.apple.product-type.app-extension";
};
518B2ED12351B3DD00400001 /* NetNewsWire-iOSTests */ = {
isa = PBXNativeTarget;
buildConfigurationList = 518B2EE72351B3DD00400001 /* Build configuration list for PBXNativeTarget "NetNewsWire-iOSTests" */;
buildPhases = (
518B2ECE2351B3DD00400001 /* Sources */,
518B2ECF2351B3DD00400001 /* Frameworks */,
518B2ED02351B3DD00400001 /* Resources */,
);
buildRules = (
);
dependencies = (
518B2ED82351B3DD00400001 /* PBXTargetDependency */,
);
name = "NetNewsWire-iOSTests";
productName = "NetNewsWire-iOSTests";
productReference = 518B2ED22351B3DD00400001 /* NetNewsWire-iOSTests.xctest */;
productType = "com.apple.product-type.bundle.unit-test";
};
6581C73220CED60000F4AD34 /* Subscribe to Feed */ = {
isa = PBXNativeTarget;
buildConfigurationList = 6581C75620CED60100F4AD34 /* Build configuration list for PBXNativeTarget "Subscribe to Feed" */;
@ -2208,7 +2245,7 @@
849C64581ED37A5D003D8FC0 /* Project object */ = {
isa = PBXProject;
attributes = {
LastSwiftUpdateCheck = 1100;
LastSwiftUpdateCheck = 1120;
LastUpgradeCheck = 0930;
ORGANIZATIONNAME = "Ranchero Software";
TargetAttributes = {
@ -2217,6 +2254,12 @@
DevelopmentTeam = SHJK2V3AJG;
ProvisioningStyle = Automatic;
};
518B2ED12351B3DD00400001 = {
CreatedOnToolsVersion = 11.2;
DevelopmentTeam = SHJK2V3AJG;
ProvisioningStyle = Automatic;
TestTargetID = 840D617B2029031C009BC708;
};
6581C73220CED60000F4AD34 = {
DevelopmentTeam = SHJK2V3AJG;
ProvisioningStyle = Automatic;
@ -2306,6 +2349,7 @@
840D617B2029031C009BC708 /* NetNewsWire-iOS */,
6581C73220CED60000F4AD34 /* Subscribe to Feed */,
513C5CE5232571C2003D4054 /* NetNewsWire iOS Share Extension */,
518B2ED12351B3DD00400001 /* NetNewsWire-iOSTests */,
);
};
/* End PBXProject section */
@ -2463,6 +2507,13 @@
);
runOnlyForDeploymentPostprocessing = 0;
};
518B2ED02351B3DD00400001 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
6581C73120CED60000F4AD34 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
@ -2706,6 +2757,14 @@
);
runOnlyForDeploymentPostprocessing = 0;
};
518B2ECE2351B3DD00400001 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
518B2EE82351B45600400001 /* NetNewsWire_iOSTests.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
6581C72F20CED60000F4AD34 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
@ -3019,6 +3078,11 @@
name = SyncDatabase;
targetProxy = 51554C26228B71910055115A /* PBXContainerItemProxy */;
};
518B2ED82351B3DD00400001 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
target = 840D617B2029031C009BC708 /* NetNewsWire-iOS */;
targetProxy = 518B2ED72351B3DD00400001 /* PBXContainerItemProxy */;
};
51C451AC226377C300C03939 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
name = ArticlesDatabase;
@ -3172,6 +3236,27 @@
};
name = Release;
};
518B2ED92351B3DD00400001 /* Debug */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = 518B2EE92351B4C200400001 /* NetNewsWire_iOSTests_target.xcconfig */;
buildSettings = {
};
name = Debug;
};
518B2EDA2351B3DD00400001 /* Test */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = 518B2EE92351B4C200400001 /* NetNewsWire_iOSTests_target.xcconfig */;
buildSettings = {
};
name = Test;
};
518B2EDB2351B3DD00400001 /* Release */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = 518B2EE92351B4C200400001 /* NetNewsWire_iOSTests_target.xcconfig */;
buildSettings = {
};
name = Release;
};
51EC892A23511DA80061B6F6 /* Test */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = 51EC892923511D3B0061B6F6 /* NetNewsWire_project_test.xcconfig */;
@ -3297,6 +3382,16 @@
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
518B2EE72351B3DD00400001 /* Build configuration list for PBXNativeTarget "NetNewsWire-iOSTests" */ = {
isa = XCConfigurationList;
buildConfigurations = (
518B2ED92351B3DD00400001 /* Debug */,
518B2EDA2351B3DD00400001 /* Test */,
518B2EDB2351B3DD00400001 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
6581C75620CED60100F4AD34 /* Build configuration list for PBXNativeTarget "Subscribe to Feed" */ = {
isa = XCConfigurationList;
buildConfigurations = (

View File

@ -43,6 +43,16 @@
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES">
<Testables>
<TestableReference
skipped = "NO">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "518B2ED12351B3DD00400001"
BuildableName = "NetNewsWire-iOSTests.xctest"
BlueprintName = "NetNewsWire-iOSTests"
ReferencedContainer = "container:NetNewsWire.xcodeproj">
</BuildableReference>
</TestableReference>
</Testables>
</TestAction>
<LaunchAction

View File

@ -23,11 +23,51 @@
</BuildActionEntries>
</BuildAction>
<TestAction
buildConfiguration = "Debug"
buildConfiguration = "Test"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES">
<Testables>
<TestableReference
skipped = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "848934FE1F62484F00CEBD24"
BuildableName = "AccountTests.xctest"
BlueprintName = "AccountTests"
ReferencedContainer = "container:Frameworks/Account/Account.xcodeproj">
</BuildableReference>
</TestableReference>
<TestableReference
skipped = "NO">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "844BEE631F0AB3C9004AB7CD"
BuildableName = "ArticlesTests.xctest"
BlueprintName = "ArticlesTests"
ReferencedContainer = "container:Frameworks/Articles/Articles.xcodeproj">
</BuildableReference>
</TestableReference>
<TestableReference
skipped = "NO">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "844BEE3F1F0AB3AB004AB7CD"
BuildableName = "ArticlesDatabaseTests.xctest"
BlueprintName = "ArticlesDatabaseTests"
ReferencedContainer = "container:Frameworks/ArticlesDatabase/ArticlesDatabase.xcodeproj">
</BuildableReference>
</TestableReference>
<TestableReference
skipped = "NO">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "518B2ED12351B3DD00400001"
BuildableName = "NetNewsWire-iOSTests.xctest"
BlueprintName = "NetNewsWire-iOSTests"
ReferencedContainer = "container:NetNewsWire.xcodeproj">
</BuildableReference>
</TestableReference>
</Testables>
</TestAction>
<LaunchAction

View File

@ -7,7 +7,6 @@
//
import XCTest
@testable import NetNewsWire_iOS
class NetNewsWire_iOSTests: XCTestCase {

View File

@ -0,0 +1,31 @@
U2FsdGVkX1+Eeaxa7QvsW0OZ4m5AQrhZQW8T2BtkspJoE24WH+Ou6FKDx8yR4sil
LU+ftl161vTbm1OKWjGqoJP08gL9qREKw2BkxKpRLhmQFv0O8U6YEKmu9VEJpr/y
c9oy8YosZGWbgUNsdHLKurKaGBvsLTkB3+EaZTnAb0dH7y33eGCHriAZCrW329Tr
gw34PGWYfIg7tfJVIfdx/1AA6lEmI+sxmRBRqsY8CraFvV6zeu/vVF7uW+sM+uYS
jS/PZkrqfmZ7p+496f16wfcAT/uIakLvSdifY3FDQOG5giFvozgGamSjVVhh8zwz
zmFQyxQ8xr+BN11RDNWqVlFAqOLxqbnMFp65risyM3g5vwd3IhdtGOo/nIbdC7yo
/oXyPysFYCW/pwoh1Bd5hhvjQuArt675EmA9jdrQwxseye6EsFJQS+mM9HzLQR2F
+RkYPFp52Gkv/euriNyczC4+ayDQuewC2QAXXia8JbuEqBRZrO34xq+Wsf5WVhb2
ve6+KlJvo7yWBLSr6htYNIlA7MLO89G+0FuBGKDMCXWhSXzwfkhF35ZuJ/qjFYCO
FTO+OaSAnXeVGz78uAB4a09moGUEg8vfRWV2OkUABh+Nwt4b65qj5ftcW7hxquel
a/sTVDqA0ULvLlDgP6vCCn0s4n9ITrgdIOHiRnAveIkk5JEfSanKQCl0BW/ppSTL
QI+47m67HBCkLAImtuI29khKas3HEwWwaiUp2KOy4YUCd0iZHGW03tLRZmalOZoS
nrgE/wP4giVE5YuDun1TVbgs7Jy6+2AXgvs2n1wxykas4H4F+zhqm7OlEUCbvktj
0M044aMb6hB4BH/nKuJKUzdeHNdQY8QyLHU5XwzVIH1u2EKenx3zuxhLhz19Ah/p
wbTeWHcSnOiDHhCBchLQowk+gdk4ndcKyu8/Wz3k8aNtk7e7jwhATWJ5oj73RMUZ
qzwEBK8dFaNekWGDHtEOk//NObsG0Tg2sFffpaOdoxk08E0XDbrYcBkhG4/Awi9k
it4tkaKJFU1IYq4xkD8Bk35a/ywhXYrn8jIoSE522sb3dJNBRCeG5IliUVWi8SgC
c1rfo4hEUqLbJdO/Wuyn+oZZpiEKRKJPRfrMcLpxSnceBs9hs2fn/PehWHRzChan
0rDHsoJ6cu7lWA/uvdxmIptvvOTXFM2Yo1plwU8+7w6MUy0zFm9kjl+uXr/VB3Dz
VHaBGUXfNwqsnZgYqP47ekDCM7jBVmUg3HS2lFmFEjqRlhfOEMclzbJk5i0a/op7
kYRwnCMgyJU5xqNU+i9NnPbxlM9/ALMZFUsEEDK82nsRZ7AE45O4I7kcTkvEYO6T
aJNM5oOHBXnvciikh/VJGURz4Sn7P584Npt9XvEsB3uL2FpxihZblLx0qSl2F3SM
Pgi4WQtf0SIp92adYJ7a/VxDCp+aGlNapAydeBFoEy+R9eKhh49nrswT8CU3SsMU
9gQy2WcEqHpKpt+Qsclp4FfbEgkcRBheYt//JbDhCYiyjy8mDw+TNQInbmbrLer6
Kka0tWHsydCP8qLU+6XFHMSRuswOqeqg5nNmY059nX8Me3eBr+O+Uws7VNSwQ8JC
sMiGb3O659Cnxly9ygtoXzp/azOat7TI3MCmPqbyYtO9g+8DWhRR9TM92tsled1Z
83h8dJ0G7Vs4WiOOzHjTOcCQCkXnDuarmK8GqSCSeEpD7bHIFZzjz+/CI7/DLjUo
survwcdzVEeEWSIAir3LagI/Vw5HwQHypzduvY66WBCg/t5dKVVTm61wc0TzmseR
1omypZBHR19xIpoOM9KH3J1FToA5X/ptHGQ8tXqblCDw++DTuljb4vpNe0AElL+I
WXpy8LNqH1fsSBwLku/0XQRcX+I2LUlj1c8Q1Fcr+ilXff1f5Hxw0mqvc8z+J8pN
UWEQ0lpfqMKrHrZVVubxek3nVThc6qKfc8ISArNp6EM=

View File

@ -2,15 +2,18 @@
set -v
set -e
# Unencrypt our provisioning profile, certificate, and private key
# Unencrypt our provisioning profiles, certificates, and private key
openssl aes-256-cbc -k "$ENCRYPTION_SECRET" -in buildscripts/profile/NetNewsWire.provisionprofile.enc -d -a -out buildscripts/profile/NetNewsWire.provisionprofile
openssl aes-256-cbc -k "$ENCRYPTION_SECRET" -in buildscripts/profile/NetNewsWireiOS.mobileprovision.enc -d -a -out buildscripts/profile/NetNewsWireiOS.mobileprovision
openssl aes-256-cbc -k "$ENCRYPTION_SECRET" -in buildscripts/certs/mac-dist.cer.enc -d -a -out buildscripts/certs/mac-dist.cer
openssl aes-256-cbc -k "$ENCRYPTION_SECRET" -in buildscripts/certs/ios-dist.cer.enc -d -a -out buildscripts/certs/ios-dist.cer
openssl aes-256-cbc -k "$ENCRYPTION_SECRET" -in buildscripts/certs/mac-dist.p12.enc -d -a -out buildscripts/certs/mac-dist.p12
# Put the certificates and private key in the Keychain, set ACL permissions, and make default
security create-keychain -p github-actions github-build.keychain
security import buildscripts/certs/apple.cer -k ~/Library/Keychains/github-build.keychain -A
security import buildscripts/certs/mac-dist.cer -k ~/Library/Keychains/github-build.keychain -A
security import buildscripts/certs/ios-dist.cer -k ~/Library/Keychains/github-build.keychain -A
security import buildscripts/certs/mac-dist.p12 -k ~/Library/Keychains/github-build.keychain -P $KEY_SECRET -A
security set-key-partition-list -S apple-tool:,apple: -s -k github-actions github-build.keychain
security default-keychain -s github-build.keychain
@ -18,10 +21,13 @@ security default-keychain -s github-build.keychain
# Copy the provisioning profile
mkdir -p ~/Library/MobileDevice/Provisioning\ Profiles
cp buildscripts/profile/NetNewsWire.provisionprofile ~/Library/MobileDevice/Provisioning\ Profiles/
cp buildscripts/profile/NetNewsWireiOS.mobileprovision ~/Library/MobileDevice/Provisioning\ Profiles/
# Delete the decrypted files
rm -f buildscripts/profile/NetNewsWire.provisionprofile
rm -f buildscripts/profile/NetNewsWireiOS.mobileprovision
rm -f buildscripts/certs/mac-dist.cer
rm -f buildscripts/certs/ios-dist.cer
rm -f buildscripts/certs/mac-dist.p12
# Do the build
@ -29,4 +35,5 @@ xcodebuild -scheme $SCHEME test -showBuildTimingSummary
# Delete the keychain and the provisioningi profile
security delete-keychain github-build.keychain
rm -f ~/Library/MobileDevice/Provisioning\ Profiles/NetNewsWire.provisionprofile
rm -f ~/Library/MobileDevice/Provisioning\ Profiles/NetNewsWire.provisionprofile
rm -f ~/Library/MobileDevice/Provisioning\ Profiles/NetNewsWireiOS.mobileprovision

View File

@ -0,0 +1,155 @@
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

View File

@ -0,0 +1,19 @@
CODE_SIGN_IDENTITY = iPhone Developer
DEVELOPMENT_TEAM = M8L2WTLA8W
CODE_SIGN_STYLE = Automatic
ORGANIZATION_IDENTIFIER = com.ranchero
PROVISIONING_PROFILE_SPECIFIER =
// See the notes in NetNewsWire_target.xcconfig on why the
// DeveloperSettings.xcconfig is #included here
#include? "../../SharedXcodeSettings/DeveloperSettings.xcconfig"
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES
BUNDLE_LOADER = $(TEST_HOST)
COMBINE_HIDPI_IMAGES = YES
INFOPLIST_FILE = Tests/NetNewsWire-iOSTests/Info.plist
LD_RUNPATH_SEARCH_PATHS = $(inherited) @executable_path/../Frameworks @loader_path/../Frameworks
PRODUCT_BUNDLE_IDENTIFIER = $(ORGANIZATION_IDENTIFIER).NetNewsWire-iOSTests
PRODUCT_NAME = $(TARGET_NAME)
SUPPORTED_PLATFORMS = iphoneos iphonesimulator

View File

@ -1,5 +1,4 @@
CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Developer
CODE_SIGN_IDENTITY[sdk=iphonesimulator*] = iPhone Developer
CODE_SIGN_IDENTITY= iPhone Developer
DEVELOPMENT_TEAM = M8L2WTLA8W
CODE_SIGN_STYLE = Automatic
ORGANIZATION_IDENTIFIER = com.ranchero

View File

@ -40,7 +40,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE
GCC_WARN_UNUSED_FUNCTION = YES
GCC_WARN_UNUSED_VARIABLE = YES
MACOSX_DEPLOYMENT_TARGET = 10.14.4
IPHONEOS_DEPLOYMENT_TARGET = 12.2
SDKROOT = macosx
IPHONEOS_DEPLOYMENT_TARGET = 13.0
//SDKROOT = macosx
SWIFT_SWIFT3_OBJC_INFERENCE = Off
SWIFT_VERSION = 5.1