Find a file
Solomon Peachy 4bc336b8be genlang: Explicitly decompose all display strings
We already have pretty solid support for glyph combining, so this will
allow us to utilize that to fill in gaps of our font coverage.  This is
most notable for Vietnamese, Turkish, and numerous other latin-based
writing systems that have unique glyphs that are essentially just a
"standard" ascii letter plus a diacritic mark.

This leaves *voice* strings fully composed/normalized.

It also has no effect on user-supplied strings (eg filenames or file
metadata)

When we eventually utf8proc merged, this can be removed in favor
of always doing the [de]composition in-system.  We will also need
to revisit our diacritic tables to ensure there's nothing missing.

Change-Id: I7012d27010bb33fb0b565ac7dfd57a16bdcad34f
2025-10-22 08:00:18 -04:00
android build: instead of 'ifdef NODEPS' use 'ifneq ($NODEPS,)' 2025-03-29 14:33:20 -04:00
apps FS#13674: Final corrections for Slovak translation (Matej Golian) 2025-10-21 15:30:37 -04:00
backdrops New port: Anbernic RG Nano 2025-07-29 21:01:53 -04:00
bootloader unicode: Support characters beyond the first unicode plane 2025-09-12 09:24:30 -04:00
debian Prepare new maemo release 2013-03-10 12:12:38 +01:00
docs credits: Work around the failures when building the manual. 2025-10-20 16:40:46 -04:00
firmware Disabled hotkey for Sony NWZ-E370/E380 targets since actually it is not in use 2025-10-21 17:49:59 -04:00
fonts fonts: Update GNU Unifont -- Now with Unicode 16 support! 2025-10-04 10:18:27 -04:00
gdb Nuke the never-functional iriver ifp-7xx port 2021-04-26 07:42:58 -04:00
icons Revert Non-Alpha Updated 8x8 tango icons 2020-10-25 16:21:58 +00:00
lib libspc: Temporarily disable problematic armv4 asm optimization 2025-09-21 15:39:35 -04:00
manual manual: album art tag: fix width/height mixup 2025-09-10 22:30:03 +02:00
packaging rgnano: Proper keylock support 2025-08-30 17:20:31 -04:00
tools genlang: Explicitly decompose all display strings 2025-10-22 08:00:18 -04:00
uisimulator rgnano: Add simulator button click mappings 2025-08-18 19:06:04 -04:00
utils rbutil: Add Vietnamese to the list of languages 2025-10-20 16:51:46 -04:00
wps rgnano: Change ROCKBOX_DIR to /mnt/FunKey/.rockbox 2025-08-10 14:47:17 -04:00
.gitattributes Add a gitattributes file for the migration. 2011-12-01 14:14:59 +00:00
.gitignore gitignore: Add the output directory of the release scripts 2025-04-29 20:20:16 -04:00
.gitreview misc: Add a .gitreview file for better gerrit integration 2021-06-24 07:22:19 -04:00

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

Build Your Own Rockbox

1. Clone 'rockbox' from git (or extract a downloaded archive).

   $ git clone git://git.rockbox.org/rockbox

     or

   $ tar xJf rockbox.tar.xz

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 mips/m68k/arm-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 generated using the rockboxdev.sh script in the /tools/ folder of the
   source.

   $ which arm-elf-eabi-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-fuzeplus
   $ cd build-fuzeplus
   $ ../tools/configure

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

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