Skip to content

Commit

Permalink
[osx/ios] - adapted README.osx and README.ios for usage with new unif…
Browse files Browse the repository at this point in the history
…ied depends
  • Loading branch information
Memphiz committed Mar 18, 2013
1 parent cc482a2 commit 5370a93
Show file tree
Hide file tree
Showing 2 changed files with 62 additions and 11 deletions.
31 changes: 26 additions & 5 deletions docs/README.ios
Original file line number Diff line number Diff line change
Expand Up @@ -70,28 +70,44 @@ constellations of Xcode and osx versions (to be updated once we know more):

1. XCode 3.2.6 against iOS SDK 4.3 on 10.6.x (Snow Leopard)
2. XCode 4.3.x against iOS SDK 4.3 and 5.1 on 10.7.x (Lion)
3. XCode 4.5.1 against iOS SDK 4.3, 5.1 and 6.0 on 10.7.x (Lion) and 10.8.x (ML)
3. XCode 4.6 against iOS SDK 4.3, 5.1 and 6.1 on 10.7.x (Lion) and 10.8.x (ML)
3.a Building against iOS SDK 6.0 will only allow to run on targets with iOS 5.1 and below.
There is no support for devices running iOS 6.0 for now!

-----------------------------------------------------------------------------
3.1 Install Cross libs and runtime environment
-----------------------------------------------------------------------------

The following commands will build using the latest iOS SDK found on your
system.

$ cd $HOME/XBMC
$ cd tools/darwin/depends
$ cd tools/depends
$ ./bootstrap
$ ./configure --with-darwin=ios
$ ./configure --host=arm-apple-darwin
$ make

NOTE: You can speedup compilation on multicore systems by doing
"make -j<number of cores>" instead of "make". For a dualcore this would read:
"make -j2"

ADVANCED developers only! If you want to specify an iOS SDK version (if
multiple versions are installed) - then append it to the configure line
above (example below would use iOS SDK 6.0):

$ ./configure --host=arm-apple-darwin --with-sdk=6.0

Ensure that you also adapt the xcode project to use this SDK version or
if building via cmdline the SDKROOT parameter of the xcodebuild command.

-----------------------------------------------------------------------------
4. How to compile
-----------------------------------------------------------------------------
Both Xcode and Terminal compilation require that build environment be setup
from the step 3.1.

$ cd $HOME/XBMC
$ make -C tools/darwin/depends/xbmc
$ make -C tools/depends/target/xbmc
$ make clean
$ make xcode_depends
$ make -C lib/addons/script.module.pil
Expand All @@ -105,6 +121,10 @@ located in $HOME/XBMC.
There are two relevant build targets : Release and Debug. Compile always for device
end not simulator.

If you have selected a specific iOS SDK Version in step 3.1 then you might need
to adapt the active target to use the same iOS SDK version. Else build will fail
(you will see alot of errors with at least non-found boost/shared_ptr.hpp).

-----------------------------------------------------------------------------
4.2 Using Terminal (command-line)
-----------------------------------------------------------------------------
Expand All @@ -120,7 +140,8 @@ or
ONLY_ACTIVE_ARCH=YES ARCHS=armv7 VALID_ARCHS=armv7 IPHONEOS_DEPLOYMENT_TARGET=4.1 \
SDKROOT=iphoneos4.2

Make sure to set SDKROOT to the iOS SDK you want to use.
Make sure to set SDKROOT to the iOS SDK you want to use. This should be the same
you used on point 3.1!

-----------------------------------------------------------------------------
5. Packaging
Expand Down
42 changes: 36 additions & 6 deletions docs/README.osx
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,8 @@ anymore.
-----------------------------------------------------------------------------
3.0 Install XCODE
-----------------------------------------------------------------------------
See point 3.0a below for an updated list of supported/tested Xcode/osx constellations!!!

Install latest Xcode (4.3.2 or 3.2.6 as of the writing). You can download it from

1. Apple's site after registration at http://developer.apple.com/tools/download (Xcode 3.2.6)
Expand All @@ -60,24 +62,48 @@ Xcode 3.2.6 only runs on 10.6.x (Snow Leopard).
Xcode 4.3.x only runs on 10.7.x (Lion).
Xcode 4.4 only runs on 10.8.x (Mountain Lion).

-----------------------------------------------------------------------------
3.0a Supported Xcode and OSX constellations
-----------------------------------------------------------------------------
As far as we know the compilation for mac osx should work with the following
constellations of Xcode and osx versions (to be updated once we know more):

1. XCode 3.2.6 against OSX SDK 10.6 on 10.6.x (Snow Leopard)
2. XCode 4.3.x against OSX SDK 10.6 and 10.7 on 10.7.x (Lion)
3. XCode 4.6 against OSX SDK 10.6, 10.7 and 10.8 on 10.7.x (Lion) and 10.8.x (ML)

-----------------------------------------------------------------------------
3.1 Install XBMC build depends
-----------------------------------------------------------------------------
The following commands will build using the latest OSX SDK found on your
system.

3.1.1 Compiling as 32 Bit binary
$ cd $HOME/XBMC
$ cd tools/darwin/depends
$ cd tools/depends
$ ./bootstrap
$ ./configure --with-darwin=osx
$ ./configure --host=i386-apple-darwin
$ make

3.1.2 Compiling as 64 Bit binary
$ cd $HOME/XBMC
$ cd tools/darwin/depends
$ cd tools/depends
$ ./bootstrap
$ ./configure --with-darwin=osx --with-arch=x86_64
$ ./configure --host=x86_64-apple-darwin
$ make

NOTE: You can speedup compilation on multicore systems by doing
"make -j<number of cores>" instead of "make". For a dualcore this would read:
"make -j2"

ADVANCED developers only! If you want to specify an OSX SDK version (if
multiple versions are installed) - then append it to the configure line
above (example below would use OSX SDK 10.7 and build for 64bit):

$ ./configure --host=x86_64-apple-darwin --with-sdk=10.7

Ensure that you also adapt the xcode project to use this SDK version.

-----------------------------------------------------------------------------
4. How to compile
-----------------------------------------------------------------------------
Expand All @@ -88,15 +114,15 @@ first. This is a simple step and involves the following:
by compiling via Xcode GUI

$ cd $HOME/XBMC
$ make -C tools/darwin/depends/xbmc
$ make -C tools/depends/target/xbmc
$ make clean
$ make xcode_depends
$ make -C lib/addons/script.module.pil

4.b Compilation by using command-line building via make (experimental)

$ cd $HOME/XBMC
$ make -C tools/darwin/depends/xbmc
$ make -C tools/depends/target/xbmc
$ make clean

The configure operation will setup the build environment for codecs and
Expand Down Expand Up @@ -131,6 +157,10 @@ Set the build target to "XBMC" or "XBMC.app" and be sure to select the same
architecture as selected in step 3.1 (either i386 for 32Bit or x86_64 for 64Bit),
then build.

If you have selected a specific OSX SDK Version in step 3.1 then you might need
to adapt the active target to use the same OSX SDK version. Else build will fail
(you will see alot of errors with at least non-found boost/shared_ptr.hpp).

The build process will take a long time when building the first time.
You can see the progress in "Build Results". There are a large number of static
and dynamic libaries that will need to be built. Once these are built,
Expand Down

0 comments on commit 5370a93

Please sign in to comment.