mirror of
https://gitlab.opencode.de/bwi/bundesmessenger/clients/bundesmessenger-ios.git
synced 2026-04-16 06:28:27 +02:00
Project file generation with xcodegen
This commit is contained in:
3
.gitignore
vendored
3
.gitignore
vendored
@@ -27,7 +27,8 @@ out/
|
||||
#
|
||||
Pods/
|
||||
|
||||
# Do not track our workspace since it is created by CocoaPods
|
||||
## Ignore project files as we generate them with xcodegen (https://github.com/yonaskolb/XcodeGen)
|
||||
*.xcodeproj
|
||||
*.xcworkspace
|
||||
|
||||
# Fastlane
|
||||
|
||||
42
INSTALL.md
42
INSTALL.md
@@ -7,6 +7,7 @@ To build Element iOS project you need:
|
||||
- Xcode 12.1+.
|
||||
- [Ruby](https://www.ruby-lang.org/), a dynamic programming language used by several build tools.
|
||||
- [CocoaPods](https://cocoapods.org), library dependencies manager for Xcode projects.
|
||||
- [XcodeGen](https://github.com/yonaskolb/XcodeGen), an Xcode project generator.
|
||||
- [bundler](https://bundler.io/) (optional), is also a dependency manager used to manage build tools dependency (CocoaPods, Fastlane).
|
||||
|
||||
### Install Ruby
|
||||
@@ -20,17 +21,30 @@ If you do not want to grant the ruby package manager, [RubyGems](https://rubygem
|
||||
To install CocoaPods you can grab the right version by using `bundler` (recommended) or you can directly install it with RubyGems:
|
||||
|
||||
```
|
||||
gem install cocoapods
|
||||
$ gem install cocoapods
|
||||
```
|
||||
|
||||
In the last case please ensure that you are using the same version as indicated at the end of the `Podfile.lock` file.
|
||||
|
||||
### Install XcodeGen
|
||||
|
||||
You can directly install XcodeGen with [Homebrew](https://brew.sh) or RubyGems:
|
||||
|
||||
```
|
||||
$ brew install xcodegen
|
||||
```
|
||||
or
|
||||
|
||||
```
|
||||
$ gem install xcodegen
|
||||
```
|
||||
|
||||
### Install bundler (optional)
|
||||
|
||||
By using `bundler` you will ensure to use the right versions of build tools used to build and deliver the project. You can find dependency definitions in the `Gemfile`. To install `bundler`:
|
||||
|
||||
```
|
||||
gem install bundler
|
||||
$ gem install bundler
|
||||
```
|
||||
|
||||
## Choose Matrix SDKs version to build
|
||||
@@ -67,6 +81,17 @@ Assuming you have already completed the **Install dependencies** instructions fr
|
||||
|
||||
Each time you edit `$matrixKitVersion` variable in the `Podfile` you will have to run the `pod install` command.
|
||||
|
||||
## Generate Xcode project
|
||||
|
||||
In order to get rid of git conflicts, the `Riot.xcodeproj` is not pushed into the git repository anymore but generated using `XcodeGen`. To generate the `xcodeproj` file simply run the following command line in the `Riot` folder:
|
||||
|
||||
```
|
||||
$ cd Riot
|
||||
$ xcodegen
|
||||
```
|
||||
|
||||
**Note**: After the project file generation, the script `createWorkspace.sh` is called to generate the associated workspace (see **Install dependencies**).
|
||||
|
||||
## Build
|
||||
|
||||
### Install dependencies
|
||||
@@ -89,7 +114,14 @@ $ pod install
|
||||
```
|
||||
|
||||
This will load all dependencies for the Element source code, including [MatrixKit](https://github.com/matrix-org/matrix-ios-kit)
|
||||
and [MatrixSDK](https://github.com/matrix-org/matrix-ios-sdk).
|
||||
and [MatrixSDK](https://github.com/matrix-org/matrix-ios-sdk).
|
||||
|
||||
[1]**Note**: you can run the script `createWorkspace.sh`. This script runs `bundler` if it's installed, CocoaPods otherwise:
|
||||
|
||||
```
|
||||
$ cd Riot
|
||||
$ sh createWorkspace.sh
|
||||
```
|
||||
|
||||
### Open workspace
|
||||
|
||||
@@ -103,7 +135,9 @@ $ open Riot.xcworkspace
|
||||
|
||||
### Configure project
|
||||
|
||||
You may need to change the bundle identifier and app group identifier to be unique to get Xcode to build the app. Make sure to change the bundle identifier, application group identifier and app name in the `Config/Common.xcconfig` file to your new identifiers.
|
||||
You may need to change the bundle identifier and app group identifier to be unique to get Xcode to build the app. Make sure to change the bundle identifier, application group identifier and app name in the `project.yml` file to your new identifiers.
|
||||
|
||||
Each target has its own YAML file in the folder Targets folder.
|
||||
|
||||
## Generate IPA
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,22 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>FILEHEADER</key>
|
||||
<string>
|
||||
// Copyright 2020 New Vector Ltd
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
//</string>
|
||||
</dict>
|
||||
</plist>
|
||||
@@ -1,9 +1,9 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "0940"
|
||||
LastUpgradeVersion = "1200"
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "NO"
|
||||
parallelizeBuildables = "YES"
|
||||
buildImplicitDependencies = "YES">
|
||||
<BuildActionEntries>
|
||||
<BuildActionEntry
|
||||
@@ -14,39 +14,27 @@
|
||||
buildForAnalyzing = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "F094A9A11B78D8F000B1FBBF"
|
||||
BlueprintIdentifier = "57B13CC4586E9D43ED24DE1E"
|
||||
BuildableName = "Riot.app"
|
||||
BlueprintName = "Riot"
|
||||
ReferencedContainer = "container:Riot.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
<BuildActionEntry
|
||||
buildForTesting = "YES"
|
||||
buildForRunning = "YES"
|
||||
buildForProfiling = "NO"
|
||||
buildForArchiving = "NO"
|
||||
buildForAnalyzing = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "F094A9BD1B78D8F000B1FBBF"
|
||||
BuildableName = "RiotTests.xctest"
|
||||
BlueprintName = "RiotTests"
|
||||
ReferencedContainer = "container:Riot.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
</BuildActionEntries>
|
||||
</BuildAction>
|
||||
<TestAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES">
|
||||
onlyGenerateCoverageForSpecifiedTargets = "NO"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
disableMainThreadChecker = "YES">
|
||||
<Testables>
|
||||
<TestableReference
|
||||
skipped = "NO">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "F094A9BD1B78D8F000B1FBBF"
|
||||
BlueprintIdentifier = "287703423C2C302524E92C03"
|
||||
BuildableName = "RiotTests.xctest"
|
||||
BlueprintName = "RiotTests"
|
||||
ReferencedContainer = "container:Riot.xcodeproj">
|
||||
@@ -56,14 +44,14 @@
|
||||
<MacroExpansion>
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "F094A9A11B78D8F000B1FBBF"
|
||||
BlueprintIdentifier = "57B13CC4586E9D43ED24DE1E"
|
||||
BuildableName = "Riot.app"
|
||||
BlueprintName = "Riot"
|
||||
ReferencedContainer = "container:Riot.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
<AdditionalOptions>
|
||||
</AdditionalOptions>
|
||||
<CommandLineArguments>
|
||||
</CommandLineArguments>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
buildConfiguration = "Debug"
|
||||
@@ -74,19 +62,20 @@
|
||||
ignoresPersistentStateOnLaunch = "NO"
|
||||
debugDocumentVersioning = "YES"
|
||||
debugServiceExtension = "internal"
|
||||
allowLocationSimulation = "YES">
|
||||
allowLocationSimulation = "YES"
|
||||
disableMainThreadChecker = "YES">
|
||||
<BuildableProductRunnable
|
||||
runnableDebuggingMode = "0">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "F094A9A11B78D8F000B1FBBF"
|
||||
BlueprintIdentifier = "57B13CC4586E9D43ED24DE1E"
|
||||
BuildableName = "Riot.app"
|
||||
BlueprintName = "Riot"
|
||||
ReferencedContainer = "container:Riot.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildableProductRunnable>
|
||||
<AdditionalOptions>
|
||||
</AdditionalOptions>
|
||||
<CommandLineArguments>
|
||||
</CommandLineArguments>
|
||||
</LaunchAction>
|
||||
<ProfileAction
|
||||
buildConfiguration = "Release"
|
||||
@@ -98,12 +87,14 @@
|
||||
runnableDebuggingMode = "0">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "F094A9A11B78D8F000B1FBBF"
|
||||
BlueprintIdentifier = "57B13CC4586E9D43ED24DE1E"
|
||||
BuildableName = "Riot.app"
|
||||
BlueprintName = "Riot"
|
||||
ReferencedContainer = "container:Riot.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildableProductRunnable>
|
||||
<CommandLineArguments>
|
||||
</CommandLineArguments>
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
|
||||
95
Targets/Riot.yml
Normal file
95
Targets/Riot.yml
Normal file
@@ -0,0 +1,95 @@
|
||||
name: Riot
|
||||
schemes:
|
||||
Riot:
|
||||
analyze:
|
||||
config: Debug
|
||||
archive:
|
||||
config: Release
|
||||
build:
|
||||
targets:
|
||||
Riot:
|
||||
- running
|
||||
- testing
|
||||
- profiling
|
||||
- analyzing
|
||||
- archiving
|
||||
profile:
|
||||
config: Release
|
||||
run:
|
||||
config: Debug
|
||||
disableMainThreadChecker: true
|
||||
test:
|
||||
config: Debug
|
||||
disableMainThreadChecker: true
|
||||
targets:
|
||||
- RiotTests
|
||||
targets:
|
||||
Riot:
|
||||
dependencies:
|
||||
- target: RiotShareExtension
|
||||
- target: SiriIntents
|
||||
- target: RiotNSE
|
||||
platform: iOS
|
||||
settings:
|
||||
groups:
|
||||
- appDefault
|
||||
base:
|
||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES: $(inherited)
|
||||
ASSETCATALOG_COMPILER_APPICON_NAME: AppIcon
|
||||
CLANG_ENABLE_MODULES: YES
|
||||
CODE_SIGN_ENTITLEMENTS: Riot/SupportingFiles/Riot.entitlements
|
||||
ENABLE_BITCODE: NO
|
||||
FRAMEWORK_SEARCH_PATHS: $(inherited)
|
||||
GCC_PREPROCESSOR_DEFINITIONS: $(inherited)
|
||||
HEADER_SEARCH_PATHS: $(inherited)
|
||||
INFOPLIST_FILE: Riot/SupportingFiles/Info.plist
|
||||
LD_RUNPATH_SEARCH_PATHS: $(inherited) @executable_path/Frameworks
|
||||
LIBRARY_SEARCH_PATHS: $(inherited)
|
||||
OTHER_CFLAGS: $(inherited)
|
||||
OTHER_LDFLAGS: $(inherited)
|
||||
OTHER_SWIFT_FLAGS: $(inherited)
|
||||
PRODUCT_BUNDLE_IDENTIFIER: $(BASE_BUNDLE_IDENTIFIER)
|
||||
PRODUCT_NAME: Riot
|
||||
SWIFT_OBJC_BRIDGING_HEADER: $(SRCROOT)/$(PRODUCT_NAME)/SupportingFiles/Riot-Bridging-Header.h
|
||||
TARGETED_DEVICE_FAMILY: 1,2
|
||||
USER_HEADER_SEARCH_PATHS: $(inherited)
|
||||
configs:
|
||||
Debug:
|
||||
CODE_SIGN_IDENTITY: iPhone Developer
|
||||
CODE_SIGN_IDENTITY[sdk=iphoneos*]: iPhone Developer
|
||||
CODE_SIGN_STYLE: Automatic
|
||||
PROVISIONING_PROFILE_SPECIFIER:
|
||||
SWIFT_OPTIMIZATION_LEVEL: -Onone
|
||||
Release:
|
||||
CODE_SIGN_IDENTITY: iPhone Distribution
|
||||
CODE_SIGN_STYLE: Manual
|
||||
PROVISIONING_PROFILE: $(RIOT_PROVISIONING_PROFILE)
|
||||
PROVISIONING_PROFILE_SPECIFIER: $(RIOT_PROVISIONING_PROFILE_SPECIFIER)
|
||||
sources:
|
||||
- path: ../Tools
|
||||
excludes:
|
||||
- "Logs"
|
||||
- "Release"
|
||||
- "Templates/*.sh"
|
||||
- path: ../Config
|
||||
excludes:
|
||||
- "AppConfig.swift"
|
||||
- path: ../Riot
|
||||
excludes:
|
||||
- "Modules/Room/EmojiPicker/Data/EmojiMart/EmojiJSONStore.swift"
|
||||
- "Modules/KeyBackup/Recover/Loading"
|
||||
- "Modules/KeyBackup/Setup/RecoveryKey"
|
||||
- "**/*.strings" # Exclude all strings files
|
||||
- path: ../Riot/Assets/en.lproj/Vector.strings # except Vector.strings
|
||||
- path: ../Riot/SupportingFiles/App-Common.xcconfig
|
||||
buildPhase: resources
|
||||
type: application
|
||||
preBuildScripts:
|
||||
- name: ⚠️ SwiftLint
|
||||
runOnlyWhenInstalling: false
|
||||
shell: /bin/sh
|
||||
script: "${PODS_ROOT}/SwiftLint/swiftlint\n"
|
||||
- name: 🛠 SwiftGen
|
||||
runOnlyWhenInstalling: false
|
||||
shell: /bin/sh
|
||||
script: "${PODS_ROOT}/SwiftGen/bin/swiftgen config run --config Tools/SwiftGen/swiftgen-config.yml\n"
|
||||
93
Targets/RiotNSE.yml
Normal file
93
Targets/RiotNSE.yml
Normal file
@@ -0,0 +1,93 @@
|
||||
name: RiotNSE
|
||||
schemes:
|
||||
RiotNSE:
|
||||
analyze:
|
||||
config: Debug
|
||||
archive:
|
||||
config: Release
|
||||
build:
|
||||
targets:
|
||||
RiotNSE:
|
||||
- running
|
||||
- testing
|
||||
- profiling
|
||||
- analyzing
|
||||
- archiving
|
||||
profile:
|
||||
config: Release
|
||||
run:
|
||||
askForAppToLaunch: true
|
||||
config: Debug
|
||||
debugEnabled: false
|
||||
disableMainThreadChecker: true
|
||||
launchAutomaticallySubstyle: 2
|
||||
test:
|
||||
config: Debug
|
||||
disableMainThreadChecker: true
|
||||
targets:
|
||||
RiotNSE:
|
||||
platform: iOS
|
||||
type: app-extension
|
||||
sources:
|
||||
- path: ../RiotNSE
|
||||
- path: ../Riot/Managers/Settings/RiotSettings.swift
|
||||
- path: ../Config/BuildSettings.swift
|
||||
- path: ../Riot/Utils/DataProtectionHelper.swift
|
||||
- path: ../Config/CommonConfiguration.swift
|
||||
- path: ../Riot/Managers/PushNotification/PushNotificationStore.swift
|
||||
- path: ../Riot/Modules/SetPinCode/PinCodePreferences.swift
|
||||
- path: ../Riot/Generated/InfoPlist.swift
|
||||
- path: ../Riot/Managers/KeyValueStorage/Extensions/Keychain.swift
|
||||
- path: ../Riot/Modules/SetPinCode/SetupBiometrics/BiometricsAuthenticationPresenter.swift
|
||||
- path: ../Riot/Categories/UNUserNotificationCenter.swift
|
||||
- path: ../Riot/Managers/KeyValueStorage/KeyValueStore.swift
|
||||
- path: ../Riot/Categories/Bundle.swift
|
||||
- path: ../Riot/Generated/Strings.swift
|
||||
- path: ../Riot/Generated/Images.swift
|
||||
- path: ../Riot/Managers/KeyValueStorage/KeychainStore.swift
|
||||
- path: ../Riot/Managers/LocalAuthentication/LocalAuthenticationService.swift
|
||||
- path: ../Config/Configurable.swift
|
||||
- path: ../Riot/Utils/Constants.swift
|
||||
- path: ../RiotNSE/NSE-Common.xcconfig
|
||||
buildPhase: resources
|
||||
settings:
|
||||
groups:
|
||||
- appDefault
|
||||
base:
|
||||
CLANG_ANALYZER_NONNULL: YES
|
||||
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION: YES_AGGRESSIVE
|
||||
CLANG_CXX_LANGUAGE_STANDARD: gnu++14
|
||||
CLANG_ENABLE_OBJC_WEAK: YES
|
||||
CLANG_WARN_DOCUMENTATION_COMMENTS: YES
|
||||
CLANG_WARN_UNGUARDED_AVAILABILITY: YES_AGGRESSIVE
|
||||
CODE_SIGN_ENTITLEMENTS: RiotNSE/RiotNSE.entitlements
|
||||
ENABLE_BITCODE: NO
|
||||
GCC_C_LANGUAGE_STANDARD: gnu11
|
||||
INFOPLIST_FILE: RiotNSE/Info.plist
|
||||
MTL_FAST_MATH: YES
|
||||
PRODUCT_BUNDLE_IDENTIFIER: $(BASE_BUNDLE_IDENTIFIER).nse
|
||||
PRODUCT_NAME: RiotNSE
|
||||
SKIP_INSTALL: YES
|
||||
TARGETED_DEVICE_FAMILY: 1,2
|
||||
configs:
|
||||
Debug:
|
||||
CODE_SIGN_IDENTITY: iPhone Developer
|
||||
CODE_SIGN_STYLE: Automatic
|
||||
DEBUG_INFORMATION_FORMAT: dwarf
|
||||
MTL_ENABLE_DEBUG_INFO: INCLUDE_SOURCE
|
||||
PROVISIONING_PROFILE_SPECIFIER: ""
|
||||
SWIFT_ACTIVE_COMPILATION_CONDITIONS: DEBUG
|
||||
SWIFT_OPTIMIZATION_LEVEL: -Onone
|
||||
Release:
|
||||
CODE_SIGN_IDENTITY: iPhone Distribution
|
||||
CODE_SIGN_STYLE: Manual
|
||||
COPY_PHASE_STRIP: NO
|
||||
DEBUG_INFORMATION_FORMAT: dwarf-with-dsym
|
||||
PROVISIONING_PROFILE: $(NSE_PROVISIONING_PROFILE)
|
||||
PROVISIONING_PROFILE_SPECIFIER: $(NSE_PROVISIONING_PROFILE_SPECIFIER)
|
||||
SWIFT_OPTIMIZATION_LEVEL: -O
|
||||
postbuildScripts:
|
||||
- name: Embed Precompiled Frameworks
|
||||
runOnlyWhenInstalling: false
|
||||
script: echo "Skipping, nothing to be embedded."
|
||||
shell: /bin/sh
|
||||
105
Targets/RiotShareExtension.yml
Normal file
105
Targets/RiotShareExtension.yml
Normal file
@@ -0,0 +1,105 @@
|
||||
name: RiotShareExtension
|
||||
schemes:
|
||||
RiotShareExtension:
|
||||
analyze:
|
||||
config: Debug
|
||||
archive:
|
||||
config: Release
|
||||
build:
|
||||
targets:
|
||||
RiotShareExtension:
|
||||
- running
|
||||
- testing
|
||||
- profiling
|
||||
- analyzing
|
||||
- archiving
|
||||
profile:
|
||||
config: Release
|
||||
run:
|
||||
askForAppToLaunch: true
|
||||
config: Debug
|
||||
debugEnabled: false
|
||||
disableMainThreadChecker: true
|
||||
launchAutomaticallySubstyle: 2
|
||||
test:
|
||||
config: Debug
|
||||
disableMainThreadChecker: true
|
||||
targets:
|
||||
RiotShareExtension:
|
||||
platform: iOS
|
||||
sources:
|
||||
- path: ../RiotShareExtension
|
||||
- path: ../Riot/Modules/Common/SegmentedViewController/SegmentedViewController.m
|
||||
- path: ../Riot/Categories/Bundle.swift
|
||||
- path: ../Riot/Managers/Theme/Themes/DefaultTheme.swift
|
||||
- path: ../Riot/Managers/Theme/ThemeService.m
|
||||
- path: ../Riot/Utils/AvatarGenerator.m
|
||||
- path: ../Riot/Generated/InfoPlist.swift
|
||||
- path: ../Config/BuildSettings.swift
|
||||
- path: ../Riot/Categories/Character.swift
|
||||
- path: ../Riot/Managers/Theme/Themes/BlackTheme.swift
|
||||
- path: ../Riot/Categories/MXRoom+Riot.m
|
||||
- path: ../Config/Configurable.swift
|
||||
- path: ../Config/CommonConfiguration.swift
|
||||
- path: ../Riot/Utils/UserNameColorGenerator.swift
|
||||
- path: ../Riot/Categories/MXRoomSummary+Riot.m
|
||||
- path: ../Riot/Managers/Theme/Theme.swift
|
||||
- path: ../Riot/Managers/Settings/RiotSettings.swift
|
||||
- path: ../Riot/Categories/UIColor.swift
|
||||
- path: ../Riot/Managers/Theme/Themes/DarkTheme.swift
|
||||
- path: ../Riot/Categories/UISearchBar.swift
|
||||
- path: ../Riot/Categories/String.swift
|
||||
- path: ../Riot/Modules/Common/Recents/CellData/RecentCellData.m
|
||||
- path: ../Riot/Modules/Common/SegmentedViewController/SegmentedViewController.xib
|
||||
buildPhase: resources
|
||||
- path: ../Riot/Assets/en.lproj/Vector.strings
|
||||
buildPhase: resources
|
||||
- path: ../RiotShareExtension/SupportingFiles/ShareExtension-Common.xcconfig
|
||||
buildPhase: resources
|
||||
- path: ../Riot/Assets/SharedImages.xcassets
|
||||
buildPhase: resources
|
||||
type: app-extension
|
||||
postbuildScripts:
|
||||
- name: Embed Precompiled Frameworks
|
||||
runOnlyWhenInstalling: false
|
||||
script: echo "Skipping, nothing to be embedded."
|
||||
shell: /bin/sh
|
||||
settings:
|
||||
groups:
|
||||
- appDefault
|
||||
base:
|
||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES: $(inherited)
|
||||
APPLICATION_EXTENSION_API_ONLY: YES
|
||||
ASSETCATALOG_COMPILER_APPICON_NAME: AppIcon
|
||||
CLANG_ANALYZER_NONNULL: YES
|
||||
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION: YES_AGGRESSIVE
|
||||
CLANG_WARN_DOCUMENTATION_COMMENTS: YES
|
||||
CODE_SIGN_ENTITLEMENTS: RiotShareExtension/SupportingFiles/RiotShareExtension.entitlements
|
||||
ENABLE_BITCODE: NO
|
||||
FRAMEWORK_SEARCH_PATHS: $(inherited)
|
||||
GCC_PREPROCESSOR_DEFINITIONS: $(inherited) IS_SHARE_EXTENSION=1
|
||||
HEADER_SEARCH_PATHS: $(inherited)
|
||||
INFOPLIST_FILE: RiotShareExtension/SupportingFiles/Info.plist
|
||||
LD_RUNPATH_SEARCH_PATHS: $(inherited) @executable_path/Frameworks @executable_path/../../Frameworks
|
||||
LIBRARY_SEARCH_PATHS: $(inherited)
|
||||
OTHER_CFLAGS: $(inherited)
|
||||
OTHER_LDFLAGS: $(inherited)
|
||||
OTHER_SWIFT_FLAGS: $(inherited)
|
||||
PRODUCT_NAME: RiotShareExtension
|
||||
SKIP_INSTALL: YES
|
||||
SWIFT_OBJC_BRIDGING_HEADER: $(SRCROOT)/$(PRODUCT_NAME)/SupportingFiles/RiotShareExtension-Bridging-Header.h
|
||||
USER_HEADER_SEARCH_PATHS: $(inherited)
|
||||
PRODUCT_BUNDLE_IDENTIFIER: $(BASE_BUNDLE_IDENTIFIER).shareExtension
|
||||
configs:
|
||||
Debug:
|
||||
CODE_SIGN_IDENTITY: iPhone Developer
|
||||
CODE_SIGN_STYLE: Automatic
|
||||
DEBUG_INFORMATION_FORMAT: dwarf
|
||||
PROVISIONING_PROFILE_SPECIFIER: ""
|
||||
Release:
|
||||
CODE_SIGN_IDENTITY: iPhone Distribution
|
||||
CODE_SIGN_STYLE: Manual
|
||||
COPY_PHASE_STRIP: NO
|
||||
DEBUG_INFORMATION_FORMAT: dwarf-with-dsym
|
||||
PROVISIONING_PROFILE: $(SHARE_EXTENSION_PROVISIONING_PROFILE)
|
||||
PROVISIONING_PROFILE_SPECIFIER: $(SHARE_EXTENSION_PROVISIONING_PROFILE_SPECIFIER)
|
||||
59
Targets/RiotTests.yml
Normal file
59
Targets/RiotTests.yml
Normal file
@@ -0,0 +1,59 @@
|
||||
name: RiotTests
|
||||
schemes:
|
||||
RiotTests:
|
||||
analyze:
|
||||
config: Debug
|
||||
archive:
|
||||
config: Release
|
||||
build:
|
||||
targets:
|
||||
RiotTests:
|
||||
- running
|
||||
- testing
|
||||
- profiling
|
||||
- analyzing
|
||||
- archiving
|
||||
profile:
|
||||
config: Release
|
||||
run:
|
||||
config: Debug
|
||||
disableMainThreadChecker: true
|
||||
test:
|
||||
config: Debug
|
||||
disableMainThreadChecker: true
|
||||
targets:
|
||||
- RiotTests
|
||||
targets:
|
||||
RiotTests:
|
||||
dependencies:
|
||||
- target: Riot
|
||||
platform: iOS
|
||||
postbuildScripts:
|
||||
- name: Embed Precompiled Frameworks
|
||||
runOnlyWhenInstalling: false
|
||||
script: echo "Skipping, nothing to be embedded."
|
||||
shell: /bin/sh
|
||||
settings:
|
||||
groups:
|
||||
- appDefault
|
||||
base:
|
||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES: $(inherited)
|
||||
BUNDLE_LOADER: $(TEST_HOST)
|
||||
CLANG_ENABLE_MODULES: YES
|
||||
CODE_SIGN_STYLE: Manual
|
||||
FRAMEWORK_SEARCH_PATHS: $(SDKROOT)/Developer/Library/Frameworks $(inherited)
|
||||
INFOPLIST_FILE: RiotTests/Info.plist
|
||||
LD_RUNPATH_SEARCH_PATHS: $(inherited) @executable_path/Frameworks @loader_path/Frameworks
|
||||
PRODUCT_BUNDLE_IDENTIFIER: org.matrix.$(PRODUCT_NAME:rfc1034identifier)
|
||||
PRODUCT_NAME: RiotTests
|
||||
SWIFT_OBJC_BRIDGING_HEADER: RiotTests/RiotTests-Bridging-Header.h
|
||||
TEST_HOST: $(BUILT_PRODUCTS_DIR)/Riot.app/Riot
|
||||
configs:
|
||||
Debug:
|
||||
GCC_PREPROCESSOR_DEFINITIONS: DEBUG=1 $(inherited)
|
||||
SWIFT_OPTIMIZATION_LEVEL: -Onone
|
||||
Release:
|
||||
PROVISIONING_PROFILE: $(RIOT_PROVISIONING_PROFILE)
|
||||
PROVISIONING_PROFILE_SPECIFIER: $(RIOT_PROVISIONING_PROFILE_SPECIFIER)
|
||||
sources: [../RiotTests]
|
||||
type: bundle.unit-test
|
||||
83
Targets/SiriIntents.yml
Normal file
83
Targets/SiriIntents.yml
Normal file
@@ -0,0 +1,83 @@
|
||||
name: SiriIntents
|
||||
schemes:
|
||||
SiriIntents:
|
||||
analyze:
|
||||
config: Debug
|
||||
archive:
|
||||
config: Release
|
||||
build:
|
||||
targets:
|
||||
SiriIntents:
|
||||
- running
|
||||
- testing
|
||||
- profiling
|
||||
- analyzing
|
||||
- archiving
|
||||
profile:
|
||||
config: Release
|
||||
run:
|
||||
askForAppToLaunch: true
|
||||
config: Debug
|
||||
debugEnabled: false
|
||||
disableMainThreadChecker: true
|
||||
launchAutomaticallySubstyle: 2
|
||||
test:
|
||||
config: Debug
|
||||
disableMainThreadChecker: true
|
||||
targets:
|
||||
SiriIntents:
|
||||
platform: iOS
|
||||
type: app-extension
|
||||
sources:
|
||||
- path: ../SiriIntents
|
||||
- path: ../Riot/Generated/InfoPlist.swift
|
||||
- path: ../Riot/Categories/Bundle.swift
|
||||
- path: ../Config/CommonConfiguration.swift
|
||||
- path: ../Config/BuildSettings.swift
|
||||
- path: ../Config/Configurable.swift
|
||||
- path: ../Riot/Managers/Settings/RiotSettings.swift
|
||||
- path: ../SiriIntents/SiriIntents-Common.xcconfig
|
||||
buildPhase: resources
|
||||
dependencies:
|
||||
- sdk: Intents.framework
|
||||
postbuildScripts:
|
||||
- name: Embed Precompiled Frameworks
|
||||
runOnlyWhenInstalling: false
|
||||
script: echo "Skipping, nothing to be embedded."
|
||||
shell: /bin/sh
|
||||
settings:
|
||||
groups:
|
||||
- appDefault
|
||||
base:
|
||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES: $(inherited)
|
||||
CLANG_ANALYZER_NONNULL: YES
|
||||
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION: YES_AGGRESSIVE
|
||||
CLANG_WARN_DOCUMENTATION_COMMENTS: YES
|
||||
CODE_SIGN_ENTITLEMENTS: SiriIntents/SiriIntents.entitlements
|
||||
ENABLE_BITCODE: NO
|
||||
FRAMEWORK_SEARCH_PATHS: $(inherited)
|
||||
GCC_PREPROCESSOR_DEFINITIONS: $(inherited)
|
||||
HEADER_SEARCH_PATHS: $(inherited)
|
||||
INFOPLIST_FILE: SiriIntents/Info.plist
|
||||
LD_RUNPATH_SEARCH_PATHS: $(inherited) @executable_path/Frameworks @executable_path/../../Frameworks
|
||||
LIBRARY_SEARCH_PATHS: $(inherited)
|
||||
OTHER_CFLAGS: $(inherited)
|
||||
OTHER_LDFLAGS: $(inherited)
|
||||
OTHER_SWIFT_FLAGS: $(inherited)
|
||||
PRODUCT_BUNDLE_IDENTIFIER: $(BASE_BUNDLE_IDENTIFIER).SiriIntents
|
||||
PRODUCT_NAME: SiriIntents
|
||||
SKIP_INSTALL: YES
|
||||
USER_HEADER_SEARCH_PATHS: $(inherited)
|
||||
configs:
|
||||
Debug:
|
||||
CODE_SIGN_IDENTITY: iPhone Developer
|
||||
CODE_SIGN_STYLE: Automatic
|
||||
DEBUG_INFORMATION_FORMAT: dwarf
|
||||
PROVISIONING_PROFILE_SPECIFIER: ""
|
||||
Release:
|
||||
CODE_SIGN_IDENTITY: iPhone Distribution
|
||||
CODE_SIGN_STYLE: Manual
|
||||
COPY_PHASE_STRIP: NO
|
||||
DEBUG_INFORMATION_FORMAT: dwarf-with-dsym
|
||||
PROVISIONING_PROFILE: $(SIRI_INTENTS_PROVISIONING_PROFILE)
|
||||
PROVISIONING_PROFILE_SPECIFIER: $(SIRI_INTENTS_PROVISIONING_PROFILE_SPECIFIER)
|
||||
8
createWorkspace.sh
Normal file
8
createWorkspace.sh
Normal file
@@ -0,0 +1,8 @@
|
||||
#!/bin/bash
|
||||
|
||||
if [ $(gem list bundler -i) ]; then
|
||||
bundle install
|
||||
bundle exec pod install
|
||||
else
|
||||
pod install
|
||||
fi
|
||||
99
project.yml
Normal file
99
project.yml
Normal file
@@ -0,0 +1,99 @@
|
||||
attributes:
|
||||
ORGANIZATIONNAME: matrix.org
|
||||
configs:
|
||||
Debug: debug
|
||||
Release: release
|
||||
name: Riot
|
||||
settingGroups:
|
||||
appDefault:
|
||||
CURRENT_PROJECT_VERSION: 20200826151407
|
||||
SWIFT_VERSION: 5.3.1
|
||||
BUNDLE_DISPLAY_NAME: Element
|
||||
APPLICATION_GROUP_IDENTIFIER: group.im.vector
|
||||
BASE_BUNDLE_IDENTIFIER: im.vector.app
|
||||
KEYCHAIN_ACCESS_GROUP: $(AppIdentifierPrefix)$(BASE_BUNDLE_IDENTIFIER).keychain.shared
|
||||
LD_RUNPATH_SEARCH_PATHS: $(inherited) @executable_path/Frameworks @executable_path/../../Frameworks
|
||||
DEVELOPMENT_TEAM: 7J4U792NQT
|
||||
|
||||
RIOT_PROVISIONING_PROFILE: f65e7447-b8a3-46cc-8fba-fa60e55e2511
|
||||
RIOT_PROVISIONING_PROFILE_SPECIFIER: Vector App Store
|
||||
NSE_PROVISIONING_PROFILE: 31dc9316-e029-47fd-81f5-778db07d76a2
|
||||
NSE_PROVISIONING_PROFILE_SPECIFIER: "Vector NSE: App Store"
|
||||
SHARE_EXTENSION_PROVISIONING_PROFILE: 1a3be143-50c7-4ae2-834e-00596a053141
|
||||
SHARE_EXTENSION_PROVISIONING_PROFILE_SPECIFIER: "Vector Share Extension: App Store"
|
||||
SIRI_INTENTS_PROVISIONING_PROFILE: 18a66f93-ffe1-4008-b343-58350cc65023
|
||||
SIRI_INTENTS_PROVISIONING_PROFILE_SPECIFIER: "Vector Siri Intents: App Store"
|
||||
|
||||
settings:
|
||||
base:
|
||||
IPHONEOS_DEPLOYMENT_TARGET: 11.0
|
||||
MARKETING_VERSION: 1.1.3
|
||||
CURRENT_PROJECT_VERSION: 1.1.3
|
||||
SDKROOT: iphoneos
|
||||
TARGETED_DEVICE_FAMILY: 1,2
|
||||
ALWAYS_SEARCH_USER_PATHS: NO
|
||||
CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED: YES
|
||||
CLANG_CXX_LANGUAGE_STANDARD: gnu++0x
|
||||
CLANG_CXX_LIBRARY: libc++
|
||||
CLANG_ENABLE_MODULES: YES
|
||||
CLANG_ENABLE_OBJC_ARC: YES
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH: 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_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_UNREACHABLE_CODE: YES
|
||||
DEFINES_MODULE: YES
|
||||
ENABLE_STRICT_OBJC_MSGSEND: YES
|
||||
GCC_C_LANGUAGE_STANDARD: gnu99
|
||||
GCC_NO_COMMON_BLOCKS: YES
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION: YES
|
||||
GCC_WARN_ABOUT_RETURN_TYPE: YES_ERROR
|
||||
GCC_WARN_UNDECLARED_SELECTOR: YES
|
||||
GCC_WARN_UNINITIALIZED_AUTOS: YES_AGGRESSIVE
|
||||
GCC_WARN_UNUSED_FUNCTION: YES
|
||||
GCC_WARN_UNUSED_VARIABLE: YES
|
||||
debug:
|
||||
CODE_SIGN_IDENTITY: iPhone Developer
|
||||
CODE_SIGN_IDENTITY[sdk=iphoneos*]: iPhone Developer
|
||||
COPY_PHASE_STRIP: NO
|
||||
ENABLE_TESTABILITY: YES
|
||||
GCC_DYNAMIC_NO_PIC: NO
|
||||
GCC_OPTIMIZATION_LEVEL: 0
|
||||
GCC_PREPROCESSOR_DEFINITIONS: DEBUG=1 $(inherited)
|
||||
GCC_SYMBOLS_PRIVATE_EXTERN: NO
|
||||
MTL_ENABLE_DEBUG_INFO: YES
|
||||
ONLY_ACTIVE_ARCH: YES
|
||||
release:
|
||||
CODE_SIGN_IDENTITY: iPhone Distribution
|
||||
CODE_SIGN_IDENTITY[sdk=iphoneos*]: iPhone Distribution
|
||||
COPY_PHASE_STRIP: YES
|
||||
ENABLE_NS_ASSERTIONS: NO
|
||||
MTL_ENABLE_DEBUG_INFO: NO
|
||||
SWIFT_COMPILATION_MODE: wholemodule
|
||||
VALIDATE_PRODUCT: YES
|
||||
options:
|
||||
defaultConfig: Release
|
||||
groupSortPosition: bottom
|
||||
transitivelyLinkDependencies: false
|
||||
createIntermediateGroups: true
|
||||
postGenCommand: sh createWorkspace.sh
|
||||
include:
|
||||
- path: Targets/Riot.yml
|
||||
- path: Targets/RiotTests.yml
|
||||
- path: Targets/RiotShareExtension.yml
|
||||
- path: Targets/SiriIntents.yml
|
||||
- path: Targets/RiotNSE.yml
|
||||
Reference in New Issue
Block a user