rockbox/docs
Rafaël Carré 5d236b2bfd Generate C file / header for svn version string
It's now easier to force rebuild of files depending on the svn revision

version.c/version.h are generated once with new tools/genversion.sh
Changes in the VCS are still not auto detected, so you'll have to remove
builddir/version.* if you want to change the string in your binaries

APPSVERSION is now called RBVERSION and is defined in the generated
header instead of being defined by the Makefiles
appsversion is now called rbversion (the plugin api number didn't change
since old modules are still binary compatible)

Change some bootloaders to use knwon-at-buildtime RBVERSION instead of
"%s" + rbversion

You'll need to run make clean to regenerate dependencies after the
removal of apps/version.h

To build binaries with a different version string, hand-edit
tools/version.sh or tools/genversion.sh (which calls the former)

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26320 a1c6a512-1295-4272-9138-f99709370657
2010-05-27 09:41:46 +00:00
..
API Removed executable flag 2007-01-09 23:29:07 +00:00
BATTERY-FAQ Convert the whole codebase to UTF-8, except docs/COMMITTERS and tools/creative.c, which need checking. 2008-05-05 10:32:46 +00:00
BATTERY-FAQ-LIION Added Scott's V2/FM battery faq 2004-05-21 21:15:21 +00:00
CHARGING_ALGORITHM Removed executable flag 2007-01-09 23:29:07 +00:00
COMMITTERS Added my name to COMMITTERS 2010-05-25 14:21:21 +00:00
CONTRIBUTING "No code in .h files or #defines" 2009-10-23 07:26:48 +00:00
COPYING
COPYING-MANUAL Manual license is GFDL, add it to the docs folder. 2006-12-17 11:54:10 +00:00
CREDITS Ooops, forgot CREDITS. 2010-05-24 18:35:55 +00:00
HISTORY Convert to UTF-8 and a few tweaks. 2008-02-07 00:56:07 +00:00
KNOWN_ISSUES deleting files and then resume is not good 2007-05-19 16:54:25 +00:00
LICENSES Better random number generator: Mersenne twiser with improved initialisation. BSD-style license. 2006-01-20 01:21:26 +00:00
MAINTAINERS Spanish translation update by Francisco Vila (FS#10003). Also add him as Spanish maintainer. 2009-03-11 11:05:42 +00:00
NODO Remove outdated NODO list from the docs folder. Replace it with a link to the wiki. 2010-05-15 21:54:24 +00:00
PLUGIN_API Extract usb_screen logic out of screens.c into apps/gui/usb_screen.c 2009-10-19 21:19:30 +00:00
PLUGIN_API.new Generate C file / header for svn version string 2010-05-27 09:41:46 +00:00
profontdoc.txt Convert the whole codebase to UTF-8, except docs/COMMITTERS and tools/creative.c, which need checking. 2008-05-05 10:32:46 +00:00
README configure update hasn't worked in ages... 2008-01-21 22:21:28 +00:00
sample.colours Make user-visible spelling "colours" rather than "colors". 2007-06-19 04:21:06 +00:00
sample.icons Add a sample.icons file, and add a few more files to the docs folder in the zips 2007-06-18 09:32:28 +00:00
TECH Fix example command line for profile_reader.pl 2009-12-22 09:41:12 +00:00
UISIMULATOR Turn the simulator background into a clickable area. i.e. you click on the play button to press play. It also maps mouse scrollwheel events to rockbox scrollwheel events. This facilitates testing because you don't have to move your hand between the mouse and keyboard. 2010-02-16 17:34:48 +00:00

               __________               __   ___.
     Open      \______   \ ____   ____ |  | _\_ |__   _______  ___
     Source     |       _//  _ \_/ ___\|  |/ /| __ \ /  _ \  \/  /
     Jukebox    |    |   (  <_> )  \___|    < | \_\ (  <_> > <  <
     Firmware   |____|_  /\____/ \___  >__|_ \|___  /\____/__/\_ \
                       \/            \/     \/    \/            \/

Build Your Own Rockbox

1. Check out 'rockbox' from SVN (or extract a downloaded archive).

   $ svn co svn://svn.rockbox.org/rockbox/trunk rockbox

     or

   $ tar xjf rockbox.tar.bz2

2. Create a build directory, preferably in the same directory as the firmware/
   and apps/ directories. This is where all generated files will be written.

   $ cd rockbox
   $ mkdir build
   $ cd build

3. Make sure you have sh/arm/m68k-elf-gcc and siblings in the PATH. Make sure
   that you have 'perl' in your PATH too. Your gcc cross compiler needs to be
   a particular version depending on what player you are compiling for. These
   can be acquired with the rockboxdev.sh script in the /tools/ folder of the
   source, or will have been included if you've installed one of the
   toolchains or development environments provided at http://www.rockbox.org/

   $ which sh-elf-gcc
   $ which perl

4. In your build directory, run the 'tools/configure' script and enter what
   target you want to build for and if you want a debug version or not (and a
   few more questions). It'll prompt you. The debug version is for making a
   gdb version out of it. It is only useful if you run gdb towards your target
   Archos.

   $ ../tools/configure

5. *ploink*. Now you have got a Makefile generated for you.

6. Run 'make' and soon the necessary pieces from the firmware and the apps
   directories have been compiled, linked and scrambled for you.

   $ make
   $ make zip

7. unzip the rockbox.zip on your music player, reboot it and
   *smile*.

If you want to build for more than one target, just create several build
directories and create a setup for each target:

   $ mkdir build-fmrecorder
   $ cd build-fmrecorder
   $ ../tools/configure

   $ mkdir build-player
   $ cd build-player
   $ ../tools/configure

Questions anyone? Ask on the mailing list. We'll be happy to help you!