Rockbox
8f896b14d3
Using a length 1 char array to point to the name buffer triggers a -Warray-bounds warning from GCC when fortified strcpy is used. This type of construct isn't safe in general -- if the compiler makes assumptions based on the array bound it can create subtle bugs when accessing the array out of bounds. Instead, add a function get_block_name() which returns a pointer to the name field by casting. This suppresses the warning and it should be a bit more portable. Change-Id: I25d4f46f799022ad0ec23bef0218f7595cc741ea |
||
---|---|---|
android | ||
apps | ||
backdrops | ||
bootloader | ||
debian | ||
docs | ||
firmware | ||
fonts | ||
gdb | ||
icons | ||
lib | ||
manual | ||
packaging | ||
tools | ||
uisimulator | ||
utils | ||
wps | ||
.gitattributes | ||
.gitignore | ||
.gitreview |
__________ __ ___. 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.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 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!