| 1 | name: XCRSControlKitRunner |
| 2 | options: |
| 3 | bundleIdPrefix: com.smbcloud.xcrs-controlkit |
| 4 | createIntermediateGroups: true |
| 5 | deploymentTarget: |
| 6 | iOS: "16.0" |
| 7 | tvOS: "16.0" |
| 8 | visionOS: "1.0" |
| 9 | macOS: "13.0" |
| 10 | watchOS: "9.0" |
| 11 | |
| 12 | settings: |
| 13 | base: |
| 14 | SWIFT_VERSION: "5.9" |
| 15 | GENERATE_INFOPLIST_FILE: YES |
| 16 | INFOPLIST_KEY_CFBundleDisplayName: ControlKit |
| 17 | LD_RUNPATH_SEARCH_PATHS: "$(inherited) @executable_path/Frameworks" |
| 18 | |
| 19 | packages: |
| 20 | XCRSControlKit: |
| 21 | path: .. |
| 22 | swift-nio: |
| 23 | url: https://github.com/apple/swift-nio.git |
| 24 | from: 2.0.0 |
| 25 | |
| 26 | targetTemplates: |
| 27 | Runner: |
| 28 | type: application |
| 29 | sources: |
| 30 | - path: ${platformDir} |
| 31 | settings: |
| 32 | base: |
| 33 | PRODUCT_NAME: ControlKit |
| 34 | PRODUCT_BUNDLE_IDENTIFIER: com.smbcloud.xcrs-controlkit.${platformId}.runner |
| 35 | UITests: |
| 36 | type: bundle.ui-testing |
| 37 | sources: |
| 38 | - path: Shared |
| 39 | dependencies: |
| 40 | - target: ControlKit-${platformName} |
| 41 | - package: XCRSControlKit |
| 42 | product: XCRSControlKit |
| 43 | - package: swift-nio |
| 44 | product: NIOCore |
| 45 | - package: swift-nio |
| 46 | product: NIOHTTP1 |
| 47 | - package: swift-nio |
| 48 | product: NIOPosix |
| 49 | settings: |
| 50 | base: |
| 51 | PRODUCT_BUNDLE_IDENTIFIER: com.smbcloud.xcrs-controlkit.${platformId}.runnerUITests |
| 52 | TEST_TARGET_NAME: ControlKit-${platformName} |
| 53 | |
| 54 | targets: |
| 55 | ControlKit-iOS: |
| 56 | templates: [Runner] |
| 57 | platform: iOS |
| 58 | templateAttributes: |
| 59 | platformDir: iOS |
| 60 | platformId: ios |
| 61 | settings: |
| 62 | base: |
| 63 | TARGETED_DEVICE_FAMILY: "1,2" |
| 64 | ASSETCATALOG_COMPILER_APPICON_NAME: AppIcon |
| 65 | INFOPLIST_KEY_UIRequiresFullScreen: YES |
| 66 | INFOPLIST_KEY_UISupportedInterfaceOrientations: UIInterfaceOrientationPortrait |
| 67 | ControlKit-iOS-UITests: |
| 68 | templates: [UITests] |
| 69 | platform: iOS |
| 70 | templateAttributes: |
| 71 | platformName: iOS |
| 72 | platformId: ios |
| 73 | |
| 74 | ControlKit-tvOS: |
| 75 | templates: [Runner] |
| 76 | platform: tvOS |
| 77 | templateAttributes: |
| 78 | platformDir: tvOS |
| 79 | platformId: tvos |
| 80 | settings: |
| 81 | base: |
| 82 | TARGETED_DEVICE_FAMILY: "3" |
| 83 | ASSETCATALOG_COMPILER_APPICON_NAME: "App Icon & Top Shelf Image" |
| 84 | ControlKit-tvOS-UITests: |
| 85 | templates: [UITests] |
| 86 | platform: tvOS |
| 87 | templateAttributes: |
| 88 | platformName: tvOS |
| 89 | platformId: tvos |
| 90 | |
| 91 | ControlKit-visionOS: |
| 92 | templates: [Runner] |
| 93 | platform: visionOS |
| 94 | templateAttributes: |
| 95 | platformDir: visionOS |
| 96 | platformId: visionos |
| 97 | settings: |
| 98 | base: |
| 99 | TARGETED_DEVICE_FAMILY: "7" |
| 100 | ASSETCATALOG_COMPILER_APPICON_NAME: AppIcon |
| 101 | ControlKit-visionOS-UITests: |
| 102 | templates: [UITests] |
| 103 | platform: visionOS |
| 104 | templateAttributes: |
| 105 | platformName: visionOS |
| 106 | platformId: visionos |
| 107 | |
| 108 | ControlKit-macOS: |
| 109 | templates: [Runner] |
| 110 | platform: macOS |
| 111 | templateAttributes: |
| 112 | platformDir: macOS |
| 113 | platformId: macos |
| 114 | settings: |
| 115 | base: |
| 116 | ASSETCATALOG_COMPILER_APPICON_NAME: AppIcon |
| 117 | CODE_SIGN_IDENTITY: "-" |
| 118 | ENABLE_HARDENED_RUNTIME: NO |
| 119 | ControlKit-macOS-UITests: |
| 120 | templates: [UITests] |
| 121 | platform: macOS |
| 122 | templateAttributes: |
| 123 | platformName: macOS |
| 124 | platformId: macos |
| 125 | settings: |
| 126 | base: |
| 127 | CODE_SIGN_IDENTITY: "-" |
| 128 | CODE_SIGN_ENTITLEMENTS: macOS/ControlKit-macOS-UITests.entitlements |
| 129 | |
| 130 | ControlKit-watchOS: |
| 131 | templates: [Runner] |
| 132 | platform: watchOS |
| 133 | templateAttributes: |
| 134 | platformDir: watchOS |
| 135 | platformId: watchos |
| 136 | settings: |
| 137 | base: |
| 138 | TARGETED_DEVICE_FAMILY: "4" |
| 139 | ASSETCATALOG_COMPILER_APPICON_NAME: AppIcon |
| 140 | INFOPLIST_KEY_WKWatchOnly: YES |
| 141 | ControlKit-watchOS-UITests: |
| 142 | templates: [UITests] |
| 143 | platform: watchOS |
| 144 | templateAttributes: |
| 145 | platformName: watchOS |
| 146 | platformId: watchos |
| 147 | |
| 148 | schemes: |
| 149 | ControlKit-iOS: |
| 150 | build: |
| 151 | targets: |
| 152 | ControlKit-iOS: all |
| 153 | ControlKit-iOS-UITests: [test] |
| 154 | test: |
| 155 | targets: |
| 156 | - ControlKit-iOS-UITests |
| 157 | ControlKit-tvOS: |
| 158 | build: |
| 159 | targets: |
| 160 | ControlKit-tvOS: all |
| 161 | ControlKit-tvOS-UITests: [test] |
| 162 | test: |
| 163 | targets: |
| 164 | - ControlKit-tvOS-UITests |
| 165 | ControlKit-visionOS: |
| 166 | build: |
| 167 | targets: |
| 168 | ControlKit-visionOS: all |
| 169 | ControlKit-visionOS-UITests: [test] |
| 170 | test: |
| 171 | targets: |
| 172 | - ControlKit-visionOS-UITests |
| 173 | ControlKit-macOS: |
| 174 | build: |
| 175 | targets: |
| 176 | ControlKit-macOS: all |
| 177 | ControlKit-macOS-UITests: [test] |
| 178 | test: |
| 179 | targets: |
| 180 | - ControlKit-macOS-UITests |
| 181 | ControlKit-watchOS: |
| 182 | build: |
| 183 | targets: |
| 184 | ControlKit-watchOS: all |
| 185 | ControlKit-watchOS-UITests: [test] |
| 186 | test: |
| 187 | targets: |
| 188 | - ControlKit-watchOS-UITests |