Find a file
Christian Soffke 93b1611474 tagtree: defer context menu disk access
When the database isn't loaded into RAM,
or the "quick" load setting is enabled,
filenames for tracks must be retrieved
from disk.

With a single track selected, this
can cause a delay before its context
menu is displayed.

Since filenames are only needed after the
user has selected something from the menu,
it makes sense to defer retrieval until
disk access becomes inevitable.

Change-Id: I72b57eff3102b50f3e19441119e20aad903b1f2b
2025-04-17 08:23:45 -04:00
android build: instead of 'ifdef NODEPS' use 'ifneq ($NODEPS,)' 2025-03-29 14:33:20 -04:00
apps tagtree: defer context menu disk access 2025-04-17 08:23:45 -04:00
backdrops add cabbie bitmap for 128 x 96 greyscale screen 2025-03-27 22:25:56 -04:00
bootloader disk: Dump partition tables when we can't find a usable partition 2025-04-17 08:15:13 -04:00
debian Prepare new maemo release 2013-03-10 12:12:38 +01:00
docs Minor mechanical correction to the Russian translation 2025-04-03 11:03:26 -04:00
firmware unicode: Explicitly set INT_MAX for unlimited utf8_size 2025-03-28 15:05:13 -04:00
fonts FS#9906: Correct SWIDTH, DWIDTH for ETHIOPIC SYLLABLE NO in 15-Adobe-Helvetica (Maurus Cuelenaere) 2025-03-25 21:25:21 -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 metadata: opus, vorbis, speex: Don't fill metadata buffer with album art and cuesheet 2025-04-01 08:33:16 -04:00
manual Manual add theme list tags 2025-04-02 07:32:02 -04:00
packaging Prepare unofficial pandora release 2013-03-10 14:09:30 +01:00
tools voice: Disable Greek voicing in daily and release builds 2025-04-07 08:44:43 -04:00
uisimulator Remove BATTERY_TYPES 2025-03-11 02:26:38 -04:00
utils rbutil: http:// -> https:// for all displayed Rockbox URLs. 2025-04-05 13:58:56 -04:00
wps [Feature] skinengine subline timeout hide line for n seconds 2024-12-07 23:02:22 -05:00
.gitattributes Add a gitattributes file for the migration. 2011-12-01 14:14:59 +00:00
.gitignore time-sync: Fix arguments order in linker command 2025-01-16 16:05:18 -05: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!