move README.xx to docs and create a generic README
authorS. Davilla <davilla@4pi.com>
Fri, 4 May 2012 16:14:41 +0000 (12:14 -0400)
committerS. Davilla <davilla@4pi.com>
Fri, 4 May 2012 23:38:21 +0000 (19:38 -0400)
README [new file with mode: 0644]
README.armel [deleted file]
README.ios [deleted file]
README.linux [deleted file]
README.osx [deleted file]
README.ubuntu [deleted file]
docs/README.armel [new file with mode: 0644]
docs/README.ios [new file with mode: 0644]
docs/README.linux [new file with mode: 0644]
docs/README.osx [new file with mode: 0644]
docs/README.ubuntu [new file with mode: 0644]

diff --git a/README b/README
new file mode 100644 (file)
index 0000000..ccd466a
--- /dev/null
+++ b/README
@@ -0,0 +1,3 @@
+XBMC is a multimedia application that runs on multiple platforms.
+
+See docs/README.xxx for specific platform build information.
diff --git a/README.armel b/README.armel
deleted file mode 100644 (file)
index fdbec70..0000000
+++ /dev/null
@@ -1,273 +0,0 @@
-TOC
-1. Introduction
-2. Using Scratchbox
-       2.1 Automatic Installation
-       2.2 Manual Installation
-       2.3 Installation Continued for both Automatic and Manual Methods
-       2.4 Setup Scratchbox
-3. Getting the source code
-4. Installing the required ARMEL packages
-5. Obtaining the SGX files
-6. How to compile
-       6.1 Configure & Make
-       6.2 Install
-7. How to run
-       7.1 Obtaining the Packages
-       7.2 Installing the Files
-       7.3 Running XBMC
-8. Troubleshooting
-
-
------------------------------------------------------------------------------
-1. Introduction
------------------------------------------------------------------------------
-
-This is a port of XBMC for use on ARM Architecture.
-As this is not an official version of XBMC, in-depth testing on various setups has not been done. USE WITH CAUTION!
-For the purpose of this port, the following Hardware and Software was used.
-Software: Scratchbox (cross-compiler) on a Linux (Ubuntu) machine.
-Hardware: BeagleBoard (ARM Cortex-A8 with IMG POWERVR SGX).
-The source code is based on XBMC for Linux - version 9.11 (Camelot).
-
-All lines that are prefixed with the '$' character are commands that need to be typed into a standard linux terminal
-All lines that are prefixed with the '>' character are commands that need to be typed into scratchbox
-All lines that are prefixed with the '#' character are commands that need to be typed into a terminal on the beagleboard
-
-
------------------------------------------------------------------------------
-2. Using Scratchbox
------------------------------------------------------------------------------
-
-First, you need scratch box, along with some other packages.
-The easiest way is to do the following automatic installation.
-If you dont succeed, or want to do it manually, follow the next step instead.
-
-       -----------------------------------------------------------------------------
-       2.1 Automatic Installation:
-       -----------------------------------------------------------------------------
-
-               $ sudo gedit /etc/apt/sources.list
-               
-       Add this to the end of the file, then save and exit gedit:
-               deb http://scratchbox.org/debian stable main
-               deb http://scratchbox.org/debian legacy main
-               
-       Now enter the following command:
-               $ sudo apt-get install scratchbox-core scratchbox-libs scratchbox-devkit-cputransp scratchbox-devkit-git scratchbox-devkit-mtd scratchbox-devkit-perl scratchbox-devkit-doctools scratchbox-toolchain-arm-linux-cs2007q3-51sb3 scratchbox-toolchain-host-gcc scratchbox-devkit-debian
-
-       -----------------------------------------------------------------------------
-       2.2 Manual Installation:
-       -----------------------------------------------------------------------------
-
-       Go to the following website:
-               http://www.scratchbox.org/download/files/sbox-releases/stable/tarball/
-       and download the following files (Unless specified, choose latest version):
-       - core
-       - libs
-       - cputransp
-       - doctools
-       - git
-       - mtd
-       - perl
-       - toolchain (cs2007q3-51sb3)
-       - host-gcc
-       - debian
-
-       To install
-               $ cd /
-               $ sudo tar xvf /<location of files>/scratchbox-core.tar.gz
-
-       Repeat for all the downloaded files.
-
-       -----------------------------------------------------------------------------
-       2.3 Installation Continued for both Automatic and Manual Methods:
-       -----------------------------------------------------------------------------
-
-       Now, a few changes needs to me made in order for it to work correctly:
-               $ sudo gedit /etc/sysctl.conf
-               
-       Change/Add these variables:
-               vm.mmap_min_addr = 4096
-        vm.vdso_enabled = 0
-       Save and Close.
-
-       Add yourself to scratchbox:
-               $ sb-adduser <username>
-               
-       Make sure it worked by doing the following command, and see if sbox is listed.
-               $ groups
-
-       If it isnt listed, restart and try again. If it still isnt listed, then do the following:
-               $ usermod -a -G sbox <username>
-               
-       It should now list (possibly after another logout)
-       Now you have access to scratchbox.
-       
-       -----------------------------------------------------------------------------
-       2.4 Setup Scratchbox:
-       -----------------------------------------------------------------------------
-       
-       Before setting up your target, you need a rootstrap. Obtain the latest rootstrap from:
-               http://linux.onarm.com/download/images/generic-X/
-       You want to download the file 'beagleboard-<date>-rootstrap.tar.gz'.
-
-       Do this every time you want to access scratchbox:
-               $ /scratchbox/login
-       
-       Time to setup your target:
-               > sb-menu
-       
-       A GUI will appear for the setup procedure.
-           - Choose Setup
-           - Create a NEW target, give it any name
-           - Select the compiler you downloaded (arm-linux-cs2007q3-51sb3)
-           - Select all development kits listed by highlighting each one and pressing enter, then Done and enter
-           - Select CPU transparency (qemu-arm-cvs-m)
-           - Yes to rootstrap. Locate the previously downloaded rootstrap to install.
-           - Yes to install files
-           - Only select DEVKIT and ETC. Remove all other files in list, then continue
-           - And finally Yes to selecting target.
-
-       Now scratchbox is setup
-
-       
------------------------------------------------------------------------------
-3. Getting the source code
------------------------------------------------------------------------------
-
-   $ sudo apt-get install git-core
-   $ cd /scratchbox/users/<username>/home/<username>/
-   $ git clone git://github.com/xbmc/xbmc.git
-
-   
------------------------------------------------------------------------------
-4. Installing the required ARMEL packages
------------------------------------------------------------------------------
-
-There is a simple shell script that downloads a list of packages that are required and installs them into scratchbox.
-
-  > cd tools/arm/arm-scripts/
-  > ./install-pkgs.sh
-  
-Please check the output files for any possible errors that may have occured.
-
-Note. You will need the headers and shared object files for EGL and GLESv2 to continue.
-
-
------------------------------------------------------------------------------
-5. Obtaining the SGX files
------------------------------------------------------------------------------
-
-In order to continue, you will need the SGX SDK from TI's website.
-Once you have installed said SDK on a standard Linux machine, copy the neccessary .h and .so files to the appropriate directories in scratchbox:
-e.g /scratchbox/users/<username>/targets/<target_name>/usr/include/EGL/egl.h
-These files will also need to be transferred over to the board eventually.
-NOTE: XBMC has only been tested with the following versions of the OMAP35x Graphics SDK:
-3.00.00.05, 3.00.00.06, 3.00.00.08, 3.00.00.09
-
-
------------------------------------------------------------------------------
-6. How to compile
------------------------------------------------------------------------------
-
-To create the XBMC executable manually perform these following steps:
-
-       -----------------------------------------------------------------------------
-       6.1 Configure & Make:
-       -----------------------------------------------------------------------------
-       
-        $ ./bootstrap
-           > ./configure --enable-gles
-
-    This will configure XBMC inside scratchbox ready for compilation on ARM.
-    Because the default is to build for OpenGL, we require the --enable-gles flag to be set for OpenGL ES 2.0.
-    (Note: No OpenGL ES 1.x available)
-       Now, build with the following:
-       
-               > make
-       
-       -----------------------------------------------------------------------------
-       6.2 Install:
-       -----------------------------------------------------------------------------
-
-       There is no need to do 'make install' as we dont want it installed into scratchbox.
-       There is also the slight problem of the fact that scratchbox's 'find' command is outdated and wont execute xbmc's 'make install' correctly.
-       Instead, use the provided shell script:
-               > cd /tools/arm/arm-scripts/
-               > ./create-xbmcfile.sh
-               
-       This will create a tar file tools/arm/arm-scripts/xbmc.tar.bz2 containing the xbmc files, ready for you to transfer to the board.
-
-
------------------------------------------------------------------------------
-7. How to run
------------------------------------------------------------------------------
-
-It is assumed you have a beagleboard with all the neccessary hardware installed.
-(e.g keyboard, mouse, and ethernet adapter)
-It is also assumed that you have it setup with either Angstrom or Ubuntu.
-
-       -----------------------------------------------------------------------------
-       7.1 Obtaining the Packages:
-       -----------------------------------------------------------------------------
-
-       For Ubuntu: See README.linux for list of packages to install.
-       If planning on not extracting the pkgs file, a few additional packages are required to be installed.
-       These are python and liblzo2
-
-       For Angstrom:
-               # opkg update
-               # opkg install subversion make g++ gcc gawk pmount libtool automake gperf unzip bison libsdl-1.2-dev libsdl-image-1.2-dev libsdl-gfx-dev libsdl-mixer-1.2-dev libfribidi-dev liblzo-dev libfreetype-dev libsqlite3-dev libasound2 python-sqlite3 libcurl4 libxrandr-dev libxrender-dev libmad-dev libogg-dev libvorbis-dev libmysqlclient-dev libpcre-dev libdbus-glib-1-dev hal-dev libjasper-dev libfontconfig-dev boost-dev libxt-dev libxmu-dev libpng-dev libjpeg-dev libsamplerate0-dev
-       
-       Unfortunately this will only install the packages that are available through opkg. There will be further packages that need to be installed.
-       Either use the method mentioned below, or selectively find and install packages, mentioned at the bottom of this README.
-
-       Alternatively, do the following:
-       First make sure you have done section 4. then do the following:
-               > cd xbmc_on_arm/arm-scripts/
-               > ./create-pkgsfile.sh
-
-       This will create a tar file xbmc_on_arm/arm-scripts/pkgs.tar.bz2 containing the packages, ready for you to transfer to the board.
-
-       -----------------------------------------------------------------------------
-       7.2 Installing the Files:
-       -----------------------------------------------------------------------------
-
-       Transfer the file(s), armel-pkgs.tar.bz2 (if using alternative method mentioned above) and xbmc.tar.bz2 to the beagleboard.
-       Do the following to extract them:
-               # tar xjf armel-pkgs.tar.bz2 -C /
-               # tar xjf xbmc.tar.bz2 -C /usr/
-
-       After this initial setup, during development, you should only need to replace /usr/share/xbmc/xbmc.bin with the newly created binary.
-       
-       -----------------------------------------------------------------------------
-       7.3 Running XBMC:
-       -----------------------------------------------------------------------------
-
-       Now, run XBMC by executing the binary:
-               # /usr/share/xbmc/xbmc.bin
-               
-       Run the binary and not the script as the script will fail.
-       
-       
------------------------------------------------------------------------------
-8. Troubleshooting
------------------------------------------------------------------------------
-       
-If it fails to run correctly, there are a few things to try out.
-First, is there any helpful output on the terminal?
-Check the log file, usually located ~/.xbmc/temp/xbmc.log
-It may have failed because of a missing package.
-If so, you will need to download the appropriate armel package from packages.debian.org,
-Extract the files with the command: dpkg-deb -x packagename.deb /path/to/extract/to
-Then tarball the extracted files: tar cjf pkg.tar.bz2 /path/to/extracted/files
-Then transfer them to the board, and extract: tar xjf pkg.tar.bz2
-This is because the .deb files cannot be extracted in Angstrom.
-
-If this is not the case, try various different parameters for xbmc.bin such as:
-xbmc.bin --standalone
-xbmc.bin -p
-xbmc.bin -fs
-Or build with debug for a more in-depth xbmc.log file by ommitting the line --disable-debug on configure.
-
-Feel free to contact me on mcgeagh@xbmc.org
diff --git a/README.ios b/README.ios
deleted file mode 100644 (file)
index aac3a73..0000000
+++ /dev/null
@@ -1,99 +0,0 @@
-TOC
-1. Introduction
-2. Getting the source code
-3. Install required libs
-  3.1. Install Xcode
-  3.2. Install Cross libs and runtime environment
-4. How to compile and run
-       4.1 Using XCode
-       4.2 Using Command line
-5. Gesture Handling on iPad/iPhone/iPod touch
-
------------------------------------------------------------------------------
-1. Introduction
------------------------------------------------------------------------------
-
-This is a platform port of XBMC for the Apple iOS operating system. 
-The current build system is Xcode 3.x and iOS SDK 4.2/4.3 
-There are two ways to build XBMC for Mac.
-
-1) command-line or
-2) Xcode.
-
-Generally, Xcode is the easiest as it presents the build system in a GUI environment.
-The command-line build is still under development.
-
-XBMC for Mac is composed of a main binary with numerous dynamic libraries and
-codecs that support a multitude of music and video formats.
-
-NOTE TO NEW OS X USERS: All lines that are prefixed with the '$' character are
-commands that need to be typed into a Terminal window. Note that the '$'
-character itself should NOT be typed as part of the command.
-
-
------------------------------------------------------------------------------
-2. Getting the source code
------------------------------------------------------------------------------
-
- $ cd $HOME
- $ git clone git://github.com/xbmc/xbmc.git xbmc
- $ cd xbmc
- $ git submodule update --init addons/skin.touched
-
------------------------------------------------------------------------------
-3.0 Install Xcode
------------------------------------------------------------------------------
-Install latest Xcode. You can download it from Apple's site after registration at
-(http://developer.apple.com/tools/download). 
-The preferred version is Xcode 3.2.5 and iOS SDK 4.2.
-
------------------------------------------------------------------------------
-3.1 Install Cross libs and runtime environment
------------------------------------------------------------------------------
-
- $ cd $HOME/XBMC
- $ sudo mkdir -p /usr/local/bin; sudo cp tools/darwin/depends/gas-preprocessor/gas-preprocessor.pl /usr/local/bin/
- $ cd tools/darwin/depends
- $ ./bootstrap
- $ ./configure --with-darwin=ios
- $ make
-
------------------------------------------------------------------------------
-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 clean
- $ make xcode_depends
-
------------------------------------------------------------------------------
-4.1 Using Xcode
------------------------------------------------------------------------------
-Start XCode and open the XBMC project (XBMC-IOS.xcodeproj or XBMC-ATV2.xcodeproj)
-located in $HOME/XBMC.
-
-There are two relevant build targets : Release and Debug. Compile always for device
-end not simulator.
-
------------------------------------------------------------------------------
-4.2 Using Terminal (command-line)
------------------------------------------------------------------------------
-
- $ cd $HOME/XBMC
- $ xcodebuild -project XBMC-IOS.xcodeproj -target XBMC -configuration Release build ONLY_ACTIVE_ARCH=YES ARCHS=armv7 VALID_ARCHS=armv7 IPHONEOS_DEPLOYMENT_TARGET=4.1 SDKROOT=iphoneos4.2
-
-or
-
- $ xcodebuild -project XBMC-ATV2.xcodeproj -target XBMC -configuration Release build ONLY_ACTIVE_ARCH=YES ARCHS=armv7 VALID_ARCHS=armv7 IPHONEOS_DEPLOYMENT_TARGET=4.1 SDKROOT=iphoneos4.2
-
-
-5. Gesture Handling on iPad/iPhone/iPod touch
-
-double finger swipe left -> back
-double finger tap -> right mouse
-single finger tap -> left mouse
-panning, and flicking ->  panning and flicking works for media lists only at the moment ... scrollbars and other stuff are only clickable (single tap), for now
-
diff --git a/README.linux b/README.linux
deleted file mode 100644 (file)
index cd337a7..0000000
+++ /dev/null
@@ -1,144 +0,0 @@
-
-TOC
-1. Introduction
-2. Getting the source code
-3. Installing the required libraries and headers
-4. How to compile
-5. How to run
-6. Uninstalling
-
------------------------------------------------------------------------------
-1. Introduction
------------------------------------------------------------------------------
-
-A gfx-adapter with OpenGL acceleration is highly recommended and 24/32 bitdepth
-is required with OpenGL.
-
-NOTE TO NEW LINUX USERS: All lines that are prefixed with the '$'
-character are commands that need to be typed into a terminal window /
-console (similar to the command prompt for Windows). Note that the '$'
-character itself should NOT be typed as part of the command.
-
-
------------------------------------------------------------------------------
-2. Getting the source code
------------------------------------------------------------------------------
-
-You will have to grab the source code of course. First install the git
-package provided by your distribution. Then from a terminal, type:
-
-   $ cd $HOME
-   $ git clone git://github.com/xbmc/xbmc.git xbmc
-
------------------------------------------------------------------------------
-3. Installing the required libraries and headers
------------------------------------------------------------------------------
-
-You will then need the required libraries. The following is the list of packages
-that are used to build XBMC packages on Debian/Ubuntu (with all supported
-external libraries enabled).
-
-Build-Depends: debhelper (>= 7.0.50~), python-support, cmake,
- autotools-dev, autoconf, automake, unzip, libboost-dev, zip, libtool,
- libgl1-mesa-dev | libgl-dev, libglu1-mesa-dev | libglu-dev, libglew-dev,
- libmad0-dev, libjpeg-dev, libsamplerate-dev, libogg-dev, libvorbis-dev,
- libfreetype6-dev, libfontconfig-dev, libbz2-dev, libfribidi-dev,
- libsqlite3-dev, libmysqlclient-dev, libasound2-dev, libpng12-dev | libpng-dev,
- libpcre3-dev, liblzo2-dev, libcdio-dev, libsdl-dev, libsdl-image1.2-dev,
- libsdl-mixer1.2-dev, libenca-dev, libjasper-dev, libxt-dev,
- libxmu-dev, libxinerama-dev, libcurl4-gnutls-dev | libcurl-dev,
- libdbus-1-dev, libhal-storage-dev, libhal-dev, libpulse-dev,
- libavahi-common-dev, libavahi-client-dev, libxrandr-dev, libavcodec-dev,
- libavformat-dev, libavutil-dev, libpostproc-dev, libswscale-dev,
- libmpeg2-4-dev, libass-dev (>= 0.9.8), libmpcdec-dev, libflac-dev,
- python-dev, gawk, gperf, nasm [!amd64], libcwiid1-dev,
- libbluetooth-dev, zlib1g-dev, libsmbclient-dev, libboost-thread-dev
- libiso9660-dev, libssl-dev, lsb-release, libvdpau-dev, libmicrohttpd-dev,
- libmodplug-dev, librtmp-dev, libcrystalhd-dev, curl, python-dev, libyajl-dev,
- libplist-dev, libusb-dev, libudev-dev, libltdl-dev, libtinyxml-dev
-
-*** For developers and anyone else who compiles frequently it is recommended to
-use ccache
-
---------------------------------------------------------------
-3.1. Using the XBMC PPA to get all build dependencies (Debian/Ubuntu only)
---------------------------------------------------------------
-
-For this, you need to specify the PPA in your apt sources. Please find them on
-the forum.
-
-http://forum.xbmc.org/showthread.php?t=33327
-
-Update apt:
-   $ sudo apt-get update
-
-Here is the magic command to get the build dependencies (used to compile the
-version on the PPA).
-   $ sudo apt-get build-dep xbmc
-
------------------------------------------------------------------------------
-4. How to compile
------------------------------------------------------------------------------
-
-To create the XBMC executable manually perform these steps:
-
-.0  $ ./bootstrap
-
-.1  $ ./configure <option1> <option2> ... (See --help for available options)
-
-A full listing of supported options can be viewed by typing
-'./configure --help'.
-
-.2  $ make
-
-Tip: by adding -j<number> to the make command, you describe how many
-     concurrent jobs will be used. So for dualcore the command is: 
-
-    $ make -j2
-
-.3  $ make install
-
-This will install XBMC in the prefix provided in 4.1 as well as a launcher script.
-
-NOTE: You may need to run this with sudo (sudo make install) if your user
-doesn't have write permissions to the prefix you have provided (as in the
-default case, /usr/local).
-
-Tip: To override the location that XBMC is installed, use PREFIX=<path>.
-For example.
-
-    $ make install DESTDIR=$HOME/xbmc
-
------------------------------------------------------------------------------
-5. How to run
------------------------------------------------------------------------------
-How to run xbmc depends on the type of installation you have done. It is
-possible to run XBMC without the requirement to install xbmc anywhere else. In
-this case, type the following from the top source directory.
-
-    $ ./xbmc.bin
-
-If you chose to install XBMC using '/usr' or '/usr/local' as the PREFIX, you
-can just issue 'xbmc' in a teminal session.
-
-If you overridden PREFIX to install XBMC into some non-standard location, you
-will have to run xbmc by directly running 'xbmc.bin'. For example.
-
-    $ $HOME/xbmc/usr/share/xbmc.bin
-
-If you wish to use VDPAU decoding you will now have to change the Render Method
-in Settings->Videos->Player from "Auto Detect" to "VDPAU".
-
------------------------------------------------------------------------------
-6. Uninstalling
------------------------------------------------------------------------------
-Issue "make uninstall"  ("sudo make uninstall" if you user doesn't have write
-permission to the install directory) from your source tree. If you would like
-to also remove any settings and 3rd party addons (skins, scripts, etc) you
-should also run "rm -rf ~/.xbmc".
-
-NOTE: If you have rerun configure with a different prefix, you will either need
-to rerun configure with the correct prefix for this step to work correctly.
-
-EOF
-
diff --git a/README.osx b/README.osx
deleted file mode 100644 (file)
index 51703f4..0000000
+++ /dev/null
@@ -1,151 +0,0 @@
-TOC
-1. Introduction
-2. Getting the source code
-3. Install required libs
-  3.1. Install Xcode
-  3.2. Install XBMC build depends
-4. How to compile and run
-       4.1 Using XCode
-       4.2 Using Command line
-5. Packaging
-
------------------------------------------------------------------------------
-1. Introduction
------------------------------------------------------------------------------
-
-This is a platform port of XBMC for the Apple OSX operating system. Both 10.5
-and 10.6 Intel development platforms are supported. Xcode 4.x is not supported.
-The current build system is Xcode 3.2.5 There are two ways to build XBMC for Mac,
-from command-line or from Xcode.
-
-Generally, Xcode is the easiest as it presents the build system in a GUI environment.
-The command-line build is still under development.
-
-XBMC for Mac is composed of a main binary with numerous dynamic libraries and
-codecs that support a multitude of music and video formats.
-
-NOTE TO NEW OS X USERS: All lines that are prefixed with the '$' character are
-commands that need to be typed into a Terminal window. Note that the '$'
-character itself should NOT be typed as part of the command.
-
-
------------------------------------------------------------------------------
-2. Getting the source code
------------------------------------------------------------------------------
-
- $ cd $HOME
- $ git clone git://github.com/xbmc/xbmc.git xbmc
-
------------------------------------------------------------------------------
-3.0 Install XCODE
------------------------------------------------------------------------------
-Install latest Xcode. You can download it from Apple's site after registration at
-(http://developer.apple.com/tools/download). You also need to install the 10.4
-sdk. If using Xcode 3.x, you MUST use Xcode 3.1.2 or a newer version, so update
-your existing version. if you are running a previous Xcode 3.x version. 
-Xcode 3.x only runs on 10.5 and above. If you are running 10.7, DO NOT USE Xcode 4.x,
-it will fail. Use Xcode 3.x under 10.7.
-
------------------------------------------------------------------------------
-3.1 Install XBMC build depends
------------------------------------------------------------------------------
-
- $ cd $HOME/XBMC
- $ cd tools/darwin/depends
- $ ./bootstrap
- $ ./configure --with-darwin=osx
- $ make
-
------------------------------------------------------------------------------
-4. How to compile
------------------------------------------------------------------------------
-Both Xcode and Terminal compilation require that build environment be setup
-first. This is a simple step and involves the following:
-
- $ cd $HOME/XBMC
- $ make -C tools/darwin/depends/xbmc
- $ make clean
- $ make xcode_depends
-
-The configure operation will setup the build environment for codecs and
-internal libraries that are used by XBMC. This step is required for both Xcode
-and command-line building. The "make clean" ensures that there are no stale
-binaries from git that might cause problems. The last step will pre-build
-the majority of the codecs and libs:
-
------------------------------------------------------------------------------
-4.1 Using Xcode
------------------------------------------------------------------------------
-Start XCode and open the XBMC project (XBMC.xcodeproj) located in $HOME/XBMC.
-For development, XBMC is run from the $HOME/XBMC directory and needs to have
-the XBMC_HOME environment variable set to know where that directory is located.
-To set XBMC_HOME environment variable:
-
-Menu -> Project -> Edit Active Executable "XBMC", click "Arguments" tab and
-add "XBMC_HOME" as an enviroment variable. Set the value to the path to the
-XBMC root folder. For example, "/Users/bigdog/Documents/XBMC"
-
-There are two build targets "XBMC" and "XBMC.app" with debug and release
-settings. The "XBMC" target is used for rapid build and debug cycles while
-the "XBMC.app" target is used to build a self contained OSX application.
-
-Set the build target to "XBMC" or "XBMC.app", then build. The build process
-will take a long time when builting 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, subsequent builds will be
-faster.
-
-After the build, you can ether run XBMC for Mac from Xcode or run it from
-the command-line. If you run it from the command-line, make sure your set
-the XBMC_HOME environment variable (export XBMC_HOME=$HOME/XBMC). Then, to
-run the debug version:
-
-$ ./build/Debug/XBMC
-
-Or the release version:
-
-$ ./build/Release/XBMC
-
-You can also build via Xcode from the command-line using the following:
-
-$ xcodebuild -configuration Release -target "XBMC.app" -project XBMC.xcodeproj
-
-You can specify "Release" instead of "Debug" as a configuration.
-
------------------------------------------------------------------------------
-4.2 Using Terminal (command-line) (this is a work in progress and might fail)
------------------------------------------------------------------------------
-There are two methods, a) make/Xcode and b) make (which might fail as it's under
-construction).
-
-If you want to build a cross-compiled version that can run under 10.5/10.4/AppleTV, 
-then you'll need to follow the additional steps listed in $HOME/XBMC/tools/XBMCTex/README.osx
-before running xcodebuild from the command-line.
-
- a)
- $ cd $HOME/XBMC
- $ export XBMC_HOME=`pwd`
- $ make xcode_depends
- $ xcodebuild -sdk macosx10.4 -project XBMC.xcodeproj -target XBMC.app -configuration Release build
-
- b)
- $ cd $HOME/XBMC
- $ export XBMC_HOME=`pwd`
- $ make xbmc
- $ ./xbmc.bin
-
------------------------------------------------------------------------------
-5. Packaging
------------------------------------------------------------------------------
-This section describes how to package XBMC in a disk image for
-distribution.
-
-  1. build XBMC.app from XCode so that the application bundle is correctly updated.
-
-  2. make -C tools/darwin/packaging/xbmc-osx
-
-  3. If completed successfully, a disk image named XBMC_for_Mac.dmg will be
-  present in the users XBMC build directory:
-
-Remember to unmount/eject XBMC.dmg before attempting to recreate it,
-otherwise dmgmaker.pl will fail.
diff --git a/README.ubuntu b/README.ubuntu
deleted file mode 100644 (file)
index df1578f..0000000
+++ /dev/null
@@ -1,108 +0,0 @@
-TOC
-1. Introduction
-2. Getting the source code
-3. Installing the required Ubuntu packages
-4. How to compile
-5. Uninstalling
-
------------------------------------------------------------------------------
-1. Introduction
------------------------------------------------------------------------------
-
-We currently recommend Ubuntu Hardy(8.04) or later.
-A gfx-adapter with OpenGL acceleration is highly recommended and 24/32 
-bitdepth is required with OpenGL.
-
-NOTE TO NEW LINUX USERS: All lines that are prefixed with the '#'
-character are commands that need to be typed into a terminal window /
-console (similar to the command prompt for Windows). Note that the '#'
-character itself should NOT be typed as part of the command.
-
------------------------------------------------------------------------------
-2. Getting the source code
------------------------------------------------------------------------------
-
-   # sudo apt-get install git-core
-   # cd $HOME
-   # git clone git://github.com/xbmc/xbmc.git xbmc
-
------------------------------------------------------------------------------
-3. Installing the required Ubuntu packages
------------------------------------------------------------------------------
-
-Two methods exist to install the required Ubuntu packages:
-
-[NOTICE] For supported old Ubuntu versions, some packages might be outdated.
-         For those, you can either compile them manually, or use our backports
-         available from our official PPA:
-
-         http://launchpad.net/~team-xbmc/+archive/ppa
-
---------------------------------------------------------------------
-3.1. Copy and paste the following line corresponding to your system
---------------------------------------------------------------------
-
-For Ubuntu (all versions >= 7.04):
-
-   # sudo apt-get install git-core make g++ gcc gawk pmount libtool nasm yasm automake cmake gperf zip unzip bison libsdl-dev libsdl-image1.2-dev libsdl-gfx1.2-dev libsdl-mixer1.2-dev libfribidi-dev liblzo2-dev libfreetype6-dev libsqlite3-dev libogg-dev libasound2-dev python-sqlite libglew-dev libcurl3 libcurl4-gnutls-dev libxrandr-dev libxrender-dev libmad0-dev libogg-dev libvorbisenc2 libsmbclient-dev libmysqlclient-dev libpcre3-dev libdbus-1-dev libhal-dev libhal-storage-dev libjasper-dev libfontconfig-dev libbz2-dev libboost-dev libenca-dev libxt-dev libxmu-dev libpng-dev libjpeg-dev libpulse-dev mesa-utils libcdio-dev libsamplerate-dev libmpeg3-dev libflac-dev libiso9660-dev libass-dev libssl-dev fp-compiler gdc libmpeg2-4-dev libmicrohttpd-dev libmodplug-dev libssh-dev gettext cvs python-dev libyajl-dev libboost-thread-dev libplist-dev libusb-dev libudev-dev libtinyxml-dev
-
-For >= 10.10:
-   # sudo apt-get install autopoint libltdl-dev
-
-On 8.10 and older versions, libcurl is outdated and thus XBMC will not compile properly.
-In this case you will have to manually compile the latest version.
-   # wget http://curl.sourceforge.net/download/curl-7.19.7.tar.gz
-   # tar -xzf curl-7.19.7.tar.gz
-   # cd curl-7.19.7
-   # ./configure --disable-ipv6 --without-libidn --disable-ldap --prefix=/usr
-   # make
-   # sudo make install
-
---------------------------------------------------------------
-3.2. Use a single command to get all build dependencies
---------------------------------------------------------------
-
-You can get all build dependencies used for building the packages on the PPA. For this, you 
-need to specify the PPA in your apt sources. Please find the documentation on how to add a
-PPA to your system here: 
-
-   http://launchpad.net/+help/soyuz/ppa-sources-list.html
-
-The PPA used for XBMC (developpement version) is located on the following page:
-
-   http://launchpad.net/~team-xbmc/+archive/unstable
-
-[Note 1] Click on "Technical details about this PPA" to display the sources.list entries.
-
-[Note 2] If you are using a distribution that has outdated libraries, do not forget to use 
-         the following ppa:
-         http://launchpad.net/~team-xbmc/+archive/ppa
-
-Update apt:
-   # sudo apt-get update
-
-Here is the magic command to get the build dependencies (used to compile the version on the PPA).
-   #  sudo apt-get build-dep xbmc
-
-*** For Hardy add "deb http://ppa.launchpad.net/team-xbmc/xbmc-ppa-build-depends/ubuntu hardy main" to sources.list
-
-*** Avoid using "aptitude" for the build-dep command. It doesn't resolve everything.
-
-*** For developers and anyone else who compiles frequently it is recommended to use ccache
-sudo apt-get install ccache
-
-*** A tip for those with multiple computers at home is to check out distcc (totally unsupported from xbmc of course)
-sudo apt-get install distcc
-
------------------------------------------------------------------------------
-4. How to compile
------------------------------------------------------------------------------
-See README.linux
-
------------------------------------------------------------------------------
-5. Uninstalling
------------------------------------------------------------------------------
-$ sudo apt-get remove xbmc*
-
-EOF
-
diff --git a/docs/README.armel b/docs/README.armel
new file mode 100644 (file)
index 0000000..fdbec70
--- /dev/null
@@ -0,0 +1,273 @@
+TOC
+1. Introduction
+2. Using Scratchbox
+       2.1 Automatic Installation
+       2.2 Manual Installation
+       2.3 Installation Continued for both Automatic and Manual Methods
+       2.4 Setup Scratchbox
+3. Getting the source code
+4. Installing the required ARMEL packages
+5. Obtaining the SGX files
+6. How to compile
+       6.1 Configure & Make
+       6.2 Install
+7. How to run
+       7.1 Obtaining the Packages
+       7.2 Installing the Files
+       7.3 Running XBMC
+8. Troubleshooting
+
+
+-----------------------------------------------------------------------------
+1. Introduction
+-----------------------------------------------------------------------------
+
+This is a port of XBMC for use on ARM Architecture.
+As this is not an official version of XBMC, in-depth testing on various setups has not been done. USE WITH CAUTION!
+For the purpose of this port, the following Hardware and Software was used.
+Software: Scratchbox (cross-compiler) on a Linux (Ubuntu) machine.
+Hardware: BeagleBoard (ARM Cortex-A8 with IMG POWERVR SGX).
+The source code is based on XBMC for Linux - version 9.11 (Camelot).
+
+All lines that are prefixed with the '$' character are commands that need to be typed into a standard linux terminal
+All lines that are prefixed with the '>' character are commands that need to be typed into scratchbox
+All lines that are prefixed with the '#' character are commands that need to be typed into a terminal on the beagleboard
+
+
+-----------------------------------------------------------------------------
+2. Using Scratchbox
+-----------------------------------------------------------------------------
+
+First, you need scratch box, along with some other packages.
+The easiest way is to do the following automatic installation.
+If you dont succeed, or want to do it manually, follow the next step instead.
+
+       -----------------------------------------------------------------------------
+       2.1 Automatic Installation:
+       -----------------------------------------------------------------------------
+
+               $ sudo gedit /etc/apt/sources.list
+               
+       Add this to the end of the file, then save and exit gedit:
+               deb http://scratchbox.org/debian stable main
+               deb http://scratchbox.org/debian legacy main
+               
+       Now enter the following command:
+               $ sudo apt-get install scratchbox-core scratchbox-libs scratchbox-devkit-cputransp scratchbox-devkit-git scratchbox-devkit-mtd scratchbox-devkit-perl scratchbox-devkit-doctools scratchbox-toolchain-arm-linux-cs2007q3-51sb3 scratchbox-toolchain-host-gcc scratchbox-devkit-debian
+
+       -----------------------------------------------------------------------------
+       2.2 Manual Installation:
+       -----------------------------------------------------------------------------
+
+       Go to the following website:
+               http://www.scratchbox.org/download/files/sbox-releases/stable/tarball/
+       and download the following files (Unless specified, choose latest version):
+       - core
+       - libs
+       - cputransp
+       - doctools
+       - git
+       - mtd
+       - perl
+       - toolchain (cs2007q3-51sb3)
+       - host-gcc
+       - debian
+
+       To install
+               $ cd /
+               $ sudo tar xvf /<location of files>/scratchbox-core.tar.gz
+
+       Repeat for all the downloaded files.
+
+       -----------------------------------------------------------------------------
+       2.3 Installation Continued for both Automatic and Manual Methods:
+       -----------------------------------------------------------------------------
+
+       Now, a few changes needs to me made in order for it to work correctly:
+               $ sudo gedit /etc/sysctl.conf
+               
+       Change/Add these variables:
+               vm.mmap_min_addr = 4096
+        vm.vdso_enabled = 0
+       Save and Close.
+
+       Add yourself to scratchbox:
+               $ sb-adduser <username>
+               
+       Make sure it worked by doing the following command, and see if sbox is listed.
+               $ groups
+
+       If it isnt listed, restart and try again. If it still isnt listed, then do the following:
+               $ usermod -a -G sbox <username>
+               
+       It should now list (possibly after another logout)
+       Now you have access to scratchbox.
+       
+       -----------------------------------------------------------------------------
+       2.4 Setup Scratchbox:
+       -----------------------------------------------------------------------------
+       
+       Before setting up your target, you need a rootstrap. Obtain the latest rootstrap from:
+               http://linux.onarm.com/download/images/generic-X/
+       You want to download the file 'beagleboard-<date>-rootstrap.tar.gz'.
+
+       Do this every time you want to access scratchbox:
+               $ /scratchbox/login
+       
+       Time to setup your target:
+               > sb-menu
+       
+       A GUI will appear for the setup procedure.
+           - Choose Setup
+           - Create a NEW target, give it any name
+           - Select the compiler you downloaded (arm-linux-cs2007q3-51sb3)
+           - Select all development kits listed by highlighting each one and pressing enter, then Done and enter
+           - Select CPU transparency (qemu-arm-cvs-m)
+           - Yes to rootstrap. Locate the previously downloaded rootstrap to install.
+           - Yes to install files
+           - Only select DEVKIT and ETC. Remove all other files in list, then continue
+           - And finally Yes to selecting target.
+
+       Now scratchbox is setup
+
+       
+-----------------------------------------------------------------------------
+3. Getting the source code
+-----------------------------------------------------------------------------
+
+   $ sudo apt-get install git-core
+   $ cd /scratchbox/users/<username>/home/<username>/
+   $ git clone git://github.com/xbmc/xbmc.git
+
+   
+-----------------------------------------------------------------------------
+4. Installing the required ARMEL packages
+-----------------------------------------------------------------------------
+
+There is a simple shell script that downloads a list of packages that are required and installs them into scratchbox.
+
+  > cd tools/arm/arm-scripts/
+  > ./install-pkgs.sh
+  
+Please check the output files for any possible errors that may have occured.
+
+Note. You will need the headers and shared object files for EGL and GLESv2 to continue.
+
+
+-----------------------------------------------------------------------------
+5. Obtaining the SGX files
+-----------------------------------------------------------------------------
+
+In order to continue, you will need the SGX SDK from TI's website.
+Once you have installed said SDK on a standard Linux machine, copy the neccessary .h and .so files to the appropriate directories in scratchbox:
+e.g /scratchbox/users/<username>/targets/<target_name>/usr/include/EGL/egl.h
+These files will also need to be transferred over to the board eventually.
+NOTE: XBMC has only been tested with the following versions of the OMAP35x Graphics SDK:
+3.00.00.05, 3.00.00.06, 3.00.00.08, 3.00.00.09
+
+
+-----------------------------------------------------------------------------
+6. How to compile
+-----------------------------------------------------------------------------
+
+To create the XBMC executable manually perform these following steps:
+
+       -----------------------------------------------------------------------------
+       6.1 Configure & Make:
+       -----------------------------------------------------------------------------
+       
+        $ ./bootstrap
+           > ./configure --enable-gles
+
+    This will configure XBMC inside scratchbox ready for compilation on ARM.
+    Because the default is to build for OpenGL, we require the --enable-gles flag to be set for OpenGL ES 2.0.
+    (Note: No OpenGL ES 1.x available)
+       Now, build with the following:
+       
+               > make
+       
+       -----------------------------------------------------------------------------
+       6.2 Install:
+       -----------------------------------------------------------------------------
+
+       There is no need to do 'make install' as we dont want it installed into scratchbox.
+       There is also the slight problem of the fact that scratchbox's 'find' command is outdated and wont execute xbmc's 'make install' correctly.
+       Instead, use the provided shell script:
+               > cd /tools/arm/arm-scripts/
+               > ./create-xbmcfile.sh
+               
+       This will create a tar file tools/arm/arm-scripts/xbmc.tar.bz2 containing the xbmc files, ready for you to transfer to the board.
+
+
+-----------------------------------------------------------------------------
+7. How to run
+-----------------------------------------------------------------------------
+
+It is assumed you have a beagleboard with all the neccessary hardware installed.
+(e.g keyboard, mouse, and ethernet adapter)
+It is also assumed that you have it setup with either Angstrom or Ubuntu.
+
+       -----------------------------------------------------------------------------
+       7.1 Obtaining the Packages:
+       -----------------------------------------------------------------------------
+
+       For Ubuntu: See README.linux for list of packages to install.
+       If planning on not extracting the pkgs file, a few additional packages are required to be installed.
+       These are python and liblzo2
+
+       For Angstrom:
+               # opkg update
+               # opkg install subversion make g++ gcc gawk pmount libtool automake gperf unzip bison libsdl-1.2-dev libsdl-image-1.2-dev libsdl-gfx-dev libsdl-mixer-1.2-dev libfribidi-dev liblzo-dev libfreetype-dev libsqlite3-dev libasound2 python-sqlite3 libcurl4 libxrandr-dev libxrender-dev libmad-dev libogg-dev libvorbis-dev libmysqlclient-dev libpcre-dev libdbus-glib-1-dev hal-dev libjasper-dev libfontconfig-dev boost-dev libxt-dev libxmu-dev libpng-dev libjpeg-dev libsamplerate0-dev
+       
+       Unfortunately this will only install the packages that are available through opkg. There will be further packages that need to be installed.
+       Either use the method mentioned below, or selectively find and install packages, mentioned at the bottom of this README.
+
+       Alternatively, do the following:
+       First make sure you have done section 4. then do the following:
+               > cd xbmc_on_arm/arm-scripts/
+               > ./create-pkgsfile.sh
+
+       This will create a tar file xbmc_on_arm/arm-scripts/pkgs.tar.bz2 containing the packages, ready for you to transfer to the board.
+
+       -----------------------------------------------------------------------------
+       7.2 Installing the Files:
+       -----------------------------------------------------------------------------
+
+       Transfer the file(s), armel-pkgs.tar.bz2 (if using alternative method mentioned above) and xbmc.tar.bz2 to the beagleboard.
+       Do the following to extract them:
+               # tar xjf armel-pkgs.tar.bz2 -C /
+               # tar xjf xbmc.tar.bz2 -C /usr/
+
+       After this initial setup, during development, you should only need to replace /usr/share/xbmc/xbmc.bin with the newly created binary.
+       
+       -----------------------------------------------------------------------------
+       7.3 Running XBMC:
+       -----------------------------------------------------------------------------
+
+       Now, run XBMC by executing the binary:
+               # /usr/share/xbmc/xbmc.bin
+               
+       Run the binary and not the script as the script will fail.
+       
+       
+-----------------------------------------------------------------------------
+8. Troubleshooting
+-----------------------------------------------------------------------------
+       
+If it fails to run correctly, there are a few things to try out.
+First, is there any helpful output on the terminal?
+Check the log file, usually located ~/.xbmc/temp/xbmc.log
+It may have failed because of a missing package.
+If so, you will need to download the appropriate armel package from packages.debian.org,
+Extract the files with the command: dpkg-deb -x packagename.deb /path/to/extract/to
+Then tarball the extracted files: tar cjf pkg.tar.bz2 /path/to/extracted/files
+Then transfer them to the board, and extract: tar xjf pkg.tar.bz2
+This is because the .deb files cannot be extracted in Angstrom.
+
+If this is not the case, try various different parameters for xbmc.bin such as:
+xbmc.bin --standalone
+xbmc.bin -p
+xbmc.bin -fs
+Or build with debug for a more in-depth xbmc.log file by ommitting the line --disable-debug on configure.
+
+Feel free to contact me on mcgeagh@xbmc.org
diff --git a/docs/README.ios b/docs/README.ios
new file mode 100644 (file)
index 0000000..aac3a73
--- /dev/null
@@ -0,0 +1,99 @@
+TOC
+1. Introduction
+2. Getting the source code
+3. Install required libs
+  3.1. Install Xcode
+  3.2. Install Cross libs and runtime environment
+4. How to compile and run
+       4.1 Using XCode
+       4.2 Using Command line
+5. Gesture Handling on iPad/iPhone/iPod touch
+
+-----------------------------------------------------------------------------
+1. Introduction
+-----------------------------------------------------------------------------
+
+This is a platform port of XBMC for the Apple iOS operating system. 
+The current build system is Xcode 3.x and iOS SDK 4.2/4.3 
+There are two ways to build XBMC for Mac.
+
+1) command-line or
+2) Xcode.
+
+Generally, Xcode is the easiest as it presents the build system in a GUI environment.
+The command-line build is still under development.
+
+XBMC for Mac is composed of a main binary with numerous dynamic libraries and
+codecs that support a multitude of music and video formats.
+
+NOTE TO NEW OS X USERS: All lines that are prefixed with the '$' character are
+commands that need to be typed into a Terminal window. Note that the '$'
+character itself should NOT be typed as part of the command.
+
+
+-----------------------------------------------------------------------------
+2. Getting the source code
+-----------------------------------------------------------------------------
+
+ $ cd $HOME
+ $ git clone git://github.com/xbmc/xbmc.git xbmc
+ $ cd xbmc
+ $ git submodule update --init addons/skin.touched
+
+-----------------------------------------------------------------------------
+3.0 Install Xcode
+-----------------------------------------------------------------------------
+Install latest Xcode. You can download it from Apple's site after registration at
+(http://developer.apple.com/tools/download). 
+The preferred version is Xcode 3.2.5 and iOS SDK 4.2.
+
+-----------------------------------------------------------------------------
+3.1 Install Cross libs and runtime environment
+-----------------------------------------------------------------------------
+
+ $ cd $HOME/XBMC
+ $ sudo mkdir -p /usr/local/bin; sudo cp tools/darwin/depends/gas-preprocessor/gas-preprocessor.pl /usr/local/bin/
+ $ cd tools/darwin/depends
+ $ ./bootstrap
+ $ ./configure --with-darwin=ios
+ $ make
+
+-----------------------------------------------------------------------------
+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 clean
+ $ make xcode_depends
+
+-----------------------------------------------------------------------------
+4.1 Using Xcode
+-----------------------------------------------------------------------------
+Start XCode and open the XBMC project (XBMC-IOS.xcodeproj or XBMC-ATV2.xcodeproj)
+located in $HOME/XBMC.
+
+There are two relevant build targets : Release and Debug. Compile always for device
+end not simulator.
+
+-----------------------------------------------------------------------------
+4.2 Using Terminal (command-line)
+-----------------------------------------------------------------------------
+
+ $ cd $HOME/XBMC
+ $ xcodebuild -project XBMC-IOS.xcodeproj -target XBMC -configuration Release build ONLY_ACTIVE_ARCH=YES ARCHS=armv7 VALID_ARCHS=armv7 IPHONEOS_DEPLOYMENT_TARGET=4.1 SDKROOT=iphoneos4.2
+
+or
+
+ $ xcodebuild -project XBMC-ATV2.xcodeproj -target XBMC -configuration Release build ONLY_ACTIVE_ARCH=YES ARCHS=armv7 VALID_ARCHS=armv7 IPHONEOS_DEPLOYMENT_TARGET=4.1 SDKROOT=iphoneos4.2
+
+
+5. Gesture Handling on iPad/iPhone/iPod touch
+
+double finger swipe left -> back
+double finger tap -> right mouse
+single finger tap -> left mouse
+panning, and flicking ->  panning and flicking works for media lists only at the moment ... scrollbars and other stuff are only clickable (single tap), for now
+
diff --git a/docs/README.linux b/docs/README.linux
new file mode 100644 (file)
index 0000000..cd337a7
--- /dev/null
@@ -0,0 +1,144 @@
+
+TOC
+1. Introduction
+2. Getting the source code
+3. Installing the required libraries and headers
+4. How to compile
+5. How to run
+6. Uninstalling
+
+-----------------------------------------------------------------------------
+1. Introduction
+-----------------------------------------------------------------------------
+
+A gfx-adapter with OpenGL acceleration is highly recommended and 24/32 bitdepth
+is required with OpenGL.
+
+NOTE TO NEW LINUX USERS: All lines that are prefixed with the '$'
+character are commands that need to be typed into a terminal window /
+console (similar to the command prompt for Windows). Note that the '$'
+character itself should NOT be typed as part of the command.
+
+
+-----------------------------------------------------------------------------
+2. Getting the source code
+-----------------------------------------------------------------------------
+
+You will have to grab the source code of course. First install the git
+package provided by your distribution. Then from a terminal, type:
+
+   $ cd $HOME
+   $ git clone git://github.com/xbmc/xbmc.git xbmc
+
+-----------------------------------------------------------------------------
+3. Installing the required libraries and headers
+-----------------------------------------------------------------------------
+
+You will then need the required libraries. The following is the list of packages
+that are used to build XBMC packages on Debian/Ubuntu (with all supported
+external libraries enabled).
+
+Build-Depends: debhelper (>= 7.0.50~), python-support, cmake,
+ autotools-dev, autoconf, automake, unzip, libboost-dev, zip, libtool,
+ libgl1-mesa-dev | libgl-dev, libglu1-mesa-dev | libglu-dev, libglew-dev,
+ libmad0-dev, libjpeg-dev, libsamplerate-dev, libogg-dev, libvorbis-dev,
+ libfreetype6-dev, libfontconfig-dev, libbz2-dev, libfribidi-dev,
+ libsqlite3-dev, libmysqlclient-dev, libasound2-dev, libpng12-dev | libpng-dev,
+ libpcre3-dev, liblzo2-dev, libcdio-dev, libsdl-dev, libsdl-image1.2-dev,
+ libsdl-mixer1.2-dev, libenca-dev, libjasper-dev, libxt-dev,
+ libxmu-dev, libxinerama-dev, libcurl4-gnutls-dev | libcurl-dev,
+ libdbus-1-dev, libhal-storage-dev, libhal-dev, libpulse-dev,
+ libavahi-common-dev, libavahi-client-dev, libxrandr-dev, libavcodec-dev,
+ libavformat-dev, libavutil-dev, libpostproc-dev, libswscale-dev,
+ libmpeg2-4-dev, libass-dev (>= 0.9.8), libmpcdec-dev, libflac-dev,
+ python-dev, gawk, gperf, nasm [!amd64], libcwiid1-dev,
+ libbluetooth-dev, zlib1g-dev, libsmbclient-dev, libboost-thread-dev
+ libiso9660-dev, libssl-dev, lsb-release, libvdpau-dev, libmicrohttpd-dev,
+ libmodplug-dev, librtmp-dev, libcrystalhd-dev, curl, python-dev, libyajl-dev,
+ libplist-dev, libusb-dev, libudev-dev, libltdl-dev, libtinyxml-dev
+
+*** For developers and anyone else who compiles frequently it is recommended to
+use ccache
+
+--------------------------------------------------------------
+3.1. Using the XBMC PPA to get all build dependencies (Debian/Ubuntu only)
+--------------------------------------------------------------
+
+For this, you need to specify the PPA in your apt sources. Please find them on
+the forum.
+
+http://forum.xbmc.org/showthread.php?t=33327
+
+Update apt:
+   $ sudo apt-get update
+
+Here is the magic command to get the build dependencies (used to compile the
+version on the PPA).
+   $ sudo apt-get build-dep xbmc
+
+-----------------------------------------------------------------------------
+4. How to compile
+-----------------------------------------------------------------------------
+
+To create the XBMC executable manually perform these steps:
+
+.0  $ ./bootstrap
+
+.1  $ ./configure <option1> <option2> ... (See --help for available options)
+
+A full listing of supported options can be viewed by typing
+'./configure --help'.
+
+.2  $ make
+
+Tip: by adding -j<number> to the make command, you describe how many
+     concurrent jobs will be used. So for dualcore the command is: 
+
+    $ make -j2
+
+.3  $ make install
+
+This will install XBMC in the prefix provided in 4.1 as well as a launcher script.
+
+NOTE: You may need to run this with sudo (sudo make install) if your user
+doesn't have write permissions to the prefix you have provided (as in the
+default case, /usr/local).
+
+Tip: To override the location that XBMC is installed, use PREFIX=<path>.
+For example.
+
+    $ make install DESTDIR=$HOME/xbmc
+
+-----------------------------------------------------------------------------
+5. How to run
+-----------------------------------------------------------------------------
+How to run xbmc depends on the type of installation you have done. It is
+possible to run XBMC without the requirement to install xbmc anywhere else. In
+this case, type the following from the top source directory.
+
+    $ ./xbmc.bin
+
+If you chose to install XBMC using '/usr' or '/usr/local' as the PREFIX, you
+can just issue 'xbmc' in a teminal session.
+
+If you overridden PREFIX to install XBMC into some non-standard location, you
+will have to run xbmc by directly running 'xbmc.bin'. For example.
+
+    $ $HOME/xbmc/usr/share/xbmc.bin
+
+If you wish to use VDPAU decoding you will now have to change the Render Method
+in Settings->Videos->Player from "Auto Detect" to "VDPAU".
+
+-----------------------------------------------------------------------------
+6. Uninstalling
+-----------------------------------------------------------------------------
+Issue "make uninstall"  ("sudo make uninstall" if you user doesn't have write
+permission to the install directory) from your source tree. If you would like
+to also remove any settings and 3rd party addons (skins, scripts, etc) you
+should also run "rm -rf ~/.xbmc".
+
+NOTE: If you have rerun configure with a different prefix, you will either need
+to rerun configure with the correct prefix for this step to work correctly.
+
+EOF
+
diff --git a/docs/README.osx b/docs/README.osx
new file mode 100644 (file)
index 0000000..51703f4
--- /dev/null
@@ -0,0 +1,151 @@
+TOC
+1. Introduction
+2. Getting the source code
+3. Install required libs
+  3.1. Install Xcode
+  3.2. Install XBMC build depends
+4. How to compile and run
+       4.1 Using XCode
+       4.2 Using Command line
+5. Packaging
+
+-----------------------------------------------------------------------------
+1. Introduction
+-----------------------------------------------------------------------------
+
+This is a platform port of XBMC for the Apple OSX operating system. Both 10.5
+and 10.6 Intel development platforms are supported. Xcode 4.x is not supported.
+The current build system is Xcode 3.2.5 There are two ways to build XBMC for Mac,
+from command-line or from Xcode.
+
+Generally, Xcode is the easiest as it presents the build system in a GUI environment.
+The command-line build is still under development.
+
+XBMC for Mac is composed of a main binary with numerous dynamic libraries and
+codecs that support a multitude of music and video formats.
+
+NOTE TO NEW OS X USERS: All lines that are prefixed with the '$' character are
+commands that need to be typed into a Terminal window. Note that the '$'
+character itself should NOT be typed as part of the command.
+
+
+-----------------------------------------------------------------------------
+2. Getting the source code
+-----------------------------------------------------------------------------
+
+ $ cd $HOME
+ $ git clone git://github.com/xbmc/xbmc.git xbmc
+
+-----------------------------------------------------------------------------
+3.0 Install XCODE
+-----------------------------------------------------------------------------
+Install latest Xcode. You can download it from Apple's site after registration at
+(http://developer.apple.com/tools/download). You also need to install the 10.4
+sdk. If using Xcode 3.x, you MUST use Xcode 3.1.2 or a newer version, so update
+your existing version. if you are running a previous Xcode 3.x version. 
+Xcode 3.x only runs on 10.5 and above. If you are running 10.7, DO NOT USE Xcode 4.x,
+it will fail. Use Xcode 3.x under 10.7.
+
+-----------------------------------------------------------------------------
+3.1 Install XBMC build depends
+-----------------------------------------------------------------------------
+
+ $ cd $HOME/XBMC
+ $ cd tools/darwin/depends
+ $ ./bootstrap
+ $ ./configure --with-darwin=osx
+ $ make
+
+-----------------------------------------------------------------------------
+4. How to compile
+-----------------------------------------------------------------------------
+Both Xcode and Terminal compilation require that build environment be setup
+first. This is a simple step and involves the following:
+
+ $ cd $HOME/XBMC
+ $ make -C tools/darwin/depends/xbmc
+ $ make clean
+ $ make xcode_depends
+
+The configure operation will setup the build environment for codecs and
+internal libraries that are used by XBMC. This step is required for both Xcode
+and command-line building. The "make clean" ensures that there are no stale
+binaries from git that might cause problems. The last step will pre-build
+the majority of the codecs and libs:
+
+-----------------------------------------------------------------------------
+4.1 Using Xcode
+-----------------------------------------------------------------------------
+Start XCode and open the XBMC project (XBMC.xcodeproj) located in $HOME/XBMC.
+For development, XBMC is run from the $HOME/XBMC directory and needs to have
+the XBMC_HOME environment variable set to know where that directory is located.
+To set XBMC_HOME environment variable:
+
+Menu -> Project -> Edit Active Executable "XBMC", click "Arguments" tab and
+add "XBMC_HOME" as an enviroment variable. Set the value to the path to the
+XBMC root folder. For example, "/Users/bigdog/Documents/XBMC"
+
+There are two build targets "XBMC" and "XBMC.app" with debug and release
+settings. The "XBMC" target is used for rapid build and debug cycles while
+the "XBMC.app" target is used to build a self contained OSX application.
+
+Set the build target to "XBMC" or "XBMC.app", then build. The build process
+will take a long time when builting 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, subsequent builds will be
+faster.
+
+After the build, you can ether run XBMC for Mac from Xcode or run it from
+the command-line. If you run it from the command-line, make sure your set
+the XBMC_HOME environment variable (export XBMC_HOME=$HOME/XBMC). Then, to
+run the debug version:
+
+$ ./build/Debug/XBMC
+
+Or the release version:
+
+$ ./build/Release/XBMC
+
+You can also build via Xcode from the command-line using the following:
+
+$ xcodebuild -configuration Release -target "XBMC.app" -project XBMC.xcodeproj
+
+You can specify "Release" instead of "Debug" as a configuration.
+
+-----------------------------------------------------------------------------
+4.2 Using Terminal (command-line) (this is a work in progress and might fail)
+-----------------------------------------------------------------------------
+There are two methods, a) make/Xcode and b) make (which might fail as it's under
+construction).
+
+If you want to build a cross-compiled version that can run under 10.5/10.4/AppleTV, 
+then you'll need to follow the additional steps listed in $HOME/XBMC/tools/XBMCTex/README.osx
+before running xcodebuild from the command-line.
+
+ a)
+ $ cd $HOME/XBMC
+ $ export XBMC_HOME=`pwd`
+ $ make xcode_depends
+ $ xcodebuild -sdk macosx10.4 -project XBMC.xcodeproj -target XBMC.app -configuration Release build
+
+ b)
+ $ cd $HOME/XBMC
+ $ export XBMC_HOME=`pwd`
+ $ make xbmc
+ $ ./xbmc.bin
+
+-----------------------------------------------------------------------------
+5. Packaging
+-----------------------------------------------------------------------------
+This section describes how to package XBMC in a disk image for
+distribution.
+
+  1. build XBMC.app from XCode so that the application bundle is correctly updated.
+
+  2. make -C tools/darwin/packaging/xbmc-osx
+
+  3. If completed successfully, a disk image named XBMC_for_Mac.dmg will be
+  present in the users XBMC build directory:
+
+Remember to unmount/eject XBMC.dmg before attempting to recreate it,
+otherwise dmgmaker.pl will fail.
diff --git a/docs/README.ubuntu b/docs/README.ubuntu
new file mode 100644 (file)
index 0000000..df1578f
--- /dev/null
@@ -0,0 +1,108 @@
+TOC
+1. Introduction
+2. Getting the source code
+3. Installing the required Ubuntu packages
+4. How to compile
+5. Uninstalling
+
+-----------------------------------------------------------------------------
+1. Introduction
+-----------------------------------------------------------------------------
+
+We currently recommend Ubuntu Hardy(8.04) or later.
+A gfx-adapter with OpenGL acceleration is highly recommended and 24/32 
+bitdepth is required with OpenGL.
+
+NOTE TO NEW LINUX USERS: All lines that are prefixed with the '#'
+character are commands that need to be typed into a terminal window /
+console (similar to the command prompt for Windows). Note that the '#'
+character itself should NOT be typed as part of the command.
+
+-----------------------------------------------------------------------------
+2. Getting the source code
+-----------------------------------------------------------------------------
+
+   # sudo apt-get install git-core
+   # cd $HOME
+   # git clone git://github.com/xbmc/xbmc.git xbmc
+
+-----------------------------------------------------------------------------
+3. Installing the required Ubuntu packages
+-----------------------------------------------------------------------------
+
+Two methods exist to install the required Ubuntu packages:
+
+[NOTICE] For supported old Ubuntu versions, some packages might be outdated.
+         For those, you can either compile them manually, or use our backports
+         available from our official PPA:
+
+         http://launchpad.net/~team-xbmc/+archive/ppa
+
+--------------------------------------------------------------------
+3.1. Copy and paste the following line corresponding to your system
+--------------------------------------------------------------------
+
+For Ubuntu (all versions >= 7.04):
+
+   # sudo apt-get install git-core make g++ gcc gawk pmount libtool nasm yasm automake cmake gperf zip unzip bison libsdl-dev libsdl-image1.2-dev libsdl-gfx1.2-dev libsdl-mixer1.2-dev libfribidi-dev liblzo2-dev libfreetype6-dev libsqlite3-dev libogg-dev libasound2-dev python-sqlite libglew-dev libcurl3 libcurl4-gnutls-dev libxrandr-dev libxrender-dev libmad0-dev libogg-dev libvorbisenc2 libsmbclient-dev libmysqlclient-dev libpcre3-dev libdbus-1-dev libhal-dev libhal-storage-dev libjasper-dev libfontconfig-dev libbz2-dev libboost-dev libenca-dev libxt-dev libxmu-dev libpng-dev libjpeg-dev libpulse-dev mesa-utils libcdio-dev libsamplerate-dev libmpeg3-dev libflac-dev libiso9660-dev libass-dev libssl-dev fp-compiler gdc libmpeg2-4-dev libmicrohttpd-dev libmodplug-dev libssh-dev gettext cvs python-dev libyajl-dev libboost-thread-dev libplist-dev libusb-dev libudev-dev libtinyxml-dev
+
+For >= 10.10:
+   # sudo apt-get install autopoint libltdl-dev
+
+On 8.10 and older versions, libcurl is outdated and thus XBMC will not compile properly.
+In this case you will have to manually compile the latest version.
+   # wget http://curl.sourceforge.net/download/curl-7.19.7.tar.gz
+   # tar -xzf curl-7.19.7.tar.gz
+   # cd curl-7.19.7
+   # ./configure --disable-ipv6 --without-libidn --disable-ldap --prefix=/usr
+   # make
+   # sudo make install
+
+--------------------------------------------------------------
+3.2. Use a single command to get all build dependencies
+--------------------------------------------------------------
+
+You can get all build dependencies used for building the packages on the PPA. For this, you 
+need to specify the PPA in your apt sources. Please find the documentation on how to add a
+PPA to your system here: 
+
+   http://launchpad.net/+help/soyuz/ppa-sources-list.html
+
+The PPA used for XBMC (developpement version) is located on the following page:
+
+   http://launchpad.net/~team-xbmc/+archive/unstable
+
+[Note 1] Click on "Technical details about this PPA" to display the sources.list entries.
+
+[Note 2] If you are using a distribution that has outdated libraries, do not forget to use 
+         the following ppa:
+         http://launchpad.net/~team-xbmc/+archive/ppa
+
+Update apt:
+   # sudo apt-get update
+
+Here is the magic command to get the build dependencies (used to compile the version on the PPA).
+   #  sudo apt-get build-dep xbmc
+
+*** For Hardy add "deb http://ppa.launchpad.net/team-xbmc/xbmc-ppa-build-depends/ubuntu hardy main" to sources.list
+
+*** Avoid using "aptitude" for the build-dep command. It doesn't resolve everything.
+
+*** For developers and anyone else who compiles frequently it is recommended to use ccache
+sudo apt-get install ccache
+
+*** A tip for those with multiple computers at home is to check out distcc (totally unsupported from xbmc of course)
+sudo apt-get install distcc
+
+-----------------------------------------------------------------------------
+4. How to compile
+-----------------------------------------------------------------------------
+See README.linux
+
+-----------------------------------------------------------------------------
+5. Uninstalling
+-----------------------------------------------------------------------------
+$ sudo apt-get remove xbmc*
+
+EOF
+