Rockbox
Find a file
William Wilgus 0b7a8d5afd Lua remove unusable/unneeded functions from rocklib_aux
rocklib_aux is auto generated from plugin.h
there are a few functions that get added automatically that
are unusable without their companion functions or duplicate
functionality already supplied by lua

Duplicated functionality:
rb->rand, rb->srand
-- see math.rand math.srand

rb->remove, rb->rename
-- see os.remove, os.rename

Unusable:
rb->open_utf8
-- this should be added to the lua file open routines (if at all)

rb->codec_run_proc, rb->codec_close
-- without rb->codec_load_file these are pointless

rb->timer_set_period, timer_unregister
-- even with timer_register implemented lua is not
-- reentrant and crashes the state when timer fires

Shouldn't be used!:
rb->strlcpy, rb->strlcat, rb->strcpy, rb->strcat
-- lua reuses strings by hashed values you break this contract if
-- you change strings behind its back plus lua provides a way to
-- do these functions safely within the strings api

Change-Id: I2f65704a90930378cbbceb254e52f61e8074471e
2018-10-12 17:31:25 -04:00
android Make android build work with both old and new locations of zipalign 2017-09-06 18:26:31 +02:00
apps Lua remove unusable/unneeded functions from rocklib_aux 2018-10-12 17:31:25 -04:00
backdrops Add Cabbiev2 port for 128x96x16 targets (Samsung YH-820), made by me. 2014-03-27 19:50:48 +00:00
bootloader Add cleaned-up xDuoo X3 support 2018-07-28 10:56:31 -04:00
debian Prepare new maemo release 2013-03-10 12:12:38 +01:00
docs jz4760: Lots of stability fixes to the USB driver. 2018-09-20 21:11:40 -04:00
firmware mips: fix some compile warnings. 2018-10-09 22:35:37 -04:00
flash Limit more variables to file scope 2015-01-11 21:40:51 +01:00
fonts
gdb Limit more variables to file scope 2015-01-11 21:40:51 +01:00
icons wpsbuild: Rewrite to fix various issues and support .fms 2012-06-10 21:20:36 +02:00
lib libmad: Back out a change that disabled optimization for libmad. 2018-09-02 11:55:39 -04:00
manual manual: nitpicking on '-' character and other minor details 2018-08-05 12:57:05 +02:00
packaging Prepare unofficial pandora release 2013-03-10 14:09:30 +01:00
rbutil mkimxboot: small fixes and display a human readable error 2017-11-05 18:30:11 +01:00
tools build: Log the zipfile creation 2018-09-28 11:53:15 -04:00
uisimulator Add cleaned-up xDuoo X3 support 2018-07-28 10:56:31 -04:00
utils MIPS: fix memset() 2018-09-07 09:43:05 +02:00
wps Agptek Rocker: Initial commit 2018-06-12 10:31:14 +02:00
.gitattributes
.gitignore Add buflib tests to .gitignore 2015-01-03 18:21:59 +01: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.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!