summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTobias Markmann <tm@ayena.de>2014-11-13 12:06:05 (GMT)
committerTobias Markmann <tm@ayena.de>2014-11-13 14:44:16 (GMT)
commit32fef976301f19dba9bdf371777cd5374d327eff (patch)
tree009890e4f3c7c7b674a1892590669a2fcc04c838 /Documentation
parent71093bfd86608952aba8debc689499cc738e00ca (diff)
downloadswift-32fef976301f19dba9bdf371777cd5374d327eff.zip
swift-32fef976301f19dba9bdf371777cd5374d327eff.tar.bz2
Fix iOS build and add iOS build documentation.
Test-Information: Tested on OS X 10.9.5 with XCode 6.1. Change-Id: Ib223977192fce274e5585ef0768fd755b1fa734d
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/BuildingOnIOS.txt44
1 files changed, 44 insertions, 0 deletions
diff --git a/Documentation/BuildingOnIOS.txt b/Documentation/BuildingOnIOS.txt
new file mode 100644
index 0000000..dfc2194
--- /dev/null
+++ b/Documentation/BuildingOnIOS.txt
@@ -0,0 +1,44 @@
+Prerequisites
+------------
+- XCode
+- Python
+- Other requirements that are obtained during this guide
+ - OpenSSL
+
+Supported Components
+--------------------
+- Swiften
+ Note: File-transfer support has not been tested on Android. Link-local features are not supported under Android.
+- Swift/Controllers
+
+Preparation of Build Environment
+--------------------------------
+1. Fetch 3rd-party dependencies
+
+1.1 OpenSSL
+ cd 3rdParty/OpenSSL
+ curl -O http://www.openssl.org/source/openssl-1.0.0a.tar.gz
+ tar -xf openssl-1.0.0a.tar.gz
+ mv openssl-1.0.0a openssl
+
+Building
+--------
+1. Switch to iOS directory
+ cd BuildTools/IOS
+
+2. Look up installed SDKs
+ xcodebuild -showsdks
+
+ Note: Here the iOS SDKs and iOS Simulator SDKs are of interest.
+
+3. Build Swiften (adjust the sdk parameter to one of the installed SDKs)
+ xcodebuild build -arch i386 -sdk iphonesimulator8.1
+
+ Note: When not specifying the architecture (-arch flag) XCode will try an universal build which is not supported.
+ Only specify one architecture at a time and if you require a universal lib you can create one using the lipo tool.
+
+4. The final libSwiften.a is located at $SWIFT/build/current/Swiften/libSwiften.a.
+
+Testing
+-------
+Integration and unit tests are not supported on iOS.