3 # Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 # Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 # Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 # Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
11 # global CC options for all platforms
12 CCOPTS
="-W -Wall -Wundef -O -nostdlib -ffreestanding -Wstrict-prototypes -pipe"
14 use_logf
="#undef ROCKBOX_HAS_LOGF"
16 scriptver
=`echo '$Revision$' | sed -e 's:\\$::g' -e 's/Revision: //'`
21 # Begin Function Definitions
31 WINDRES
=${prefix}windres
32 DLLTOOL
=${prefix}dlltool
33 DLLWRAP
=${prefix}dllwrap
34 RANLIB
=${prefix}ranlib
41 # scan the $PATH for the given command
48 # echo "checks for $file in $path" >&2
49 if test -f "$path/$file"; then
54 # check whether caller wants literal return value if not found
55 if [ "$2" = "--lit" ]; then
60 # scan the $PATH for sdl-config - if crosscompiling, require that it is
61 # a mingw32 sdl-config
68 #echo "checks for $file in $path" >&2
69 if test -f "$path/$file"; then
70 if [ "yes" = "${crosscompile}" ]; then
71 if [ "0" != `$path/$file --libs |grep -c mwindows` ]; then
85 # default tool setup for native building
89 GCCOPTS
='-W -Wall -g -fno-builtin'
92 output
="rockboxui" # use this as default output binary name
97 if [ $1 = "sdl" ]; then
98 if [ -z "$sdl" ]; then
99 echo "configure didn't find sdl-config, which indicates that you"
100 echo "don't have SDL (properly) installed. Please correct and"
101 echo "re-run configure!"
104 # generic sdl-config checker
105 sdl_cflags
=`$sdl --cflags`
106 sdl_libs
=`$sdl --libs`
110 # default share option, override below if needed
111 SHARED_FLAG
="-shared"
115 echo "Cygwin host detected"
118 GCCOPTS
="$GCCOPTS $sdl_cflags"
119 LDOPTS
="-mconsole $sdl_libs"
121 output
="rockboxui.exe" # use this as output binary name
125 echo "MinGW host detected"
128 GCCOPTS
="$GCCOPTS $sdl_cflags"
129 LDOPTS
="-mconsole $sdl_libs"
131 output
="rockboxui.exe" # use this as output binary name
135 echo "Linux host detected"
136 GCCOPTS
="$GCCOPTS $sdl_cflags"
141 echo "FreeBSD host detected"
143 GCCOPTS
="$GCCOPTS $sdl_cflags"
148 echo "Darwin host detected"
150 GCCOPTS
="$GCCOPTS $sdl_cflags"
152 SHARED_FLAG
="-dynamiclib -Wl\,-single_module"
156 echo "[ERROR] Unsupported system: $uname, fix configure and retry"
161 GCCOPTS
="$GCCOPTS -I\$(SIMDIR)"
163 if test "X$crosscompile" != "Xyes"; then
164 if [ "`uname -m`" = "x86_64" ] ||
[ "`uname -m`" = "amd64" ]; then
165 # fPIC is needed to make shared objects link
166 # setting visibility to hidden is necessary to avoid strange crashes
167 # due to symbol clashing
168 GCCOPTS
="$GCCOPTS -fPIC -fvisibility=hidden"
172 cat >$tmpdir/conftest-
$id.c
<<EOF
174 int main(int argc, char **argv)
177 char *varp = (char *)&var;
185 $CC -o $tmpdir/conftest-
$id $tmpdir/conftest-
$id.c
2>/dev
/null
187 if test `$tmpdir/conftest-$id 2>/dev/null` -gt "1"; then
195 if [ $1 = "sdl" ]; then
196 echo "Simulator environment deemed $endian endian"
197 elif [ $1 = "checkwps" ]; then
198 echo "CheckWPS environment deemed $endian endian"
201 # use wildcard here to make it work even if it was named *.exe like
203 rm -f $tmpdir/conftest-
$id*
205 # We are crosscompiling
206 # add cross-compiler option(s)
207 prefixtools i586-mingw32msvc-
208 LDOPTS
="-mconsole $sdl_libs"
209 output
="rockboxui.exe" # use this as output binary name
210 endian
="little" # windows is little endian
215 # functions for setting up cross-compiler names and options
216 # also set endianess and what the exact recommended gcc version is
217 # the gcc version should most likely match what versions we build with
222 GCCOPTS
="$CCOPTS -m1"
223 GCCOPTIMIZE
="-fomit-frame-pointer -fschedule-insns"
229 prefixtools calmrisc16-unknown-elf-
230 GCCOPTS
="-Wl\,--no-check-sections $CCOPTS"
231 GCCOPTIMIZE
="-fomit-frame-pointer"
236 prefixtools m68k-elf-
237 GCCOPTS
="$CCOPTS -m5206e -Wa\,-m5249 -malign-int -mstrict-align"
238 GCCOPTIMIZE
="-fomit-frame-pointer"
245 GCCOPTS
="$CCOPTS -mcpu=arm7tdmi"
246 if test "X$1" != "Xshort"; then
247 GCCOPTS
="$GCCOPTS -mlong-calls"
249 GCCOPTIMIZE
="-fomit-frame-pointer"
256 GCCOPTS
="$CCOPTS -mcpu=arm9tdmi"
257 if test "$modelname" != "gigabeatf" -a "$t_manufacturer" != "as3525"; then
258 GCCOPTS
="$GCCOPTS -mlong-calls"
260 GCCOPTIMIZE
="-fomit-frame-pointer"
267 GCCOPTS
="$CCOPTS -mbig-endian -mcpu=arm940t -mlong-calls"
268 GCCOPTIMIZE
="-fomit-frame-pointer"
275 GCCOPTS
="$CCOPTS -mcpu=arm940t -mlong-calls"
276 GCCOPTIMIZE
="-fomit-frame-pointer"
283 GCCOPTS
="$CCOPTS -mcpu=arm9e -mlong-calls"
284 GCCOPTIMIZE
="-fomit-frame-pointer"
291 GCCOPTS
="$CCOPTS -mcpu=arm926ej-s -mlong-calls"
292 GCCOPTIMIZE
="-fomit-frame-pointer"
299 GCCOPTS
="$CCOPTS -mcpu=arm1136jf-s"
300 if test "$modelname" != "gigabeats"; then
301 GCCOPTS
="$GCCOPTS -mlong-calls"
303 GCCOPTIMIZE
="-fomit-frame-pointer"
310 GCCOPTS
="$CCOPTS -mcpu=arm1176jz-s -mlong-calls"
311 GCCOPTIMIZE
="-fomit-frame-pointer"
317 prefixtools mipsel-elf-
318 GCCOPTS
="$CCOPTS -march=mips32 -mtune=r4600 -mno-mips16 -mno-long-calls"
319 GCCOPTS
="$GCCOPTS -ffunction-sections -msoft-float -G 0 -Wno-parentheses"
320 GCCOPTIMIZE
="-fomit-frame-pointer"
326 atype
=`echo "$1" | cut -c 2-`
327 ##################################################################
328 # Prompt for specific developer options
330 if [ "$atype" ]; then
335 echo "Enter your developer options (press enter when done)"
336 printf "(D)EBUG, (L)ogf, (S)imulator, (P)rofiling, (V)oice, (W)in32 crosscompile"
337 if [ "$memory" = "2" ]; then
340 if [ "$modelname" = "player" ]; then
341 printf ", Use (A)TA poweroff"
343 if [ "$t_model" = "ondio" ]; then
344 printf ", (B)acklight MOD"
346 if [ "$modelname" = "m5" ]; then
347 printf ", (F)M radio MOD"
349 if [ "$modelname" = "h120" ]; then
356 while [ $cont = "1" ]; do
358 if [ "$interact" ]; then
361 option
=`echo "$atype" | cut -c 1`
366 if [ "yes" = "$profile" ]; then
367 echo "Debug is incompatible with profiling"
369 echo "DEBUG build enabled"
374 echo "logf() support enabled"
378 echo "Simulator build enabled"
382 if [ "yes" = "$use_debug" ]; then
383 echo "Profiling is incompatible with debug"
385 echo "Profiling support is enabled"
390 echo "Voice build selected"
394 if [ "$memory" = "2" ]; then
396 echo "Memory size selected: 8MB"
400 if [ "$modelname" = "player" ]; then
401 have_ata_poweroff
="#define HAVE_ATA_POWEROFF"
402 echo "ATA poweroff enabled"
406 if [ "$t_model" = "ondio" ]; then
407 have_backlight
="#define HAVE_BACKLIGHT"
408 echo "Backlight functions enabled"
412 if [ "$modelname" = "m5" ]; then
413 have_fmradio_in
="#define HAVE_FMRADIO_IN"
414 echo "FM radio functions enabled"
418 if [ "$modelname" = "h120" ]; then
419 config_rtc
="#define CONFIG_RTC RTC_DS1339_DS3231"
420 have_rtc_alarm
="#define HAVE_RTC_ALARM"
421 echo "RTC functions enabled (DS1339/DS3231)"
425 echo "Enabling Windows 32 cross-compiling"
429 if [ "$interact" ]; then
432 echo "[ERROR] Option $option unsupported"
436 if [ ! "$interact" ]; then
437 atype
=`echo "$atype" | cut -c 2-`
438 [ "$atype" ] || cont
=0
443 if [ "yes" = "$voice" ]; then
444 # Ask about languages to build
446 voicelanguage
=`whichlang`
447 echo "Voice language set to $voicelanguage"
449 # Configure encoder and TTS engine for each language
450 for thislang
in `echo $voicelanguage | sed 's/,/ /g'`; do
451 voiceconfig
"$thislang"
454 if [ "yes" = "$use_debug" ]; then
456 GCCOPTS
="$GCCOPTS -g -DDEBUG"
458 if [ "yes" = "$logf" ]; then
459 use_logf
="#define ROCKBOX_HAS_LOGF 1"
461 if [ "yes" = "$simulator" ]; then
463 extradefines
="$extradefines -DSIMULATOR"
467 if [ "yes" = "$profile" ]; then
468 extradefines
="$extradefines -DRB_PROFILE"
469 PROFILE_OPTS
="-finstrument-functions"
473 # Configure voice settings
476 if [ ! "$ARG_TTS" ]; then
477 echo "Building $thislang voice for $modelname. Select options"
481 if [ -n "`findtool flite`" ]; then
485 DEFAULT_TTS_OPTS
=$FLITE_OPTS
486 DEFAULT_NOISEFLOOR
="500"
489 if [ -n "`findtool espeak`" ]; then
493 DEFAULT_TTS_OPTS
=$ESPEAK_OPTS
494 DEFAULT_NOISEFLOOR
="500"
497 if [ -n "`findtool festival`" ]; then
498 FESTIVAL
="(F)estival "
501 FESTIVAL_OPTS
="--language italian"
504 FESTIVAL_OPTS
="--language spanish"
507 FESTIVAL_OPTS
="--language finnish"
510 FESTIVAL_OPTS
="--language czech"
516 DEFAULT_TTS
="festival"
517 DEFAULT_TTS_OPTS
=$FESTIVAL_OPTS
518 DEFAULT_NOISEFLOOR
="500"
521 if [ -n "`findtool swift`" ]; then
525 DEFAULT_TTS_OPTS
=$SWIFT_OPTS
526 DEFAULT_NOISEFLOOR
="500"
529 # Allow SAPI if Windows is in use
530 if [ -n "`findtool winver`" ]; then
534 DEFAULT_TTS_OPTS
=$SAPI_OPTS
535 DEFAULT_NOISEFLOOR
="500"
539 if [ "$FESTIVAL" = "$FLITE" ] && [ "$FLITE" = "$ESPEAK" ] && [ "$ESPEAK" = "$SAPI" ] && [ "$SAPI" = "$SWIFT" ]; then
540 echo "You need Festival, eSpeak or Flite in your path, or SAPI available to build voice files"
544 if [ "$ARG_TTS" ]; then
547 echo "TTS engine to use: ${FLITE}${FESTIVAL}${ESPEAK}${SAPI}${SWIFT}(${DEFAULT_CHOICE})?"
550 advopts
="$advopts --tts=$option"
554 NOISEFLOOR
="500" # TODO: check this value
560 TTS_OPTS
=$ESPEAK_OPTS
563 TTS_ENGINE
="festival"
565 TTS_OPTS
=$FESTIVAL_OPTS
578 TTS_ENGINE
=$DEFAULT_TTS
579 TTS_OPTS
=$DEFAULT_TTS_OPTS
580 NOISEFLOOR
=$DEFAULT_NOISEFLOOR
582 echo "Using $TTS_ENGINE for TTS"
584 # Select which voice to use for Festival
585 if [ "$TTS_ENGINE" = "festival" ]; then
586 voicelist
=`echo "(voice.list)"|festival -i 2>/dev/null |tr "\n" " "|sed -e 's/.*festival> (\(.*\)) festival>/\1/'|sort`
587 for voice
in $voicelist; do
588 TTS_FESTIVAL_VOICE
="$voice" # Default choice
591 if [ "$ARG_VOICE" ]; then
595 for voice
in $voicelist; do
596 printf "%3d. %s\n" "$i" "$voice"
599 printf "Please select which Festival voice to use (default is $TTS_FESTIVAL_VOICE): "
603 for voice
in $voicelist; do
604 if [ "$i" = "$CHOICE" -o "$voice" = "$CHOICE" ]; then
605 TTS_FESTIVAL_VOICE
="$voice"
609 advopts
="$advopts --voice=$CHOICE"
610 echo "Festival voice set to $TTS_FESTIVAL_VOICE"
611 echo "(voice_$TTS_FESTIVAL_VOICE)" > festival-prolog.scm
614 # Allow the user to input manual commandline options
615 if [ "$ARG_TTSOPTS" ]; then
616 USER_TTS_OPTS
=$ARG_TTSOPTS
618 printf "Enter $TTS_ENGINE options (enter for defaults \"$TTS_OPTS\"): "
619 USER_TTS_OPTS
=`input`
622 advopts
="$advopts --ttsopts='$USER_TTS_OPTS'"
623 if [ -n "$USER_TTS_OPTS" ]; then
624 TTS_OPTS
="$USER_TTS_OPTS"
626 echo "$TTS_ENGINE options set to $TTS_OPTS"
628 if [ "$swcodec" = "yes" ]; then
631 ENC_OPTS
="-q 4 -c 10"
633 if [ -n "`findtool lame`" ]; then
636 ENC_OPTS
="--resample 12 -t -m m -h -V 9.999 -S -B 64 --vbr-new"
638 echo "You need LAME in the system path to build voice files for"
639 echo "HWCODEC targets."
644 echo "Using $ENCODER for encoding voice clips"
646 # Allow the user to input manual commandline options
647 if [ "$ARG_ENCOPTS" ]; then
648 USER_ENC_OPTS
=$ARG_ENCOPTS
650 printf "Enter $ENCODER options (enter for defaults \"$ENC_OPTS\"): "
651 USER_ENC_OPTS
=`input`
653 advopts
="$advopts --encopts='$USER_ENC_OPTS'"
654 if [ -n "$USER_ENC_OPTS" ]; then
655 ENC_OPTS
=$USER_ENC_OPTS
657 echo "$ENCODER options set to $ENC_OPTS"
660 if [ -n "`findtool cygpath`" ]; then
661 TEMPDIR
=`cygpath . -a -w`
666 # figure out which languages that are around
667 for file in $rootdir/apps
/lang
/*.lang
; do
668 clean
=`basename $file .lang`
669 langs
="$langs $clean"
672 if [ "$ARG_LANG" ]; then
675 echo "Select a number for the language to use (default is english)"
676 # FIXME The multiple-language feature is currently broken
677 # echo "You may enter a comma-separated list of languages to build"
680 for one
in $langs; do
686 advopts
="$advopts --language=$pick"
691 # Allow the user to pass a comma-separated list of langauges
692 for thispick
in `echo $pick | sed 's/,/ /g'`; do
694 for one
in $langs; do
695 # Accept both the language number and name
696 if [ "$num" = "$thispick" ] ||
[ "$thispick" = "$one" ]; then
697 if [ "$output" = "" ]; then
706 if [ -z "$output" ]; then
714 echo "Rockbox configure script."
715 echo "Invoke this in a directory to generate a Makefile to build Rockbox"
716 echo "Do *NOT* run this within the tools directory!"
719 Usage: configure [OPTION]...
721 --target=TARGET Sets the target, TARGET can be either the target ID or
722 corresponding string. Run without this option to see all
725 --ram=RAM Sets the RAM for certain targets. Even though any number
726 is accepted, not every number is correct. The default
727 value will be applied, if you entered a wrong number
728 (which depends on the target). Watch the output. Run
729 without this option if you are not sure which the right
732 --type=TYPE Sets the build type. Shortcuts are also valid.
733 Run without this option to see all available types.
734 Multiple values are allowed and managed in the input
735 order. So --type=b stands for Bootloader build, while
736 --type=ab stands for "Backlight MOD" build.
738 --language=LANG Set the language used for voice generation (used only if
741 --tts=ENGINE Set the TTS engine used for voice generation (used only
744 --voice=VOICE Set voice to use with selected TTS (used only if TYPE is
747 --ttsopts=OPTS Set TTS engine manual options (used only if TYPE is AV).
749 --encopts=OPTS Set encoder manual options (used only if ATYPE is AV).
751 --rbdir=dir Use alternative rockbox directory (default: ${rbdir}).
752 This is useful for having multiple alternate builds on
753 your device that you can load with ROLO. However as the
754 bootloader looks for .rockbox you won't be able to boot
757 --ccache Enable ccache use (done by default these days)
758 --no-ccache Disable ccache use
759 --help Shows this message (must not be used with other options)
779 --ccache) ARG_CCACHE
=1;;
780 --encopts=*) ARG_ENCOPTS
=`echo "$arg" | cut -d = -f 2`;;
781 --language=*) ARG_LANG
=`echo "$arg" | cut -d = -f 2`;;
782 --no-ccache) ARG_CCACHE
=0;;
783 --ram=*) ARG_RAM
=`echo "$arg" | cut -d = -f 2`;;
784 --rbdir=*) ARG_RBDIR
=`echo "$arg" | cut -d = -f 2`;;
785 --target=*) ARG_TARGET
=`echo "$arg" | cut -d = -f 2`;;
786 --tts=*) ARG_TTS
=`echo "$arg" | cut -d = -f 2`;;
787 --ttsopts=*) ARG_TTSOPTS
=`echo "$arg" | cut -d = -f 2`;;
788 --type=*) ARG_TYPE
=`echo "$arg" | cut -d = -f 2`;;
789 --voice=*) ARG_VOICE
=`echo "$arg" | cut -d = -f 2`;;
791 *) err
=1; echo "[ERROR] Option '$arg' unsupported";;
798 if [ "$TMPDIR" != "" ]; then
803 echo Using temporary directory
$tmpdir
805 if test -r "configure"; then
806 # this is a check for a configure script in the current directory, it there
807 # is one, try to figure out if it is this one!
809 if { grep "^# Jukebox" configure
>/dev
/null
2>&1 ; } then
810 echo "WEEEEEEEEP. Don't run this configure script within the tools directory."
811 echo "It will only cause you pain and grief. Instead do this:"
814 echo " mkdir build-dir"
816 echo " ../tools/configure"
818 echo "Much happiness will arise from this. Enjoy"
823 # get our current directory
826 if { echo $pwd |
grep " "; } then
827 echo "You're running this script in a path that contains space. The build"
828 echo "system is unfortunately not clever enough to deal with this. Please"
829 echo "run the script from a different path, rename the path or fix the build"
834 if [ -z "$rootdir" ]; then
835 ##################################################################
836 # Figure out where the source code root is!
838 rootdir
=`dirname $0`/..
/
840 #####################################################################
841 # Convert the possibly relative directory name to an absolute version
847 # cd back to the build dir
852 appsdir
='\$(ROOTDIR)/apps'
853 firmdir
='\$(ROOTDIR)/firmware'
854 toolsdir
='\$(ROOTDIR)/tools'
857 ##################################################################
858 # Figure out target platform
861 if [ "$ARG_TARGET" ]; then
864 echo "Enter target platform:"
866 ==Archos== ==iriver== ==Apple iPod==
867 0) Player/Studio 10) H120/H140 20) Color/Photo
868 1) Recorder 11) H320/H340 21) Nano
869 2) FM Recorder 12) iHP-100/110/115 22) Video
870 3) Recorder v2 13) iFP-790 23) 3G
871 4) Ondio SP 14) H10 20Gb 24) 4G Grayscale
872 5) Ondio FM 15) H10 5/6Gb 25) Mini 1G
874 ==Toshiba== 27) 1G, 2G
875 ==Cowon/iAudio== 40) Gigabeat F 28) Nano 2G
876 30) X5/X5V/X5L 41) Gigabeat S
877 31) M5/M5L ==SanDisk==
878 32) 7 ==Olympus= 50) Sansa e200
879 33) D2 70) M:Robe 500 51) Sansa e200R
880 34) M3/M3L 71) M:Robe 100 52) Sansa c200
882 ==Creative== ==Philips== 54) Sansa c100
883 90) Zen Vision:M 30GB 100) GoGear SA9200 55) Sansa Clip
884 91) Zen Vision:M 60GB 101) GoGear HDD1630/ 56) Sansa e200v2
885 92) Zen Vision HDD1830 57) Sansa m200v4
887 ==Onda== ==Meizu== 59) Sansa c200v2
888 120) VX747 110) M6SL 60) Sansa Clipv2
889 121) VX767 111) M6SP 61) Sansa View
893 ==Samsung== ==Tatung==
894 140) YH-820 150) Elio TPJ-1022 ==Lyre project==
895 141) YH-920 130) Lyre proto 1
903 # Set of tools built for all target platforms:
904 toolset
="rdf2binary convbdf codepages"
906 # Toolsets for some target families:
907 archosbitmaptools
="$toolset scramble descramble sh2d uclpack bmp2rb"
908 iriverbitmaptools
="$toolset scramble descramble mkboot bmp2rb"
909 iaudiobitmaptools
="$toolset scramble descramble mkboot bmp2rb"
910 ipodbitmaptools
="$toolset scramble bmp2rb"
911 gigabeatbitmaptools
="$toolset scramble descramble bmp2rb"
912 tccbitmaptools
="$toolset scramble mktccboot bmp2rb"
913 # generic is used by IFP, Meizu and Onda
914 genericbitmaptools
="$toolset bmp2rb"
915 # scramble is used by all other targets
916 scramblebitmaptools
="$genericbitmaptools scramble"
919 # ---- For each target ----
922 # target_id: a unique number identifying this target, IS NOT the menu number.
923 # Just use the currently highest number+1 when you add a new
925 # modelname: short model name used all over to identify this target
926 # memory: number of megabytes of RAM this target has. If the amount can
927 # be selected by the size prompt, let memory be unset here
928 # target: -Ddefine passed to the build commands to make the correct
929 # config-*.h file get included etc
930 # tool: the tool that takes a plain binary and converts that into a
931 # working "firmware" file for your target
932 # output: the final output file name
933 # boottool: the tool that takes a plain binary and generates a bootloader
934 # file for your target (or blank to use $tool)
935 # bootoutput:the final output file name for the bootloader (or blank to use
937 # appextra: passed to the APPEXTRA variable in the Makefiles.
938 # TODO: add proper explanation
939 # archosrom: used only for Archos targets that build a special flashable .ucl
941 # flash: name of output for flashing, for targets where there's a special
942 # file output for this.
943 # plugins: set to 'yes' to build the plugins. Early development builds can
944 # set this to no in the early stages to have an easier life for a
946 # swcodec: set 'yes' on swcodec targets
947 # toolset: lists what particular tools in the tools/ directory that this
948 # target needs to have built prior to building Rockbox
951 # *cc: sets up gcc and compiler options for your target builds. Note
952 # that if you select a simulator build, the compiler selection is
953 # overridden later in the script.
960 target
="-DARCHOS_PLAYER"
962 tool
="$rootdir/tools/scramble"
964 appextra
="player:gui"
965 archosrom
="$pwd/rombox.ucl"
966 flash
="$pwd/rockbox.ucl"
970 # toolset is the tools within the tools directory that we build for
971 # this particular target.
972 toolset
="$toolset scramble descramble sh2d player_unifont uclpack"
974 # Note: the convbdf is present in the toolset just because: 1) the
975 # firmware/Makefile assumes it is present always, and 2) we will need it when we
976 # build the player simulator
979 t_manufacturer
="archos"
986 target
="-DARCHOS_RECORDER"
988 tool
="$rootdir/tools/scramble"
989 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
990 bmp2rb_native
="$rootdir/tools/bmp2rb -f 0"
992 appextra
="recorder:gui"
993 #archosrom="$pwd/rombox.ucl"
994 flash
="$pwd/rockbox.ucl"
997 # toolset is the tools within the tools directory that we build for
998 # this particular target.
999 toolset
=$archosbitmaptools
1001 t_manufacturer
="archos"
1007 modelname
="fmrecorder"
1008 target
="-DARCHOS_FMRECORDER"
1010 tool
="$rootdir/tools/scramble -fm"
1011 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1012 bmp2rb_native
="$rootdir/tools/bmp2rb -f 0"
1014 appextra
="recorder:gui"
1015 #archosrom="$pwd/rombox.ucl"
1016 flash
="$pwd/rockbox.ucl"
1019 # toolset is the tools within the tools directory that we build for
1020 # this particular target.
1021 toolset
=$archosbitmaptools
1023 t_manufacturer
="archos"
1029 modelname
="recorderv2"
1030 target
="-DARCHOS_RECORDERV2"
1032 tool
="$rootdir/tools/scramble -v2"
1033 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1034 bmp2rb_native
="$rootdir/tools/bmp2rb -f 0"
1036 appextra
="recorder:gui"
1037 #archosrom="$pwd/rombox.ucl"
1038 flash
="$pwd/rockbox.ucl"
1041 # toolset is the tools within the tools directory that we build for
1042 # this particular target.
1043 toolset
=$archosbitmaptools
1045 t_manufacturer
="archos"
1052 target
="-DARCHOS_ONDIOSP"
1054 tool
="$rootdir/tools/scramble -osp"
1055 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1056 bmp2rb_native
="$rootdir/tools/bmp2rb -f 0"
1058 appextra
="recorder:gui"
1059 archosrom
="$pwd/rombox.ucl"
1060 flash
="$pwd/rockbox.ucl"
1063 # toolset is the tools within the tools directory that we build for
1064 # this particular target.
1065 toolset
=$archosbitmaptools
1067 t_manufacturer
="archos"
1074 target
="-DARCHOS_ONDIOFM"
1076 tool
="$rootdir/tools/scramble -ofm"
1077 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1078 bmp2rb_native
="$rootdir/tools/bmp2rb -f 0"
1080 appextra
="recorder:gui"
1081 #archosrom="$pwd/rombox.ucl"
1082 flash
="$pwd/rockbox.ucl"
1085 toolset
=$archosbitmaptools
1087 t_manufacturer
="archos"
1094 target
="-DARCHOS_AV300"
1097 tool
="$rootdir/tools/scramble -mm=C"
1098 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1099 bmp2rb_native
="$rootdir/tools/bmp2rb -f 6"
1101 appextra
="recorder:gui"
1104 # toolset is the tools within the tools directory that we build for
1105 # this particular target.
1106 toolset
="$toolset scramble descramble bmp2rb"
1107 # architecture, manufacturer and model for the target-tree build
1109 t_manufacturer
="archos"
1116 target
="-DIRIVER_H120"
1119 tool
="$rootdir/tools/scramble -add=h120"
1120 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1121 bmp2rb_native
="$rootdir/tools/bmp2rb -f 2"
1122 bmp2rb_remotemono
="$rootdir/tools/bmp2rb -f 0"
1123 bmp2rb_remotenative
="$rootdir/tools/bmp2rb -f 0"
1124 output
="rockbox.iriver"
1125 appextra
="recorder:gui"
1126 flash
="$pwd/rombox.iriver"
1129 # toolset is the tools within the tools directory that we build for
1130 # this particular target.
1131 toolset
=$iriverbitmaptools
1133 t_manufacturer
="iriver"
1140 target
="-DIRIVER_H300"
1143 tool
="$rootdir/tools/scramble -add=h300"
1144 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1145 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
1146 bmp2rb_remotemono
="$rootdir/tools/bmp2rb -f 0"
1147 bmp2rb_remotenative
="$rootdir/tools/bmp2rb -f 0"
1148 output
="rockbox.iriver"
1149 appextra
="recorder:gui"
1152 # toolset is the tools within the tools directory that we build for
1153 # this particular target.
1154 toolset
=$iriverbitmaptools
1156 t_manufacturer
="iriver"
1163 target
="-DIRIVER_H100"
1166 tool
="$rootdir/tools/scramble -add=h100"
1167 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1168 bmp2rb_native
="$rootdir/tools/bmp2rb -f 2"
1169 bmp2rb_remotemono
="$rootdir/tools/bmp2rb -f 0"
1170 bmp2rb_remotenative
="$rootdir/tools/bmp2rb -f 0"
1171 output
="rockbox.iriver"
1172 appextra
="recorder:gui"
1173 flash
="$pwd/rombox.iriver"
1176 # toolset is the tools within the tools directory that we build for
1177 # this particular target.
1178 toolset
=$iriverbitmaptools
1180 t_manufacturer
="iriver"
1187 target
="-DIRIVER_IFP7XX"
1191 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1192 bmp2rb_native
="$rootdir/tools/bmp2rb -f 0"
1193 output
="rockbox.wma"
1194 appextra
="recorder:gui"
1197 # toolset is the tools within the tools directory that we build for
1198 # this particular target.
1199 toolset
=$genericbitmaptools
1201 t_manufacturer
="pnx0101"
1202 t_model
="iriver-ifp7xx"
1208 target
="-DIRIVER_H10"
1211 tool
="$rootdir/tools/scramble -mi4v3 -model=h10 -type=RBOS"
1212 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1213 bmp2rb_native
="$rootdir/tools/bmp2rb -f 5"
1214 output
="rockbox.mi4"
1215 appextra
="recorder:gui"
1218 boottool
="$rootdir/tools/scramble -mi4v3 -model=h10 -type=RBBL"
1219 bootoutput
="H10_20GC.mi4"
1220 # toolset is the tools within the tools directory that we build for
1221 # this particular target.
1222 toolset
=$scramblebitmaptools
1223 # architecture, manufacturer and model for the target-tree build
1225 t_manufacturer
="iriver"
1232 target
="-DIRIVER_H10_5GB"
1235 tool
="$rootdir/tools/scramble -mi4v2 -model=h105 -type=RBOS"
1236 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1237 bmp2rb_native
="$rootdir/tools/bmp2rb -f 5"
1238 output
="rockbox.mi4"
1239 appextra
="recorder:gui"
1242 boottool
="$rootdir/tools/scramble -mi4v2 -model=h105 -type=RBBL"
1243 bootoutput
="H10.mi4"
1244 # toolset is the tools within the tools directory that we build for
1245 # this particular target.
1246 toolset
=$scramblebitmaptools
1247 # architecture, manufacturer and model for the target-tree build
1249 t_manufacturer
="iriver"
1255 modelname
="ipodcolor"
1256 target
="-DIPOD_COLOR"
1259 tool
="$rootdir/tools/scramble -add=ipco"
1260 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1261 bmp2rb_native
="$rootdir/tools/bmp2rb -f 5"
1262 output
="rockbox.ipod"
1263 appextra
="recorder:gui"
1266 bootoutput
="bootloader-$modelname.ipod"
1267 # toolset is the tools within the tools directory that we build for
1268 # this particular target.
1269 toolset
=$ipodbitmaptools
1270 # architecture, manufacturer and model for the target-tree build
1272 t_manufacturer
="ipod"
1278 modelname
="ipodnano"
1279 target
="-DIPOD_NANO"
1282 tool
="$rootdir/tools/scramble -add=nano"
1283 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1284 bmp2rb_native
="$rootdir/tools/bmp2rb -f 5"
1285 output
="rockbox.ipod"
1286 appextra
="recorder:gui"
1289 bootoutput
="bootloader-$modelname.ipod"
1290 # toolset is the tools within the tools directory that we build for
1291 # this particular target.
1292 toolset
=$ipodbitmaptools
1293 # architecture, manufacturer and model for the target-tree build
1295 t_manufacturer
="ipod"
1301 modelname
="ipodvideo"
1302 target
="-DIPOD_VIDEO"
1304 tool
="$rootdir/tools/scramble -add=ipvd"
1305 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1306 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
1307 output
="rockbox.ipod"
1308 appextra
="recorder:gui"
1311 bootoutput
="bootloader-$modelname.ipod"
1312 # toolset is the tools within the tools directory that we build for
1313 # this particular target.
1314 toolset
=$ipodbitmaptools
1315 # architecture, manufacturer and model for the target-tree build
1317 t_manufacturer
="ipod"
1327 tool
="$rootdir/tools/scramble -add=ip3g"
1328 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1329 bmp2rb_native
="$rootdir/tools/bmp2rb -f 6"
1330 output
="rockbox.ipod"
1331 appextra
="recorder:gui"
1334 bootoutput
="bootloader-$modelname.ipod"
1335 # toolset is the tools within the tools directory that we build for
1336 # this particular target.
1337 toolset
=$ipodbitmaptools
1338 # architecture, manufacturer and model for the target-tree build
1340 t_manufacturer
="ipod"
1350 tool
="$rootdir/tools/scramble -add=ip4g"
1351 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1352 bmp2rb_native
="$rootdir/tools/bmp2rb -f 6"
1353 output
="rockbox.ipod"
1354 appextra
="recorder:gui"
1357 bootoutput
="bootloader-$modelname.ipod"
1358 # toolset is the tools within the tools directory that we build for
1359 # this particular target.
1360 toolset
=$ipodbitmaptools
1361 # architecture, manufacturer and model for the target-tree build
1363 t_manufacturer
="ipod"
1369 modelname
="ipodmini"
1370 target
="-DIPOD_MINI"
1373 tool
="$rootdir/tools/scramble -add=mini"
1374 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1375 bmp2rb_native
="$rootdir/tools/bmp2rb -f 6"
1376 output
="rockbox.ipod"
1377 appextra
="recorder:gui"
1380 bootoutput
="bootloader-$modelname.ipod"
1381 # toolset is the tools within the tools directory that we build for
1382 # this particular target.
1383 toolset
=$ipodbitmaptools
1384 # architecture, manufacturer and model for the target-tree build
1386 t_manufacturer
="ipod"
1392 modelname
="ipodmini2g"
1393 target
="-DIPOD_MINI2G"
1396 tool
="$rootdir/tools/scramble -add=mn2g"
1397 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1398 bmp2rb_native
="$rootdir/tools/bmp2rb -f 6"
1399 output
="rockbox.ipod"
1400 appextra
="recorder:gui"
1403 bootoutput
="bootloader-$modelname.ipod"
1404 # toolset is the tools within the tools directory that we build for
1405 # this particular target.
1406 toolset
=$ipodbitmaptools
1407 # architecture, manufacturer and model for the target-tree build
1409 t_manufacturer
="ipod"
1415 modelname
="ipod1g2g"
1416 target
="-DIPOD_1G2G"
1419 tool
="$rootdir/tools/scramble -add=1g2g"
1420 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1421 bmp2rb_native
="$rootdir/tools/bmp2rb -f 6"
1422 output
="rockbox.ipod"
1423 appextra
="recorder:gui"
1426 bootoutput
="bootloader-$modelname.ipod"
1427 # toolset is the tools within the tools directory that we build for
1428 # this particular target.
1429 toolset
=$ipodbitmaptools
1430 # architecture, manufacturer and model for the target-tree build
1432 t_manufacturer
="ipod"
1438 modelname
="ipodnano2g"
1439 target
="-DIPOD_NANO2G"
1442 tool
="$rootdir/tools/scramble -add=nn2g"
1443 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1444 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
1445 output
="rockbox.ipod"
1446 appextra
="recorder:gui"
1449 bootoutput
="bootloader-$modelname.ipod"
1450 # toolset is the tools within the tools directory that we build for
1451 # this particular target.
1452 toolset
=$ipodbitmaptools
1453 # architecture, manufacturer and model for the target-tree build
1455 t_manufacturer
="s5l8700"
1456 t_model
="ipodnano2g"
1462 target
="-DIAUDIO_X5"
1465 tool
="$rootdir/tools/scramble -add=iax5"
1466 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1467 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
1468 bmp2rb_remotemono
="$rootdir/tools/bmp2rb -f 0"
1469 bmp2rb_remotenative
="$rootdir/tools/bmp2rb -f 7"
1470 output
="rockbox.iaudio"
1471 appextra
="recorder:gui"
1474 # toolset is the tools within the tools directory that we build for
1475 # this particular target.
1476 toolset
="$iaudiobitmaptools"
1477 # architecture, manufacturer and model for the target-tree build
1479 t_manufacturer
="iaudio"
1486 target
="-DIAUDIO_M5"
1489 tool
="$rootdir/tools/scramble -add=iam5"
1490 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1491 bmp2rb_native
="$rootdir/tools/bmp2rb -f 2"
1492 bmp2rb_remotemono
="$rootdir/tools/bmp2rb -f 0"
1493 bmp2rb_remotenative
="$rootdir/tools/bmp2rb -f 7"
1494 output
="rockbox.iaudio"
1495 appextra
="recorder:gui"
1498 # toolset is the tools within the tools directory that we build for
1499 # this particular target.
1500 toolset
="$iaudiobitmaptools"
1501 # architecture, manufacturer and model for the target-tree build
1503 t_manufacturer
="iaudio"
1513 tool
="$rootdir/tools/scramble -add=i7"
1514 boottool
="$rootdir/tools/scramble -tcc=crc"
1515 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1516 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
1517 output
="rockbox.iaudio"
1518 appextra
="recorder:gui"
1521 bootoutput
="I7_FW.BIN"
1522 # toolset is the tools within the tools directory that we build for
1523 # this particular target.
1524 toolset
="$tccbitmaptools"
1525 # architecture, manufacturer and model for the target-tree build
1527 t_manufacturer
="tcc77x"
1537 tool
="$rootdir/tools/scramble -add=d2"
1538 boottool
="$rootdir/tools/scramble -tcc=crc"
1539 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1540 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
1542 appextra
="recorder:gui"
1545 toolset
="$tccbitmaptools"
1546 # architecture, manufacturer and model for the target-tree build
1548 t_manufacturer
="tcc780x"
1555 target
="-DIAUDIO_M3"
1558 tool
="$rootdir/tools/scramble -add=iam3"
1559 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1560 bmp2rb_native
="$rootdir/tools/bmp2rb -f 7"
1561 output
="rockbox.iaudio"
1562 appextra
="recorder:gui"
1565 # toolset is the tools within the tools directory that we build for
1566 # this particular target.
1567 toolset
="$iaudiobitmaptools"
1568 # architecture, manufacturer and model for the target-tree build
1570 t_manufacturer
="iaudio"
1576 modelname
="gigabeatf"
1577 target
="-DGIGABEAT_F"
1580 tool
="$rootdir/tools/scramble -add=giga"
1581 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1582 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
1583 output
="rockbox.gigabeat"
1584 appextra
="recorder:gui"
1587 toolset
=$gigabeatbitmaptools
1588 boottool
="$rootdir/tools/scramble -gigabeat"
1589 bootoutput
="FWIMG01.DAT"
1590 # architecture, manufacturer and model for the target-tree build
1592 t_manufacturer
="s3c2440"
1593 t_model
="gigabeat-fx"
1598 modelname
="gigabeats"
1599 target
="-DGIGABEAT_S"
1602 tool
="$rootdir/tools/scramble -add=gigs"
1603 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1604 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
1605 output
="rockbox.gigabeat"
1606 appextra
="recorder:gui"
1609 toolset
="$gigabeatbitmaptools mknkboot"
1610 boottool
="$rootdir/tools/scramble -gigabeats"
1612 # architecture, manufacturer and model for the target-tree build
1614 t_manufacturer
="imx31"
1615 t_model
="gigabeat-s"
1620 modelname
="mrobe500"
1621 target
="-DMROBE_500"
1624 tool
="$rootdir/tools/scramble -add=m500"
1625 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1626 bmp2rb_native
="$rootdir/tools/bmp2rb -f 8"
1627 bmp2rb_remotemono
="$rootdir/tools/bmp2rb -f 0"
1628 bmp2rb_remotenative
="$rootdir/tools/bmp2rb -f 0"
1629 output
="rockbox.mrobe500"
1630 appextra
="recorder:gui"
1633 toolset
=$gigabeatbitmaptools
1635 bootoutput
="rockbox.mrboot"
1636 # architecture, manufacturer and model for the target-tree build
1638 t_manufacturer
="tms320dm320"
1644 modelname
="mrobe100"
1645 target
="-DMROBE_100"
1648 tool
="$rootdir/tools/scramble -mi4v2 -model=m100 -type=RBOS"
1649 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1650 bmp2rb_native
="$rootdir/tools/bmp2rb -f 0"
1651 bmp2rb_remotemono
="$rootdir/tools/bmp2rb -f 0"
1652 bmp2rb_remotenative
="$rootdir/tools/bmp2rb -f 0"
1653 output
="rockbox.mi4"
1654 appextra
="recorder:gui"
1657 boottool
="$rootdir/tools/scramble -mi4v2 -model=m100 -type=RBBL"
1658 bootoutput
="pp5020.mi4"
1659 # toolset is the tools within the tools directory that we build for
1660 # this particular target.
1661 toolset
=$scramblebitmaptools
1662 # architecture, manufacturer and model for the target-tree build
1664 t_manufacturer
="olympus"
1670 modelname
="logikdax"
1671 target
="-DLOGIK_DAX"
1674 tool
="$rootdir/tools/scramble -add=ldax"
1675 boottool
="$rootdir/tools/scramble -tcc=crc"
1676 bootoutput
="player.rom"
1677 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1678 bmp2rb_native
="$rootdir/tools/bmp2rb -f 0"
1679 output
="rockbox.logik"
1680 appextra
="recorder:gui"
1683 # toolset is the tools within the tools directory that we build for
1684 # this particular target.
1685 toolset
=$tccbitmaptools
1686 # architecture, manufacturer and model for the target-tree build
1688 t_manufacturer
="tcc77x"
1694 modelname
="creativezvm30gb"
1695 target
="-DCREATIVE_ZVM"
1698 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1699 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
1700 tool
="$rootdir/tools/scramble -creative=zvm"
1702 output
="rockbox.zvm"
1703 appextra
="recorder:gui"
1706 toolset
=$ipodbitmaptools
1707 boottool
="$rootdir/tools/scramble -creative=zvm -no-ciff"
1708 bootoutput
="rockbox.zvmboot"
1709 # architecture, manufacturer and model for the target-tree build
1711 t_manufacturer
="tms320dm320"
1712 t_model
="creative-zvm"
1717 modelname
="creativezvm60gb"
1718 target
="-DCREATIVE_ZVM60GB"
1721 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1722 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
1723 tool
="$rootdir/tools/scramble -creative=zvm60 -no-ciff"
1725 output
="rockbox.zvm60"
1726 appextra
="recorder:gui"
1729 toolset
=$ipodbitmaptools
1730 boottool
="$rootdir/tools/scramble -creative=zvm60"
1731 bootoutput
="rockbox.zvm60boot"
1732 # architecture, manufacturer and model for the target-tree build
1734 t_manufacturer
="tms320dm320"
1735 t_model
="creative-zvm"
1738 92|creativezenvision
)
1740 modelname
="creativezenvision"
1741 target
="-DCREATIVE_ZV"
1744 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1745 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
1746 tool
="$rootdir/tools/scramble -creative=zenvision -no-ciff"
1749 appextra
="recorder:gui"
1752 toolset
=$ipodbitmaptools
1753 boottool
="$rootdir/tools/scramble -creative=zenvision"
1754 bootoutput
="rockbox.zvboot"
1755 # architecture, manufacturer and model for the target-tree build
1757 t_manufacturer
="tms320dm320"
1758 t_model
="creative-zvm"
1764 target
="-DSANSA_E200"
1765 memory
=32 # supposedly
1767 tool
="$rootdir/tools/scramble -mi4v3 -model=e200 -type=RBOS"
1768 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1769 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
1770 output
="rockbox.mi4"
1771 appextra
="recorder:gui"
1774 boottool
="$rootdir/tools/scramble -mi4v3 -model=e200 -type=RBBL"
1775 bootoutput
="PP5022.mi4"
1776 # toolset is the tools within the tools directory that we build for
1777 # this particular target.
1778 toolset
=$scramblebitmaptools
1779 # architecture, manufacturer and model for the target-tree build
1781 t_manufacturer
="sandisk"
1782 t_model
="sansa-e200"
1786 # the e200R model is pretty much identical to the e200, it only has a
1787 # different option to the scramble tool when building a bootloader and
1788 # makes the bootloader output file name in all lower case.
1791 target
="-DSANSA_E200"
1792 memory
=32 # supposedly
1794 tool
="$rootdir/tools/scramble -mi4v3 -model=e20r -type=RBOS"
1795 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1796 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
1797 output
="rockbox.mi4"
1798 appextra
="recorder:gui"
1801 boottool
="$rootdir/tools/scramble -mi4r -model=e20r -type=RBBL"
1802 bootoutput
="pp5022.mi4"
1803 # toolset is the tools within the tools directory that we build for
1804 # this particular target.
1805 toolset
=$scramblebitmaptools
1806 # architecture, manufacturer and model for the target-tree build
1808 t_manufacturer
="sandisk"
1809 t_model
="sansa-e200"
1815 target
="-DSANSA_C200"
1816 memory
=32 # supposedly
1818 tool
="$rootdir/tools/scramble -mi4v3 -model=c200 -type=RBOS"
1819 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1820 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
1821 output
="rockbox.mi4"
1822 appextra
="recorder:gui"
1825 boottool
="$rootdir/tools/scramble -mi4v3 -model=c200 -type=RBBL"
1826 bootoutput
="firmware.mi4"
1827 # toolset is the tools within the tools directory that we build for
1828 # this particular target.
1829 toolset
=$scramblebitmaptools
1830 # architecture, manufacturer and model for the target-tree build
1832 t_manufacturer
="sandisk"
1833 t_model
="sansa-c200"
1839 target
="-DSANSA_M200"
1842 tool
="$rootdir/tools/scramble -add=m200"
1843 boottool
="$rootdir/tools/scramble -tcc=crc"
1844 bootoutput
="player.rom"
1845 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1846 bmp2rb_native
="$rootdir/tools/bmp2rb -f 0"
1847 output
="rockbox.m200"
1848 appextra
="recorder:gui"
1851 # toolset is the tools within the tools directory that we build for
1852 # this particular target.
1853 toolset
=$tccbitmaptools
1854 # architecture, manufacturer and model for the target-tree build
1856 t_manufacturer
="tcc77x"
1863 target
="-DSANSA_C100"
1866 tool
="$rootdir/tools/scramble -add=c100"
1867 boottool
="$rootdir/tools/scramble -tcc=crc"
1868 bootoutput
="player.rom"
1869 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1870 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
1871 output
="rockbox.c100"
1872 appextra
="recorder:gui"
1875 # toolset is the tools within the tools directory that we build for
1876 # this particular target.
1877 toolset
=$tccbitmaptools
1878 # architecture, manufacturer and model for the target-tree build
1880 t_manufacturer
="tcc77x"
1887 target
="-DSANSA_CLIP"
1889 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1890 bmp2rb_native
="$bmp2rb_mono"
1891 tool
="$rootdir/tools/scramble -add=clip"
1892 output
="rockbox.sansa"
1893 bootoutput
="bootloader-clip.sansa"
1894 appextra
="recorder:gui"
1897 toolset
=$scramblebitmaptools
1899 t_manufacturer
="as3525"
1900 t_model
="sansa-clip"
1908 target
="-DSANSA_E200V2"
1910 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1911 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
1912 tool
="$rootdir/tools/scramble -add=e2v2"
1913 output
="rockbox.sansa"
1914 bootoutput
="bootloader-e200v2.sansa"
1915 appextra
="recorder:gui"
1918 toolset
=$scramblebitmaptools
1920 t_manufacturer
="as3525"
1921 t_model
="sansa-e200v2"
1929 target
="-DSANSA_M200V4"
1931 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1932 bmp2rb_native
="$bmp2rb_mono"
1933 tool
="$rootdir/tools/scramble -add=m2v4"
1934 output
="rockbox.sansa"
1935 bootoutput
="bootloader-m200v4.sansa"
1936 appextra
="recorder:gui"
1939 toolset
=$scramblebitmaptools
1941 t_manufacturer
="as3525"
1942 t_model
="sansa-m200v4"
1950 target
="-DSANSA_FUZE"
1952 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1953 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
1954 tool
="$rootdir/tools/scramble -add=fuze"
1955 output
="rockbox.sansa"
1956 bootoutput
="bootloader-fuze.sansa"
1957 appextra
="recorder:gui"
1960 toolset
=$scramblebitmaptools
1962 t_manufacturer
="as3525"
1963 t_model
="sansa-fuze"
1971 target
="-DSANSA_C200V2"
1972 memory
=2 # as per OF diagnosis mode
1973 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1974 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
1975 tool
="$rootdir/tools/scramble -add=c2v2"
1976 output
="rockbox.sansa"
1977 bootoutput
="bootloader-c200v2.sansa"
1978 appextra
="recorder:gui"
1981 # toolset is the tools within the tools directory that we build for
1982 # this particular target.
1983 toolset
=$scramblebitmaptools
1984 # architecture, manufacturer and model for the target-tree build
1986 t_manufacturer
="as3525"
1987 t_model
="sansa-c200v2"
1992 echo "Sansa Clipv2 is not yet supported !"
1996 target
="-DSANSA_CLIPV2"
1999 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2000 bmp2rb_native
="$bmp2rb_mono"
2001 tool
="$rootdir/tools/scramble -add=clv2"
2002 output
="rockbox.sansa"
2003 bootoutput
="bootloader-clipv2.sansa"
2004 appextra
="recorder:gui"
2007 toolset
=$scramblebitmaptools
2009 t_manufacturer
="as3525"
2010 t_model
="sansa-clipv2"
2014 echo "Sansa View is not yet supported!"
2018 target
="-DSANSA_VIEW"
2021 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2022 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2023 output
="rockbox.mi4"
2027 boottool
="$rootdir/tools/scramble -mi4v3 -model=view -type=RBBL"
2028 bootoutput
="firmware.mi4"
2029 # toolset is the tools within the tools directory that we build for
2030 # this particular target.
2031 toolset
=$scramblebitmaptools
2033 t_manufacturer
="sandisk"
2034 t_model
="sansa-view"
2040 target
="-DELIO_TPJ1022"
2043 tool
="$rootdir/tools/scramble -add tpj2"
2044 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2045 bmp2rb_native
="$rootdir/tools/bmp2rb -f 5"
2046 output
="rockbox.elio"
2047 appextra
="recorder:gui"
2050 boottool
="$rootdir/tools/scramble -mi4v2"
2051 bootoutput
="pp5020.mi4"
2052 # toolset is the tools within the tools directory that we build for
2053 # this particular target.
2054 toolset
=$scramblebitmaptools
2055 # architecture, manufacturer and model for the target-tree build
2057 t_manufacturer
="tatung"
2064 target
="-DPHILIPS_SA9200"
2065 memory
=32 # supposedly
2067 tool
="$rootdir/tools/scramble -mi4v3 -model=9200 -type=RBOS"
2068 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2069 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2070 output
="rockbox.mi4"
2071 appextra
="recorder:gui"
2074 boottool
="$rootdir/tools/scramble -mi4v3 -model=9200 -type=RBBL"
2075 bootoutput
="FWImage.ebn"
2076 # toolset is the tools within the tools directory that we build for
2077 # this particular target.
2078 toolset
=$scramblebitmaptools
2079 # architecture, manufacturer and model for the target-tree build
2081 t_manufacturer
="philips"
2088 target
="-DPHILIPS_HDD1630"
2089 memory
=32 # supposedly
2091 tool
="$rootdir/tools/scramble -mi4v3 -model=1630 -type=RBOS"
2092 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2093 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2094 output
="rockbox.mi4"
2095 appextra
="recorder:gui"
2098 boottool
="$rootdir/tools/scramble -mi4v3 -model=1630 -type=RBBL"
2099 bootoutput
="FWImage.ebn"
2100 # toolset is the tools within the tools directory that we build for
2101 # this particular target.
2102 toolset
=$scramblebitmaptools
2103 # architecture, manufacturer and model for the target-tree build
2105 t_manufacturer
="philips"
2111 modelname
="meizum6sl"
2112 target
="-DMEIZU_M6SL"
2116 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2117 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2118 output
="rockbox.meizu"
2119 appextra
="recorder:gui"
2122 toolset
=$genericbitmaptools
2124 bootoutput
="rockboot.ebn"
2125 # architecture, manufacturer and model for the target-tree build
2127 t_manufacturer
="s5l8700"
2128 t_model
="meizu-m6sl"
2133 modelname
="meizum6sp"
2134 target
="-DMEIZU_M6SP"
2138 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2139 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2140 output
="rockbox.meizu"
2141 appextra
="recorder:gui"
2144 toolset
=$genericbitmaptools
2146 bootoutput
="rockboot.ebn"
2147 # architecture, manufacturer and model for the target-tree build
2149 t_manufacturer
="s5l8700"
2150 t_model
="meizu-m6sp"
2160 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2161 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2162 output
="rockbox.meizu"
2163 appextra
="recorder:gui"
2166 toolset
=$genericbitmaptools
2168 bootoutput
="rockboot.ebn"
2169 # architecture, manufacturer and model for the target-tree build
2171 t_manufacturer
="s5l8700"
2177 modelname
="ondavx747"
2178 target
="-DONDA_VX747"
2181 tool
="$rootdir/tools/scramble -add=x747"
2182 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2183 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2184 output
="rockbox.vx747"
2185 appextra
="recorder:gui"
2188 toolset
=$genericbitmaptools
2189 boottool
="$rootdir/tools/scramble -ccpmp"
2190 bootoutput
="ccpmp.bin"
2191 # architecture, manufacturer and model for the target-tree build
2193 t_manufacturer
="ingenic_jz47xx"
2194 t_model
="onda_vx747"
2199 modelname
="ondavx767"
2200 target
="-DONDA_VX767"
2204 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2205 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2206 output
="rockbox.vx767"
2207 appextra
="recorder:gui"
2210 toolset
=$genericbitmaptools
2211 boottool
="$rootdir/tools/scramble -ccpmp"
2212 bootoutput
="ccpmp.bin"
2213 # architecture, manufacturer and model for the target-tree build
2215 t_manufacturer
="ingenic_jz47xx"
2216 t_model
="onda_vx767"
2221 modelname
="ondavx747p"
2222 target
="-DONDA_VX747P"
2225 tool
="$rootdir/tools/scramble -add=747p"
2226 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2227 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2228 output
="rockbox.vx747p"
2229 appextra
="recorder:gui"
2232 toolset
=$genericbitmaptools
2233 boottool
="$rootdir/tools/scramble -ccpmp"
2234 bootoutput
="ccpmp.bin"
2235 # architecture, manufacturer and model for the target-tree build
2237 t_manufacturer
="ingenic_jz47xx"
2238 t_model
="onda_vx747"
2243 modelname
="ondavx777"
2244 target
="-DONDA_VX777"
2247 tool
="$rootdir/tools/scramble -add=x777"
2248 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2249 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2250 output
="rockbox.vx777"
2251 appextra
="recorder:gui"
2254 toolset
=$genericbitmaptools
2255 boottool
="$rootdir/tools/scramble -ccpmp"
2256 bootoutput
="ccpmp.bin"
2257 # architecture, manufacturer and model for the target-tree build
2259 t_manufacturer
="ingenic_jz47xx"
2260 t_model
="onda_vx747"
2265 modelname
="lyre_proto1"
2266 target
="-DLYRE_PROTO1"
2270 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2271 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2272 output
="rockbox.lyre"
2273 appextra
="recorder:gui"
2276 toolset
=$scramblebitmaptools
2278 bootoutput
="bootloader-proto1.lyre"
2279 # architecture, manufacturer and model for the target-tree build
2281 t_manufacturer
="at91sam"
2282 t_model
="lyre_proto1"
2288 target
="-DSAMSUNG_YH820"
2291 tool
="$rootdir/tools/scramble -mi4v2 -model=y820 -type=RBOS"
2292 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2293 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2294 output
="rockbox.mi4"
2295 appextra
="recorder:gui"
2298 boottool
="$rootdir/tools/scramble -mi4v2 -model=y820 -type=RBBL"
2299 bootoutput
="FW_YH820.mi4"
2300 # toolset is the tools within the tools directory that we build for
2301 # this particular target.
2302 toolset
=$scramblebitmaptools
2303 # architecture, manufacturer and model for the target-tree build
2305 t_manufacturer
="samsung"
2312 target
="-DSAMSUNG_YH920"
2315 tool
="$rootdir/tools/scramble -mi4v2 -model=y920 -type=RBOS"
2316 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2317 bmp2rb_native
="$rootdir/tools/bmp2rb -f 2"
2318 output
="rockbox.mi4"
2319 appextra
="recorder:gui"
2322 boottool
="$rootdir/tools/scramble -mi4v2 -model=y920 -type=RBBL"
2323 bootoutput
="PP5020.mi4"
2324 # toolset is the tools within the tools directory that we build for
2325 # this particular target.
2326 toolset
=$scramblebitmaptools
2327 # architecture, manufacturer and model for the target-tree build
2329 t_manufacturer
="samsung"
2336 target
="-DSAMSUNG_YH925"
2339 tool
="$rootdir/tools/scramble -mi4v2 -model=y925 -type=RBOS"
2340 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2341 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2342 output
="rockbox.mi4"
2343 appextra
="recorder:gui"
2346 boottool
="$rootdir/tools/scramble -mi4v2 -model=y925 -type=RBBL"
2347 bootoutput
="FW_YH925.mi4"
2348 # toolset is the tools within the tools directory that we build for
2349 # this particular target.
2350 toolset
=$scramblebitmaptools
2351 # architecture, manufacturer and model for the target-tree build
2353 t_manufacturer
="samsung"
2360 target
="-DSAMSUNG_YPS3"
2364 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2365 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2366 output
="rockbox.yps3"
2367 appextra
="recorder:gui"
2370 toolset
=$genericbitmaptools
2372 bootoutput
="rockboot.ebn"
2373 # architecture, manufacturer and model for the target-tree build
2375 t_manufacturer
="s5l8700"
2381 echo "Please select a supported target platform!"
2387 echo "Platform set to $modelname"
2391 ############################################################################
2392 # Amount of memory, for those that can differ. They have $memory unset at
2396 if [ -z "$memory" ]; then
2399 if [ "$ARG_RAM" ]; then
2402 echo "Enter size of your RAM (in MB): (Defaults to 32)"
2415 if [ "$ARG_RAM" ]; then
2418 echo "Enter size of your RAM (in MB): (Defaults to 2)"
2431 echo "Memory size selected: $memory MB"
2432 [ "$ARG_TYPE" ] ||
echo ""
2436 ##################################################################
2437 # Figure out build "type"
2440 # the ifp7x0 is the only platform that supports building a gdb stub like
2444 gdbstub
="(G)DB stub, "
2447 gdbstub
="(I)nstaller, "
2450 gdbstub
="(E)raser, "
2455 if [ "$ARG_TYPE" ]; then
2458 echo "Build (N)ormal, (A)dvanced, (S)imulator, (B)ootloader, (C)heckWPS, (D)atabase tool, $gdbstub(M)anual: (Defaults to N)"
2464 appsdir
='\$(ROOTDIR)/bootloader'
2466 extradefines
="-DBOOTLOADER -DE200R_INSTALLER -ffunction-sections -fdata-sections"
2468 echo "e200R-installer build selected"
2471 appsdir
='\$(ROOTDIR)/bootloader'
2473 echo "C2(4)0 or C2(5)0"
2477 extradefines
="-DBOOTLOADER -DC200_ERASE -DC240_ERASE -ffunction-sections -fdata-sections"
2478 echo "c240 eraser build selected"
2481 extradefines
="-DBOOTLOADER -DC200_ERASE -DC250_ERASE -ffunction-sections -fdata-sections"
2482 echo "c240 eraser build selected"
2486 echo "c200 eraser build selected"
2489 if test $t_manufacturer = "archos"; then
2490 # Archos SH-based players do this somewhat differently for
2492 appsdir
='\$(ROOTDIR)/flash/bootbox'
2495 appsdir
='\$(ROOTDIR)/bootloader'
2498 if test -n "$boottool"; then
2501 if test -n "$bootoutput"; then
2505 extradefines
="-DBOOTLOADER -ffunction-sections -fdata-sections"
2507 echo "Bootloader build selected"
2512 extradefines
="-DSIMULATOR"
2515 echo "Simulator build selected"
2518 echo "Advanced build selected"
2519 whichadvanced
$btype
2522 extradefines
="-DSTUB" # for target makefile symbol EXTRA_DEFINES
2523 appsdir
='\$(ROOTDIR)/gdb'
2532 echo "GDB stub build selected"
2537 echo "Manual build selected"
2545 appsdir
='\$(ROOTDIR)/tools/checkwps';
2546 output
='checkwps.'${modelname};
2548 echo "CheckWPS build selected"
2556 appsdir
='\$(ROOTDIR)/tools/database';
2557 output
='database.'${modelname};
2559 echo "Database tool build selected"
2562 if [ "$modelname" = "e200r" ]; then
2563 echo "Do not use the e200R target for regular builds. Use e200 instead."
2567 btype
="N" # set it explicitly since RET only gets here as well
2568 echo "Normal build selected"
2572 # to be able running "make manual" from non-manual configuration
2575 manualdev
="recorderv2fm"
2578 manualdev
="recorderv2fm"
2584 manualdev
="ipodmini"
2587 manualdev
=$modelname
2591 if [ -z "$debug" ]; then
2592 GCCOPTS
="$GCCOPTS $GCCOPTIMIZE"
2595 echo "Using source code root directory: $rootdir"
2597 # this was once possible to change at build-time, but no more:
2602 if [ "yes" = "$simulator" ]; then
2603 # setup compiler and things for simulator
2606 if [ -d "simdisk" ]; then
2607 echo "Subdirectory 'simdisk' already present"
2610 echo "Created a 'simdisk' subdirectory for simulating the hard disk"
2614 # Now, figure out version number of the (gcc) compiler we are about to use
2615 gccver
=`$CC -dumpversion`;
2617 # figure out the binutil version too and display it, mostly for the build
2618 # system etc to be able to see it easier
2619 if [ $uname = "Darwin" ]; then
2620 ldver
=`$LD -v 2>&1 | sed -e 's/[^0-9.-]//g'`
2622 ldver
=`$LD --version | head -n 1 | sed -e 's/[^0-9.]//g'`
2625 if [ -z "$gccver" ]; then
2626 echo "[WARNING] The compiler you must use ($CC) is not in your path!"
2627 echo "[WARNING] this may cause your build to fail since we cannot do the"
2628 echo "[WARNING] checks we want now."
2631 # gccver should now be "3.3.5", "3.4.3", "2.95.3-6" and similar, but don't
2634 num1
=`echo $gccver | cut -d . -f1`
2635 num2
=`echo $gccver | cut -d . -f2`
2636 gccnum
=`(expr $num1 "*" 100 + $num2) 2>/dev/null`
2643 echo "Using $CC $gccver ($gccnum)"
2645 if test "$gccnum" -ge "400"; then
2646 # gcc 4.0 is just *so* much pickier on arguments that differ in signedness
2647 # so we ignore that warnings for now
2649 GCCOPTS
="$GCCOPTS -Wno-pointer-sign"
2652 if test "$gccnum" -ge "401"; then
2653 # this is a lame hack to avoid "warning: dereferencing type-punned pointer
2654 # will break strict-aliasing rules"
2656 GCCOPTS
="$GCCOPTS -fno-strict-aliasing"
2659 if test "$gccnum" -ge "402"; then
2660 # disable warning about "warning: initialized field overwritten" as gcc 4.2
2661 # and later would throw it for several valid cases
2662 GCCOPTS
="$GCCOPTS -Wno-override-init"
2670 # cross-compile for win32
2673 # Verify that the cross-compiler is of a recommended version!
2674 if test "$gccver" != "$gccchoice"; then
2675 echo "WARNING: Your cross-compiler $CC $gccver is not of the recommended"
2676 echo "WARNING: version $gccchoice!"
2677 echo "WARNING: This may cause your build to fail since it may be a version"
2678 echo "WARNING: that isn't functional or known to not be the best choice."
2679 echo "WARNING: If you suffer from build problems, you know that this is"
2680 echo "WARNING: a likely source for them..."
2688 echo "Using $LD $ldver"
2690 # check the compiler for SH platforms
2691 if test "$CC" = "sh-elf-gcc"; then
2692 if test "$gccnum" -lt "400"; then
2693 echo "WARNING: Consider upgrading your compiler to the 4.0.X series!"
2694 echo "WARNING: http://www.rockbox.org/twiki/bin/view/Main/CrossCompiler"
2696 # figure out patch status
2697 gccpatch
=`$CC --version`;
2699 if { echo $gccpatch |
grep "rockbox" >/dev
/null
2>&1; } then
2700 echo "gcc $gccver is rockbox patched"
2701 # then convert -O to -Os to get smaller binaries!
2702 GCCOPTS
=`echo $GCCOPTS | sed 's/ -O / -Os /'`
2704 echo "WARNING: You use an unpatched gcc compiler: $gccver"
2705 echo "WARNING: http://www.rockbox.org/twiki/bin/view/Main/CrossCompiler"
2710 if test "$CC" = "m68k-elf-gcc"; then
2711 # convert -O to -Os to get smaller binaries!
2712 GCCOPTS
=`echo $GCCOPTS | sed 's/ -O / -Os /'`
2715 if [ "$ARG_CCACHE" = "1" ]; then
2716 echo "Enable ccache for building"
2718 elif [ "$ARG_CCACHE" != "0" ]; then
2719 ccache
=`findtool ccache`
2720 if test -n "$ccache"; then
2721 echo "Found and uses ccache ($ccache)"
2725 # figure out the full path to the various commands if possible
2726 HOSTCC
=`findtool gcc --lit`
2727 HOSTAR
=`findtool ar --lit`
2728 CC
=`findtool ${CC} --lit`
2729 LD
=`findtool ${AR} --lit`
2730 AR
=`findtool ${AR} --lit`
2731 AS
=`findtool ${AS} --lit`
2732 OC
=`findtool ${OC} --lit`
2733 WINDRES
=`findtool ${WINDRES} --lit`
2734 DLLTOOL
=`findtool ${DLLTOOL} --lit`
2735 DLLWRAP
=`findtool ${DLLWRAP} --lit`
2736 RANLIB
=`findtool ${RANLIB} --lit`
2738 if test -n "$ccache"; then
2742 if test "X$endian" = "Xbig"; then
2743 defendian
="ROCKBOX_BIG_ENDIAN"
2745 defendian
="ROCKBOX_LITTLE_ENDIAN"
2748 if [ "$ARG_RBDIR" ]; then
2750 echo "Using alternate rockbox dir: ${rbdir}"
2754 -e "s,@ENDIAN@,${defendian},g" \
2755 -e "s,^#undef ROCKBOX_HAS_LOGF,$use_logf,g" \
2756 -e "s,@config_rtc@,$config_rtc,g" \
2757 -e "s,@have_rtc_alarm@,$have_rtc_alarm,g" \
2758 -e "s,@RBDIR@,${rbdir},g" \
2759 -e "s,@have_backlight@,$have_backlight,g" \
2760 -e "s,@have_fmradio_in@,$have_fmradio_in,g" \
2761 -e "s,@have_ata_poweroff@,$have_ata_poweroff,g" \
2763 /* This header was made by configure */
2764 #ifndef __BUILD_AUTOCONF_H
2765 #define __BUILD_AUTOCONF_H
2767 /* Define endianess for the target or simulator platform */
2770 /* Define this if you build rockbox to support the logf logging and display */
2771 #undef ROCKBOX_HAS_LOGF
2773 /* optional define for a backlight modded Ondio */
2776 /* optional define for FM radio mod for iAudio M5 */
2779 /* optional define for ATA poweroff on Player */
2782 /* optional defines for RTC mod for h1x0 */
2786 /* root of Rockbox */
2787 #define ROCKBOX_DIR "/@RBDIR@"
2789 #endif /* __BUILD_AUTOCONF_H */
2792 if test -n "$t_cpu"; then
2793 TARGET_INC
="-I\$(FIRMDIR)/target/$t_cpu/$t_manufacturer/$t_model"
2794 TARGET_INC
="$TARGET_INC -I\$(FIRMDIR)/target/$t_cpu/$t_manufacturer"
2795 TARGET_INC
="$TARGET_INC -I\$(FIRMDIR)/target/$t_cpu"
2799 if test "$simulator" = "yes"; then
2800 # add simul make stuff on the #SIMUL# line
2801 simmagic1
="s,@SIMUL1@,\$(SILENT)\$(MAKE) -C \$(SIMDIR) OBJDIR=\$(BUILDDIR)/sim,"
2802 simmagic2
="s,@SIMUL2@,\$(SILENT)\$(MAKE) -C \$(ROOTDIR)/uisimulator/common OBJDIR=\$(BUILDDIR)/comsim,"
2804 # delete the lines that match
2805 simmagic1
='/@SIMUL1@/D'
2806 simmagic2
='/@SIMUL2@/D'
2809 if test "$swcodec" = "yes"; then
2810 voicetoolset
="rbspeexenc voicefont wavtrim"
2812 voicetoolset
="voicefont wavtrim"
2815 if test "$apps" = "apps"; then
2816 # only when we build "real" apps we build the .lng files
2820 #### Fix the cmdline ###
2821 if test -n "$ccache"; then
2825 cmdline
="$cmdline--target=\$(MODELNAME) --ram=\$(MEMORYSIZE) --rbdir=\$(RBDIR) --type=$btype$advopts"
2829 -e "s,@ROOTDIR@,${rootdir},g" \
2830 -e "s,@DEBUG@,${debug},g" \
2831 -e "s,@MEMORY@,${memory},g" \
2832 -e "s,@TARGET_ID@,${target_id},g" \
2833 -e "s,@TARGET@,${target},g" \
2834 -e "s,@CPU@,${t_cpu},g" \
2835 -e "s,@MANUFACTURER@,${t_manufacturer},g" \
2836 -e "s,@MODELNAME@,${modelname},g" \
2837 -e "s,@LANGUAGE@,${language},g" \
2838 -e "s:@VOICELANGUAGE@:${voicelanguage}:g" \
2839 -e "s,@PWD@,${pwd},g" \
2840 -e "s,@HOSTCC@,${HOSTCC},g" \
2841 -e "s,@HOSTAR@,${HOSTAR},g" \
2842 -e "s,@CC@,${CC},g" \
2843 -e "s,@LD@,${LD},g" \
2844 -e "s,@AR@,${AR},g" \
2845 -e "s,@AS@,${AS},g" \
2846 -e "s,@OC@,${OC},g" \
2847 -e "s,@WINDRES@,${WINDRES},g" \
2848 -e "s,@DLLTOOL@,${DLLTOOL},g" \
2849 -e "s,@DLLWRAP@,${DLLWRAP},g" \
2850 -e "s,@RANLIB@,${RANLIB},g" \
2851 -e "s,@TOOL@,${tool},g" \
2852 -e "s,@BMP2RB_NATIVE@,${bmp2rb_native},g" \
2853 -e "s,@BMP2RB_MONO@,${bmp2rb_mono},g" \
2854 -e "s,@BMP2RB_REMOTENATIVE@,${bmp2rb_remotenative},g" \
2855 -e "s,@BMP2RB_REMOTEMONO@,${bmp2rb_remotemono},g" \
2856 -e "s,@OUTPUT@,${output},g" \
2857 -e "s,@APPEXTRA@,${appextra},g" \
2858 -e "s,@ARCHOSROM@,${archosrom},g" \
2859 -e "s,@FLASHFILE@,${flash},g" \
2860 -e "s,@PLUGINS@,${plugins},g" \
2861 -e "s,@CODECS@,${swcodec},g" \
2862 -e "s,@PROFILE_OPTS@,${PROFILE_OPTS},g" \
2863 -e "s,@SHARED_FLAG@,${SHARED_FLAG},g" \
2864 -e "s,@GCCOPTS@,${GCCOPTS},g" \
2865 -e "s,@TARGET_INC@,${TARGET_INC},g" \
2866 -e "s!@LDOPTS@!${LDOPTS}!g" \
2867 -e "s,@LOADADDRESS@,${loadaddress},g" \
2868 -e "s,@EXTRADEF@,${extradefines},g" \
2869 -e "s,@APPSDIR@,${appsdir},g" \
2870 -e "s,@FIRMDIR@,${firmdir},g" \
2871 -e "s,@TOOLSDIR@,${toolsdir},g" \
2872 -e "s,@APPS@,${apps},g" \
2873 -e "s,@SIMVER@,${simver},g" \
2874 -e "s,@GCCVER@,${gccver},g" \
2875 -e "s,@GCCNUM@,${gccnum},g" \
2876 -e "s,@UNAME@,${uname},g" \
2877 -e "s,@ENDIAN@,${defendian},g" \
2878 -e "s,@TOOLSET@,${toolset},g" \
2881 -e "s,@MANUALDEV@,${manualdev},g" \
2882 -e "s,@ENCODER@,${ENC_CMD},g" \
2883 -e "s,@ENC_OPTS@,${ENC_OPTS},g" \
2884 -e "s,@TTS_ENGINE@,${TTS_ENGINE},g" \
2885 -e "s,@TTS_OPTS@,${TTS_OPTS},g" \
2886 -e "s,@VOICETOOLSET@,${voicetoolset},g" \
2887 -e "s,@LANGS@,${buildlangs},g" \
2888 -e "s,@USE_ELF@,${USE_ELF},g" \
2889 -e "s,@RBDIR@,${rbdir},g" \
2890 -e "s,@PREFIX@,$PREFIX,g" \
2891 -e "s,@CMDLINE@,$cmdline,g" \
2893 ## Automatically generated. http://www.rockbox.org/
2895 export ROOTDIR=@ROOTDIR@
2896 export FIRMDIR=@FIRMDIR@
2897 export APPSDIR=@APPSDIR@
2898 export TOOLSDIR=@TOOLSDIR@
2899 export DOCSDIR=\$(ROOTDIR)/docs
2900 export MANUALDIR=\${ROOTDIR}/manual
2901 export DEBUG=@DEBUG@
2902 export MODELNAME=@MODELNAME@
2903 export ARCHOSROM=@ARCHOSROM@
2904 export FLASHFILE=@FLASHFILE@
2905 export TARGET_ID=@TARGET_ID@
2906 export TARGET=@TARGET@
2908 export MANUFACTURER=@MANUFACTURER@
2910 export BUILDDIR=@PWD@
2911 export LANGUAGE=@LANGUAGE@
2912 export VOICELANGUAGE=@VOICELANGUAGE@
2913 export MEMORYSIZE=@MEMORY@
2914 export VERSION:=\$(shell \$(ROOTDIR)/tools/version.sh \$(ROOTDIR))
2915 export BUILDDATE:=\$(shell date -u +'-DYEAR=%Y -DMONTH=%m -DDAY=%d')
2916 export MKFIRMWARE=@TOOL@
2917 export BMP2RB_MONO=@BMP2RB_MONO@
2918 export BMP2RB_NATIVE=@BMP2RB_NATIVE@
2919 export BMP2RB_REMOTEMONO=@BMP2RB_REMOTEMONO@
2920 export BMP2RB_REMOTENATIVE=@BMP2RB_REMOTENATIVE@
2921 export BINARY=@OUTPUT@
2922 export APPEXTRA=@APPEXTRA@
2923 export ENABLEDPLUGINS=@PLUGINS@
2924 export SOFTWARECODECS=@CODECS@
2925 export EXTRA_DEFINES=@EXTRADEF@
2926 export HOSTCC=@HOSTCC@
2927 export HOSTAR=@HOSTAR@
2933 export WINDRES=@WINDRES@
2934 export DLLTOOL=@DLLTOOL@
2935 export DLLWRAP=@DLLWRAP@
2936 export RANLIB=@RANLIB@
2937 export PREFIX=@PREFIX@
2938 export PROFILE_OPTS=@PROFILE_OPTS@
2939 export SIMVER=@SIMVER@
2940 export SIMDIR=\$(ROOTDIR)/uisimulator/sdl
2941 export GCCOPTS=@GCCOPTS@
2942 export TARGET_INC=@TARGET_INC@
2943 export LOADADDRESS=@LOADADDRESS@
2944 export SHARED_FLAG=@SHARED_FLAG@
2945 export LDOPTS=@LDOPTS@
2946 export GCCVER=@GCCVER@
2947 export GCCNUM=@GCCNUM@
2948 export UNAME=@UNAME@
2949 export MANUALDEV=@MANUALDEV@
2950 export TTS_OPTS=@TTS_OPTS@
2951 export TTS_ENGINE=@TTS_ENGINE@
2952 export ENC_OPTS=@ENC_OPTS@
2953 export ENCODER=@ENCODER@
2954 export USE_ELF=@USE_ELF@
2955 export RBDIR=@RBDIR@
2957 CONFIGURE_OPTIONS=@CMDLINE@
2959 include \$(TOOLSDIR)/root.make
2963 echo "Created Makefile"