From 71691b6a1ccd2a7ae2d0fa8f03ad822ae6aaac9e Mon Sep 17 00:00:00 2001 From: Christian Noon Date: Tue, 17 Nov 2015 21:03:22 -0800 Subject: [PATCH] Created a new tvOS framework target supporting tvOS 9.0+. --- macosx/Info-tvOS.plist | 30 +++ sqlcipher.xcodeproj/project.pbxproj | 221 ++++++++++++++++-- .../xcschemes/SQLCipher OSX.xcscheme | 6 +- .../xcschemes/SQLCipher tvOS.xcscheme | 80 +++++++ 4 files changed, 320 insertions(+), 17 deletions(-) create mode 100644 macosx/Info-tvOS.plist create mode 100644 sqlcipher.xcodeproj/xcshareddata/xcschemes/SQLCipher tvOS.xcscheme diff --git a/macosx/Info-tvOS.plist b/macosx/Info-tvOS.plist new file mode 100644 index 0000000..5234c89 --- /dev/null +++ b/macosx/Info-tvOS.plist @@ -0,0 +1,30 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + FMWK + CFBundleShortVersionString + 3.3.1 + CFBundleSignature + ???? + CFBundleVersion + $(CURRENT_PROJECT_VERSION) + NSPrincipalClass + + UIRequiredDeviceCapabilities + + arm64 + + + diff --git a/sqlcipher.xcodeproj/project.pbxproj b/sqlcipher.xcodeproj/project.pbxproj index 6d8dbdc..6e92c21 100644 --- a/sqlcipher.xcodeproj/project.pbxproj +++ b/sqlcipher.xcodeproj/project.pbxproj @@ -23,9 +23,10 @@ /* Begin PBXBuildFile section */ 4C0041A61BFC3A5000ED2AD5 /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4C0041A51BFC3A5000ED2AD5 /* Security.framework */; }; 4C0041AB1BFC3A7E00ED2AD5 /* SQLCipher.h in Headers */ = {isa = PBXBuildFile; fileRef = 4C0041A91BFC3A7E00ED2AD5 /* SQLCipher.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 4C0041B41BFC3B2200ED2AD5 /* SQLCipher OSX.h in Headers */ = {isa = PBXBuildFile; fileRef = 4C0041B31BFC3B2200ED2AD5 /* SQLCipher OSX.h */; settings = {ATTRIBUTES = (Public, ); }; }; 4C0041BC1BFC3C7500ED2AD5 /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4C0041BB1BFC3C7500ED2AD5 /* Security.framework */; }; 4C0041BD1BFC3C8300ED2AD5 /* SQLCipher.h in Headers */ = {isa = PBXBuildFile; fileRef = 4C0041A91BFC3A7E00ED2AD5 /* SQLCipher.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 4C0041CE1BFC3D3900ED2AD5 /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4C0041CD1BFC3D3900ED2AD5 /* Security.framework */; }; + 4C0041CF1BFC3D4000ED2AD5 /* SQLCipher.h in Headers */ = {isa = PBXBuildFile; fileRef = 4C0041A91BFC3A7E00ED2AD5 /* SQLCipher.h */; settings = {ATTRIBUTES = (Public, ); }; }; 9069D0A30FCE1A4D0042E34C /* sqlite3.c in Sources */ = {isa = PBXBuildFile; fileRef = 9069D0A20FCE1A4D0042E34C /* sqlite3.c */; }; /* End PBXBuildFile section */ @@ -51,6 +52,13 @@ remoteGlobalIDString = 9069D08B0FCE185A0042E34C; remoteInfo = amalgamation; }; + 4C0041CB1BFC3D3000ED2AD5 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 9069D08B0FCE185A0042E34C; + remoteInfo = amalgamation; + }; /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ @@ -59,9 +67,10 @@ 4C0041A81BFC3A7E00ED2AD5 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = macosx/Info.plist; sourceTree = ""; }; 4C0041A91BFC3A7E00ED2AD5 /* SQLCipher.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SQLCipher.h; path = macosx/SQLCipher.h; sourceTree = ""; }; 4C0041B11BFC3B2200ED2AD5 /* SQLCipher.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = SQLCipher.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 4C0041B31BFC3B2200ED2AD5 /* SQLCipher OSX.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "SQLCipher OSX.h"; sourceTree = ""; }; - 4C0041B51BFC3B2200ED2AD5 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 4C0041BB1BFC3C7500ED2AD5 /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/System/Library/Frameworks/Security.framework; sourceTree = DEVELOPER_DIR; }; + 4C0041C31BFC3CC000ED2AD5 /* SQLCipher.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = SQLCipher.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 4C0041CD1BFC3D3900ED2AD5 /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS9.0.sdk/System/Library/Frameworks/Security.framework; sourceTree = DEVELOPER_DIR; }; + 4C0041D01BFC3D9A00ED2AD5 /* Info-tvOS.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = "Info-tvOS.plist"; path = "macosx/Info-tvOS.plist"; sourceTree = ""; }; 9069D0A20FCE1A4D0042E34C /* sqlite3.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sqlite3.c; sourceTree = ""; }; D2AAC046055464E500DB518D /* libsqlcipher.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libsqlcipher.a; sourceTree = BUILT_PRODUCTS_DIR; }; /* End PBXFileReference section */ @@ -82,6 +91,14 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + 4C0041BF1BFC3CC000ED2AD5 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 4C0041CE1BFC3D3900ED2AD5 /* Security.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; D289987405E68DCB004EDB86 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; @@ -98,7 +115,6 @@ children = ( 08FB7795FE84155DC02AAC07 /* Source */, 4C0041A41BFC3A3800ED2AD5 /* Supporting Files */, - 4C0041B21BFC3B2200ED2AD5 /* SQLCipher OSX */, 4C0041A71BFC3A5400ED2AD5 /* Frameworks */, 1AB674ADFE9D54B511CA2CBB /* Products */, ); @@ -119,6 +135,7 @@ D2AAC046055464E500DB518D /* libsqlcipher.a */, 4C0041981BFC382400ED2AD5 /* SQLCipher.framework */, 4C0041B11BFC3B2200ED2AD5 /* SQLCipher.framework */, + 4C0041C31BFC3CC000ED2AD5 /* SQLCipher.framework */, ); name = Products; sourceTree = ""; @@ -128,6 +145,7 @@ children = ( 4C0041A91BFC3A7E00ED2AD5 /* SQLCipher.h */, 4C0041A81BFC3A7E00ED2AD5 /* Info.plist */, + 4C0041D01BFC3D9A00ED2AD5 /* Info-tvOS.plist */, ); name = "Supporting Files"; sourceTree = ""; @@ -135,21 +153,13 @@ 4C0041A71BFC3A5400ED2AD5 /* Frameworks */ = { isa = PBXGroup; children = ( + 4C0041CD1BFC3D3900ED2AD5 /* Security.framework */, 4C0041BB1BFC3C7500ED2AD5 /* Security.framework */, 4C0041A51BFC3A5000ED2AD5 /* Security.framework */, ); name = Frameworks; sourceTree = ""; }; - 4C0041B21BFC3B2200ED2AD5 /* SQLCipher OSX */ = { - isa = PBXGroup; - children = ( - 4C0041B31BFC3B2200ED2AD5 /* SQLCipher OSX.h */, - 4C0041B51BFC3B2200ED2AD5 /* Info.plist */, - ); - path = "SQLCipher OSX"; - sourceTree = ""; - }; /* End PBXGroup section */ /* Begin PBXHeadersBuildPhase section */ @@ -166,7 +176,14 @@ buildActionMask = 2147483647; files = ( 4C0041BD1BFC3C8300ED2AD5 /* SQLCipher.h in Headers */, - 4C0041B41BFC3B2200ED2AD5 /* SQLCipher OSX.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 4C0041C01BFC3CC000ED2AD5 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 4C0041CF1BFC3D4000ED2AD5 /* SQLCipher.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -218,6 +235,25 @@ productReference = 4C0041B11BFC3B2200ED2AD5 /* SQLCipher.framework */; productType = "com.apple.product-type.framework"; }; + 4C0041C21BFC3CC000ED2AD5 /* SQLCipher tvOS */ = { + isa = PBXNativeTarget; + buildConfigurationList = 4C0041C81BFC3CC000ED2AD5 /* Build configuration list for PBXNativeTarget "SQLCipher tvOS" */; + buildPhases = ( + 4C0041BE1BFC3CC000ED2AD5 /* Sources */, + 4C0041BF1BFC3CC000ED2AD5 /* Frameworks */, + 4C0041C01BFC3CC000ED2AD5 /* Headers */, + 4C0041C11BFC3CC000ED2AD5 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 4C0041CC1BFC3D3000ED2AD5 /* PBXTargetDependency */, + ); + name = "SQLCipher tvOS"; + productName = "SQLCipher tvOS"; + productReference = 4C0041C31BFC3CC000ED2AD5 /* SQLCipher.framework */; + productType = "com.apple.product-type.framework"; + }; D2AAC045055464E500DB518D /* sqlcipher */ = { isa = PBXNativeTarget; buildConfigurationList = 1DEB91EB08733DB70010E9CD /* Build configuration list for PBXNativeTarget "sqlcipher" */; @@ -250,6 +286,9 @@ 4C0041B01BFC3B2200ED2AD5 = { CreatedOnToolsVersion = 7.1; }; + 4C0041C21BFC3CC000ED2AD5 = { + CreatedOnToolsVersion = 7.1; + }; }; }; buildConfigurationList = 1DEB91EF08733DB70010E9CD /* Build configuration list for PBXProject "sqlcipher" */; @@ -268,6 +307,7 @@ targets = ( 4C0041971BFC382400ED2AD5 /* SQLCipher iOS */, 4C0041B01BFC3B2200ED2AD5 /* SQLCipher OSX */, + 4C0041C21BFC3CC000ED2AD5 /* SQLCipher tvOS */, D2AAC045055464E500DB518D /* sqlcipher */, 9069D08B0FCE185A0042E34C /* amalgamation */, ); @@ -289,6 +329,13 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + 4C0041C11BFC3CC000ED2AD5 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; /* End PBXResourcesBuildPhase section */ /* Begin PBXShellScriptBuildPhase section */ @@ -323,6 +370,13 @@ ); runOnlyForDeploymentPostprocessing = 0; }; + 4C0041BE1BFC3CC000ED2AD5 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; D2AAC044055464E500DB518D /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; @@ -349,6 +403,11 @@ target = 9069D08B0FCE185A0042E34C /* amalgamation */; targetProxy = 4C0041B91BFC3C6E00ED2AD5 /* PBXContainerItemProxy */; }; + 4C0041CC1BFC3D3000ED2AD5 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 9069D08B0FCE185A0042E34C /* amalgamation */; + targetProxy = 4C0041CB1BFC3D3000ED2AD5 /* PBXContainerItemProxy */; + }; /* End PBXTargetDependency section */ /* Begin XCBuildConfiguration section */ @@ -738,6 +797,132 @@ }; name = Release; }; + 4C0041C91BFC3CC000ED2AD5 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + "ARCHS[sdk=iphoneos*]" = "$(ARCHS_STANDARD)"; + "ARCHS[sdk=iphonesimulator*]" = "$(ARCHS_STANDARD)"; + "ARCHS[sdk=macosx*]" = "$(ARCHS_STANDARD)"; + BITCODE_GENERATION_MODE = marker; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = dwarf; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + 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; + INFOPLIST_FILE = "macosx/Info-tvOS.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MTL_ENABLE_DEBUG_INFO = YES; + OTHER_CFLAGS = ( + "-DSQLITE_HAS_CODEC", + "-DSQLITE_TEMP_STORE=2", + "-DSQLITE_THREADSAFE", + "-DSQLCIPHER_CRYPTO_CC", + ); + PRODUCT_BUNDLE_IDENTIFIER = net.zetetic.SQLCipher; + PRODUCT_NAME = SQLCipher; + SDKROOT = appletvos; + SKIP_INSTALL = YES; + SUPPORTED_PLATFORMS = "appletvsimulator appletvos"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + TARGETED_DEVICE_FAMILY = 3; + TVOS_DEPLOYMENT_TARGET = 9.0; + VALID_ARCHS = arm64; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + 4C0041CA1BFC3CC000ED2AD5 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + "ARCHS[sdk=iphoneos*]" = "$(ARCHS_STANDARD)"; + "ARCHS[sdk=iphonesimulator*]" = "$(ARCHS_STANDARD)"; + "ARCHS[sdk=macosx*]" = "$(ARCHS_STANDARD)"; + BITCODE_GENERATION_MODE = bitcode; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu99; + 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; + INFOPLIST_FILE = "macosx/Info-tvOS.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MTL_ENABLE_DEBUG_INFO = NO; + OTHER_CFLAGS = ( + "-DSQLITE_HAS_CODEC", + "-DSQLITE_TEMP_STORE=2", + "-DSQLITE_THREADSAFE", + "-DSQLCIPHER_CRYPTO_CC", + ); + PRODUCT_BUNDLE_IDENTIFIER = net.zetetic.SQLCipher; + PRODUCT_NAME = SQLCipher; + SDKROOT = appletvos; + SKIP_INSTALL = YES; + SUPPORTED_PLATFORMS = "appletvsimulator appletvos"; + TARGETED_DEVICE_FAMILY = 3; + TVOS_DEPLOYMENT_TARGET = 9.0; + VALIDATE_PRODUCT = YES; + VALID_ARCHS = arm64; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; 9069D08C0FCE185A0042E34C /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { @@ -801,6 +986,14 @@ ); defaultConfigurationIsVisible = 0; }; + 4C0041C81BFC3CC000ED2AD5 /* Build configuration list for PBXNativeTarget "SQLCipher tvOS" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 4C0041C91BFC3CC000ED2AD5 /* Debug */, + 4C0041CA1BFC3CC000ED2AD5 /* Release */, + ); + defaultConfigurationIsVisible = 0; + }; 9069D0900FCE18970042E34C /* Build configuration list for PBXAggregateTarget "amalgamation" */ = { isa = XCConfigurationList; buildConfigurations = ( diff --git a/sqlcipher.xcodeproj/xcshareddata/xcschemes/SQLCipher OSX.xcscheme b/sqlcipher.xcodeproj/xcshareddata/xcschemes/SQLCipher OSX.xcscheme index 9b69b15..a1b6956 100644 --- a/sqlcipher.xcodeproj/xcshareddata/xcschemes/SQLCipher OSX.xcscheme +++ b/sqlcipher.xcodeproj/xcshareddata/xcschemes/SQLCipher OSX.xcscheme @@ -15,7 +15,7 @@ @@ -46,7 +46,7 @@ @@ -64,7 +64,7 @@ diff --git a/sqlcipher.xcodeproj/xcshareddata/xcschemes/SQLCipher tvOS.xcscheme b/sqlcipher.xcodeproj/xcshareddata/xcschemes/SQLCipher tvOS.xcscheme new file mode 100644 index 0000000..64430e2 --- /dev/null +++ b/sqlcipher.xcodeproj/xcshareddata/xcschemes/SQLCipher tvOS.xcscheme @@ -0,0 +1,80 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +