diff --git a/.gitignore b/.gitignore
index 2ca94d3..f3776ec 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,13 +1,13 @@
.DS_Store
+/.build
+/Packages
+/*.xcodeproj
+xcuserdata/
+
*.xcscmblueprint
xcuserdata
-/archive
-/build
-
-/Carthage
-
/fastlane/*.xcresult
/fastlane/*.xml
diff --git a/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata b/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata
new file mode 100644
index 0000000..919434a
--- /dev/null
+++ b/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata
@@ -0,0 +1,7 @@
+
+
+
+
+
diff --git a/.swiftpm/xcode/package.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/.swiftpm/xcode/package.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings
new file mode 100644
index 0000000..08de0be
--- /dev/null
+++ b/.swiftpm/xcode/package.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings
@@ -0,0 +1,8 @@
+
+
+
+
+ IDEWorkspaceSharedSettings_AutocreateContextsIfNeeded
+
+
+
diff --git a/.swiftpm/xcode/xcshareddata/xcschemes/SRGContentProtection.xcscheme b/.swiftpm/xcode/xcshareddata/xcschemes/SRGContentProtection.xcscheme
new file mode 100644
index 0000000..c78c51d
--- /dev/null
+++ b/.swiftpm/xcode/xcshareddata/xcschemes/SRGContentProtection.xcscheme
@@ -0,0 +1,107 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Cartfile b/Cartfile
deleted file mode 100644
index 70e57f7..0000000
--- a/Cartfile
+++ /dev/null
@@ -1,2 +0,0 @@
-github "SRGSSR/srgdiagnostics-apple" "2.0.1"
-github "SRGSSR/srgnetwork-apple" "2.0.2"
\ No newline at end of file
diff --git a/Cartfile.resolved b/Cartfile.resolved
deleted file mode 100644
index e54fe20..0000000
--- a/Cartfile.resolved
+++ /dev/null
@@ -1,5 +0,0 @@
-github "SRGSSR/MAKVONotificationCenter" "1.0_srg4"
-github "SRGSSR/libextobjc" "0.6_srg2"
-github "SRGSSR/srgdiagnostics-apple" "2.0.1"
-github "SRGSSR/srglogger-apple" "2.0.1"
-github "SRGSSR/srgnetwork-apple" "2.0.2"
diff --git a/Common.xcconfig b/Common.xcconfig
deleted file mode 100644
index 1791667..0000000
--- a/Common.xcconfig
+++ /dev/null
@@ -1,25 +0,0 @@
-// Version information
-MARKETING_VERSION = 2.0.2
-
-// Deployment targets
-IPHONEOS_DEPLOYMENT_TARGET = 9.0
-TVOS_DEPLOYMENT_TARGET = 12.0
-
-// Configuration to have a single target built for all platforms
-// See https://davedelong.com/blog/2018/11/15/building-a-crossplatform-framework/
-SUPPORTED_PLATFORMS = iphoneos iphonesimulator appletvos appletvsimulator
-TARGETED_DEVICE_FAMILY = 1,2,3
-
-CARTHAGE_PLATFORM[sdk=iphone*] = iOS
-CARTHAGE_PLATFORM[sdk=appletv*] = tvOS
-
-// Setup to enable plaform suffixes to enable sources or resources for a specific platform only
-// See https://davedelong.com/blog/2018/07/25/conditional-compilation-in-swift-part-2/
-IOS_FILES = *~ios.*
-TVOS_FILES = *~tvos.*
-
-EXCLUDED_SOURCE_FILE_NAMES = $(IOS_FILES) $(TVOS_FILES)
-
-INCLUDED_SOURCE_FILE_NAMES =
-INCLUDED_SOURCE_FILE_NAMES[sdk=iphone*] = $(IOS_FILES)
-INCLUDED_SOURCE_FILE_NAMES[sdk=appletv*] = $(TVOS_FILES)
diff --git a/Demo/Demo.xcconfig b/Demo/Demo.xcconfig
index 7fd3161..be27dba 100644
--- a/Demo/Demo.xcconfig
+++ b/Demo/Demo.xcconfig
@@ -1,4 +1,25 @@
-#include "../Common.xcconfig"
+// Version information
+MARKETING_VERSION = 3.0.0
+
+// Deployment targets
+IPHONEOS_DEPLOYMENT_TARGET = 9.0
+TVOS_DEPLOYMENT_TARGET = 12.0
+
+// Configuration to have a single target built for all platforms
+// See https://davedelong.com/blog/2018/11/15/building-a-crossplatform-framework/
+SUPPORTED_PLATFORMS = iphoneos iphonesimulator appletvos appletvsimulator
+TARGETED_DEVICE_FAMILY = 1,2,3
+
+// Setup to enable plaform suffixes to enable sources or resources for a specific platform only
+// See https://davedelong.com/blog/2018/07/25/conditional-compilation-in-swift-part-2/
+IOS_FILES = *~ios.*
+TVOS_FILES = *~tvos.*
+
+EXCLUDED_SOURCE_FILE_NAMES = $(IOS_FILES) $(TVOS_FILES)
+
+INCLUDED_SOURCE_FILE_NAMES =
+INCLUDED_SOURCE_FILE_NAMES[sdk=iphone*] = $(IOS_FILES)
+INCLUDED_SOURCE_FILE_NAMES[sdk=appletv*] = $(TVOS_FILES)
LAUNCH_SCREEN[sdk=iphone*] = LaunchScreen~ios
LAUNCH_SCREEN[sdk=appletv*] =
diff --git a/Demo/SRGContentProtection-demo.entitlements b/Demo/SRGContentProtection-demo.entitlements
new file mode 100644
index 0000000..ee95ab7
--- /dev/null
+++ b/Demo/SRGContentProtection-demo.entitlements
@@ -0,0 +1,10 @@
+
+
+
+
+ com.apple.security.app-sandbox
+
+ com.apple.security.network.client
+
+
+
diff --git a/Demo/SRGContentProtection-demo.xcodeproj/project.pbxproj b/Demo/SRGContentProtection-demo.xcodeproj/project.pbxproj
new file mode 100644
index 0000000..eb5556b
--- /dev/null
+++ b/Demo/SRGContentProtection-demo.xcodeproj/project.pbxproj
@@ -0,0 +1,407 @@
+// !$*UTF8*$!
+{
+ archiveVersion = 1;
+ classes = {
+ };
+ objectVersion = 52;
+ objects = {
+
+/* Begin PBXBuildFile section */
+ 08E2AF6423108D8F00DCCE74 /* MediaDemoConfiguration.plist in Resources */ = {isa = PBXBuildFile; fileRef = 08E2AF6323108D8F00DCCE74 /* MediaDemoConfiguration.plist */; };
+ 08E2AF6923108EBA00DCCE74 /* Media.m in Sources */ = {isa = PBXBuildFile; fileRef = 08E2AF6823108EBA00DCCE74 /* Media.m */; };
+ 6F8A93FB20FDCAA800AA6434 /* LaunchScreen~ios.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 6F8A93F020FDCAA800AA6434 /* LaunchScreen~ios.storyboard */; };
+ 6F8A93FC20FDCAA800AA6434 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 6F8A93F120FDCAA800AA6434 /* Images.xcassets */; };
+ 6F8A93FD20FDCAA800AA6434 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F8A93F520FDCAA800AA6434 /* main.m */; };
+ 6F8A93FE20FDCAA800AA6434 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F8A93F620FDCAA800AA6434 /* AppDelegate.m */; };
+ 6F8A93FF20FDCAA800AA6434 /* DemosViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F8A93F920FDCAA800AA6434 /* DemosViewController.m */; };
+ 6FF6DAB124C6E4E900A9BDF9 /* SRGContentProtection in Frameworks */ = {isa = PBXBuildFile; productRef = 6FF6DAB024C6E4E900A9BDF9 /* SRGContentProtection */; };
+/* End PBXBuildFile section */
+
+/* Begin PBXFileReference section */
+ 0858B69522010C9E000F00CF /* SRGLogger.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SRGLogger.framework; path = Carthage/Build/iOS/SRGLogger.framework; sourceTree = ""; };
+ 0858B69622010C9E000F00CF /* libextobjc.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = libextobjc.framework; path = Carthage/Build/iOS/libextobjc.framework; sourceTree = ""; };
+ 0858B69722010C9E000F00CF /* MAKVONotificationCenter.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MAKVONotificationCenter.framework; path = Carthage/Build/iOS/MAKVONotificationCenter.framework; sourceTree = ""; };
+ 08E2AF6323108D8F00DCCE74 /* MediaDemoConfiguration.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = MediaDemoConfiguration.plist; sourceTree = ""; };
+ 08E2AF6723108EBA00DCCE74 /* Media.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Media.h; sourceTree = ""; };
+ 08E2AF6823108EBA00DCCE74 /* Media.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Media.m; sourceTree = ""; };
+ 6F0432BC21006E7A002B090A /* SRGNetwork.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SRGNetwork.framework; path = Carthage/Build/iOS/SRGNetwork.framework; sourceTree = ""; };
+ 6F8A93D820FDCA0800AA6434 /* SRGContentProtection-demo.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "SRGContentProtection-demo.app"; sourceTree = BUILT_PRODUCTS_DIR; };
+ 6F8A93F020FDCAA800AA6434 /* LaunchScreen~ios.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; path = "LaunchScreen~ios.storyboard"; sourceTree = ""; };
+ 6F8A93F120FDCAA800AA6434 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; };
+ 6F8A93F420FDCAA800AA6434 /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; };
+ 6F8A93F520FDCAA800AA6434 /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; };
+ 6F8A93F620FDCAA800AA6434 /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = ""; };
+ 6F8A93F820FDCAA800AA6434 /* DemosViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DemosViewController.h; sourceTree = ""; };
+ 6F8A93F920FDCAA800AA6434 /* DemosViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DemosViewController.m; sourceTree = ""; };
+ 6F8A93FA20FDCAA800AA6434 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; };
+ 6FB32D2B2527688100BC599B /* SRGContentProtection-demo.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = "SRGContentProtection-demo.entitlements"; sourceTree = ""; };
+ 6FBF24302147F3ED00E576A2 /* SRGDiagnostics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SRGDiagnostics.framework; path = Carthage/Build/iOS/SRGDiagnostics.framework; sourceTree = ""; };
+ 6FCAB6C023165B0D0043432E /* Demo.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Demo.xcconfig; sourceTree = ""; };
+/* End PBXFileReference section */
+
+/* Begin PBXFrameworksBuildPhase section */
+ 6F8A93D520FDCA0800AA6434 /* Frameworks */ = {
+ isa = PBXFrameworksBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 6FF6DAB124C6E4E900A9BDF9 /* SRGContentProtection in Frameworks */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXFrameworksBuildPhase section */
+
+/* Begin PBXGroup section */
+ 08E2AF6623108EBA00DCCE74 /* Models */ = {
+ isa = PBXGroup;
+ children = (
+ 08E2AF6723108EBA00DCCE74 /* Media.h */,
+ 08E2AF6823108EBA00DCCE74 /* Media.m */,
+ );
+ path = Models;
+ sourceTree = "";
+ };
+ 6F0EB52720FC7F58009C02CF = {
+ isa = PBXGroup;
+ children = (
+ 6FCAB6C023165B0D0043432E /* Demo.xcconfig */,
+ 6F8A93FA20FDCAA800AA6434 /* Info.plist */,
+ 6FB32D2B2527688100BC599B /* SRGContentProtection-demo.entitlements */,
+ 6F8A93F220FDCAA800AA6434 /* Sources */,
+ 6F8A93EF20FDCAA800AA6434 /* Resources */,
+ 6F8A945521006A9E00AA6434 /* Frameworks */,
+ 6F0EB53220FC7F58009C02CF /* Products */,
+ );
+ sourceTree = "";
+ };
+ 6F0EB53220FC7F58009C02CF /* Products */ = {
+ isa = PBXGroup;
+ children = (
+ 6F8A93D820FDCA0800AA6434 /* SRGContentProtection-demo.app */,
+ );
+ name = Products;
+ sourceTree = "";
+ };
+ 6F8A93EF20FDCAA800AA6434 /* Resources */ = {
+ isa = PBXGroup;
+ children = (
+ 08E2AF6323108D8F00DCCE74 /* MediaDemoConfiguration.plist */,
+ 6F8A93F020FDCAA800AA6434 /* LaunchScreen~ios.storyboard */,
+ 6F8A93F120FDCAA800AA6434 /* Images.xcassets */,
+ );
+ path = Resources;
+ sourceTree = "";
+ };
+ 6F8A93F220FDCAA800AA6434 /* Sources */ = {
+ isa = PBXGroup;
+ children = (
+ 6F8A93F320FDCAA800AA6434 /* Application */,
+ 6F8A93F720FDCAA800AA6434 /* Demos */,
+ 08E2AF6623108EBA00DCCE74 /* Models */,
+ );
+ path = Sources;
+ sourceTree = "";
+ };
+ 6F8A93F320FDCAA800AA6434 /* Application */ = {
+ isa = PBXGroup;
+ children = (
+ 6F8A93F420FDCAA800AA6434 /* AppDelegate.h */,
+ 6F8A93F620FDCAA800AA6434 /* AppDelegate.m */,
+ 6F8A93F520FDCAA800AA6434 /* main.m */,
+ );
+ path = Application;
+ sourceTree = "";
+ };
+ 6F8A93F720FDCAA800AA6434 /* Demos */ = {
+ isa = PBXGroup;
+ children = (
+ 6F8A93F820FDCAA800AA6434 /* DemosViewController.h */,
+ 6F8A93F920FDCAA800AA6434 /* DemosViewController.m */,
+ );
+ path = Demos;
+ sourceTree = "";
+ };
+ 6F8A945521006A9E00AA6434 /* Frameworks */ = {
+ isa = PBXGroup;
+ children = (
+ 0858B69622010C9E000F00CF /* libextobjc.framework */,
+ 0858B69722010C9E000F00CF /* MAKVONotificationCenter.framework */,
+ 6FBF24302147F3ED00E576A2 /* SRGDiagnostics.framework */,
+ 0858B69522010C9E000F00CF /* SRGLogger.framework */,
+ 6F0432BC21006E7A002B090A /* SRGNetwork.framework */,
+ );
+ name = Frameworks;
+ sourceTree = "";
+ };
+/* End PBXGroup section */
+
+/* Begin PBXNativeTarget section */
+ 6F8A93D720FDCA0800AA6434 /* SRGContentProtection-demo */ = {
+ isa = PBXNativeTarget;
+ buildConfigurationList = 6F8A93EB20FDCA0900AA6434 /* Build configuration list for PBXNativeTarget "SRGContentProtection-demo" */;
+ buildPhases = (
+ 6F8A93D420FDCA0800AA6434 /* Sources */,
+ 6F8A93D520FDCA0800AA6434 /* Frameworks */,
+ 6F8A93D620FDCA0800AA6434 /* Resources */,
+ );
+ buildRules = (
+ );
+ dependencies = (
+ );
+ name = "SRGContentProtection-demo";
+ packageProductDependencies = (
+ 6FF6DAB024C6E4E900A9BDF9 /* SRGContentProtection */,
+ );
+ productName = "SRGContentProtection-demo";
+ productReference = 6F8A93D820FDCA0800AA6434 /* SRGContentProtection-demo.app */;
+ productType = "com.apple.product-type.application";
+ };
+/* End PBXNativeTarget section */
+
+/* Begin PBXProject section */
+ 6F0EB52820FC7F58009C02CF /* Project object */ = {
+ isa = PBXProject;
+ attributes = {
+ LastUpgradeCheck = 1200;
+ ORGANIZATIONNAME = "SRG SSR";
+ TargetAttributes = {
+ 6F8A93D720FDCA0800AA6434 = {
+ CreatedOnToolsVersion = 9.4;
+ };
+ };
+ };
+ buildConfigurationList = 6F0EB52B20FC7F58009C02CF /* Build configuration list for PBXProject "SRGContentProtection-demo" */;
+ compatibilityVersion = "Xcode 9.3";
+ developmentRegion = en;
+ hasScannedForEncodings = 0;
+ knownRegions = (
+ en,
+ Base,
+ it,
+ de,
+ fr,
+ rm,
+ );
+ mainGroup = 6F0EB52720FC7F58009C02CF;
+ productRefGroup = 6F0EB53220FC7F58009C02CF /* Products */;
+ projectDirPath = "";
+ projectRoot = "";
+ targets = (
+ 6F8A93D720FDCA0800AA6434 /* SRGContentProtection-demo */,
+ );
+ };
+/* End PBXProject section */
+
+/* Begin PBXResourcesBuildPhase section */
+ 6F8A93D620FDCA0800AA6434 /* Resources */ = {
+ isa = PBXResourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 6F8A93FB20FDCAA800AA6434 /* LaunchScreen~ios.storyboard in Resources */,
+ 08E2AF6423108D8F00DCCE74 /* MediaDemoConfiguration.plist in Resources */,
+ 6F8A93FC20FDCAA800AA6434 /* Images.xcassets in Resources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXResourcesBuildPhase section */
+
+/* Begin PBXSourcesBuildPhase section */
+ 6F8A93D420FDCA0800AA6434 /* Sources */ = {
+ isa = PBXSourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 6F8A93FE20FDCAA800AA6434 /* AppDelegate.m in Sources */,
+ 6F8A93FD20FDCAA800AA6434 /* main.m in Sources */,
+ 08E2AF6923108EBA00DCCE74 /* Media.m in Sources */,
+ 6F8A93FF20FDCAA800AA6434 /* DemosViewController.m in Sources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXSourcesBuildPhase section */
+
+/* Begin XCBuildConfiguration section */
+ 6F0EB53720FC7F58009C02CF /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
+ 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_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
+ 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 = "Apple Development";
+ COPY_PHASE_STRIP = NO;
+ CURRENT_PROJECT_VERSION = 1;
+ DEBUG_INFORMATION_FORMAT = dwarf;
+ DYLIB_COMPATIBILITY_VERSION = 1;
+ DYLIB_CURRENT_VERSION = 1;
+ 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;
+ MTL_ENABLE_DEBUG_INFO = YES;
+ ONLY_ACTIVE_ARCH = YES;
+ PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.$(TARGET_NAME)";
+ PRODUCT_NAME = "$(TARGET_NAME)";
+ };
+ name = Debug;
+ };
+ 6F0EB53820FC7F58009C02CF /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
+ 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_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
+ 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 = "Apple Development";
+ COPY_PHASE_STRIP = NO;
+ CURRENT_PROJECT_VERSION = 1;
+ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ DYLIB_COMPATIBILITY_VERSION = 1;
+ DYLIB_CURRENT_VERSION = 1;
+ 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;
+ MTL_ENABLE_DEBUG_INFO = NO;
+ PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.$(TARGET_NAME)";
+ PRODUCT_NAME = "$(TARGET_NAME)";
+ VALIDATE_PRODUCT = YES;
+ };
+ name = Release;
+ };
+ 6F8A93EC20FDCA0900AA6434 /* Debug */ = {
+ isa = XCBuildConfiguration;
+ baseConfigurationReference = 6FCAB6C023165B0D0043432E /* Demo.xcconfig */;
+ buildSettings = {
+ ASSETCATALOG_COMPILER_APPICON_NAME = "$(APP_ICONS_SOURCE)";
+ CODE_SIGN_ENTITLEMENTS = "SRGContentProtection-demo.entitlements";
+ DEVELOPMENT_TEAM = VMGRRW6SG7;
+ INFOPLIST_FILE = Info.plist;
+ LD_RUNPATH_SEARCH_PATHS = (
+ "$(inherited)",
+ "@executable_path/Frameworks",
+ );
+ SDKROOT = iphoneos;
+ SUPPORTS_MACCATALYST = YES;
+ };
+ name = Debug;
+ };
+ 6F8A93ED20FDCA0900AA6434 /* Release */ = {
+ isa = XCBuildConfiguration;
+ baseConfigurationReference = 6FCAB6C023165B0D0043432E /* Demo.xcconfig */;
+ buildSettings = {
+ ASSETCATALOG_COMPILER_APPICON_NAME = "$(APP_ICONS_SOURCE)";
+ CODE_SIGN_ENTITLEMENTS = "SRGContentProtection-demo.entitlements";
+ DEVELOPMENT_TEAM = VMGRRW6SG7;
+ INFOPLIST_FILE = Info.plist;
+ LD_RUNPATH_SEARCH_PATHS = (
+ "$(inherited)",
+ "@executable_path/Frameworks",
+ );
+ SDKROOT = iphoneos;
+ SUPPORTS_MACCATALYST = YES;
+ };
+ name = Release;
+ };
+/* End XCBuildConfiguration section */
+
+/* Begin XCConfigurationList section */
+ 6F0EB52B20FC7F58009C02CF /* Build configuration list for PBXProject "SRGContentProtection-demo" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ 6F0EB53720FC7F58009C02CF /* Debug */,
+ 6F0EB53820FC7F58009C02CF /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = Release;
+ };
+ 6F8A93EB20FDCA0900AA6434 /* Build configuration list for PBXNativeTarget "SRGContentProtection-demo" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ 6F8A93EC20FDCA0900AA6434 /* Debug */,
+ 6F8A93ED20FDCA0900AA6434 /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = Release;
+ };
+/* End XCConfigurationList section */
+
+/* Begin XCSwiftPackageProductDependency section */
+ 6FF6DAB024C6E4E900A9BDF9 /* SRGContentProtection */ = {
+ isa = XCSwiftPackageProductDependency;
+ productName = SRGContentProtection;
+ };
+/* End XCSwiftPackageProductDependency section */
+ };
+ rootObject = 6F0EB52820FC7F58009C02CF /* Project object */;
+}
diff --git a/SRGContentProtection.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/Demo/SRGContentProtection-demo.xcodeproj/project.xcworkspace/contents.xcworkspacedata
similarity index 100%
rename from SRGContentProtection.xcodeproj/project.xcworkspace/contents.xcworkspacedata
rename to Demo/SRGContentProtection-demo.xcodeproj/project.xcworkspace/contents.xcworkspacedata
diff --git a/SRGContentProtection.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/Demo/SRGContentProtection-demo.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
similarity index 100%
rename from SRGContentProtection.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
rename to Demo/SRGContentProtection-demo.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
diff --git a/SRGContentProtection.xcodeproj/xcshareddata/xcschemes/SRGContentProtection.xcscheme b/Demo/SRGContentProtection-demo.xcodeproj/xcshareddata/xcschemes/SRGContentProtection-demo.xcscheme
similarity index 55%
rename from SRGContentProtection.xcodeproj/xcshareddata/xcschemes/SRGContentProtection.xcscheme
rename to Demo/SRGContentProtection-demo.xcodeproj/xcshareddata/xcschemes/SRGContentProtection-demo.xcscheme
index 8c40a32..da2ca08 100644
--- a/SRGContentProtection.xcodeproj/xcshareddata/xcschemes/SRGContentProtection.xcscheme
+++ b/Demo/SRGContentProtection-demo.xcodeproj/xcshareddata/xcschemes/SRGContentProtection-demo.xcscheme
@@ -1,6 +1,6 @@
+ BlueprintIdentifier = "6F8A93D720FDCA0800AA6434"
+ BuildableName = "SRGContentProtection-demo.app"
+ BlueprintName = "SRGContentProtection-demo"
+ ReferencedContainer = "container:SRGContentProtection-demo.xcodeproj">
@@ -26,30 +26,8 @@
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
- shouldUseLaunchSchemeArgsEnv = "YES"
- codeCoverageEnabled = "YES">
-
-
-
-
+ shouldUseLaunchSchemeArgsEnv = "YES">
-
-
-
-
-
+
+ BlueprintIdentifier = "6F8A93D720FDCA0800AA6434"
+ BuildableName = "SRGContentProtection-demo.app"
+ BlueprintName = "SRGContentProtection-demo"
+ ReferencedContainer = "container:SRGContentProtection-demo.xcodeproj">
-
+
-
+
+ BlueprintIdentifier = "6F8A93D720FDCA0800AA6434"
+ BuildableName = "SRGContentProtection-demo.app"
+ BlueprintName = "SRGContentProtection-demo"
+ ReferencedContainer = "container:SRGContentProtection-demo.xcodeproj">
-
+
diff --git a/Demo/SRGContentProtection-demo.xcworkspace/contents.xcworkspacedata b/Demo/SRGContentProtection-demo.xcworkspace/contents.xcworkspacedata
new file mode 100644
index 0000000..4e15798
--- /dev/null
+++ b/Demo/SRGContentProtection-demo.xcworkspace/contents.xcworkspacedata
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
diff --git a/Demo/SRGContentProtection-demo.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/Demo/SRGContentProtection-demo.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
new file mode 100644
index 0000000..18d9810
--- /dev/null
+++ b/Demo/SRGContentProtection-demo.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
@@ -0,0 +1,8 @@
+
+
+
+
+ IDEDidComputeMac32BitWarning
+
+
+
diff --git a/Demo/SRGContentProtection-demo.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/Demo/SRGContentProtection-demo.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings
new file mode 100644
index 0000000..08de0be
--- /dev/null
+++ b/Demo/SRGContentProtection-demo.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings
@@ -0,0 +1,8 @@
+
+
+
+
+ IDEWorkspaceSharedSettings_AutocreateContextsIfNeeded
+
+
+
diff --git a/Demo/SRGContentProtection-demo.xcworkspace/xcshareddata/swiftpm/Package.resolved b/Demo/SRGContentProtection-demo.xcworkspace/xcshareddata/swiftpm/Package.resolved
new file mode 100644
index 0000000..08e6bf8
--- /dev/null
+++ b/Demo/SRGContentProtection-demo.xcworkspace/xcshareddata/swiftpm/Package.resolved
@@ -0,0 +1,52 @@
+{
+ "object": {
+ "pins": [
+ {
+ "package": "libextobjc",
+ "repositoryURL": "https://github.com/SRGSSR/libextobjc.git",
+ "state": {
+ "branch": null,
+ "revision": "30ee5b73bdf57a826978aa146881277f22369be1",
+ "version": "0.6.0-srg3"
+ }
+ },
+ {
+ "package": "MAKVONotificationCenter",
+ "repositoryURL": "https://github.com/SRGSSR/MAKVONotificationCenter.git",
+ "state": {
+ "branch": null,
+ "revision": "60395e0601ffd4a784856b423d4cac558366276d",
+ "version": "1.0.0-srg5"
+ }
+ },
+ {
+ "package": "SRGDiagnostics",
+ "repositoryURL": "https://github.com/SRGSSR/srgdiagnostics-apple.git",
+ "state": {
+ "branch": null,
+ "revision": "5d2ef5c833a5cf6e56762a9c506e73f58ccad5e8",
+ "version": "3.0.0"
+ }
+ },
+ {
+ "package": "SRGLogger",
+ "repositoryURL": "https://github.com/SRGSSR/srglogger-apple.git",
+ "state": {
+ "branch": null,
+ "revision": "cfc39d1223ed039aeb7df38c6c7570977b22d1aa",
+ "version": "3.0.0"
+ }
+ },
+ {
+ "package": "SRGNetwork",
+ "repositoryURL": "https://github.com/SRGSSR/srgnetwork-apple.git",
+ "state": {
+ "branch": null,
+ "revision": "734fe399088b2f846e9e69d48a43118f6a8dc0d2",
+ "version": "3.0.0"
+ }
+ }
+ ]
+ },
+ "version": 1
+}
diff --git a/Demo/Sources/Application/AppDelegate.h b/Demo/Sources/Application/AppDelegate.h
index f4d0f3f..6c099dc 100644
--- a/Demo/Sources/Application/AppDelegate.h
+++ b/Demo/Sources/Application/AppDelegate.h
@@ -4,7 +4,7 @@
// License information is available from the LICENSE file.
//
-#import
+@import UIKit;
NS_ASSUME_NONNULL_BEGIN
diff --git a/Demo/Sources/Application/main.m b/Demo/Sources/Application/main.m
index 2c2a00b..d0c5776 100644
--- a/Demo/Sources/Application/main.m
+++ b/Demo/Sources/Application/main.m
@@ -6,7 +6,7 @@
#import "AppDelegate.h"
-#import
+@import UIKit;
int main(int argc, char *argv[])
{
diff --git a/Demo/Sources/Demos/DemosViewController.h b/Demo/Sources/Demos/DemosViewController.h
index ae10492..a440d45 100644
--- a/Demo/Sources/Demos/DemosViewController.h
+++ b/Demo/Sources/Demos/DemosViewController.h
@@ -4,7 +4,7 @@
// License information is available from the LICENSE file.
//
-#import
+@import UIKit;
NS_ASSUME_NONNULL_BEGIN
diff --git a/Demo/Sources/Demos/DemosViewController.m b/Demo/Sources/Demos/DemosViewController.m
index 045f7a6..10b6142 100644
--- a/Demo/Sources/Demos/DemosViewController.m
+++ b/Demo/Sources/Demos/DemosViewController.m
@@ -8,8 +8,8 @@
#import "Media.h"
-#import
-#import
+@import AVKit;
+@import SRGContentProtection;
@interface DemosViewController ()
@@ -147,6 +147,7 @@ - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath
AVPlayerViewController *playerViewController = [[AVPlayerViewController alloc] init];
playerViewController.player = player;
+ playerViewController.allowsPictureInPicturePlayback = NO;
[self presentViewController:playerViewController animated:YES completion:^{
[player play];
diff --git a/Demo/Sources/Models/Media.h b/Demo/Sources/Models/Media.h
index 0a2264f..ee63331 100644
--- a/Demo/Sources/Models/Media.h
+++ b/Demo/Sources/Models/Media.h
@@ -4,7 +4,7 @@
// License information is available from the LICENSE file.
//
-#import
+@import Foundation;
NS_ASSUME_NONNULL_BEGIN
diff --git a/Framework/Framework.xcconfig b/Framework/Framework.xcconfig
deleted file mode 100644
index e7cd65d..0000000
--- a/Framework/Framework.xcconfig
+++ /dev/null
@@ -1,3 +0,0 @@
-#include "../Common.xcconfig"
-
-OTHER_LDFLAGS = -framework libextobjc -framework MAKVONotificationCenter -framework SRGDiagnostics -framework SRGLogger -framework SRGNetwork
diff --git a/Framework/Info.plist b/Framework/Info.plist
deleted file mode 100644
index fcd3639..0000000
--- a/Framework/Info.plist
+++ /dev/null
@@ -1,24 +0,0 @@
-
-
-
-
- CFBundleDevelopmentRegion
- $(DEVELOPMENT_LANGUAGE)
- CFBundleExecutable
- $(EXECUTABLE_NAME)
- CFBundleIdentifier
- $(PRODUCT_BUNDLE_IDENTIFIER)
- CFBundleInfoDictionaryVersion
- 6.0
- CFBundleName
- $(PRODUCT_NAME)
- CFBundlePackageType
- FMWK
- CFBundleShortVersionString
- $(MARKETING_VERSION)
- CFBundleVersion
- $(CURRENT_PROJECT_VERSION)
- NSPrincipalClass
-
-
-
diff --git a/Framework/Resources/Info.plist b/Framework/Resources/Info.plist
deleted file mode 100644
index 1f571be..0000000
--- a/Framework/Resources/Info.plist
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
- CFBundleDevelopmentRegion
- en
- CFBundleIdentifier
- $(PRODUCT_BUNDLE_IDENTIFIER)
- CFBundleInfoDictionaryVersion
- 6.0
- CFBundleName
- ${PRODUCT_NAME}
- CFBundlePackageType
- BNDL
- CFBundleShortVersionString
- $(MARKETING_VERSION)
- CFBundleVersion
- $(CURRENT_PROJECT_VERSION)
-
-
diff --git a/Framework/Sources/Categories/NSBundle+SRGContentProtection.m b/Framework/Sources/Categories/NSBundle+SRGContentProtection.m
deleted file mode 100644
index 7b0255b..0000000
--- a/Framework/Sources/Categories/NSBundle+SRGContentProtection.m
+++ /dev/null
@@ -1,32 +0,0 @@
-//
-// Copyright (c) SRG SSR. All rights reserved.
-//
-// License information is available from the LICENSE file.
-//
-
-#import "NSBundle+SRGContentProtection.h"
-
-#import "SRGAkamaiAssetResourceLoaderDelegate.h"
-
-NSString *SRGContentProtectionNonLocalizedString(NSString *string)
-{
- return string;
-}
-
-@implementation NSBundle (SRGContentProtection)
-
-#pragma mark Class methods
-
-+ (instancetype)srg_contentProtectionBundle
-{
- static NSBundle *s_bundle;
- static dispatch_once_t s_onceToken;
- dispatch_once(&s_onceToken, ^{
- NSString *bundlePath = [[NSBundle bundleForClass:SRGAkamaiAssetResourceLoaderDelegate.class].bundlePath stringByAppendingPathComponent:@"SRGContentProtection.bundle"];
- s_bundle = [NSBundle bundleWithPath:bundlePath];
- NSAssert(s_bundle, @"Please add SRGContentProtection.bundle to your project resources");
- });
- return s_bundle;
-}
-
-@end
diff --git a/LICENSE b/LICENSE
old mode 100644
new mode 100755
index 57cc62c..7aa3caf
--- a/LICENSE
+++ b/LICENSE
@@ -1,3 +1,19 @@
-(c) SRG SSR, all rights reserved.
+The MIT License (MIT)
-This library can not be copied and/or distributed without express permission.
\ No newline at end of file
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
\ No newline at end of file
diff --git a/Makefile b/Makefile
index 9fd77ea..b3806e7 100644
--- a/Makefile
+++ b/Makefile
@@ -1,47 +1,24 @@
#!/usr/bin/xcrun make -f
-CARTHAGE_FOLDER=Carthage
-CARTHAGE_FLAGS=--platform iOS,tvOS --cache-builds --new-resolver
-
.PHONY: all
-all: bootstrap
- @echo "Building the project..."
- @xcodebuild build
- @echo "... done.\n"
-
-.PHONY: bootstrap
-bootstrap:
- @echo "Bootstrapping dependencies..."
- @carthage bootstrap $(CARTHAGE_FLAGS)
- @echo "... done.\n"
-
-.PHONY: update
-update:
- @echo "Updating dependencies..."
- @carthage update $(CARTHAGE_FLAGS)
- @echo "... done.\n"
+all: test-ios test-tvos
-.PHONY: package
-package: bootstrap
- @echo "Packaging binaries..."
- @mkdir -p archive
- @carthage build --no-skip-current
- @carthage archive --output archive
+.PHONY: test-ios
+test-ios:
+ @echo "Running iOS unit tests..."
+ @xcodebuild test -scheme SRGContentProtection -destination 'platform=iOS Simulator,name=iPhone 11' 2> /dev/null
@echo "... done.\n"
-.PHONY: clean
-clean:
- @echo "Cleaning up build products..."
- @xcodebuild clean
- @rm -rf $(CARTHAGE_FOLDER)
+.PHONY: test-tvos
+test-tvos:
+ @echo "Running tvOS unit tests..."
+ @xcodebuild test -scheme SRGContentProtection -destination 'platform=tvOS Simulator,name=Apple TV' 2> /dev/null
@echo "... done.\n"
.PHONY: help
help:
@echo "The following targets are available:"
- @echo " all Build project dependencies and the project"
- @echo " bootstrap Build dependencies as declared in Cartfile.resolved"
- @echo " update Update and build dependencies"
- @echo " package Build and package the framework for attaching to github releases"
- @echo " clean Clean the project and its dependencies"
- @echo " help Display this message"
+ @echo " all Build and run unit tests for all platforms"
+ @echo " test-ios Build and run unit tests for iOS"
+ @echo " test-tvos Build and run unit tests for tvOS"
+ @echo " help Display this help message"
\ No newline at end of file
diff --git a/Package.resolved b/Package.resolved
new file mode 100644
index 0000000..08e6bf8
--- /dev/null
+++ b/Package.resolved
@@ -0,0 +1,52 @@
+{
+ "object": {
+ "pins": [
+ {
+ "package": "libextobjc",
+ "repositoryURL": "https://github.com/SRGSSR/libextobjc.git",
+ "state": {
+ "branch": null,
+ "revision": "30ee5b73bdf57a826978aa146881277f22369be1",
+ "version": "0.6.0-srg3"
+ }
+ },
+ {
+ "package": "MAKVONotificationCenter",
+ "repositoryURL": "https://github.com/SRGSSR/MAKVONotificationCenter.git",
+ "state": {
+ "branch": null,
+ "revision": "60395e0601ffd4a784856b423d4cac558366276d",
+ "version": "1.0.0-srg5"
+ }
+ },
+ {
+ "package": "SRGDiagnostics",
+ "repositoryURL": "https://github.com/SRGSSR/srgdiagnostics-apple.git",
+ "state": {
+ "branch": null,
+ "revision": "5d2ef5c833a5cf6e56762a9c506e73f58ccad5e8",
+ "version": "3.0.0"
+ }
+ },
+ {
+ "package": "SRGLogger",
+ "repositoryURL": "https://github.com/SRGSSR/srglogger-apple.git",
+ "state": {
+ "branch": null,
+ "revision": "cfc39d1223ed039aeb7df38c6c7570977b22d1aa",
+ "version": "3.0.0"
+ }
+ },
+ {
+ "package": "SRGNetwork",
+ "repositoryURL": "https://github.com/SRGSSR/srgnetwork-apple.git",
+ "state": {
+ "branch": null,
+ "revision": "734fe399088b2f846e9e69d48a43118f6a8dc0d2",
+ "version": "3.0.0"
+ }
+ }
+ ]
+ },
+ "version": 1
+}
diff --git a/Package.swift b/Package.swift
new file mode 100644
index 0000000..e4ea551
--- /dev/null
+++ b/Package.swift
@@ -0,0 +1,45 @@
+// swift-tools-version:5.3
+
+import PackageDescription
+
+struct ProjectSettings {
+ static let marketingVersion: String = "3.0.0"
+}
+
+let package = Package(
+ name: "SRGContentProtection",
+ defaultLocalization: "en",
+ platforms: [
+ .iOS(.v9),
+ .tvOS(.v12)
+ ],
+ products: [
+ .library(
+ name: "SRGContentProtection",
+ targets: ["SRGContentProtection"]
+ )
+ ],
+ dependencies: [
+ .package(name: "SRGDiagnostics", url: "https://github.com/SRGSSR/srgdiagnostics-apple.git", .upToNextMinor(from: "3.0.0")),
+ .package(name: "SRGNetwork", url: "https://github.com/SRGSSR/srgnetwork-apple.git", .upToNextMinor(from: "3.0.0"))
+ ],
+ targets: [
+ .target(
+ name: "SRGContentProtection",
+ dependencies: ["SRGDiagnostics", "SRGNetwork"],
+ resources: [
+ .process("Resources")
+ ],
+ cSettings: [
+ .define("MARKETING_VERSION", to: "\"\(ProjectSettings.marketingVersion)\"")
+ ]
+ ),
+ .testTarget(
+ name: "SRGContentProtectionTests",
+ dependencies: ["SRGContentProtection"],
+ cSettings: [
+ .headerSearchPath("Private")
+ ]
+ )
+ ]
+)
diff --git a/SRGContentProtection.xcodeproj/project.pbxproj b/SRGContentProtection.xcodeproj/project.pbxproj
deleted file mode 100644
index 7382c3f..0000000
--- a/SRGContentProtection.xcodeproj/project.pbxproj
+++ /dev/null
@@ -1,1246 +0,0 @@
-// !$*UTF8*$!
-{
- archiveVersion = 1;
- classes = {
- };
- objectVersion = 50;
- objects = {
-
-/* Begin PBXBuildFile section */
- 08E2AF6423108D8F00DCCE74 /* MediaDemoConfiguration.plist in Resources */ = {isa = PBXBuildFile; fileRef = 08E2AF6323108D8F00DCCE74 /* MediaDemoConfiguration.plist */; };
- 08E2AF6923108EBA00DCCE74 /* Media.m in Sources */ = {isa = PBXBuildFile; fileRef = 08E2AF6823108EBA00DCCE74 /* Media.m */; };
- 6F0C98EE2121E1D600073AB6 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 6FCBFEF7210B578B006BC355 /* Localizable.strings */; };
- 6F0C98F12121E26A00073AB6 /* SRGContentProtection.bundle in Resources */ = {isa = PBXBuildFile; fileRef = 6F0C98E62121E1C200073AB6 /* SRGContentProtection.bundle */; };
- 6F0EB54020FC7FA9009C02CF /* SRGContentProtection.h in Headers */ = {isa = PBXBuildFile; fileRef = 6F0EB53E20FC7FA9009C02CF /* SRGContentProtection.h */; settings = {ATTRIBUTES = (Public, ); }; };
- 6F0EB54320FC7FF4009C02CF /* SRGContentProtection.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F0EB54220FC7FF4009C02CF /* SRGContentProtection.m */; };
- 6F0EB54720FC8049009C02CF /* NSBundle+SRGContentProtection.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F0EB54520FC8049009C02CF /* NSBundle+SRGContentProtection.m */; };
- 6F0EB54820FC8049009C02CF /* NSBundle+SRGContentProtection.h in Headers */ = {isa = PBXBuildFile; fileRef = 6F0EB54620FC8049009C02CF /* NSBundle+SRGContentProtection.h */; };
- 6F7B786A2108A05C001E3BBE /* SRGAkamaiToken.h in Headers */ = {isa = PBXBuildFile; fileRef = 6F7B78682108A05C001E3BBE /* SRGAkamaiToken.h */; };
- 6F7B786B2108A05C001E3BBE /* SRGAkamaiToken.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F7B78692108A05C001E3BBE /* SRGAkamaiToken.m */; };
- 6F8A93D220FDB3D200AA6434 /* SRGFairPlayAssetResourceLoaderDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 6F8A93D020FDB3D200AA6434 /* SRGFairPlayAssetResourceLoaderDelegate.h */; };
- 6F8A93D320FDB3D200AA6434 /* SRGFairPlayAssetResourceLoaderDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F8A93D120FDB3D200AA6434 /* SRGFairPlayAssetResourceLoaderDelegate.m */; };
- 6F8A93FB20FDCAA800AA6434 /* LaunchScreen~ios.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 6F8A93F020FDCAA800AA6434 /* LaunchScreen~ios.storyboard */; };
- 6F8A93FC20FDCAA800AA6434 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 6F8A93F120FDCAA800AA6434 /* Images.xcassets */; };
- 6F8A93FD20FDCAA800AA6434 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F8A93F520FDCAA800AA6434 /* main.m */; };
- 6F8A93FE20FDCAA800AA6434 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F8A93F620FDCAA800AA6434 /* AppDelegate.m */; };
- 6F8A93FF20FDCAA800AA6434 /* DemosViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 6F8A93F920FDCAA800AA6434 /* DemosViewController.m */; };
- 6FB74D6C2101D4D200E2D365 /* SRGContentProtection.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6F0EB53120FC7F58009C02CF /* SRGContentProtection.framework */; };
- 6FB74D772101D5D600E2D365 /* AkamaiResourceLoaderTestCase.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FB74D742101D5D600E2D365 /* AkamaiResourceLoaderTestCase.m */; };
- 6FB74D782101D5D600E2D365 /* FairPlayResourceLoaderTestCase.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FB74D752101D5D600E2D365 /* FairPlayResourceLoaderTestCase.m */; };
- 6FBCA7412109A9F4004CD02D /* AkamaiTokenTestCase.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FBCA7402109A9F4004CD02D /* AkamaiTokenTestCase.m */; };
- 6FBF24372147FE2E00E576A2 /* SRGAssetResourceLoaderDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FBF24362147FE2E00E576A2 /* SRGAssetResourceLoaderDelegate.m */; };
- 6FBF243A21480DB300E576A2 /* SRGContentProtectionConstants.h in Headers */ = {isa = PBXBuildFile; fileRef = 6FBF243821480DB300E576A2 /* SRGContentProtectionConstants.h */; settings = {ATTRIBUTES = (Public, ); }; };
- 6FBF243B21480DB300E576A2 /* SRGContentProtectionConstants.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FBF243921480DB300E576A2 /* SRGContentProtectionConstants.m */; };
- 6FCAB6CE231673B00043432E /* SRGContentProtection.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6F0EB53120FC7F58009C02CF /* SRGContentProtection.framework */; };
- 6FCAB6CF231673B00043432E /* SRGContentProtection.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 6F0EB53120FC7F58009C02CF /* SRGContentProtection.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
- 6FD810F420FCB58500F250B9 /* AVURLAsset+SRGContentProtection.h in Headers */ = {isa = PBXBuildFile; fileRef = 6FD810F220FCB58500F250B9 /* AVURLAsset+SRGContentProtection.h */; settings = {ATTRIBUTES = (Public, ); }; };
- 6FD810F520FCB58500F250B9 /* AVURLAsset+SRGContentProtection.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FD810F320FCB58500F250B9 /* AVURLAsset+SRGContentProtection.m */; };
- 6FD8110120FCC22500F250B9 /* SRGAkamaiAssetResourceLoaderDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 6FD810FF20FCC22500F250B9 /* SRGAkamaiAssetResourceLoaderDelegate.h */; };
- 6FD8110220FCC22500F250B9 /* SRGAkamaiAssetResourceLoaderDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FD8110020FCC22500F250B9 /* SRGAkamaiAssetResourceLoaderDelegate.m */; };
- 6FDE576520FC9DC700719525 /* SRGContentProtectionError.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FDE576320FC9DC700719525 /* SRGContentProtectionError.m */; };
- 6FDE576620FC9DC700719525 /* SRGContentProtectionError.h in Headers */ = {isa = PBXBuildFile; fileRef = 6FDE576420FC9DC700719525 /* SRGContentProtectionError.h */; };
- 6FE021DD2119B58800DF6617 /* SRGAssetResourceLoaderDelegate.h in Headers */ = {isa = PBXBuildFile; fileRef = 6FE021DC2119B58800DF6617 /* SRGAssetResourceLoaderDelegate.h */; };
-/* End PBXBuildFile section */
-
-/* Begin PBXContainerItemProxy section */
- 6F0C98EF2121E26400073AB6 /* PBXContainerItemProxy */ = {
- isa = PBXContainerItemProxy;
- containerPortal = 6F0EB52820FC7F58009C02CF /* Project object */;
- proxyType = 1;
- remoteGlobalIDString = 6F0C98E52121E1C200073AB6;
- remoteInfo = "SRGContentProtection-resources";
- };
- 6F8A940520FDD01B00AA6434 /* PBXContainerItemProxy */ = {
- isa = PBXContainerItemProxy;
- containerPortal = 6F0EB52820FC7F58009C02CF /* Project object */;
- proxyType = 1;
- remoteGlobalIDString = 6F0EB53020FC7F58009C02CF;
- remoteInfo = SRGContentProtection;
- };
- 6FB74D6D2101D4D200E2D365 /* PBXContainerItemProxy */ = {
- isa = PBXContainerItemProxy;
- containerPortal = 6F0EB52820FC7F58009C02CF /* Project object */;
- proxyType = 1;
- remoteGlobalIDString = 6F0EB53020FC7F58009C02CF;
- remoteInfo = SRGContentProtection;
- };
-/* End PBXContainerItemProxy section */
-
-/* Begin PBXCopyFilesBuildPhase section */
- 6FCAB6D0231673B00043432E /* Embed Frameworks */ = {
- isa = PBXCopyFilesBuildPhase;
- buildActionMask = 2147483647;
- dstPath = "";
- dstSubfolderSpec = 10;
- files = (
- 6FCAB6CF231673B00043432E /* SRGContentProtection.framework in Embed Frameworks */,
- );
- name = "Embed Frameworks";
- runOnlyForDeploymentPostprocessing = 0;
- };
-/* End PBXCopyFilesBuildPhase section */
-
-/* Begin PBXFileReference section */
- 0858B69522010C9E000F00CF /* SRGLogger.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SRGLogger.framework; path = Carthage/Build/iOS/SRGLogger.framework; sourceTree = ""; };
- 0858B69622010C9E000F00CF /* libextobjc.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = libextobjc.framework; path = Carthage/Build/iOS/libextobjc.framework; sourceTree = ""; };
- 0858B69722010C9E000F00CF /* MAKVONotificationCenter.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MAKVONotificationCenter.framework; path = Carthage/Build/iOS/MAKVONotificationCenter.framework; sourceTree = ""; };
- 08CED68E231EF5BF00C2C6DA /* Common.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Common.xcconfig; sourceTree = ""; };
- 08E2AF6323108D8F00DCCE74 /* MediaDemoConfiguration.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = MediaDemoConfiguration.plist; sourceTree = ""; };
- 08E2AF6723108EBA00DCCE74 /* Media.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Media.h; sourceTree = ""; };
- 08E2AF6823108EBA00DCCE74 /* Media.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Media.m; sourceTree = ""; };
- 6F0432BC21006E7A002B090A /* SRGNetwork.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SRGNetwork.framework; path = Carthage/Build/iOS/SRGNetwork.framework; sourceTree = ""; };
- 6F0C98E62121E1C200073AB6 /* SRGContentProtection.bundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = SRGContentProtection.bundle; sourceTree = BUILT_PRODUCTS_DIR; };
- 6F0EB53120FC7F58009C02CF /* SRGContentProtection.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = SRGContentProtection.framework; sourceTree = BUILT_PRODUCTS_DIR; };
- 6F0EB53E20FC7FA9009C02CF /* SRGContentProtection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SRGContentProtection.h; sourceTree = ""; };
- 6F0EB53F20FC7FA9009C02CF /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; };
- 6F0EB54220FC7FF4009C02CF /* SRGContentProtection.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = SRGContentProtection.m; sourceTree = ""; };
- 6F0EB54520FC8049009C02CF /* NSBundle+SRGContentProtection.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSBundle+SRGContentProtection.m"; sourceTree = ""; };
- 6F0EB54620FC8049009C02CF /* NSBundle+SRGContentProtection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSBundle+SRGContentProtection.h"; sourceTree = ""; };
- 6F7B78682108A05C001E3BBE /* SRGAkamaiToken.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SRGAkamaiToken.h; sourceTree = ""; };
- 6F7B78692108A05C001E3BBE /* SRGAkamaiToken.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = SRGAkamaiToken.m; sourceTree = ""; };
- 6F8A93D020FDB3D200AA6434 /* SRGFairPlayAssetResourceLoaderDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SRGFairPlayAssetResourceLoaderDelegate.h; sourceTree = ""; };
- 6F8A93D120FDB3D200AA6434 /* SRGFairPlayAssetResourceLoaderDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = SRGFairPlayAssetResourceLoaderDelegate.m; sourceTree = ""; };
- 6F8A93D820FDCA0800AA6434 /* SRGContentProtection-demo.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "SRGContentProtection-demo.app"; sourceTree = BUILT_PRODUCTS_DIR; };
- 6F8A93F020FDCAA800AA6434 /* LaunchScreen~ios.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; path = "LaunchScreen~ios.storyboard"; sourceTree = ""; };
- 6F8A93F120FDCAA800AA6434 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; };
- 6F8A93F420FDCAA800AA6434 /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; };
- 6F8A93F520FDCAA800AA6434 /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; };
- 6F8A93F620FDCAA800AA6434 /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = ""; };
- 6F8A93F820FDCAA800AA6434 /* DemosViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DemosViewController.h; sourceTree = ""; };
- 6F8A93F920FDCAA800AA6434 /* DemosViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DemosViewController.m; sourceTree = ""; };
- 6F8A93FA20FDCAA800AA6434 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; };
- 6FB74D672101D4D200E2D365 /* SRGContentProtection-tests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "SRGContentProtection-tests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; };
- 6FB74D742101D5D600E2D365 /* AkamaiResourceLoaderTestCase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AkamaiResourceLoaderTestCase.m; sourceTree = ""; };
- 6FB74D752101D5D600E2D365 /* FairPlayResourceLoaderTestCase.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FairPlayResourceLoaderTestCase.m; sourceTree = ""; };
- 6FB74D762101D5D600E2D365 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; };
- 6FBCA7402109A9F4004CD02D /* AkamaiTokenTestCase.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AkamaiTokenTestCase.m; sourceTree = ""; };
- 6FBF24302147F3ED00E576A2 /* SRGDiagnostics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SRGDiagnostics.framework; path = Carthage/Build/iOS/SRGDiagnostics.framework; sourceTree = ""; };
- 6FBF24362147FE2E00E576A2 /* SRGAssetResourceLoaderDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = SRGAssetResourceLoaderDelegate.m; sourceTree = ""; };
- 6FBF243821480DB300E576A2 /* SRGContentProtectionConstants.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SRGContentProtectionConstants.h; sourceTree = ""; };
- 6FBF243921480DB300E576A2 /* SRGContentProtectionConstants.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = SRGContentProtectionConstants.m; sourceTree = ""; };
- 6FCAB6C023165B0D0043432E /* Demo.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Demo.xcconfig; sourceTree = ""; };
- 6FCBFEF8210B578B006BC355 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Localizable.strings; sourceTree = ""; };
- 6FCBFEFA210B57BD006BC355 /* it */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = it; path = it.lproj/Localizable.strings; sourceTree = ""; };
- 6FCBFEFB210B57BD006BC355 /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/Localizable.strings; sourceTree = ""; };
- 6FCBFEFC210B57BE006BC355 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/Localizable.strings; sourceTree = ""; };
- 6FCBFEFD210B57BE006BC355 /* rm */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = rm; path = rm.lproj/Localizable.strings; sourceTree = ""; };
- 6FD810F220FCB58500F250B9 /* AVURLAsset+SRGContentProtection.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "AVURLAsset+SRGContentProtection.h"; sourceTree = ""; };
- 6FD810F320FCB58500F250B9 /* AVURLAsset+SRGContentProtection.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "AVURLAsset+SRGContentProtection.m"; sourceTree = ""; };
- 6FD810FF20FCC22500F250B9 /* SRGAkamaiAssetResourceLoaderDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SRGAkamaiAssetResourceLoaderDelegate.h; sourceTree = ""; };
- 6FD8110020FCC22500F250B9 /* SRGAkamaiAssetResourceLoaderDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SRGAkamaiAssetResourceLoaderDelegate.m; sourceTree = ""; };
- 6FDE576320FC9DC700719525 /* SRGContentProtectionError.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SRGContentProtectionError.m; sourceTree = ""; };
- 6FDE576420FC9DC700719525 /* SRGContentProtectionError.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SRGContentProtectionError.h; sourceTree = ""; };
- 6FE021DC2119B58800DF6617 /* SRGAssetResourceLoaderDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SRGAssetResourceLoaderDelegate.h; sourceTree = ""; };
- 6FE6E5E32148DC1D00228573 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; };
- 6FEDF728231576E000BEE8E1 /* Framework.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Framework.xcconfig; sourceTree = ""; };
- 6FEDF729231576F400BEE8E1 /* Tests.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Tests.xcconfig; sourceTree = ""; };
-/* End PBXFileReference section */
-
-/* Begin PBXFrameworksBuildPhase section */
- 6F0C98E32121E1C200073AB6 /* Frameworks */ = {
- isa = PBXFrameworksBuildPhase;
- buildActionMask = 2147483647;
- files = (
- );
- runOnlyForDeploymentPostprocessing = 0;
- };
- 6F0EB52D20FC7F58009C02CF /* Frameworks */ = {
- isa = PBXFrameworksBuildPhase;
- buildActionMask = 2147483647;
- files = (
- );
- runOnlyForDeploymentPostprocessing = 0;
- };
- 6F8A93D520FDCA0800AA6434 /* Frameworks */ = {
- isa = PBXFrameworksBuildPhase;
- buildActionMask = 2147483647;
- files = (
- 6FCAB6CE231673B00043432E /* SRGContentProtection.framework in Frameworks */,
- );
- runOnlyForDeploymentPostprocessing = 0;
- };
- 6FB74D642101D4D200E2D365 /* Frameworks */ = {
- isa = PBXFrameworksBuildPhase;
- buildActionMask = 2147483647;
- files = (
- 6FB74D6C2101D4D200E2D365 /* SRGContentProtection.framework in Frameworks */,
- );
- runOnlyForDeploymentPostprocessing = 0;
- };
-/* End PBXFrameworksBuildPhase section */
-
-/* Begin PBXGroup section */
- 08E2AF6623108EBA00DCCE74 /* Models */ = {
- isa = PBXGroup;
- children = (
- 08E2AF6723108EBA00DCCE74 /* Media.h */,
- 08E2AF6823108EBA00DCCE74 /* Media.m */,
- );
- path = Models;
- sourceTree = "";
- };
- 6F0EB52720FC7F58009C02CF = {
- isa = PBXGroup;
- children = (
- 08CED68E231EF5BF00C2C6DA /* Common.xcconfig */,
- 6F0EB53C20FC7FA9009C02CF /* Framework */,
- 6FB74D722101D5D600E2D365 /* Tests */,
- 6F8A93EE20FDCAA800AA6434 /* Demo */,
- 6F8A945521006A9E00AA6434 /* Frameworks */,
- 6F0EB53220FC7F58009C02CF /* Products */,
- );
- sourceTree = "";
- };
- 6F0EB53220FC7F58009C02CF /* Products */ = {
- isa = PBXGroup;
- children = (
- 6F0EB53120FC7F58009C02CF /* SRGContentProtection.framework */,
- 6F8A93D820FDCA0800AA6434 /* SRGContentProtection-demo.app */,
- 6FB74D672101D4D200E2D365 /* SRGContentProtection-tests.xctest */,
- 6F0C98E62121E1C200073AB6 /* SRGContentProtection.bundle */,
- );
- name = Products;
- sourceTree = "";
- };
- 6F0EB53C20FC7FA9009C02CF /* Framework */ = {
- isa = PBXGroup;
- children = (
- 6F0EB53D20FC7FA9009C02CF /* Sources */,
- 6FCBFEF6210B571C006BC355 /* Resources */,
- 6F0EB53F20FC7FA9009C02CF /* Info.plist */,
- 6FEDF728231576E000BEE8E1 /* Framework.xcconfig */,
- );
- path = Framework;
- sourceTree = "";
- };
- 6F0EB53D20FC7FA9009C02CF /* Sources */ = {
- isa = PBXGroup;
- children = (
- 6F0EB54420FC8049009C02CF /* Categories */,
- 6FD810FE20FCC22500F250B9 /* ResourceLoaders */,
- 6F7B78682108A05C001E3BBE /* SRGAkamaiToken.h */,
- 6F7B78692108A05C001E3BBE /* SRGAkamaiToken.m */,
- 6F0EB53E20FC7FA9009C02CF /* SRGContentProtection.h */,
- 6F0EB54220FC7FF4009C02CF /* SRGContentProtection.m */,
- 6FBF243821480DB300E576A2 /* SRGContentProtectionConstants.h */,
- 6FBF243921480DB300E576A2 /* SRGContentProtectionConstants.m */,
- 6FDE576420FC9DC700719525 /* SRGContentProtectionError.h */,
- 6FDE576320FC9DC700719525 /* SRGContentProtectionError.m */,
- );
- path = Sources;
- sourceTree = "";
- };
- 6F0EB54420FC8049009C02CF /* Categories */ = {
- isa = PBXGroup;
- children = (
- 6FD810F220FCB58500F250B9 /* AVURLAsset+SRGContentProtection.h */,
- 6FD810F320FCB58500F250B9 /* AVURLAsset+SRGContentProtection.m */,
- 6F0EB54620FC8049009C02CF /* NSBundle+SRGContentProtection.h */,
- 6F0EB54520FC8049009C02CF /* NSBundle+SRGContentProtection.m */,
- );
- path = Categories;
- sourceTree = "";
- };
- 6F8A93EE20FDCAA800AA6434 /* Demo */ = {
- isa = PBXGroup;
- children = (
- 6F8A93F220FDCAA800AA6434 /* Sources */,
- 6F8A93EF20FDCAA800AA6434 /* Resources */,
- 6F8A93FA20FDCAA800AA6434 /* Info.plist */,
- 6FCAB6C023165B0D0043432E /* Demo.xcconfig */,
- );
- path = Demo;
- sourceTree = "";
- };
- 6F8A93EF20FDCAA800AA6434 /* Resources */ = {
- isa = PBXGroup;
- children = (
- 08E2AF6323108D8F00DCCE74 /* MediaDemoConfiguration.plist */,
- 6F8A93F020FDCAA800AA6434 /* LaunchScreen~ios.storyboard */,
- 6F8A93F120FDCAA800AA6434 /* Images.xcassets */,
- );
- path = Resources;
- sourceTree = "";
- };
- 6F8A93F220FDCAA800AA6434 /* Sources */ = {
- isa = PBXGroup;
- children = (
- 6F8A93F320FDCAA800AA6434 /* Application */,
- 6F8A93F720FDCAA800AA6434 /* Demos */,
- 08E2AF6623108EBA00DCCE74 /* Models */,
- );
- path = Sources;
- sourceTree = "";
- };
- 6F8A93F320FDCAA800AA6434 /* Application */ = {
- isa = PBXGroup;
- children = (
- 6F8A93F420FDCAA800AA6434 /* AppDelegate.h */,
- 6F8A93F620FDCAA800AA6434 /* AppDelegate.m */,
- 6F8A93F520FDCAA800AA6434 /* main.m */,
- );
- path = Application;
- sourceTree = "";
- };
- 6F8A93F720FDCAA800AA6434 /* Demos */ = {
- isa = PBXGroup;
- children = (
- 6F8A93F820FDCAA800AA6434 /* DemosViewController.h */,
- 6F8A93F920FDCAA800AA6434 /* DemosViewController.m */,
- );
- path = Demos;
- sourceTree = "";
- };
- 6F8A945521006A9E00AA6434 /* Frameworks */ = {
- isa = PBXGroup;
- children = (
- 0858B69622010C9E000F00CF /* libextobjc.framework */,
- 0858B69722010C9E000F00CF /* MAKVONotificationCenter.framework */,
- 6FBF24302147F3ED00E576A2 /* SRGDiagnostics.framework */,
- 0858B69522010C9E000F00CF /* SRGLogger.framework */,
- 6F0432BC21006E7A002B090A /* SRGNetwork.framework */,
- );
- name = Frameworks;
- sourceTree = "";
- };
- 6FB74D722101D5D600E2D365 /* Tests */ = {
- isa = PBXGroup;
- children = (
- 6FB74D732101D5D600E2D365 /* Sources */,
- 6FB74D762101D5D600E2D365 /* Info.plist */,
- 6FEDF729231576F400BEE8E1 /* Tests.xcconfig */,
- );
- path = Tests;
- sourceTree = SOURCE_ROOT;
- };
- 6FB74D732101D5D600E2D365 /* Sources */ = {
- isa = PBXGroup;
- children = (
- 6FB74D742101D5D600E2D365 /* AkamaiResourceLoaderTestCase.m */,
- 6FBCA7402109A9F4004CD02D /* AkamaiTokenTestCase.m */,
- 6FB74D752101D5D600E2D365 /* FairPlayResourceLoaderTestCase.m */,
- );
- path = Sources;
- sourceTree = "";
- };
- 6FCBFEF6210B571C006BC355 /* Resources */ = {
- isa = PBXGroup;
- children = (
- 6FCBFEF7210B578B006BC355 /* Localizable.strings */,
- 6FE6E5E32148DC1D00228573 /* Info.plist */,
- );
- path = Resources;
- sourceTree = "";
- };
- 6FD810FE20FCC22500F250B9 /* ResourceLoaders */ = {
- isa = PBXGroup;
- children = (
- 6FD810FF20FCC22500F250B9 /* SRGAkamaiAssetResourceLoaderDelegate.h */,
- 6FD8110020FCC22500F250B9 /* SRGAkamaiAssetResourceLoaderDelegate.m */,
- 6FE021DC2119B58800DF6617 /* SRGAssetResourceLoaderDelegate.h */,
- 6FBF24362147FE2E00E576A2 /* SRGAssetResourceLoaderDelegate.m */,
- 6F8A93D020FDB3D200AA6434 /* SRGFairPlayAssetResourceLoaderDelegate.h */,
- 6F8A93D120FDB3D200AA6434 /* SRGFairPlayAssetResourceLoaderDelegate.m */,
- );
- path = ResourceLoaders;
- sourceTree = "";
- };
-/* End PBXGroup section */
-
-/* Begin PBXHeadersBuildPhase section */
- 6F0EB52E20FC7F58009C02CF /* Headers */ = {
- isa = PBXHeadersBuildPhase;
- buildActionMask = 2147483647;
- files = (
- 6F0EB54020FC7FA9009C02CF /* SRGContentProtection.h in Headers */,
- 6FD810F420FCB58500F250B9 /* AVURLAsset+SRGContentProtection.h in Headers */,
- 6FBF243A21480DB300E576A2 /* SRGContentProtectionConstants.h in Headers */,
- 6FD8110120FCC22500F250B9 /* SRGAkamaiAssetResourceLoaderDelegate.h in Headers */,
- 6F8A93D220FDB3D200AA6434 /* SRGFairPlayAssetResourceLoaderDelegate.h in Headers */,
- 6FDE576620FC9DC700719525 /* SRGContentProtectionError.h in Headers */,
- 6F0EB54820FC8049009C02CF /* NSBundle+SRGContentProtection.h in Headers */,
- 6F7B786A2108A05C001E3BBE /* SRGAkamaiToken.h in Headers */,
- 6FE021DD2119B58800DF6617 /* SRGAssetResourceLoaderDelegate.h in Headers */,
- );
- runOnlyForDeploymentPostprocessing = 0;
- };
-/* End PBXHeadersBuildPhase section */
-
-/* Begin PBXNativeTarget section */
- 6F0C98E52121E1C200073AB6 /* SRGContentProtection-resources */ = {
- isa = PBXNativeTarget;
- buildConfigurationList = 6F0C98E92121E1C200073AB6 /* Build configuration list for PBXNativeTarget "SRGContentProtection-resources" */;
- buildPhases = (
- 6F0C98E22121E1C200073AB6 /* Sources */,
- 6F0C98E32121E1C200073AB6 /* Frameworks */,
- 6F0C98E42121E1C200073AB6 /* Resources */,
- );
- buildRules = (
- );
- dependencies = (
- );
- name = "SRGContentProtection-resources";
- productName = "SRGContentProtection-resources";
- productReference = 6F0C98E62121E1C200073AB6 /* SRGContentProtection.bundle */;
- productType = "com.apple.product-type.bundle";
- };
- 6F0EB53020FC7F58009C02CF /* SRGContentProtection */ = {
- isa = PBXNativeTarget;
- buildConfigurationList = 6F0EB53920FC7F58009C02CF /* Build configuration list for PBXNativeTarget "SRGContentProtection" */;
- buildPhases = (
- 6F0EB52C20FC7F58009C02CF /* Sources */,
- 6F0EB52D20FC7F58009C02CF /* Frameworks */,
- 6F0EB52E20FC7F58009C02CF /* Headers */,
- 6F0EB52F20FC7F58009C02CF /* Resources */,
- );
- buildRules = (
- );
- dependencies = (
- 6F0C98F02121E26400073AB6 /* PBXTargetDependency */,
- );
- name = SRGContentProtection;
- productName = SRGContentProtection;
- productReference = 6F0EB53120FC7F58009C02CF /* SRGContentProtection.framework */;
- productType = "com.apple.product-type.framework";
- };
- 6F8A93D720FDCA0800AA6434 /* SRGContentProtection-demo */ = {
- isa = PBXNativeTarget;
- buildConfigurationList = 6F8A93EB20FDCA0900AA6434 /* Build configuration list for PBXNativeTarget "SRGContentProtection-demo" */;
- buildPhases = (
- 6F8A93D420FDCA0800AA6434 /* Sources */,
- 6F8A93D520FDCA0800AA6434 /* Frameworks */,
- 6F8A93D620FDCA0800AA6434 /* Resources */,
- 6FCAB6CC2316732B0043432E /* Embed Frameworks (Carthage) */,
- 6FCAB6D0231673B00043432E /* Embed Frameworks */,
- );
- buildRules = (
- );
- dependencies = (
- 6F8A940620FDD01B00AA6434 /* PBXTargetDependency */,
- );
- name = "SRGContentProtection-demo";
- productName = "SRGContentProtection-demo";
- productReference = 6F8A93D820FDCA0800AA6434 /* SRGContentProtection-demo.app */;
- productType = "com.apple.product-type.application";
- };
- 6FB74D662101D4D200E2D365 /* SRGContentProtection-tests */ = {
- isa = PBXNativeTarget;
- buildConfigurationList = 6FB74D712101D4D200E2D365 /* Build configuration list for PBXNativeTarget "SRGContentProtection-tests" */;
- buildPhases = (
- 6FB74D632101D4D200E2D365 /* Sources */,
- 6FB74D642101D4D200E2D365 /* Frameworks */,
- 6FB74D652101D4D200E2D365 /* Resources */,
- );
- buildRules = (
- );
- dependencies = (
- 6FB74D6E2101D4D200E2D365 /* PBXTargetDependency */,
- );
- name = "SRGContentProtection-tests";
- productName = "SRGContentProtection-tests";
- productReference = 6FB74D672101D4D200E2D365 /* SRGContentProtection-tests.xctest */;
- productType = "com.apple.product-type.bundle.unit-test";
- };
-/* End PBXNativeTarget section */
-
-/* Begin PBXProject section */
- 6F0EB52820FC7F58009C02CF /* Project object */ = {
- isa = PBXProject;
- attributes = {
- LastUpgradeCheck = 1100;
- ORGANIZATIONNAME = "SRG SSR";
- TargetAttributes = {
- 6F0C98E52121E1C200073AB6 = {
- CreatedOnToolsVersion = 9.4;
- };
- 6F0EB53020FC7F58009C02CF = {
- CreatedOnToolsVersion = 9.4;
- };
- 6F8A93D720FDCA0800AA6434 = {
- CreatedOnToolsVersion = 9.4;
- };
- 6FB74D662101D4D200E2D365 = {
- CreatedOnToolsVersion = 9.4;
- };
- };
- };
- buildConfigurationList = 6F0EB52B20FC7F58009C02CF /* Build configuration list for PBXProject "SRGContentProtection" */;
- compatibilityVersion = "Xcode 9.3";
- developmentRegion = en;
- hasScannedForEncodings = 0;
- knownRegions = (
- en,
- Base,
- it,
- de,
- fr,
- rm,
- );
- mainGroup = 6F0EB52720FC7F58009C02CF;
- productRefGroup = 6F0EB53220FC7F58009C02CF /* Products */;
- projectDirPath = "";
- projectRoot = "";
- targets = (
- 6F0EB53020FC7F58009C02CF /* SRGContentProtection */,
- 6F0C98E52121E1C200073AB6 /* SRGContentProtection-resources */,
- 6FB74D662101D4D200E2D365 /* SRGContentProtection-tests */,
- 6F8A93D720FDCA0800AA6434 /* SRGContentProtection-demo */,
- );
- };
-/* End PBXProject section */
-
-/* Begin PBXResourcesBuildPhase section */
- 6F0C98E42121E1C200073AB6 /* Resources */ = {
- isa = PBXResourcesBuildPhase;
- buildActionMask = 2147483647;
- files = (
- 6F0C98EE2121E1D600073AB6 /* Localizable.strings in Resources */,
- );
- runOnlyForDeploymentPostprocessing = 0;
- };
- 6F0EB52F20FC7F58009C02CF /* Resources */ = {
- isa = PBXResourcesBuildPhase;
- buildActionMask = 2147483647;
- files = (
- 6F0C98F12121E26A00073AB6 /* SRGContentProtection.bundle in Resources */,
- );
- runOnlyForDeploymentPostprocessing = 0;
- };
- 6F8A93D620FDCA0800AA6434 /* Resources */ = {
- isa = PBXResourcesBuildPhase;
- buildActionMask = 2147483647;
- files = (
- 6F8A93FB20FDCAA800AA6434 /* LaunchScreen~ios.storyboard in Resources */,
- 08E2AF6423108D8F00DCCE74 /* MediaDemoConfiguration.plist in Resources */,
- 6F8A93FC20FDCAA800AA6434 /* Images.xcassets in Resources */,
- );
- runOnlyForDeploymentPostprocessing = 0;
- };
- 6FB74D652101D4D200E2D365 /* Resources */ = {
- isa = PBXResourcesBuildPhase;
- buildActionMask = 2147483647;
- files = (
- );
- runOnlyForDeploymentPostprocessing = 0;
- };
-/* End PBXResourcesBuildPhase section */
-
-/* Begin PBXShellScriptBuildPhase section */
- 6FCAB6CC2316732B0043432E /* Embed Frameworks (Carthage) */ = {
- isa = PBXShellScriptBuildPhase;
- buildActionMask = 2147483647;
- files = (
- );
- inputFileListPaths = (
- );
- inputPaths = (
- "$(SRCROOT)/Carthage/Build/$(CARTHAGE_PLATFORM)/libextobjc.framework",
- "$(SRCROOT)/Carthage/Build/$(CARTHAGE_PLATFORM)/MAKVONotificationCenter.framework",
- "$(SRCROOT)/Carthage/Build/$(CARTHAGE_PLATFORM)/SRGDiagnostics.framework",
- "$(SRCROOT)/Carthage/Build/$(CARTHAGE_PLATFORM)/SRGLogger.framework",
- "$(SRCROOT)/Carthage/Build/$(CARTHAGE_PLATFORM)/SRGNetwork.framework",
- );
- name = "Embed Frameworks (Carthage)";
- outputFileListPaths = (
- );
- outputPaths = (
- );
- runOnlyForDeploymentPostprocessing = 0;
- shellPath = /bin/sh;
- shellScript = "/usr/local/bin/carthage copy-frameworks\n";
- };
-/* End PBXShellScriptBuildPhase section */
-
-/* Begin PBXSourcesBuildPhase section */
- 6F0C98E22121E1C200073AB6 /* Sources */ = {
- isa = PBXSourcesBuildPhase;
- buildActionMask = 2147483647;
- files = (
- );
- runOnlyForDeploymentPostprocessing = 0;
- };
- 6F0EB52C20FC7F58009C02CF /* Sources */ = {
- isa = PBXSourcesBuildPhase;
- buildActionMask = 2147483647;
- files = (
- 6F0EB54720FC8049009C02CF /* NSBundle+SRGContentProtection.m in Sources */,
- 6F0EB54320FC7FF4009C02CF /* SRGContentProtection.m in Sources */,
- 6FBF24372147FE2E00E576A2 /* SRGAssetResourceLoaderDelegate.m in Sources */,
- 6FD8110220FCC22500F250B9 /* SRGAkamaiAssetResourceLoaderDelegate.m in Sources */,
- 6F7B786B2108A05C001E3BBE /* SRGAkamaiToken.m in Sources */,
- 6FDE576520FC9DC700719525 /* SRGContentProtectionError.m in Sources */,
- 6F8A93D320FDB3D200AA6434 /* SRGFairPlayAssetResourceLoaderDelegate.m in Sources */,
- 6FD810F520FCB58500F250B9 /* AVURLAsset+SRGContentProtection.m in Sources */,
- 6FBF243B21480DB300E576A2 /* SRGContentProtectionConstants.m in Sources */,
- );
- runOnlyForDeploymentPostprocessing = 0;
- };
- 6F8A93D420FDCA0800AA6434 /* Sources */ = {
- isa = PBXSourcesBuildPhase;
- buildActionMask = 2147483647;
- files = (
- 6F8A93FE20FDCAA800AA6434 /* AppDelegate.m in Sources */,
- 6F8A93FD20FDCAA800AA6434 /* main.m in Sources */,
- 08E2AF6923108EBA00DCCE74 /* Media.m in Sources */,
- 6F8A93FF20FDCAA800AA6434 /* DemosViewController.m in Sources */,
- );
- runOnlyForDeploymentPostprocessing = 0;
- };
- 6FB74D632101D4D200E2D365 /* Sources */ = {
- isa = PBXSourcesBuildPhase;
- buildActionMask = 2147483647;
- files = (
- 6FB74D772101D5D600E2D365 /* AkamaiResourceLoaderTestCase.m in Sources */,
- 6FB74D782101D5D600E2D365 /* FairPlayResourceLoaderTestCase.m in Sources */,
- 6FBCA7412109A9F4004CD02D /* AkamaiTokenTestCase.m in Sources */,
- );
- runOnlyForDeploymentPostprocessing = 0;
- };
-/* End PBXSourcesBuildPhase section */
-
-/* Begin PBXTargetDependency section */
- 6F0C98F02121E26400073AB6 /* PBXTargetDependency */ = {
- isa = PBXTargetDependency;
- target = 6F0C98E52121E1C200073AB6 /* SRGContentProtection-resources */;
- targetProxy = 6F0C98EF2121E26400073AB6 /* PBXContainerItemProxy */;
- };
- 6F8A940620FDD01B00AA6434 /* PBXTargetDependency */ = {
- isa = PBXTargetDependency;
- target = 6F0EB53020FC7F58009C02CF /* SRGContentProtection */;
- targetProxy = 6F8A940520FDD01B00AA6434 /* PBXContainerItemProxy */;
- };
- 6FB74D6E2101D4D200E2D365 /* PBXTargetDependency */ = {
- isa = PBXTargetDependency;
- target = 6F0EB53020FC7F58009C02CF /* SRGContentProtection */;
- targetProxy = 6FB74D6D2101D4D200E2D365 /* PBXContainerItemProxy */;
- };
-/* End PBXTargetDependency section */
-
-/* Begin PBXVariantGroup section */
- 6FCBFEF7210B578B006BC355 /* Localizable.strings */ = {
- isa = PBXVariantGroup;
- children = (
- 6FCBFEF8210B578B006BC355 /* en */,
- 6FCBFEFA210B57BD006BC355 /* it */,
- 6FCBFEFB210B57BD006BC355 /* de */,
- 6FCBFEFC210B57BE006BC355 /* fr */,
- 6FCBFEFD210B57BE006BC355 /* rm */,
- );
- name = Localizable.strings;
- sourceTree = "";
- };
-/* End PBXVariantGroup section */
-
-/* Begin XCBuildConfiguration section */
- 6F0C98DA2121E14000073AB6 /* Debug-static */ = {
- isa = XCBuildConfiguration;
- buildSettings = {
- ALWAYS_SEARCH_USER_PATHS = NO;
- CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
- 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 = "Apple Development";
- COPY_PHASE_STRIP = NO;
- CURRENT_PROJECT_VERSION = 1;
- DEBUG_INFORMATION_FORMAT = dwarf;
- DYLIB_COMPATIBILITY_VERSION = 1;
- DYLIB_CURRENT_VERSION = 1;
- 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;
- MTL_ENABLE_DEBUG_INFO = YES;
- ONLY_ACTIVE_ARCH = YES;
- PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.$(TARGET_NAME)";
- PRODUCT_NAME = "$(TARGET_NAME)";
- };
- name = "Debug-static";
- };
- 6F0C98DB2121E14000073AB6 /* Debug-static */ = {
- isa = XCBuildConfiguration;
- baseConfigurationReference = 6FEDF728231576E000BEE8E1 /* Framework.xcconfig */;
- buildSettings = {
- APPLICATION_EXTENSION_API_ONLY = YES;
- CLANG_ENABLE_CODE_COVERAGE = NO;
- DEFINES_MODULE = YES;
- DYLIB_COMPATIBILITY_VERSION = 1;
- DYLIB_INSTALL_NAME_BASE = "@rpath";
- FRAMEWORK_SEARCH_PATHS = (
- "$(inherited)",
- "$(PROJECT_DIR)/Carthage/Build/$(CARTHAGE_PLATFORM)",
- "$(PROJECT_DIR)/Carthage/Build/$(CARTHAGE_PLATFORM)/Static",
- );
- INFOPLIST_FILE = Framework/Info.plist;
- INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
- LD_RUNPATH_SEARCH_PATHS = (
- "$(inherited)",
- "@executable_path/Frameworks",
- "@loader_path/Frameworks",
- );
- MACH_O_TYPE = staticlib;
- SKIP_INSTALL = YES;
- VERSIONING_SYSTEM = "apple-generic";
- };
- name = "Debug-static";
- };
- 6F0C98DC2121E14000073AB6 /* Debug-static */ = {
- isa = XCBuildConfiguration;
- baseConfigurationReference = 6FCAB6C023165B0D0043432E /* Demo.xcconfig */;
- buildSettings = {
- ASSETCATALOG_COMPILER_APPICON_NAME = "$(APP_ICONS_SOURCE)";
- DEVELOPMENT_TEAM = VMGRRW6SG7;
- FRAMEWORK_SEARCH_PATHS = (
- "$(inherited)",
- "$(PROJECT_DIR)/Carthage/Build/$(CARTHAGE_PLATFORM)",
- );
- INFOPLIST_FILE = Demo/Info.plist;
- LD_RUNPATH_SEARCH_PATHS = (
- "$(inherited)",
- "@executable_path/Frameworks",
- );
- SDKROOT = iphoneos;
- };
- name = "Debug-static";
- };
- 6F0C98DD2121E14000073AB6 /* Debug-static */ = {
- isa = XCBuildConfiguration;
- baseConfigurationReference = 6FEDF729231576F400BEE8E1 /* Tests.xcconfig */;
- buildSettings = {
- CODE_SIGN_IDENTITY = "-";
- DEVELOPMENT_TEAM = "";
- FRAMEWORK_SEARCH_PATHS = (
- "$(inherited)",
- "$(PROJECT_DIR)/Carthage/Build/$(CARTHAGE_PLATFORM)",
- );
- INFOPLIST_FILE = Tests/Info.plist;
- LD_RUNPATH_SEARCH_PATHS = (
- "$(inherited)",
- "@executable_path/Frameworks",
- "@loader_path/Frameworks",
- "$(FRAMEWORK_SEARCH_PATHS)",
- );
- };
- name = "Debug-static";
- };
- 6F0C98DE2121E14600073AB6 /* Release-static */ = {
- isa = XCBuildConfiguration;
- buildSettings = {
- ALWAYS_SEARCH_USER_PATHS = NO;
- CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
- 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 = "Apple Development";
- COPY_PHASE_STRIP = NO;
- CURRENT_PROJECT_VERSION = 1;
- DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
- DYLIB_COMPATIBILITY_VERSION = 1;
- DYLIB_CURRENT_VERSION = 1;
- 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;
- MTL_ENABLE_DEBUG_INFO = NO;
- PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.$(TARGET_NAME)";
- PRODUCT_NAME = "$(TARGET_NAME)";
- VALIDATE_PRODUCT = YES;
- };
- name = "Release-static";
- };
- 6F0C98DF2121E14600073AB6 /* Release-static */ = {
- isa = XCBuildConfiguration;
- baseConfigurationReference = 6FEDF728231576E000BEE8E1 /* Framework.xcconfig */;
- buildSettings = {
- APPLICATION_EXTENSION_API_ONLY = YES;
- CLANG_ENABLE_CODE_COVERAGE = NO;
- DEFINES_MODULE = YES;
- DYLIB_COMPATIBILITY_VERSION = 1;
- DYLIB_INSTALL_NAME_BASE = "@rpath";
- FRAMEWORK_SEARCH_PATHS = (
- "$(inherited)",
- "$(PROJECT_DIR)/Carthage/Build/$(CARTHAGE_PLATFORM)",
- "$(PROJECT_DIR)/Carthage/Build/$(CARTHAGE_PLATFORM)/Static",
- );
- INFOPLIST_FILE = Framework/Info.plist;
- INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
- LD_RUNPATH_SEARCH_PATHS = (
- "$(inherited)",
- "@executable_path/Frameworks",
- "@loader_path/Frameworks",
- );
- MACH_O_TYPE = staticlib;
- SKIP_INSTALL = YES;
- VERSIONING_SYSTEM = "apple-generic";
- };
- name = "Release-static";
- };
- 6F0C98E02121E14600073AB6 /* Release-static */ = {
- isa = XCBuildConfiguration;
- baseConfigurationReference = 6FCAB6C023165B0D0043432E /* Demo.xcconfig */;
- buildSettings = {
- ASSETCATALOG_COMPILER_APPICON_NAME = "$(APP_ICONS_SOURCE)";
- DEVELOPMENT_TEAM = VMGRRW6SG7;
- FRAMEWORK_SEARCH_PATHS = (
- "$(inherited)",
- "$(PROJECT_DIR)/Carthage/Build/$(CARTHAGE_PLATFORM)",
- );
- INFOPLIST_FILE = Demo/Info.plist;
- LD_RUNPATH_SEARCH_PATHS = (
- "$(inherited)",
- "@executable_path/Frameworks",
- );
- SDKROOT = iphoneos;
- };
- name = "Release-static";
- };
- 6F0C98E12121E14600073AB6 /* Release-static */ = {
- isa = XCBuildConfiguration;
- baseConfigurationReference = 6FEDF729231576F400BEE8E1 /* Tests.xcconfig */;
- buildSettings = {
- CODE_SIGN_IDENTITY = "-";
- DEVELOPMENT_TEAM = "";
- FRAMEWORK_SEARCH_PATHS = (
- "$(inherited)",
- "$(PROJECT_DIR)/Carthage/Build/$(CARTHAGE_PLATFORM)",
- );
- INFOPLIST_FILE = Tests/Info.plist;
- LD_RUNPATH_SEARCH_PATHS = (
- "$(inherited)",
- "@executable_path/Frameworks",
- "@loader_path/Frameworks",
- "$(FRAMEWORK_SEARCH_PATHS)",
- );
- };
- name = "Release-static";
- };
- 6F0C98EA2121E1C200073AB6 /* Debug */ = {
- isa = XCBuildConfiguration;
- baseConfigurationReference = 6FEDF728231576E000BEE8E1 /* Framework.xcconfig */;
- buildSettings = {
- CODE_SIGN_IDENTITY = "-";
- DEVELOPMENT_TEAM = "";
- INFOPLIST_FILE = Framework/Resources/Info.plist;
- INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Bundles";
- PRODUCT_NAME = SRGContentProtection;
- SKIP_INSTALL = YES;
- WRAPPER_EXTENSION = bundle;
- };
- name = Debug;
- };
- 6F0C98EB2121E1C200073AB6 /* Debug-static */ = {
- isa = XCBuildConfiguration;
- baseConfigurationReference = 6FEDF728231576E000BEE8E1 /* Framework.xcconfig */;
- buildSettings = {
- CODE_SIGN_IDENTITY = "-";
- DEVELOPMENT_TEAM = "";
- INFOPLIST_FILE = Framework/Resources/Info.plist;
- INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Bundles";
- PRODUCT_NAME = SRGContentProtection;
- SKIP_INSTALL = YES;
- WRAPPER_EXTENSION = bundle;
- };
- name = "Debug-static";
- };
- 6F0C98EC2121E1C200073AB6 /* Release */ = {
- isa = XCBuildConfiguration;
- baseConfigurationReference = 6FEDF728231576E000BEE8E1 /* Framework.xcconfig */;
- buildSettings = {
- CODE_SIGN_IDENTITY = "-";
- DEVELOPMENT_TEAM = "";
- INFOPLIST_FILE = Framework/Resources/Info.plist;
- INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Bundles";
- PRODUCT_NAME = SRGContentProtection;
- SKIP_INSTALL = YES;
- WRAPPER_EXTENSION = bundle;
- };
- name = Release;
- };
- 6F0C98ED2121E1C200073AB6 /* Release-static */ = {
- isa = XCBuildConfiguration;
- baseConfigurationReference = 6FEDF728231576E000BEE8E1 /* Framework.xcconfig */;
- buildSettings = {
- CODE_SIGN_IDENTITY = "-";
- DEVELOPMENT_TEAM = "";
- INFOPLIST_FILE = Framework/Resources/Info.plist;
- INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Bundles";
- PRODUCT_NAME = SRGContentProtection;
- SKIP_INSTALL = YES;
- WRAPPER_EXTENSION = bundle;
- };
- name = "Release-static";
- };
- 6F0EB53720FC7F58009C02CF /* Debug */ = {
- isa = XCBuildConfiguration;
- buildSettings = {
- ALWAYS_SEARCH_USER_PATHS = NO;
- CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
- 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 = "Apple Development";
- COPY_PHASE_STRIP = NO;
- CURRENT_PROJECT_VERSION = 1;
- DEBUG_INFORMATION_FORMAT = dwarf;
- DYLIB_COMPATIBILITY_VERSION = 1;
- DYLIB_CURRENT_VERSION = 1;
- 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;
- MTL_ENABLE_DEBUG_INFO = YES;
- ONLY_ACTIVE_ARCH = YES;
- PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.$(TARGET_NAME)";
- PRODUCT_NAME = "$(TARGET_NAME)";
- };
- name = Debug;
- };
- 6F0EB53820FC7F58009C02CF /* Release */ = {
- isa = XCBuildConfiguration;
- buildSettings = {
- ALWAYS_SEARCH_USER_PATHS = NO;
- CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
- 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 = "Apple Development";
- COPY_PHASE_STRIP = NO;
- CURRENT_PROJECT_VERSION = 1;
- DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
- DYLIB_COMPATIBILITY_VERSION = 1;
- DYLIB_CURRENT_VERSION = 1;
- 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;
- MTL_ENABLE_DEBUG_INFO = NO;
- PRODUCT_BUNDLE_IDENTIFIER = "ch.srgssr.$(TARGET_NAME)";
- PRODUCT_NAME = "$(TARGET_NAME)";
- VALIDATE_PRODUCT = YES;
- };
- name = Release;
- };
- 6F0EB53A20FC7F58009C02CF /* Debug */ = {
- isa = XCBuildConfiguration;
- baseConfigurationReference = 6FEDF728231576E000BEE8E1 /* Framework.xcconfig */;
- buildSettings = {
- APPLICATION_EXTENSION_API_ONLY = YES;
- DEFINES_MODULE = YES;
- DYLIB_COMPATIBILITY_VERSION = 1;
- DYLIB_INSTALL_NAME_BASE = "@rpath";
- FRAMEWORK_SEARCH_PATHS = (
- "$(inherited)",
- "$(PROJECT_DIR)/Carthage/Build/$(CARTHAGE_PLATFORM)",
- );
- INFOPLIST_FILE = Framework/Info.plist;
- INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
- LD_RUNPATH_SEARCH_PATHS = (
- "$(inherited)",
- "@executable_path/Frameworks",
- "@loader_path/Frameworks",
- );
- SKIP_INSTALL = YES;
- VERSIONING_SYSTEM = "apple-generic";
- };
- name = Debug;
- };
- 6F0EB53B20FC7F58009C02CF /* Release */ = {
- isa = XCBuildConfiguration;
- baseConfigurationReference = 6FEDF728231576E000BEE8E1 /* Framework.xcconfig */;
- buildSettings = {
- APPLICATION_EXTENSION_API_ONLY = YES;
- DEFINES_MODULE = YES;
- DYLIB_COMPATIBILITY_VERSION = 1;
- DYLIB_INSTALL_NAME_BASE = "@rpath";
- FRAMEWORK_SEARCH_PATHS = (
- "$(inherited)",
- "$(PROJECT_DIR)/Carthage/Build/$(CARTHAGE_PLATFORM)",
- );
- INFOPLIST_FILE = Framework/Info.plist;
- INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
- LD_RUNPATH_SEARCH_PATHS = (
- "$(inherited)",
- "@executable_path/Frameworks",
- "@loader_path/Frameworks",
- );
- SKIP_INSTALL = YES;
- VERSIONING_SYSTEM = "apple-generic";
- };
- name = Release;
- };
- 6F8A93EC20FDCA0900AA6434 /* Debug */ = {
- isa = XCBuildConfiguration;
- baseConfigurationReference = 6FCAB6C023165B0D0043432E /* Demo.xcconfig */;
- buildSettings = {
- ASSETCATALOG_COMPILER_APPICON_NAME = "$(APP_ICONS_SOURCE)";
- DEVELOPMENT_TEAM = VMGRRW6SG7;
- FRAMEWORK_SEARCH_PATHS = (
- "$(inherited)",
- "$(PROJECT_DIR)/Carthage/Build/$(CARTHAGE_PLATFORM)",
- );
- INFOPLIST_FILE = Demo/Info.plist;
- LD_RUNPATH_SEARCH_PATHS = (
- "$(inherited)",
- "@executable_path/Frameworks",
- );
- SDKROOT = iphoneos;
- };
- name = Debug;
- };
- 6F8A93ED20FDCA0900AA6434 /* Release */ = {
- isa = XCBuildConfiguration;
- baseConfigurationReference = 6FCAB6C023165B0D0043432E /* Demo.xcconfig */;
- buildSettings = {
- ASSETCATALOG_COMPILER_APPICON_NAME = "$(APP_ICONS_SOURCE)";
- DEVELOPMENT_TEAM = VMGRRW6SG7;
- FRAMEWORK_SEARCH_PATHS = (
- "$(inherited)",
- "$(PROJECT_DIR)/Carthage/Build/$(CARTHAGE_PLATFORM)",
- );
- INFOPLIST_FILE = Demo/Info.plist;
- LD_RUNPATH_SEARCH_PATHS = (
- "$(inherited)",
- "@executable_path/Frameworks",
- );
- SDKROOT = iphoneos;
- };
- name = Release;
- };
- 6FB74D6F2101D4D200E2D365 /* Debug */ = {
- isa = XCBuildConfiguration;
- baseConfigurationReference = 6FEDF729231576F400BEE8E1 /* Tests.xcconfig */;
- buildSettings = {
- CODE_SIGN_IDENTITY = "-";
- DEVELOPMENT_TEAM = "";
- FRAMEWORK_SEARCH_PATHS = (
- "$(inherited)",
- "$(PROJECT_DIR)/Carthage/Build/$(CARTHAGE_PLATFORM)",
- );
- INFOPLIST_FILE = Tests/Info.plist;
- LD_RUNPATH_SEARCH_PATHS = (
- "$(inherited)",
- "@executable_path/Frameworks",
- "@loader_path/Frameworks",
- "$(FRAMEWORK_SEARCH_PATHS)",
- );
- };
- name = Debug;
- };
- 6FB74D702101D4D200E2D365 /* Release */ = {
- isa = XCBuildConfiguration;
- baseConfigurationReference = 6FEDF729231576F400BEE8E1 /* Tests.xcconfig */;
- buildSettings = {
- CODE_SIGN_IDENTITY = "-";
- DEVELOPMENT_TEAM = "";
- FRAMEWORK_SEARCH_PATHS = (
- "$(inherited)",
- "$(PROJECT_DIR)/Carthage/Build/$(CARTHAGE_PLATFORM)",
- );
- INFOPLIST_FILE = Tests/Info.plist;
- LD_RUNPATH_SEARCH_PATHS = (
- "$(inherited)",
- "@executable_path/Frameworks",
- "@loader_path/Frameworks",
- "$(FRAMEWORK_SEARCH_PATHS)",
- );
- };
- name = Release;
- };
-/* End XCBuildConfiguration section */
-
-/* Begin XCConfigurationList section */
- 6F0C98E92121E1C200073AB6 /* Build configuration list for PBXNativeTarget "SRGContentProtection-resources" */ = {
- isa = XCConfigurationList;
- buildConfigurations = (
- 6F0C98EA2121E1C200073AB6 /* Debug */,
- 6F0C98EB2121E1C200073AB6 /* Debug-static */,
- 6F0C98EC2121E1C200073AB6 /* Release */,
- 6F0C98ED2121E1C200073AB6 /* Release-static */,
- );
- defaultConfigurationIsVisible = 0;
- defaultConfigurationName = Release;
- };
- 6F0EB52B20FC7F58009C02CF /* Build configuration list for PBXProject "SRGContentProtection" */ = {
- isa = XCConfigurationList;
- buildConfigurations = (
- 6F0EB53720FC7F58009C02CF /* Debug */,
- 6F0C98DA2121E14000073AB6 /* Debug-static */,
- 6F0EB53820FC7F58009C02CF /* Release */,
- 6F0C98DE2121E14600073AB6 /* Release-static */,
- );
- defaultConfigurationIsVisible = 0;
- defaultConfigurationName = Release;
- };
- 6F0EB53920FC7F58009C02CF /* Build configuration list for PBXNativeTarget "SRGContentProtection" */ = {
- isa = XCConfigurationList;
- buildConfigurations = (
- 6F0EB53A20FC7F58009C02CF /* Debug */,
- 6F0C98DB2121E14000073AB6 /* Debug-static */,
- 6F0EB53B20FC7F58009C02CF /* Release */,
- 6F0C98DF2121E14600073AB6 /* Release-static */,
- );
- defaultConfigurationIsVisible = 0;
- defaultConfigurationName = Release;
- };
- 6F8A93EB20FDCA0900AA6434 /* Build configuration list for PBXNativeTarget "SRGContentProtection-demo" */ = {
- isa = XCConfigurationList;
- buildConfigurations = (
- 6F8A93EC20FDCA0900AA6434 /* Debug */,
- 6F0C98DC2121E14000073AB6 /* Debug-static */,
- 6F8A93ED20FDCA0900AA6434 /* Release */,
- 6F0C98E02121E14600073AB6 /* Release-static */,
- );
- defaultConfigurationIsVisible = 0;
- defaultConfigurationName = Release;
- };
- 6FB74D712101D4D200E2D365 /* Build configuration list for PBXNativeTarget "SRGContentProtection-tests" */ = {
- isa = XCConfigurationList;
- buildConfigurations = (
- 6FB74D6F2101D4D200E2D365 /* Debug */,
- 6F0C98DD2121E14000073AB6 /* Debug-static */,
- 6FB74D702101D4D200E2D365 /* Release */,
- 6F0C98E12121E14600073AB6 /* Release-static */,
- );
- defaultConfigurationIsVisible = 0;
- defaultConfigurationName = Release;
- };
-/* End XCConfigurationList section */
- };
- rootObject = 6F0EB52820FC7F58009C02CF /* Project object */;
-}
diff --git a/Framework/Sources/Categories/AVURLAsset+SRGContentProtection.m b/Sources/SRGContentProtection/AVURLAsset+SRGContentProtection.m
similarity index 100%
rename from Framework/Sources/Categories/AVURLAsset+SRGContentProtection.m
rename to Sources/SRGContentProtection/AVURLAsset+SRGContentProtection.m
diff --git a/Framework/Sources/Categories/NSBundle+SRGContentProtection.h b/Sources/SRGContentProtection/NSBundle+SRGContentProtection.h
similarity index 58%
rename from Framework/Sources/Categories/NSBundle+SRGContentProtection.h
rename to Sources/SRGContentProtection/NSBundle+SRGContentProtection.h
index fa5c901..02dae4f 100644
--- a/Framework/Sources/Categories/NSBundle+SRGContentProtection.h
+++ b/Sources/SRGContentProtection/NSBundle+SRGContentProtection.h
@@ -4,7 +4,7 @@
// License information is available from the LICENSE file.
//
-#import
+@import Foundation;
NS_ASSUME_NONNULL_BEGIN
@@ -20,15 +20,6 @@ OBJC_EXPORT NSString *SRGContentProtectionNonLocalizedString(NSString *string);
/**
* Convenience macro for localized strings associated with the framework.
*/
-#define SRGContentProtectionLocalizedString(key, comment) [NSBundle.srg_contentProtectionBundle localizedStringForKey:(key) value:@"" table:nil]
-
-@interface NSBundle (SRGContentProtection)
-
-/**
- * The framework resource bundle.
- */
-@property (class, nonatomic, readonly) NSBundle *srg_contentProtectionBundle;
-
-@end
+#define SRGContentProtectionLocalizedString(key, comment) [SWIFTPM_MODULE_BUNDLE localizedStringForKey:(key) value:@"" table:nil]
NS_ASSUME_NONNULL_END
diff --git a/Sources/SRGContentProtection/NSBundle+SRGContentProtection.m b/Sources/SRGContentProtection/NSBundle+SRGContentProtection.m
new file mode 100644
index 0000000..f2fcfa2
--- /dev/null
+++ b/Sources/SRGContentProtection/NSBundle+SRGContentProtection.m
@@ -0,0 +1,12 @@
+//
+// Copyright (c) SRG SSR. All rights reserved.
+//
+// License information is available from the LICENSE file.
+//
+
+#import "NSBundle+SRGContentProtection.h"
+
+NSString *SRGContentProtectionNonLocalizedString(NSString *string)
+{
+ return string;
+}
diff --git a/Framework/Resources/de.lproj/Localizable.strings b/Sources/SRGContentProtection/Resources/de.lproj/Localizable.strings
similarity index 100%
rename from Framework/Resources/de.lproj/Localizable.strings
rename to Sources/SRGContentProtection/Resources/de.lproj/Localizable.strings
diff --git a/Framework/Resources/en.lproj/Localizable.strings b/Sources/SRGContentProtection/Resources/en.lproj/Localizable.strings
similarity index 100%
rename from Framework/Resources/en.lproj/Localizable.strings
rename to Sources/SRGContentProtection/Resources/en.lproj/Localizable.strings
diff --git a/Framework/Resources/fr.lproj/Localizable.strings b/Sources/SRGContentProtection/Resources/fr.lproj/Localizable.strings
similarity index 100%
rename from Framework/Resources/fr.lproj/Localizable.strings
rename to Sources/SRGContentProtection/Resources/fr.lproj/Localizable.strings
diff --git a/Framework/Resources/it.lproj/Localizable.strings b/Sources/SRGContentProtection/Resources/it.lproj/Localizable.strings
similarity index 100%
rename from Framework/Resources/it.lproj/Localizable.strings
rename to Sources/SRGContentProtection/Resources/it.lproj/Localizable.strings
diff --git a/Framework/Resources/rm.lproj/Localizable.strings b/Sources/SRGContentProtection/Resources/rm.lproj/Localizable.strings
similarity index 100%
rename from Framework/Resources/rm.lproj/Localizable.strings
rename to Sources/SRGContentProtection/Resources/rm.lproj/Localizable.strings
diff --git a/Framework/Sources/ResourceLoaders/SRGAkamaiAssetResourceLoaderDelegate.h b/Sources/SRGContentProtection/SRGAkamaiAssetResourceLoaderDelegate.h
similarity index 100%
rename from Framework/Sources/ResourceLoaders/SRGAkamaiAssetResourceLoaderDelegate.h
rename to Sources/SRGContentProtection/SRGAkamaiAssetResourceLoaderDelegate.h
diff --git a/Framework/Sources/ResourceLoaders/SRGAkamaiAssetResourceLoaderDelegate.m b/Sources/SRGContentProtection/SRGAkamaiAssetResourceLoaderDelegate.m
similarity index 99%
rename from Framework/Sources/ResourceLoaders/SRGAkamaiAssetResourceLoaderDelegate.m
rename to Sources/SRGContentProtection/SRGAkamaiAssetResourceLoaderDelegate.m
index 7e3d86d..76a71e3 100644
--- a/Framework/Sources/ResourceLoaders/SRGAkamaiAssetResourceLoaderDelegate.m
+++ b/Sources/SRGContentProtection/SRGAkamaiAssetResourceLoaderDelegate.m
@@ -10,7 +10,7 @@
#import "SRGAkamaiToken.h"
#import "SRGContentProtectionError.h"
-#import
+@import SRGDiagnostics;
static NSString * const SRGStandardURLSchemePrefix = @"akamai";
diff --git a/Framework/Sources/SRGAkamaiToken.h b/Sources/SRGContentProtection/SRGAkamaiToken.h
similarity index 97%
rename from Framework/Sources/SRGAkamaiToken.h
rename to Sources/SRGContentProtection/SRGAkamaiToken.h
index 8fe3ecf..194f82b 100644
--- a/Framework/Sources/SRGAkamaiToken.h
+++ b/Sources/SRGContentProtection/SRGAkamaiToken.h
@@ -4,7 +4,7 @@
// License information is available from the LICENSE file.
//
-#import
+@import SRGNetwork;
NS_ASSUME_NONNULL_BEGIN
diff --git a/Framework/Sources/SRGAkamaiToken.m b/Sources/SRGContentProtection/SRGAkamaiToken.m
similarity index 100%
rename from Framework/Sources/SRGAkamaiToken.m
rename to Sources/SRGContentProtection/SRGAkamaiToken.m
diff --git a/Framework/Sources/ResourceLoaders/SRGAssetResourceLoaderDelegate.h b/Sources/SRGContentProtection/SRGAssetResourceLoaderDelegate.h
similarity index 96%
rename from Framework/Sources/ResourceLoaders/SRGAssetResourceLoaderDelegate.h
rename to Sources/SRGContentProtection/SRGAssetResourceLoaderDelegate.h
index eb8ed30..9d8a34a 100644
--- a/Framework/Sources/ResourceLoaders/SRGAssetResourceLoaderDelegate.h
+++ b/Sources/SRGContentProtection/SRGAssetResourceLoaderDelegate.h
@@ -6,7 +6,7 @@
#import "SRGContentProtectionConstants.h"
-#import
+@import AVFoundation;
NS_ASSUME_NONNULL_BEGIN
diff --git a/Framework/Sources/ResourceLoaders/SRGAssetResourceLoaderDelegate.m b/Sources/SRGContentProtection/SRGAssetResourceLoaderDelegate.m
similarity index 100%
rename from Framework/Sources/ResourceLoaders/SRGAssetResourceLoaderDelegate.m
rename to Sources/SRGContentProtection/SRGAssetResourceLoaderDelegate.m
diff --git a/Framework/Sources/SRGContentProtection.m b/Sources/SRGContentProtection/SRGContentProtection.m
similarity index 61%
rename from Framework/Sources/SRGContentProtection.m
rename to Sources/SRGContentProtection/SRGContentProtection.m
index 5af2d90..487a465 100644
--- a/Framework/Sources/SRGContentProtection.m
+++ b/Sources/SRGContentProtection/SRGContentProtection.m
@@ -10,10 +10,5 @@
NSString *SRGContentProtectionMarketingVersion(void)
{
- return NSBundle.srg_contentProtectionBundle.infoDictionary[@"CFBundleShortVersionString"];
-}
-
-BOOL SRGContentProtectionIsPublic(void)
-{
- return NO;
+ return @MARKETING_VERSION;
}
diff --git a/Framework/Sources/SRGContentProtectionConstants.m b/Sources/SRGContentProtection/SRGContentProtectionConstants.m
similarity index 100%
rename from Framework/Sources/SRGContentProtectionConstants.m
rename to Sources/SRGContentProtection/SRGContentProtectionConstants.m
diff --git a/Framework/Sources/SRGContentProtectionError.h b/Sources/SRGContentProtection/SRGContentProtectionError.h
similarity index 93%
rename from Framework/Sources/SRGContentProtectionError.h
rename to Sources/SRGContentProtection/SRGContentProtectionError.h
index 63059bf..d9232ea 100644
--- a/Framework/Sources/SRGContentProtectionError.h
+++ b/Sources/SRGContentProtection/SRGContentProtectionError.h
@@ -4,7 +4,7 @@
// License information is available from the LICENSE file.
//
-#import
+@import Foundation;
NS_ASSUME_NONNULL_BEGIN
diff --git a/Framework/Sources/SRGContentProtectionError.m b/Sources/SRGContentProtection/SRGContentProtectionError.m
similarity index 100%
rename from Framework/Sources/SRGContentProtectionError.m
rename to Sources/SRGContentProtection/SRGContentProtectionError.m
diff --git a/Framework/Sources/ResourceLoaders/SRGFairPlayAssetResourceLoaderDelegate.h b/Sources/SRGContentProtection/SRGFairPlayAssetResourceLoaderDelegate.h
similarity index 100%
rename from Framework/Sources/ResourceLoaders/SRGFairPlayAssetResourceLoaderDelegate.h
rename to Sources/SRGContentProtection/SRGFairPlayAssetResourceLoaderDelegate.h
diff --git a/Framework/Sources/ResourceLoaders/SRGFairPlayAssetResourceLoaderDelegate.m b/Sources/SRGContentProtection/SRGFairPlayAssetResourceLoaderDelegate.m
similarity index 98%
rename from Framework/Sources/ResourceLoaders/SRGFairPlayAssetResourceLoaderDelegate.m
rename to Sources/SRGContentProtection/SRGFairPlayAssetResourceLoaderDelegate.m
index 5f651f1..f077560 100644
--- a/Framework/Sources/ResourceLoaders/SRGFairPlayAssetResourceLoaderDelegate.m
+++ b/Sources/SRGContentProtection/SRGFairPlayAssetResourceLoaderDelegate.m
@@ -10,8 +10,8 @@
#import "SRGContentProtectionConstants.h"
#import "SRGContentProtectionError.h"
-#import
-#import
+@import SRGDiagnostics;
+@import SRGNetwork;
static BOOL SRGIsFairPlayURL(NSURL *URL)
{
diff --git a/Framework/Sources/Categories/AVURLAsset+SRGContentProtection.h b/Sources/SRGContentProtection/include/AVURLAsset+SRGContentProtection.h
similarity index 97%
rename from Framework/Sources/Categories/AVURLAsset+SRGContentProtection.h
rename to Sources/SRGContentProtection/include/AVURLAsset+SRGContentProtection.h
index 50ccc9c..9ddfcf0 100644
--- a/Framework/Sources/Categories/AVURLAsset+SRGContentProtection.h
+++ b/Sources/SRGContentProtection/include/AVURLAsset+SRGContentProtection.h
@@ -6,7 +6,7 @@
#import "SRGContentProtectionConstants.h"
-#import
+@import AVFoundation;
NS_ASSUME_NONNULL_BEGIN
diff --git a/Framework/Sources/SRGContentProtection.h b/Sources/SRGContentProtection/include/SRGContentProtection.h
similarity index 66%
rename from Framework/Sources/SRGContentProtection.h
rename to Sources/SRGContentProtection/include/SRGContentProtection.h
index af262eb..e597bd4 100644
--- a/Framework/Sources/SRGContentProtection.h
+++ b/Sources/SRGContentProtection/include/SRGContentProtection.h
@@ -4,14 +4,11 @@
// License information is available from the LICENSE file.
//
-#import
+@import Foundation;
// Official version number.
FOUNDATION_EXPORT NSString *SRGContentProtectionMarketingVersion(void);
-// Return `YES` iff run in a public (open source) setup. Always `NO`.
-FOUNDATION_EXPORT BOOL SRGContentProtectionIsPublic(void);
-
// Public headers.
#import "AVURLAsset+SRGContentProtection.h"
#import "SRGContentProtectionConstants.h"
diff --git a/Framework/Sources/SRGContentProtectionConstants.h b/Sources/SRGContentProtection/include/SRGContentProtectionConstants.h
similarity index 95%
rename from Framework/Sources/SRGContentProtectionConstants.h
rename to Sources/SRGContentProtection/include/SRGContentProtectionConstants.h
index 070e077..9d2828f 100644
--- a/Framework/Sources/SRGContentProtectionConstants.h
+++ b/Sources/SRGContentProtection/include/SRGContentProtectionConstants.h
@@ -4,7 +4,7 @@
// License information is available from the LICENSE file.
//
-#import
+@import Foundation;
/**
* Options applied when loading a resource.
diff --git a/Tests/Info.plist b/Tests/Info.plist
deleted file mode 100644
index 26b175d..0000000
--- a/Tests/Info.plist
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
-
-
- CFBundleDevelopmentRegion
- $(DEVELOPMENT_LANGUAGE)
- CFBundleExecutable
- $(EXECUTABLE_NAME)
- CFBundleIdentifier
- $(PRODUCT_BUNDLE_IDENTIFIER)
- CFBundleInfoDictionaryVersion
- 6.0
- CFBundleName
- $(PRODUCT_NAME)
- CFBundlePackageType
- BNDL
- CFBundleShortVersionString
- $(MARKETING_VERSION)
- CFBundleVersion
- $(CURRENT_PROJECT_VERSION)
-
-
diff --git a/Tests/Sources/AkamaiResourceLoaderTestCase.m b/Tests/SRGContentProtectionTests/AkamaiResourceLoaderTestCase.m
similarity index 96%
rename from Tests/Sources/AkamaiResourceLoaderTestCase.m
rename to Tests/SRGContentProtectionTests/AkamaiResourceLoaderTestCase.m
index 6ddc3ad..77e2d95 100644
--- a/Tests/Sources/AkamaiResourceLoaderTestCase.m
+++ b/Tests/SRGContentProtectionTests/AkamaiResourceLoaderTestCase.m
@@ -4,9 +4,9 @@
// License information is available from the LICENSE file.
//
-#import
-#import
-#import
+@import AVFoundation;
+@import SRGContentProtection;
+@import XCTest;
@interface AkamaiResourceLoaderTestCase : XCTestCase
diff --git a/Tests/Sources/AkamaiTokenTestCase.m b/Tests/SRGContentProtectionTests/AkamaiTokenTestCase.m
similarity index 97%
rename from Tests/Sources/AkamaiTokenTestCase.m
rename to Tests/SRGContentProtectionTests/AkamaiTokenTestCase.m
index c9d1278..2d8b042 100644
--- a/Tests/Sources/AkamaiTokenTestCase.m
+++ b/Tests/SRGContentProtectionTests/AkamaiTokenTestCase.m
@@ -4,8 +4,8 @@
// License information is available from the LICENSE file.
//
-#import
-#import
+@import SRGContentProtection;
+@import XCTest;
#import "SRGAkamaiToken.h"
diff --git a/Tests/Sources/FairPlayResourceLoaderTestCase.m b/Tests/SRGContentProtectionTests/FairPlayResourceLoaderTestCase.m
similarity index 96%
rename from Tests/Sources/FairPlayResourceLoaderTestCase.m
rename to Tests/SRGContentProtectionTests/FairPlayResourceLoaderTestCase.m
index 15d2bfd..b2243f7 100644
--- a/Tests/Sources/FairPlayResourceLoaderTestCase.m
+++ b/Tests/SRGContentProtectionTests/FairPlayResourceLoaderTestCase.m
@@ -4,9 +4,9 @@
// License information is available from the LICENSE file.
//
-#import
-#import
-#import
+@import AVFoundation;
+@import SRGContentProtection;
+@import XCTest;
static NSURL *FairPlayCertificateURL(void)
{
diff --git a/Tests/SRGContentProtectionTests/Private/SRGAkamaiToken.h b/Tests/SRGContentProtectionTests/Private/SRGAkamaiToken.h
new file mode 120000
index 0000000..92fb40a
--- /dev/null
+++ b/Tests/SRGContentProtectionTests/Private/SRGAkamaiToken.h
@@ -0,0 +1 @@
+../../../Sources/SRGContentProtection/SRGAkamaiToken.h
\ No newline at end of file
diff --git a/Tests/Tests.xcconfig b/Tests/Tests.xcconfig
deleted file mode 100644
index 1403f74..0000000
--- a/Tests/Tests.xcconfig
+++ /dev/null
@@ -1 +0,0 @@
-#include "../Common.xcconfig"
diff --git a/docs/README.md b/docs/README.md
index c05e8f0..52a28cd 100644
--- a/docs/README.md
+++ b/docs/README.md
@@ -1,91 +1,35 @@
[![SRG Content Protection logo](README-images/logo.png)](https://github.com/SRGSSR/srgcontentprotection-apple)
-[![GitHub releases](https://img.shields.io/github/v/release/SRGSSR/srgcontentprotection-fake-apple)](https://github.com/SRGSSR/srgcontentprotection-apple/releases) [![platform](https://img.shields.io/badge/platfom-ios%20%7C%20tvos-blue)](https://github.com/SRGSSR/srgcontentprotection-apple) [![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage) [![GitHub license](https://img.shields.io/badge/license-(c)%20SRG%20SSR-lightgrey)](https://github.com/SRGSSR/srgcontentprotection-apple/blob/master/LICENSE)
+[![GitHub releases](https://img.shields.io/github/v/release/SRGSSR/srgcontentprotection-fake-apple)](https://github.com/SRGSSR/srgcontentprotection-apple/releases) [![platform](https://img.shields.io/badge/platfom-ios%20%7C%20tvos-blue)](https://github.com/SRGSSR/srgcontentprotection-apple) [![SPM compatible](https://img.shields.io/badge/SPM-compatible-4BC51D.svg?style=flat)](https://swift.org/package-manager) [![GitHub license](https://img.shields.io/badge/license-(c)%20SRG%20SSR-lightgrey)](https://github.com/SRGSSR/srgcontentprotection-apple/blob/master/LICENSE)
## About
-The SRG Content Protection framework contains the sensitive logic required for protected media playback. The following protection measures are currently supported:
+The SRG Content Protection framework contains the logic required for encrypted media playback. The following protection measures are currently supported:
* Akamai secure token.
* Digital Rights Management via FairPlay.
## Compatibility
-The library is suitable for applications running on iOS 9, tvOS 12 and above. The project is meant to be opened with the latest Xcode version.
+The library is suitable for applications running on iOS 9, tvOS 12 and above. The project is meant to be compiled with the latest Xcode version.
## Contributing
If you want to contribute to the project, have a look at our [contributing guide](CONTRIBUTING.md).
-## Installation
+## Integration
-The library can be added to a project using [Carthage](https://github.com/Carthage/Carthage) by adding the following dependency to your `Cartfile`:
-
-```
-github "SRGSSR/srgcontentprotection-apple"
-```
-
-For more information about Carthage and its use, refer to the [official documentation](https://github.com/Carthage/Carthage).
-
-### Dependencies
-
-The library requires the following frameworks to be added to any target requiring it:
-
-* `libextobjc`: A utility framework.
-* `MAKVONotificationCenter`: A safe KVO framework.
-* `SRGContentProtection`: The content protection library framework.
-* `SRGDiagnostics`: Framework for collecting diagnostic information.
-* `SRGLogger`: The framework used for internal logging.
-* `SRGNetwork`: A networking framework.
-
-### Dynamic framework integration
-
-1. Run `carthage update` to update the dependencies (which is equivalent to `carthage update --configuration Release`).
-2. Add the frameworks listed above and generated in the `Carthage/Build/iOS` folder to your target _Embedded binaries_.
-
-If your target is building an application, a few more steps are required:
-
-1. Add a _Run script_ build phase to your target, with `/usr/local/bin/carthage copy-frameworks` as command.
-2. Add each of the required frameworks above as input file `$(SRCROOT)/Carthage/Build/iOS/FrameworkName.framework`.
-
-### Static framework integration
-
-1. Run `carthage update --configuration Release-static` to update the dependencies.
-2. Add the frameworks listed above and generated in the `Carthage/Build/iOS/Static` folder to the _Linked frameworks and libraries_ list of your target.
-3. Also add any resource bundle `.bundle` found within the `.framework` folders to your target directly.
-4. Add the `-all_load` flag to your target _Other linker flags_.
-
-## Building the project
-
-A [Makefile](../Makefile) provides several targets to build and package the library. The available targets can be listed by running the following command from the project root folder:
-
-```
-make help
-```
-
-Alternatively, you can of course open the project with Xcode and use the available schemes.
+The library must be integrated using [Swift Package Manager](https://swift.org/package-manager) directly [within Xcode](https://developer.apple.com/documentation/xcode/adding_package_dependencies_to_your_app). You can also declare the library as a dependency of another one directly in the associated `Package.swift` manifest.
## Usage
-When you want to use classes or functions provided by the library in your code, you must import it from your source files first.
-
-### Usage from Objective-C source files
-
-Import the global header file using:
-
-```objective-c
-#import
-```
-
-or directly import the module itself:
+When you want to use classes or functions provided by the library in your code, you must import it from your source files first. In Objective-C:
```objective-c
@import SRGContentProtection;
```
-### Usage from Swift source files
-
-Import the module where needed:
+or in Swift:
```swift
import SRGContentProtection
@@ -93,7 +37,7 @@ import SRGContentProtection
### Playing a protected media
-To play a protected content with AVPlayer, create an asset through one of the methods from the `AVURLAsset (SRGContentProtection)` category, and use it to instantiate the `AVPlayerItem` which will be played.
+To play a protected content with `AVPlayer`, create an asset through one of the methods from the `AVURLAsset (SRGContentProtection)` category, and use it to instantiate the `AVPlayerItem` which will be played.
If the protection used does not match the one required by the content, playback will likely fail.