clarify build instructions

// FREEBIE
pull/1/head
Michael Kirk 7 years ago
parent dc211afd53
commit 9560af4939

@ -4,17 +4,18 @@
Clone the repo to a working directory
## 2. Depenencies
### tldr;
Build and configure dependencies.
## 2. Dependencies
To build and configure the libraries Signal uses, just run:
```
make dependencies
```
If the above fails to run, or you just want to know more about our
dependency management systems, read the next section, Dependency Details.
Else if the above completed without error - jump ahead to step 3.
### Dependency Details
We have a couple of dependency management tools. We us Carthage for
@ -35,7 +36,7 @@ pod repo update
pod install
```
occasionally, CocoaPods itself will need to be updated. Do this with
Occasionally, CocoaPods itself will need to be updated. Do this with
```
gem update cocoapods
@ -55,6 +56,12 @@ git submodule update --init
carthage build --platform iOS
```
### Building WebRTC
A prebuilt version of WebRTC.framework resides in our Carthage submodule
and should be installed by the above steps. However, if you'd like to
build it from source, see: https://github.com/WhisperSystems/signal-webrtc-ios
## 3. XCode
Open the `Signal.xcworkspace` in Xcode.
@ -64,24 +71,18 @@ open Signal.xcworkspace
```
In the Signal target on the General tab, change the Team drop down to
your own. On the Capabilities tab turn off Push Notifications and Data
Protection. Only Background Modes should remain on.
Some of our build scripts, like running tests, expect your Derived
Data directory to be `$(PROJECT_DIR)/build`. In Xcode, go to `Preferences-> Locations`,
and set the "Derived Data" dropdown to "Relative" and the text field
value to "build".
your own. You will need an Apple Developer account for that. On the
Capabilities tab turn off Push Notifications and Data Protection. Only
Background Modes should remain on.
Build and Run and you are ready to go!
## Known issues
Features related to push notifications are known to be not working for third-party contributors since Apple's Push Notification service pushs will only work with Open Whisper Systems production code signing certificate.
Features related to push notifications are known to be not working for
third-party contributors since Apple's Push Notification service pushes
will only work with Open Whisper Systems production code signing
certificate.
If you have any other issues, please ask on the [community forum](https://whispersystems.discoursehosting.net/).
### Building WebRTC
A prebuilt version of WebRTC.framework resides in our Carthage submodule (see above).
However, if you'd like to build it from source, see https://github.com/WhisperSystems/signal-webrtc-ios

Loading…
Cancel
Save