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 # global LD options for all platforms
18 use_logf
="#undef ROCKBOX_HAS_LOGF"
19 use_bootchart
="#undef DO_BOOTCHART"
21 scriptver
=`echo '$Revision$' | sed -e 's:\\$::g' -e 's/Revision: //'`
34 # Begin Function Definitions
44 WINDRES
=${prefix}windres
45 DLLTOOL
=${prefix}dlltool
46 DLLWRAP
=${prefix}dllwrap
47 RANLIB
=${prefix}ranlib
55 echo "Select your platform: (S)DL, (A)ndroid (default: Android)"
58 s|S
*) app_platform
="sdl" ;;
59 *|a|A
*) app_platform
="android" ;;
62 echo "Selected $app_platform platform"
63 echo "Select the LCD resolution seperated with enter: XxY (default: 320x480)"
65 if [ -z "$app_lcd_width" ]; then app_lcd_width
="320"; fi
66 app_lcd_height
=`input`
67 if [ -z "$app_lcd_height" ]; then app_lcd_height
="480"; fi
68 echo "Selected $app_lcd_width x $app_lcd_height resolution"
72 if [ "$ARG_ARM_EABI" != "0" ]; then
73 prefixtools arm-elf-eabi-
81 # scan the $PATH for the given command
88 # echo "checks for $file in $path" >&2
89 if test -f "$path/$file"; then
94 # check whether caller wants literal return value if not found
95 if [ "$2" = "--lit" ]; then
100 # scan the $PATH for sdl-config - check whether for a (cross-)win32
109 #echo "checks for $file in $path" >&2
110 if test -f "$path/$file"; then
111 if [ "0" != `$path/$file --libs |grep -c mwindows` ]; then
112 if [ "yes" = "${winbuild}" ]; then
117 if [ "yes" != "${winbuild}" ]; then
127 if [ "$1" = "sdl" ]; then
129 elif [ "$1" = "android" ]; then
137 # default tool setup for native building
138 prefixtools
"$CROSS_COMPILE"
139 ARG_ARM_THUMB
=0 # can't use thumb in native builds
143 GCCOPTS
='-W -Wall -g -fno-builtin'
145 LDOPTS
='-lm' # button-sdl.c uses sqrt()
147 # default output binary name
150 # default share option, override below if needed
151 SHARED_FLAG
="-shared"
153 if [ "$win32crosscompile" = "yes" ]; then
154 LDOPTS
="$LDOPTS -mconsole"
155 output
="rockboxui.exe"
160 echo "Cygwin host detected"
162 LDOPTS
="$LDOPTS -mconsole"
163 output
="rockboxui.exe"
168 echo "MinGW host detected"
170 LDOPTS
="$LDOPTS -mconsole"
171 output
="rockboxui.exe"
176 echo "Linux host detected"
177 LDOPTS
="$LDOPTS -ldl"
181 echo "FreeBSD host detected"
182 LDOPTS
="$LDOPTS -ldl"
186 echo "Darwin host detected"
187 LDOPTS
="$LDOPTS -ldl"
189 SHARED_FLAG
="-dynamiclib -Wl\,-single_module"
193 echo "*Solaris host detected"
195 GCCOPTS
="$GCCOPTS -fPIC"
196 LDOPTS
="$LDOPTS -ldl"
200 echo "[ERROR] Unsupported system: $uname, fix configure and retry"
206 [ "$winbuild" != "yes" ] && GLOBAL_LDOPTS
="$GLOBAL_LDOPTS -Wl,-z,defs"
207 sdl
=`findsdl $winbuild`
209 if [ -n `echo $app_type | grep "sdl"` ]; then
210 if [ -z "$sdl" ]; then
211 echo "configure didn't find sdl-config, which indicates that you"
212 echo "don't have SDL (properly) installed. Please correct and"
213 echo "re-run configure!"
216 # generic sdl-config checker
217 GCCOPTS
="$GCCOPTS `$sdl --cflags`"
218 LDOPTS
="$LDOPTS `$sdl --libs`"
223 GCCOPTS
="$GCCOPTS -I\$(SIMDIR)"
225 if test "X$win32crosscompile" != "Xyes"; then
228 # fPIC is needed to make shared objects link
229 # setting visibility to hidden is necessary to avoid strange crashes
230 # due to symbol clashing
231 GCCOPTS
="$GCCOPTS -fPIC -fvisibility=hidden"
232 # x86_64 supports MMX by default
236 echo "Enabling MMX support"
237 GCCOPTS
="$GCCOPTS -mmmx"
242 cat >$tmpdir/conftest-
$id.c
<<EOF
244 int main(int argc, char **argv)
247 char *varp = (char *)&var;
255 $CC -o $tmpdir/conftest-
$id $tmpdir/conftest-
$id.c
2>/dev
/null
257 # when cross compiling, the endianess cannot be detected because the above program doesn't run
258 # on the local machine. assume little endian but print a warning
259 endian
=`$tmpdir/conftest-$id 2> /dev/null`
260 if [ "$endian" != "" ] && [ $endian -gt "1" ]; then
268 if [ "$CROSS_COMPILE" != "" ]; then
269 echo "WARNING: Cross Compiling, cannot detect endianess. Assuming little endian!"
272 if [ "$app_type" = "sdl-sim" ]; then
273 echo "Simulator environment deemed $endian endian"
274 elif [ "$app_type" = "sdl-app" ]; then
275 echo "Application environment deemed $endian endian"
276 elif [ "$app_type" = "checkwps" ]; then
277 echo "CheckWPS environment deemed $endian endian"
280 # use wildcard here to make it work even if it was named *.exe like
282 rm -f $tmpdir/conftest-
$id*
284 # We are crosscompiling
285 # add cross-compiler option(s)
286 prefixtools i586-mingw32msvc-
287 LDOPTS
="$LDOPTS -mconsole"
288 output
="rockboxui.exe"
289 endian
="little" # windows is little endian
290 echo "Enabling MMX support"
291 GCCOPTS
="$GCCOPTS -mmmx"
296 # functions for setting up cross-compiler names and options
297 # also set endianess and what the exact recommended gcc version is
298 # the gcc version should most likely match what versions we build with
303 GCCOPTS
="$CCOPTS -m1"
304 GCCOPTIMIZE
="-fomit-frame-pointer -fschedule-insns"
310 prefixtools calmrisc16-unknown-elf-
311 GCCOPTS
="-Wl\,--no-check-sections $CCOPTS"
312 GCCOPTIMIZE
="-fomit-frame-pointer"
317 prefixtools m68k-elf-
318 GCCOPTS
="$CCOPTS -m5206e -Wa\,-m5249 -malign-int -mstrict-align"
319 GCCOPTIMIZE
="-fomit-frame-pointer"
326 GCCOPTS
="$CCOPTS -mcpu=arm7tdmi"
327 if test "X$1" != "Xshort" -a "$ARG_ARM_EABI" = "0"; then
328 GCCOPTS
="$GCCOPTS -mlong-calls"
330 GCCOPTIMIZE
="-fomit-frame-pointer"
336 GCCOPTS
="$CCOPTS -mcpu=arm9tdmi"
337 if test "$modelname" != "gigabeatfx" -a "$t_manufacturer" != "as3525" -a "$ARG_ARM_EABI" = "0"; then
338 GCCOPTS
="$GCCOPTS -mlong-calls"
340 GCCOPTIMIZE
="-fomit-frame-pointer"
346 GCCOPTS
="$CCOPTS -mbig-endian -mcpu=arm940t"
347 if test "$ARG_ARM_EABI" = "0"; then
348 GCCOPTS
="$GCCOPTS -mlong-calls"
350 GCCOPTIMIZE
="-fomit-frame-pointer"
356 GCCOPTS
="$CCOPTS -mcpu=arm940t"
357 if test "$ARG_ARM_EABI" = "0"; then
358 GCCOPTS
="$GCCOPTS -mlong-calls"
360 GCCOPTIMIZE
="-fomit-frame-pointer"
366 GCCOPTS
="$CCOPTS -mcpu=arm9e"
367 if test "$ARG_ARM_EABI" = "0"; then
368 GCCOPTS
="$GCCOPTS -mlong-calls"
370 GCCOPTIMIZE
="-fomit-frame-pointer"
376 GCCOPTS
="$CCOPTS -mcpu=arm926ej-s"
377 if test "$t_manufacturer" != "as3525" -a "$ARG_ARM_EABI" = "0"; then
378 GCCOPTS
="$GCCOPTS -mlong-calls"
380 GCCOPTIMIZE
="-fomit-frame-pointer"
386 GCCOPTS
="$CCOPTS -mcpu=arm1136jf-s"
387 if test "$modelname" != "gigabeats" -a "$ARG_ARM_EABI" = "0"; then
388 GCCOPTS
="$GCCOPTS -mlong-calls"
390 GCCOPTIMIZE
="-fomit-frame-pointer"
396 GCCOPTS
="$CCOPTS -mcpu=arm1176jz-s"
397 if test "$ARG_ARM_EABI" = "0"; then
398 GCCOPTS
="$GCCOPTS -mlong-calls"
400 GCCOPTIMIZE
="-fomit-frame-pointer"
405 prefixtools mipsel-elf-
406 GCCOPTS
="$CCOPTS -march=mips32 -mtune=r4600 -mno-mips16 -mno-long-calls"
407 GCCOPTS
="$GCCOPTS -ffunction-sections -msoft-float -G 0 -Wno-parentheses"
408 GCCOPTIMIZE
="-fomit-frame-pointer"
415 prefixtools
$ANDROID_NDK_PATH/build
/prebuilt
/linux-x86
/arm-eabi-
$gccchoice/bin
/arm-eabi-
416 GCCOPTS
=`echo $CCOPTS | sed -e s/-ffreestanding// -e s/-nostdlib// -e s/-Wundef//`
417 GCCOPTS
="$GCCOPTS -std=gnu99 -ffunction-sections -fno-short-enums -march=armv5te -mtune=xscale -msoft-float -fomit-frame-pointer"
418 LDOPTS
="-lm -ldl -lc -Wl,--no-undefined -Wl,--gc-sections -Wl,-z,noexecstack -L$ANDROID_NDK_PATH/build/platforms/android-4/arch-arm/usr/lib/ -Wl,-rpath-link=$ANDROID_NKD_PATH/build/platforms/android-4/arch-arm/usr/lib"
419 extradefines
="$extradefines -D__ARM_ARCH_5__ -D__ARM_ARCH_5T__ -D__ARM_ARCH_5E__ -D__ARM_ARCH_5TE__ -DANDROID"
421 SHARED_FLAG
="-shared"
425 atype
=`echo "$1" | cut -c 2-`
426 ##################################################################
427 # Prompt for specific developer options
429 if [ "$atype" ]; then
434 printf "Enter your developer options (press only enter when done)\n\
435 (D)EBUG, (L)ogf, Boot(c)hart, (S)imulator, (P)rofiling, (V)oice, (W)in32 crosscompile,\n\
436 (T)est plugins, S(m)all C lib:"
437 if [ "$memory" = "2" ]; then
440 if [ "$modelname" = "archosplayer" ]; then
441 printf ", Use (A)TA poweroff"
443 if [ "$t_model" = "ondio" ]; then
444 printf ", (B)acklight MOD"
446 if [ "$modelname" = "iaudiom5" ]; then
447 printf ", (F)M radio MOD"
449 if [ "$modelname" = "iriverh120" ]; then
456 while [ $cont = "1" ]; do
458 if [ "$interact" ]; then
461 option
=`echo "$atype" | cut -c 1`
466 if [ "yes" = "$profile" ]; then
467 echo "Debug is incompatible with profiling"
469 echo "DEBUG build enabled"
474 echo "logf() support enabled"
478 echo "Using Rockbox' small C library"
479 extradefines
="$extradefines -DHAVE_ROCKBOX_C_LIBRARY"
482 echo "Including test plugins"
483 extradefines
="$extradefines -DHAVE_TEST_PLUGINS"
486 echo "bootchart enabled (logf also enabled)"
491 echo "Simulator build enabled"
495 if [ "yes" = "$use_debug" ]; then
496 echo "Profiling is incompatible with debug"
498 echo "Profiling support is enabled"
503 echo "Voice build selected"
507 if [ "$memory" = "2" ]; then
509 echo "Memory size selected: 8MB"
513 if [ "$modelname" = "archosplayer" ]; then
514 have_ata_poweroff
="#define HAVE_ATA_POWER_OFF"
515 echo "ATA power off enabled"
519 if [ "$t_model" = "ondio" ]; then
520 have_backlight
="#define HAVE_BACKLIGHT"
521 echo "Backlight functions enabled"
525 if [ "$modelname" = "iaudiom5" ]; then
526 have_fmradio_in
="#define HAVE_FMRADIO_IN"
527 echo "FM radio functions enabled"
531 if [ "$modelname" = "iriverh120" ]; then
532 config_rtc
="#define CONFIG_RTC RTC_DS1339_DS3231"
533 have_rtc_alarm
="#define HAVE_RTC_ALARM"
534 echo "RTC functions enabled (DS1339/DS3231)"
538 echo "Enabling Windows 32 cross-compiling"
539 win32crosscompile
="yes"
541 "") # Match enter press when finished with advanced options
545 echo "[ERROR] Option $option unsupported"
548 if [ "$interact" ]; then
549 btype
="$btype$option"
551 atype
=`echo "$atype" | cut -c 2-`
552 [ "$atype" ] || cont
=0
557 if [ "yes" = "$voice" ]; then
558 # Ask about languages to build
560 voicelanguage
=`whichlang`
561 echo "Voice language set to $voicelanguage"
563 # Configure encoder and TTS engine for each language
564 for thislang
in `echo $voicelanguage | sed 's/,/ /g'`; do
565 voiceconfig
"$thislang"
568 if [ "yes" = "$use_debug" ]; then
570 GCCOPTS
="$GCCOPTS -g -DDEBUG"
572 if [ "yes" = "$logf" ]; then
573 use_logf
="#define ROCKBOX_HAS_LOGF 1"
575 if [ "yes" = "$bootchart" ]; then
576 use_bootchart
="#define DO_BOOTCHART 1"
578 if [ "yes" = "$simulator" ]; then
580 extradefines
="$extradefines -DSIMULATOR"
584 if [ "yes" = "$profile" ]; then
585 extradefines
="$extradefines -DRB_PROFILE"
586 PROFILE_OPTS
="-finstrument-functions"
590 # Configure voice settings
593 if [ ! "$ARG_TTS" ]; then
594 echo "Building $thislang voice for $modelname. Select options"
598 if [ -n "`findtool flite`" ]; then
602 DEFAULT_TTS_OPTS
=$FLITE_OPTS
603 DEFAULT_NOISEFLOOR
="500"
606 if [ -n "`findtool espeak`" ]; then
610 DEFAULT_TTS_OPTS
=$ESPEAK_OPTS
611 DEFAULT_NOISEFLOOR
="500"
614 if [ -n "`findtool festival`" ]; then
615 FESTIVAL
="(F)estival "
618 FESTIVAL_OPTS
="--language italian"
621 FESTIVAL_OPTS
="--language spanish"
624 FESTIVAL_OPTS
="--language finnish"
627 FESTIVAL_OPTS
="--language czech"
633 DEFAULT_TTS
="festival"
634 DEFAULT_TTS_OPTS
=$FESTIVAL_OPTS
635 DEFAULT_NOISEFLOOR
="500"
638 if [ -n "`findtool swift`" ]; then
642 DEFAULT_TTS_OPTS
=$SWIFT_OPTS
643 DEFAULT_NOISEFLOOR
="500"
646 # Allow SAPI if Windows is in use
647 if [ -n "`findtool winver`" ]; then
651 DEFAULT_TTS_OPTS
=$SAPI_OPTS
652 DEFAULT_NOISEFLOOR
="500"
656 if [ "$FESTIVAL" = "$FLITE" ] && [ "$FLITE" = "$ESPEAK" ] && [ "$ESPEAK" = "$SAPI" ] && [ "$SAPI" = "$SWIFT" ]; then
657 echo "You need Festival, eSpeak or Flite in your path, or SAPI available to build voice files"
661 if [ "$ARG_TTS" ]; then
664 echo "TTS engine to use: ${FLITE}${FESTIVAL}${ESPEAK}${SAPI}${SWIFT}(${DEFAULT_CHOICE})?"
667 advopts
="$advopts --tts=$option"
671 NOISEFLOOR
="500" # TODO: check this value
677 TTS_OPTS
=$ESPEAK_OPTS
680 TTS_ENGINE
="festival"
682 TTS_OPTS
=$FESTIVAL_OPTS
695 TTS_ENGINE
=$DEFAULT_TTS
696 TTS_OPTS
=$DEFAULT_TTS_OPTS
697 NOISEFLOOR
=$DEFAULT_NOISEFLOOR
699 echo "Using $TTS_ENGINE for TTS"
701 # Select which voice to use for Festival
702 if [ "$TTS_ENGINE" = "festival" ]; then
703 voicelist
=`echo "(voice.list)"|festival -i 2>/dev/null |tr "\n" " "|sed -e 's/.*festival> (\(.*\)) festival>/\1/'|sort`
704 for voice
in $voicelist; do
705 TTS_FESTIVAL_VOICE
="$voice" # Default choice
708 if [ "$ARG_VOICE" ]; then
712 for voice
in $voicelist; do
713 printf "%3d. %s\n" "$i" "$voice"
716 printf "Please select which Festival voice to use (default is $TTS_FESTIVAL_VOICE): "
720 for voice
in $voicelist; do
721 if [ "$i" = "$CHOICE" -o "$voice" = "$CHOICE" ]; then
722 TTS_FESTIVAL_VOICE
="$voice"
726 advopts
="$advopts --voice=$CHOICE"
727 echo "Festival voice set to $TTS_FESTIVAL_VOICE"
728 echo "(voice_$TTS_FESTIVAL_VOICE)" > festival-prolog.scm
731 # Read custom tts options from command line
732 if [ "$ARG_TTSOPTS" ]; then
733 TTS_OPTS
="$ARG_TTSOPTS"
734 advopts
="$advopts --ttsopts='$TTS_OPTS'"
735 echo "$TTS_ENGINE options set to $TTS_OPTS"
738 if [ "$swcodec" = "yes" ]; then
741 ENC_OPTS
="-q 4 -c 10"
743 if [ -n "`findtool lame`" ]; then
746 ENC_OPTS
="--resample 12 -t -m m -h -V 9.999 -S -B 64 --vbr-new"
748 echo "You need LAME in the system path to build voice files for"
749 echo "HWCODEC targets."
754 echo "Using $ENCODER for encoding voice clips"
756 # Read custom encoder options from command line
757 if [ "$ARG_ENCOPTS" ]; then
758 ENC_OPTS
="$ARG_ENCOPTS"
759 advopts
="$advopts --encopts='$ENC_OPTS'"
760 echo "$ENCODER options set to $ENC_OPTS"
764 if [ -n "`findtool cygpath`" ]; then
765 TEMPDIR
=`cygpath . -a -w`
770 # figure out which languages that are around
771 for file in $rootdir/apps
/lang
/*.lang
; do
772 clean
=`basename $file .lang`
773 langs
="$langs $clean"
776 if [ "$ARG_LANG" ]; then
779 echo "Select a number for the language to use (default is english)"
780 # FIXME The multiple-language feature is currently broken
781 # echo "You may enter a comma-separated list of languages to build"
784 for one
in $langs; do
790 advopts
="$advopts --language=$pick"
795 # Allow the user to pass a comma-separated list of langauges
796 for thispick
in `echo $pick | sed 's/,/ /g'`; do
798 for one
in $langs; do
799 # Accept both the language number and name
800 if [ "$num" = "$thispick" ] ||
[ "$thispick" = "$one" ]; then
801 if [ "$output" = "" ]; then
810 if [ -z "$output" ]; then
818 echo "Rockbox configure script."
819 echo "Invoke this in a directory to generate a Makefile to build Rockbox"
820 echo "Do *NOT* run this within the tools directory!"
823 Usage: configure [OPTION]...
825 --target=TARGET Sets the target, TARGET can be either the target ID or
826 corresponding string. Run without this option to see all
829 --ram=RAM Sets the RAM for certain targets. Even though any number
830 is accepted, not every number is correct. The default
831 value will be applied, if you entered a wrong number
832 (which depends on the target). Watch the output. Run
833 without this option if you are not sure which the right
836 --type=TYPE Sets the build type. Shortcuts are also valid.
837 Run without this option to see all available types.
838 Multiple values are allowed and managed in the input
839 order. So --type=b stands for Bootloader build, while
840 --type=ab stands for "Backlight MOD" build.
842 --language=LANG Set the language used for voice generation (used only if
845 --tts=ENGINE Set the TTS engine used for voice generation (used only
848 --voice=VOICE Set voice to use with selected TTS (used only if TYPE is
851 --ttsopts=OPTS Set TTS engine manual options (used only if TYPE is AV).
853 --encopts=OPTS Set encoder manual options (used only if ATYPE is AV).
855 --rbdir=dir Use alternative rockbox directory (default: ${rbdir}).
856 This is useful for having multiple alternate builds on
857 your device that you can load with ROLO. However as the
858 bootloader looks for .rockbox you won't be able to boot
861 --ccache Enable ccache use (done by default these days)
862 --no-ccache Disable ccache use
864 --eabi Make configure prefer toolchains that are able to compile
865 for the new ARM standard abi EABI
866 --no-eabi The opposite of --eabi (prefer old non-eabi toolchains)
867 --thumb Build with -mthumb (for ARM builds)
868 --no-thumb The opposite of --thumb (don't use thumb even for targets
869 where this is the default
870 --prefix Target installation directory
871 --help Shows this message (must not be used with other options)
893 --ccache) ARG_CCACHE
=1;;
894 --no-ccache) ARG_CCACHE
=0;;
895 --encopts=*) ARG_ENCOPTS
=`echo "$arg" | cut -d = -f 2`;;
896 --language=*) ARG_LANG
=`echo "$arg" | cut -d = -f 2`;;
897 --ram=*) ARG_RAM
=`echo "$arg" | cut -d = -f 2`;;
898 --rbdir=*) ARG_RBDIR
=`echo "$arg" | cut -d = -f 2`;;
899 --target=*) ARG_TARGET
=`echo "$arg" | cut -d = -f 2`;;
900 --tts=*) ARG_TTS
=`echo "$arg" | cut -d = -f 2`;;
901 --ttsopts=*) ARG_TTSOPTS
=`echo "$arg" | cut -d = -f 2`;;
902 --type=*) ARG_TYPE
=`echo "$arg" | cut -d = -f 2`;;
903 --voice=*) ARG_VOICE
=`echo "$arg" | cut -d = -f 2`;;
904 --eabi) ARG_ARM_EABI
=1;;
905 --no-eabi) ARG_ARM_EABI
=0;;
906 --thumb) ARG_ARM_THUMB
=1;;
907 --no-thumb) ARG_ARM_THUMB
=0;;
908 --prefix=*) PREFIX
=`echo "$arg" | cut -d = -f 2`;;
910 *) err
=1; echo "[ERROR] Option '$arg' unsupported";;
917 if [ "$TMPDIR" != "" ]; then
922 echo Using temporary directory
$tmpdir
924 if test -r "configure"; then
925 # this is a check for a configure script in the current directory, it there
926 # is one, try to figure out if it is this one!
928 if { grep "^# Jukebox" configure
>/dev
/null
2>&1 ; } then
929 echo "WEEEEEEEEP. Don't run this configure script within the tools directory."
930 echo "It will only cause you pain and grief. Instead do this:"
933 echo " mkdir build-dir"
935 echo " ../tools/configure"
937 echo "Much happiness will arise from this. Enjoy"
942 # get our current directory
945 if { echo $pwd |
grep " "; } then
946 echo "You're running this script in a path that contains space. The build"
947 echo "system is unfortunately not clever enough to deal with this. Please"
948 echo "run the script from a different path, rename the path or fix the build"
953 if [ -z "$rootdir" ]; then
954 ##################################################################
955 # Figure out where the source code root is!
957 rootdir
=`dirname $0`/..
/
959 #####################################################################
960 # Convert the possibly relative directory name to an absolute version
966 # cd back to the build dir
971 appsdir
='\$(ROOTDIR)/apps'
972 firmdir
='\$(ROOTDIR)/firmware'
973 toolsdir
='\$(ROOTDIR)/tools'
976 ##################################################################
977 # Figure out target platform
980 if [ "$ARG_TARGET" ]; then
983 echo "Enter target platform:"
985 ==Archos== ==iriver== ==Apple iPod==
986 0) Player/Studio 10) H120/H140 20) Color/Photo
987 1) Recorder 11) H320/H340 21) Nano 1G
988 2) FM Recorder 12) iHP-100/110/115 22) Video
989 3) Recorder v2 13) iFP-790 23) 3G
990 4) Ondio SP 14) H10 20Gb 24) 4G Grayscale
991 5) Ondio FM 15) H10 5/6Gb 25) Mini 1G
993 ==Toshiba== 27) 1G, 2G
994 ==Cowon/iAudio== 40) Gigabeat F/X 28) Nano 2G
995 30) X5/X5V/X5L 41) Gigabeat S
996 31) M5/M5L ==SanDisk==
997 32) 7 ==Olympus= 50) Sansa e200
998 33) D2 70) M:Robe 500 51) Sansa e200R
999 34) M3/M3L 71) M:Robe 100 52) Sansa c200
1001 ==Creative== ==Philips== 54) Sansa c100
1002 90) Zen Vision:M 30GB 100) GoGear SA9200 55) Sansa Clip
1003 91) Zen Vision:M 60GB 101) GoGear HDD1630/ 56) Sansa e200v2
1004 92) Zen Vision HDD1830 57) Sansa m200v4
1005 102) GoGear HDD6330 58) Sansa Fuze
1006 ==Onda== 59) Sansa c200v2
1007 120) VX747 ==Meizu== 60) Sansa Clipv2
1008 121) VX767 110) M6SL 61) Sansa View
1009 122) VX747+ 111) M6SP 62) Sansa Clip+
1010 123) VX777 112) M3 63) Sansa Fuze v2
1013 ==Samsung== ==Tatung== 80) DAX 1GB MP3/DAB
1014 140) YH-820 150) Elio TPJ-1022
1015 141) YH-920 ==Lyre project==
1016 142) YH-925 ==Packard Bell== 130) Lyre proto 1
1017 143) YP-S3 160) Vibe 500 131) Mini2440
1019 ==MPIO== == Application ==
1020 170) HD200 200) Application
1027 # Set of tools built for all target platforms:
1028 toolset
="rdf2binary convbdf codepages"
1030 # Toolsets for some target families:
1031 archosbitmaptools
="$toolset scramble descramble sh2d uclpack bmp2rb"
1032 iriverbitmaptools
="$toolset scramble descramble mkboot bmp2rb"
1033 iaudiobitmaptools
="$toolset scramble descramble mkboot bmp2rb"
1034 ipodbitmaptools
="$toolset scramble bmp2rb"
1035 gigabeatbitmaptools
="$toolset scramble descramble bmp2rb"
1036 tccbitmaptools
="$toolset scramble bmp2rb"
1037 # generic is used by IFP, Meizu and Onda
1038 genericbitmaptools
="$toolset bmp2rb"
1039 # scramble is used by all other targets
1040 scramblebitmaptools
="$genericbitmaptools scramble"
1043 # ---- For each target ----
1046 # target_id: a unique number identifying this target, IS NOT the menu number.
1047 # Just use the currently highest number+1 when you add a new
1049 # modelname: short model name used all over to identify this target
1050 # memory: number of megabytes of RAM this target has. If the amount can
1051 # be selected by the size prompt, let memory be unset here
1052 # target: -Ddefine passed to the build commands to make the correct
1053 # config-*.h file get included etc
1054 # tool: the tool that takes a plain binary and converts that into a
1055 # working "firmware" file for your target
1056 # output: the final output file name
1057 # boottool: the tool that takes a plain binary and generates a bootloader
1058 # file for your target (or blank to use $tool)
1059 # bootoutput:the final output file name for the bootloader (or blank to use
1061 # appextra: passed to the APPEXTRA variable in the Makefiles.
1062 # TODO: add proper explanation
1063 # archosrom: used only for Archos targets that build a special flashable .ucl
1065 # flash: name of output for flashing, for targets where there's a special
1066 # file output for this.
1067 # plugins: set to 'yes' to build the plugins. Early development builds can
1068 # set this to no in the early stages to have an easier life for a
1070 # swcodec: set 'yes' on swcodec targets
1071 # toolset: lists what particular tools in the tools/ directory that this
1072 # target needs to have built prior to building Rockbox
1075 # *cc: sets up gcc and compiler options for your target builds. Note
1076 # that if you select a simulator build, the compiler selection is
1077 # overridden later in the script.
1083 modelname
="archosplayer"
1084 target
="-DARCHOS_PLAYER"
1086 tool
="$rootdir/tools/scramble"
1088 appextra
="player:gui"
1089 archosrom
="$pwd/rombox.ucl"
1090 flash
="$pwd/rockbox.ucl"
1094 # toolset is the tools within the tools directory that we build for
1095 # this particular target.
1096 toolset
="$toolset scramble descramble sh2d player_unifont uclpack"
1098 # Note: the convbdf is present in the toolset just because: 1) the
1099 # firmware/Makefile assumes it is present always, and 2) we will need it when we
1100 # build the player simulator
1103 t_manufacturer
="archos"
1109 modelname
="archosrecorder"
1110 target
="-DARCHOS_RECORDER"
1112 tool
="$rootdir/tools/scramble"
1113 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1114 bmp2rb_native
="$rootdir/tools/bmp2rb -f 0"
1116 appextra
="recorder:gui:radio"
1117 #archosrom="$pwd/rombox.ucl"
1118 flash
="$pwd/rockbox.ucl"
1121 # toolset is the tools within the tools directory that we build for
1122 # this particular target.
1123 toolset
=$archosbitmaptools
1125 t_manufacturer
="archos"
1131 modelname
="archosfmrecorder"
1132 target
="-DARCHOS_FMRECORDER"
1134 tool
="$rootdir/tools/scramble -fm"
1135 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1136 bmp2rb_native
="$rootdir/tools/bmp2rb -f 0"
1138 appextra
="recorder:gui:radio"
1139 #archosrom="$pwd/rombox.ucl"
1140 flash
="$pwd/rockbox.ucl"
1143 # toolset is the tools within the tools directory that we build for
1144 # this particular target.
1145 toolset
=$archosbitmaptools
1147 t_manufacturer
="archos"
1153 modelname
="archosrecorderv2"
1154 target
="-DARCHOS_RECORDERV2"
1156 tool
="$rootdir/tools/scramble -v2"
1157 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1158 bmp2rb_native
="$rootdir/tools/bmp2rb -f 0"
1160 appextra
="recorder:gui:radio"
1161 #archosrom="$pwd/rombox.ucl"
1162 flash
="$pwd/rockbox.ucl"
1165 # toolset is the tools within the tools directory that we build for
1166 # this particular target.
1167 toolset
=$archosbitmaptools
1169 t_manufacturer
="archos"
1175 modelname
="archosondiosp"
1176 target
="-DARCHOS_ONDIOSP"
1178 tool
="$rootdir/tools/scramble -osp"
1179 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1180 bmp2rb_native
="$rootdir/tools/bmp2rb -f 0"
1182 appextra
="recorder:gui:radio"
1183 #archosrom="$pwd/rombox.ucl"
1184 flash
="$pwd/rockbox.ucl"
1187 # toolset is the tools within the tools directory that we build for
1188 # this particular target.
1189 toolset
=$archosbitmaptools
1191 t_manufacturer
="archos"
1197 modelname
="archosondiofm"
1198 target
="-DARCHOS_ONDIOFM"
1200 tool
="$rootdir/tools/scramble -ofm"
1201 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1202 bmp2rb_native
="$rootdir/tools/bmp2rb -f 0"
1204 appextra
="recorder:gui:radio"
1205 #archosrom="$pwd/rombox.ucl"
1206 flash
="$pwd/rockbox.ucl"
1209 toolset
=$archosbitmaptools
1211 t_manufacturer
="archos"
1217 modelname
="archosav300"
1218 target
="-DARCHOS_AV300"
1221 tool
="$rootdir/tools/scramble -mm=C"
1222 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1223 bmp2rb_native
="$rootdir/tools/bmp2rb -f 6"
1225 appextra
="recorder:gui:radio"
1228 # toolset is the tools within the tools directory that we build for
1229 # this particular target.
1230 toolset
="$toolset scramble descramble bmp2rb"
1231 # architecture, manufacturer and model for the target-tree build
1233 t_manufacturer
="archos"
1239 modelname
="iriverh120"
1240 target
="-DIRIVER_H120"
1243 tool
="$rootdir/tools/scramble -add=h120"
1244 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1245 bmp2rb_native
="$rootdir/tools/bmp2rb -f 2"
1246 bmp2rb_remotemono
="$rootdir/tools/bmp2rb -f 0"
1247 bmp2rb_remotenative
="$rootdir/tools/bmp2rb -f 0"
1248 output
="rockbox.iriver"
1249 bootoutput
="bootloader.iriver"
1250 appextra
="recorder:gui:radio"
1251 flash
="$pwd/rombox.iriver"
1254 # toolset is the tools within the tools directory that we build for
1255 # this particular target.
1256 toolset
=$iriverbitmaptools
1258 t_manufacturer
="iriver"
1264 modelname
="iriverh300"
1265 target
="-DIRIVER_H300"
1268 tool
="$rootdir/tools/scramble -add=h300"
1269 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1270 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
1271 bmp2rb_remotemono
="$rootdir/tools/bmp2rb -f 0"
1272 bmp2rb_remotenative
="$rootdir/tools/bmp2rb -f 0"
1273 output
="rockbox.iriver"
1274 appextra
="recorder:gui:radio"
1277 # toolset is the tools within the tools directory that we build for
1278 # this particular target.
1279 toolset
=$iriverbitmaptools
1281 t_manufacturer
="iriver"
1287 modelname
="iriverh100"
1288 target
="-DIRIVER_H100"
1291 tool
="$rootdir/tools/scramble -add=h100"
1292 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1293 bmp2rb_native
="$rootdir/tools/bmp2rb -f 2"
1294 bmp2rb_remotemono
="$rootdir/tools/bmp2rb -f 0"
1295 bmp2rb_remotenative
="$rootdir/tools/bmp2rb -f 0"
1296 output
="rockbox.iriver"
1297 bootoutput
="bootloader.iriver"
1298 appextra
="recorder:gui:radio"
1299 flash
="$pwd/rombox.iriver"
1302 # toolset is the tools within the tools directory that we build for
1303 # this particular target.
1304 toolset
=$iriverbitmaptools
1306 t_manufacturer
="iriver"
1312 modelname
="iriverifp7xx"
1313 target
="-DIRIVER_IFP7XX"
1317 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1318 bmp2rb_native
="$rootdir/tools/bmp2rb -f 0"
1319 output
="rockbox.wma"
1320 appextra
="recorder:gui:radio"
1323 # toolset is the tools within the tools directory that we build for
1324 # this particular target.
1325 toolset
=$genericbitmaptools
1327 t_manufacturer
="pnx0101"
1328 t_model
="iriver-ifp7xx"
1333 modelname
="iriverh10"
1334 target
="-DIRIVER_H10"
1337 tool
="$rootdir/tools/scramble -mi4v3 -model=h10 -type=RBOS"
1338 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1339 bmp2rb_native
="$rootdir/tools/bmp2rb -f 5"
1340 output
="rockbox.mi4"
1341 appextra
="recorder:gui:radio"
1344 boottool
="$rootdir/tools/scramble -mi4v3 -model=h10 -type=RBBL"
1345 bootoutput
="H10_20GC.mi4"
1346 # toolset is the tools within the tools directory that we build for
1347 # this particular target.
1348 toolset
=$scramblebitmaptools
1349 # architecture, manufacturer and model for the target-tree build
1351 t_manufacturer
="iriver"
1357 modelname
="iriverh10_5gb"
1358 target
="-DIRIVER_H10_5GB"
1361 tool
="$rootdir/tools/scramble -mi4v2 -model=h105 -type=RBOS"
1362 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1363 bmp2rb_native
="$rootdir/tools/bmp2rb -f 5"
1364 output
="rockbox.mi4"
1365 appextra
="recorder:gui:radio"
1368 boottool
="$rootdir/tools/scramble -mi4v2 -model=h105 -type=RBBL"
1369 bootoutput
="H10.mi4"
1370 # toolset is the tools within the tools directory that we build for
1371 # this particular target.
1372 toolset
=$scramblebitmaptools
1373 # architecture, manufacturer and model for the target-tree build
1375 t_manufacturer
="iriver"
1381 modelname
="ipodcolor"
1382 target
="-DIPOD_COLOR"
1385 tool
="$rootdir/tools/scramble -add=ipco"
1386 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1387 bmp2rb_native
="$rootdir/tools/bmp2rb -f 5"
1388 output
="rockbox.ipod"
1389 appextra
="recorder:gui:radio"
1392 bootoutput
="bootloader-$modelname.ipod"
1393 # toolset is the tools within the tools directory that we build for
1394 # this particular target.
1395 toolset
=$ipodbitmaptools
1396 # architecture, manufacturer and model for the target-tree build
1398 t_manufacturer
="ipod"
1404 modelname
="ipodnano1g"
1405 target
="-DIPOD_NANO"
1408 tool
="$rootdir/tools/scramble -add=nano"
1409 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1410 bmp2rb_native
="$rootdir/tools/bmp2rb -f 5"
1411 output
="rockbox.ipod"
1412 appextra
="recorder:gui:radio"
1415 bootoutput
="bootloader-$modelname.ipod"
1416 # toolset is the tools within the tools directory that we build for
1417 # this particular target.
1418 toolset
=$ipodbitmaptools
1419 # architecture, manufacturer and model for the target-tree build
1421 t_manufacturer
="ipod"
1427 modelname
="ipodvideo"
1428 target
="-DIPOD_VIDEO"
1430 tool
="$rootdir/tools/scramble -add=ipvd"
1431 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1432 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
1433 output
="rockbox.ipod"
1434 appextra
="recorder:gui:radio"
1437 bootoutput
="bootloader-$modelname.ipod"
1438 # toolset is the tools within the tools directory that we build for
1439 # this particular target.
1440 toolset
=$ipodbitmaptools
1441 # architecture, manufacturer and model for the target-tree build
1443 t_manufacturer
="ipod"
1453 tool
="$rootdir/tools/scramble -add=ip3g"
1454 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1455 bmp2rb_native
="$rootdir/tools/bmp2rb -f 6"
1456 output
="rockbox.ipod"
1457 appextra
="recorder:gui:radio"
1460 bootoutput
="bootloader-$modelname.ipod"
1461 # toolset is the tools within the tools directory that we build for
1462 # this particular target.
1463 toolset
=$ipodbitmaptools
1464 # architecture, manufacturer and model for the target-tree build
1466 t_manufacturer
="ipod"
1476 tool
="$rootdir/tools/scramble -add=ip4g"
1477 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1478 bmp2rb_native
="$rootdir/tools/bmp2rb -f 6"
1479 output
="rockbox.ipod"
1480 appextra
="recorder:gui:radio"
1483 bootoutput
="bootloader-$modelname.ipod"
1484 # toolset is the tools within the tools directory that we build for
1485 # this particular target.
1486 toolset
=$ipodbitmaptools
1487 # architecture, manufacturer and model for the target-tree build
1489 t_manufacturer
="ipod"
1495 modelname
="ipodmini1g"
1496 target
="-DIPOD_MINI"
1499 tool
="$rootdir/tools/scramble -add=mini"
1500 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1501 bmp2rb_native
="$rootdir/tools/bmp2rb -f 6"
1502 output
="rockbox.ipod"
1503 appextra
="recorder:gui:radio"
1506 bootoutput
="bootloader-$modelname.ipod"
1507 # toolset is the tools within the tools directory that we build for
1508 # this particular target.
1509 toolset
=$ipodbitmaptools
1510 # architecture, manufacturer and model for the target-tree build
1512 t_manufacturer
="ipod"
1518 modelname
="ipodmini2g"
1519 target
="-DIPOD_MINI2G"
1522 tool
="$rootdir/tools/scramble -add=mn2g"
1523 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1524 bmp2rb_native
="$rootdir/tools/bmp2rb -f 6"
1525 output
="rockbox.ipod"
1526 appextra
="recorder:gui:radio"
1529 bootoutput
="bootloader-$modelname.ipod"
1530 # toolset is the tools within the tools directory that we build for
1531 # this particular target.
1532 toolset
=$ipodbitmaptools
1533 # architecture, manufacturer and model for the target-tree build
1535 t_manufacturer
="ipod"
1541 modelname
="ipod1g2g"
1542 target
="-DIPOD_1G2G"
1545 tool
="$rootdir/tools/scramble -add=1g2g"
1546 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1547 bmp2rb_native
="$rootdir/tools/bmp2rb -f 6"
1548 output
="rockbox.ipod"
1549 appextra
="recorder:gui:radio"
1552 bootoutput
="bootloader-$modelname.ipod"
1553 # toolset is the tools within the tools directory that we build for
1554 # this particular target.
1555 toolset
=$ipodbitmaptools
1556 # architecture, manufacturer and model for the target-tree build
1558 t_manufacturer
="ipod"
1564 modelname
="ipodnano2g"
1565 target
="-DIPOD_NANO2G"
1568 tool
="$rootdir/tools/scramble -add=nn2g"
1569 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1570 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
1571 output
="rockbox.ipod"
1572 appextra
="recorder:gui:radio"
1575 bootoutput
="bootloader-$modelname.ipod"
1576 # toolset is the tools within the tools directory that we build for
1577 # this particular target.
1578 toolset
=$ipodbitmaptools
1579 # architecture, manufacturer and model for the target-tree build
1581 t_manufacturer
="s5l8700"
1582 t_model
="ipodnano2g"
1587 modelname
="iaudiox5"
1588 target
="-DIAUDIO_X5"
1591 tool
="$rootdir/tools/scramble -add=iax5"
1592 boottool
="$rootdir/tools/scramble -iaudiox5"
1593 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1594 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
1595 bmp2rb_remotemono
="$rootdir/tools/bmp2rb -f 0"
1596 bmp2rb_remotenative
="$rootdir/tools/bmp2rb -f 7"
1597 output
="rockbox.iaudio"
1598 bootoutput
="x5_fw.bin"
1599 appextra
="recorder:gui:radio"
1602 # toolset is the tools within the tools directory that we build for
1603 # this particular target.
1604 toolset
="$iaudiobitmaptools"
1605 # architecture, manufacturer and model for the target-tree build
1607 t_manufacturer
="iaudio"
1613 modelname
="iaudiom5"
1614 target
="-DIAUDIO_M5"
1617 tool
="$rootdir/tools/scramble -add=iam5"
1618 boottool
="$rootdir/tools/scramble -iaudiom5"
1619 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1620 bmp2rb_native
="$rootdir/tools/bmp2rb -f 2"
1621 bmp2rb_remotemono
="$rootdir/tools/bmp2rb -f 0"
1622 bmp2rb_remotenative
="$rootdir/tools/bmp2rb -f 7"
1623 output
="rockbox.iaudio"
1624 bootoutput
="m5_fw.bin"
1625 appextra
="recorder:gui:radio"
1628 # toolset is the tools within the tools directory that we build for
1629 # this particular target.
1630 toolset
="$iaudiobitmaptools"
1631 # architecture, manufacturer and model for the target-tree build
1633 t_manufacturer
="iaudio"
1643 tool
="$rootdir/tools/scramble -add=i7"
1644 boottool
="$rootdir/tools/scramble -tcc=crc"
1645 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1646 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
1647 output
="rockbox.iaudio"
1648 appextra
="recorder:gui:radio"
1651 bootoutput
="I7_FW.BIN"
1652 # toolset is the tools within the tools directory that we build for
1653 # this particular target.
1654 toolset
="$tccbitmaptools"
1655 # architecture, manufacturer and model for the target-tree build
1657 t_manufacturer
="tcc77x"
1667 tool
="$rootdir/tools/scramble -add=d2"
1669 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1670 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
1672 bootoutput
="bootloader-cowond2.bin"
1673 appextra
="recorder:gui:radio"
1676 toolset
="$tccbitmaptools"
1677 # architecture, manufacturer and model for the target-tree build
1679 t_manufacturer
="tcc780x"
1685 modelname
="iaudiom3"
1686 target
="-DIAUDIO_M3"
1689 tool
="$rootdir/tools/scramble -add=iam3"
1690 boottool
="$rootdir/tools/scramble -iaudiom3"
1691 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1692 bmp2rb_native
="$rootdir/tools/bmp2rb -f 7"
1693 output
="rockbox.iaudio"
1694 bootoutput
="cowon_m3.bin"
1695 appextra
="recorder:gui:radio"
1698 # toolset is the tools within the tools directory that we build for
1699 # this particular target.
1700 toolset
="$iaudiobitmaptools"
1701 # architecture, manufacturer and model for the target-tree build
1703 t_manufacturer
="iaudio"
1709 modelname
="gigabeatfx"
1710 target
="-DGIGABEAT_F"
1713 tool
="$rootdir/tools/scramble -add=giga"
1714 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1715 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
1716 output
="rockbox.gigabeat"
1717 appextra
="recorder:gui:radio"
1720 toolset
=$gigabeatbitmaptools
1721 boottool
="$rootdir/tools/scramble -gigabeat"
1722 bootoutput
="FWIMG01.DAT"
1723 # architecture, manufacturer and model for the target-tree build
1725 t_manufacturer
="s3c2440"
1726 t_model
="gigabeat-fx"
1731 modelname
="gigabeats"
1732 target
="-DGIGABEAT_S"
1735 tool
="$rootdir/tools/scramble -add=gigs"
1736 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1737 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
1738 output
="rockbox.gigabeat"
1739 appextra
="recorder:gui:radio"
1742 toolset
="$gigabeatbitmaptools"
1743 boottool
="$rootdir/tools/scramble -gigabeats"
1745 # architecture, manufacturer and model for the target-tree build
1747 t_manufacturer
="imx31"
1748 t_model
="gigabeat-s"
1753 modelname
="mrobe500"
1754 target
="-DMROBE_500"
1757 tool
="$rootdir/tools/scramble -add=m500"
1758 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1759 bmp2rb_native
="$rootdir/tools/bmp2rb -f 8"
1760 bmp2rb_remotemono
="$rootdir/tools/bmp2rb -f 0"
1761 bmp2rb_remotenative
="$rootdir/tools/bmp2rb -f 0"
1762 output
="rockbox.mrobe500"
1763 appextra
="recorder:gui:radio"
1766 toolset
=$gigabeatbitmaptools
1768 bootoutput
="rockbox.mrboot"
1769 # architecture, manufacturer and model for the target-tree build
1771 t_manufacturer
="tms320dm320"
1777 modelname
="mrobe100"
1778 target
="-DMROBE_100"
1781 tool
="$rootdir/tools/scramble -mi4v2 -model=m100 -type=RBOS"
1782 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1783 bmp2rb_native
="$rootdir/tools/bmp2rb -f 0"
1784 bmp2rb_remotemono
="$rootdir/tools/bmp2rb -f 0"
1785 bmp2rb_remotenative
="$rootdir/tools/bmp2rb -f 0"
1786 output
="rockbox.mi4"
1787 appextra
="recorder:gui:radio"
1790 boottool
="$rootdir/tools/scramble -mi4v2 -model=m100 -type=RBBL"
1791 bootoutput
="pp5020.mi4"
1792 # toolset is the tools within the tools directory that we build for
1793 # this particular target.
1794 toolset
=$scramblebitmaptools
1795 # architecture, manufacturer and model for the target-tree build
1797 t_manufacturer
="olympus"
1803 modelname
="logikdax"
1804 target
="-DLOGIK_DAX"
1807 tool
="$rootdir/tools/scramble -add=ldax"
1808 boottool
="$rootdir/tools/scramble -tcc=crc"
1809 bootoutput
="player.rom"
1810 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1811 bmp2rb_native
="$rootdir/tools/bmp2rb -f 0"
1812 output
="rockbox.logik"
1813 appextra
="recorder:gui:radio"
1816 # toolset is the tools within the tools directory that we build for
1817 # this particular target.
1818 toolset
=$tccbitmaptools
1819 # architecture, manufacturer and model for the target-tree build
1821 t_manufacturer
="tcc77x"
1827 modelname
="zenvisionm30gb"
1828 target
="-DCREATIVE_ZVM"
1831 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1832 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
1833 tool
="$rootdir/tools/scramble -creative=zvm"
1835 output
="rockbox.zvm"
1836 appextra
="recorder:gui:radio"
1839 toolset
=$ipodbitmaptools
1840 boottool
="$rootdir/tools/scramble -creative=zvm -no-ciff"
1841 bootoutput
="rockbox.zvmboot"
1842 # architecture, manufacturer and model for the target-tree build
1844 t_manufacturer
="tms320dm320"
1845 t_model
="creative-zvm"
1850 modelname
="zenvisionm60gb"
1851 target
="-DCREATIVE_ZVM60GB"
1854 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1855 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
1856 tool
="$rootdir/tools/scramble -creative=zvm60 -no-ciff"
1858 output
="rockbox.zvm60"
1859 appextra
="recorder:gui:radio"
1862 toolset
=$ipodbitmaptools
1863 boottool
="$rootdir/tools/scramble -creative=zvm60"
1864 bootoutput
="rockbox.zvm60boot"
1865 # architecture, manufacturer and model for the target-tree build
1867 t_manufacturer
="tms320dm320"
1868 t_model
="creative-zvm"
1873 modelname
="zenvision"
1874 target
="-DCREATIVE_ZV"
1877 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1878 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
1879 tool
="$rootdir/tools/scramble -creative=zenvision -no-ciff"
1882 appextra
="recorder:gui:radio"
1885 toolset
=$ipodbitmaptools
1886 boottool
="$rootdir/tools/scramble -creative=zenvision"
1887 bootoutput
="rockbox.zvboot"
1888 # architecture, manufacturer and model for the target-tree build
1890 t_manufacturer
="tms320dm320"
1891 t_model
="creative-zvm"
1896 modelname
="sansae200"
1897 target
="-DSANSA_E200"
1898 memory
=32 # supposedly
1900 tool
="$rootdir/tools/scramble -mi4v3 -model=e200 -type=RBOS"
1901 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1902 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
1903 output
="rockbox.mi4"
1904 appextra
="recorder:gui:radio"
1907 boottool
="$rootdir/tools/scramble -mi4v3 -model=e200 -type=RBBL"
1908 bootoutput
="PP5022.mi4"
1909 # toolset is the tools within the tools directory that we build for
1910 # this particular target.
1911 toolset
=$scramblebitmaptools
1912 # architecture, manufacturer and model for the target-tree build
1914 t_manufacturer
="sandisk"
1915 t_model
="sansa-e200"
1919 # the e200R model is pretty much identical to the e200, it only has a
1920 # different option to the scramble tool when building a bootloader and
1921 # makes the bootloader output file name in all lower case.
1923 modelname
="sansae200r"
1924 target
="-DSANSA_E200"
1925 memory
=32 # supposedly
1927 tool
="$rootdir/tools/scramble -mi4v3 -model=e20r -type=RBOS"
1928 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1929 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
1930 output
="rockbox.mi4"
1931 appextra
="recorder:gui:radio"
1934 boottool
="$rootdir/tools/scramble -mi4r -model=e20r -type=RBBL"
1935 bootoutput
="pp5022.mi4"
1936 # toolset is the tools within the tools directory that we build for
1937 # this particular target.
1938 toolset
=$scramblebitmaptools
1939 # architecture, manufacturer and model for the target-tree build
1941 t_manufacturer
="sandisk"
1942 t_model
="sansa-e200"
1947 modelname
="sansac200"
1948 target
="-DSANSA_C200"
1949 memory
=32 # supposedly
1951 tool
="$rootdir/tools/scramble -mi4v3 -model=c200 -type=RBOS"
1952 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1953 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
1954 output
="rockbox.mi4"
1955 appextra
="recorder:gui:radio"
1958 boottool
="$rootdir/tools/scramble -mi4v3 -model=c200 -type=RBBL"
1959 bootoutput
="firmware.mi4"
1960 # toolset is the tools within the tools directory that we build for
1961 # this particular target.
1962 toolset
=$scramblebitmaptools
1963 # architecture, manufacturer and model for the target-tree build
1965 t_manufacturer
="sandisk"
1966 t_model
="sansa-c200"
1971 modelname
="sansam200"
1972 target
="-DSANSA_M200"
1975 tool
="$rootdir/tools/scramble -add=m200"
1976 boottool
="$rootdir/tools/scramble -tcc=crc"
1977 bootoutput
="player.rom"
1978 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
1979 bmp2rb_native
="$rootdir/tools/bmp2rb -f 0"
1980 output
="rockbox.m200"
1981 appextra
="recorder:gui:radio"
1984 # toolset is the tools within the tools directory that we build for
1985 # this particular target.
1986 toolset
=$tccbitmaptools
1987 # architecture, manufacturer and model for the target-tree build
1989 t_manufacturer
="tcc77x"
1995 modelname
="sansac100"
1996 target
="-DSANSA_C100"
1999 tool
="$rootdir/tools/scramble -add=c100"
2000 boottool
="$rootdir/tools/scramble -tcc=crc"
2001 bootoutput
="player.rom"
2002 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2003 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2004 output
="rockbox.c100"
2005 appextra
="recorder:gui:radio"
2008 # toolset is the tools within the tools directory that we build for
2009 # this particular target.
2010 toolset
=$tccbitmaptools
2011 # architecture, manufacturer and model for the target-tree build
2013 t_manufacturer
="tcc77x"
2019 modelname
="sansaclip"
2020 target
="-DSANSA_CLIP"
2022 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2023 bmp2rb_native
="$bmp2rb_mono"
2024 tool
="$rootdir/tools/scramble -add=clip"
2025 output
="rockbox.sansa"
2026 bootoutput
="bootloader-clip.sansa"
2027 appextra
="recorder:gui:radio"
2030 toolset
=$scramblebitmaptools
2032 t_manufacturer
="as3525"
2033 t_model
="sansa-clip"
2034 if [ "$ARG_ARM_THUMB" != 0 ]; then ARG_ARM_THUMB
=1; fi
2036 GCCOPTS
=`echo $GCCOPTS | sed 's/ -O / -Os /'`
2042 modelname
="sansae200v2"
2043 target
="-DSANSA_E200V2"
2045 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2046 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2047 tool
="$rootdir/tools/scramble -add=e2v2"
2048 output
="rockbox.sansa"
2049 bootoutput
="bootloader-e200v2.sansa"
2050 appextra
="recorder:gui:radio"
2053 toolset
=$scramblebitmaptools
2055 t_manufacturer
="as3525"
2056 t_model
="sansa-e200v2"
2063 modelname
="sansam200v4"
2064 target
="-DSANSA_M200V4"
2066 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2067 bmp2rb_native
="$bmp2rb_mono"
2068 tool
="$rootdir/tools/scramble -add=m2v4"
2069 output
="rockbox.sansa"
2070 bootoutput
="bootloader-m200v4.sansa"
2071 appextra
="recorder:gui:radio"
2074 toolset
=$scramblebitmaptools
2076 t_manufacturer
="as3525"
2077 t_model
="sansa-m200v4"
2078 if [ "$ARG_ARM_THUMB" != 0 ]; then ARG_ARM_THUMB
=1; fi
2080 GCCOPTS
=`echo $GCCOPTS | sed 's/ -O / -Os /'`
2086 modelname
="sansafuze"
2087 target
="-DSANSA_FUZE"
2089 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2090 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2091 tool
="$rootdir/tools/scramble -add=fuze"
2092 output
="rockbox.sansa"
2093 bootoutput
="bootloader-fuze.sansa"
2094 appextra
="recorder:gui:radio"
2097 toolset
=$scramblebitmaptools
2099 t_manufacturer
="as3525"
2100 t_model
="sansa-fuze"
2107 modelname
="sansac200v2"
2108 target
="-DSANSA_C200V2"
2109 memory
=2 # as per OF diagnosis mode
2110 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2111 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2112 tool
="$rootdir/tools/scramble -add=c2v2"
2113 output
="rockbox.sansa"
2114 bootoutput
="bootloader-c200v2.sansa"
2115 appextra
="recorder:gui:radio"
2118 # toolset is the tools within the tools directory that we build for
2119 # this particular target.
2120 toolset
=$scramblebitmaptools
2121 # architecture, manufacturer and model for the target-tree build
2123 t_manufacturer
="as3525"
2124 t_model
="sansa-c200v2"
2125 if [ "$ARG_ARM_THUMB" != 0 ]; then ARG_ARM_THUMB
=1; fi
2127 GCCOPTS
=`echo $GCCOPTS | sed 's/ -O / -Os /'`
2132 modelname
="sansaclipv2"
2133 target
="-DSANSA_CLIPV2"
2135 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2136 bmp2rb_native
="$bmp2rb_mono"
2137 tool
="$rootdir/tools/scramble -add=clv2"
2138 output
="rockbox.sansa"
2139 bootoutput
="bootloader-clipv2.sansa"
2140 appextra
="recorder:gui:radio"
2143 toolset
=$scramblebitmaptools
2145 t_manufacturer
="as3525"
2146 t_model
="sansa-clipv2"
2151 echo "Sansa View is not yet supported!"
2154 modelname
="sansaview"
2155 target
="-DSANSA_VIEW"
2158 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2159 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2160 output
="rockbox.mi4"
2164 boottool
="$rootdir/tools/scramble -mi4v3 -model=view -type=RBBL"
2165 bootoutput
="firmware.mi4"
2166 # toolset is the tools within the tools directory that we build for
2167 # this particular target.
2168 toolset
=$scramblebitmaptools
2170 t_manufacturer
="sandisk"
2171 t_model
="sansa-view"
2176 modelname
="sansaclipplus"
2177 target
="-DSANSA_CLIPPLUS"
2179 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2180 bmp2rb_native
="$bmp2rb_mono"
2181 tool
="$rootdir/tools/scramble -add=cli+"
2182 output
="rockbox.sansa"
2183 bootoutput
="bootloader-clipplus.sansa"
2184 appextra
="recorder:gui:radio"
2187 toolset
=$scramblebitmaptools
2189 t_manufacturer
="as3525"
2190 t_model
="sansa-clipplus"
2196 modelname
="sansafuzev2"
2197 target
="-DSANSA_FUZEV2"
2199 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2200 bmp2rb_native
="$rootdir/tools/bmp2rb -f 5"
2201 tool
="$rootdir/tools/scramble -add=fuz2"
2202 output
="rockbox.sansa"
2203 bootoutput
="bootloader-fuzev2.sansa"
2204 appextra
="recorder:gui:radio"
2207 toolset
=$scramblebitmaptools
2209 t_manufacturer
="as3525"
2210 t_model
="sansa-fuzev2"
2216 modelname
="tatungtpj1022"
2217 target
="-DTATUNG_TPJ1022"
2220 tool
="$rootdir/tools/scramble -add tpj2"
2221 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2222 bmp2rb_native
="$rootdir/tools/bmp2rb -f 5"
2223 output
="rockbox.elio"
2224 appextra
="recorder:gui:radio"
2227 boottool
="$rootdir/tools/scramble -mi4v2"
2228 bootoutput
="pp5020.mi4"
2229 # toolset is the tools within the tools directory that we build for
2230 # this particular target.
2231 toolset
=$scramblebitmaptools
2232 # architecture, manufacturer and model for the target-tree build
2234 t_manufacturer
="tatung"
2240 modelname
="gogearsa9200"
2241 target
="-DPHILIPS_SA9200"
2242 memory
=32 # supposedly
2244 tool
="$rootdir/tools/scramble -mi4v3 -model=9200 -type=RBOS"
2245 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2246 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2247 output
="rockbox.mi4"
2248 appextra
="recorder:gui:radio"
2251 boottool
="$rootdir/tools/scramble -mi4v3 -model=9200 -type=RBBL"
2252 bootoutput
="FWImage.ebn"
2253 # toolset is the tools within the tools directory that we build for
2254 # this particular target.
2255 toolset
=$scramblebitmaptools
2256 # architecture, manufacturer and model for the target-tree build
2258 t_manufacturer
="philips"
2264 modelname
="gogearhdd1630"
2265 target
="-DPHILIPS_HDD1630"
2266 memory
=32 # supposedly
2268 tool
="$rootdir/tools/scramble -mi4v3 -model=1630 -type=RBOS"
2269 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2270 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2271 output
="rockbox.mi4"
2272 appextra
="recorder:gui:radio"
2275 boottool
="$rootdir/tools/scramble -mi4v3 -model=1630 -type=RBBL"
2276 bootoutput
="FWImage.ebn"
2277 # toolset is the tools within the tools directory that we build for
2278 # this particular target.
2279 toolset
=$scramblebitmaptools
2280 # architecture, manufacturer and model for the target-tree build
2282 t_manufacturer
="philips"
2288 modelname
="gogearhdd6330"
2289 target
="-DPHILIPS_HDD6330"
2292 tool
="$rootdir/tools/scramble -mi4v3 -model=6330 -type=RBOS"
2293 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2294 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2295 output
="rockbox.mi4"
2296 appextra
="recorder:gui:radio"
2299 boottool
="$rootdir/tools/scramble -mi4v3 -model=6330 -type=RBBL"
2300 bootoutput
="FWImage.ebn"
2301 # toolset is the tools within the tools directory that we build for
2302 # this particular target.
2303 toolset
=$scramblebitmaptools
2304 # architecture, manufacturer and model for the target-tree build
2306 t_manufacturer
="philips"
2312 modelname
="meizum6sl"
2313 target
="-DMEIZU_M6SL"
2317 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2318 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2319 output
="rockbox.meizu"
2320 appextra
="recorder:gui:radio"
2323 toolset
=$genericbitmaptools
2325 bootoutput
="rockboot.ebn"
2326 # architecture, manufacturer and model for the target-tree build
2328 t_manufacturer
="s5l8700"
2329 t_model
="meizu-m6sl"
2334 modelname
="meizum6sp"
2335 target
="-DMEIZU_M6SP"
2339 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2340 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2341 output
="rockbox.meizu"
2342 appextra
="recorder:gui:radio"
2345 toolset
=$genericbitmaptools
2347 bootoutput
="rockboot.ebn"
2348 # architecture, manufacturer and model for the target-tree build
2350 t_manufacturer
="s5l8700"
2351 t_model
="meizu-m6sp"
2361 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2362 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2363 output
="rockbox.meizu"
2364 appextra
="recorder:gui:radio"
2367 toolset
=$genericbitmaptools
2369 bootoutput
="rockboot.ebn"
2370 # architecture, manufacturer and model for the target-tree build
2372 t_manufacturer
="s5l8700"
2378 modelname
="ondavx747"
2379 target
="-DONDA_VX747"
2382 tool
="$rootdir/tools/scramble -add=x747"
2383 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2384 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2385 output
="rockbox.vx747"
2386 appextra
="recorder:gui:radio"
2389 toolset
=$genericbitmaptools
2390 boottool
="$rootdir/tools/scramble -ccpmp"
2391 bootoutput
="ccpmp.bin"
2392 # architecture, manufacturer and model for the target-tree build
2394 t_manufacturer
="ingenic_jz47xx"
2395 t_model
="onda_vx747"
2400 modelname
="ondavx767"
2401 target
="-DONDA_VX767"
2405 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2406 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2407 output
="rockbox.vx767"
2408 appextra
="recorder:gui:radio"
2411 toolset
=$genericbitmaptools
2412 boottool
="$rootdir/tools/scramble -ccpmp"
2413 bootoutput
="ccpmp.bin"
2414 # architecture, manufacturer and model for the target-tree build
2416 t_manufacturer
="ingenic_jz47xx"
2417 t_model
="onda_vx767"
2422 modelname
="ondavx747p"
2423 target
="-DONDA_VX747P"
2426 tool
="$rootdir/tools/scramble -add=747p"
2427 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2428 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2429 output
="rockbox.vx747p"
2430 appextra
="recorder:gui:radio"
2433 toolset
=$genericbitmaptools
2434 boottool
="$rootdir/tools/scramble -ccpmp"
2435 bootoutput
="ccpmp.bin"
2436 # architecture, manufacturer and model for the target-tree build
2438 t_manufacturer
="ingenic_jz47xx"
2439 t_model
="onda_vx747"
2444 modelname
="ondavx777"
2445 target
="-DONDA_VX777"
2448 tool
="$rootdir/tools/scramble -add=x777"
2449 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2450 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2451 output
="rockbox.vx777"
2452 appextra
="recorder:gui:radio"
2455 toolset
=$genericbitmaptools
2456 boottool
="$rootdir/tools/scramble -ccpmp"
2457 bootoutput
="ccpmp.bin"
2458 # architecture, manufacturer and model for the target-tree build
2460 t_manufacturer
="ingenic_jz47xx"
2461 t_model
="onda_vx747"
2466 modelname
="lyreproto1"
2467 target
="-DLYRE_PROTO1"
2471 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2472 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2473 output
="rockbox.lyre"
2474 appextra
="recorder:gui:radio"
2477 toolset
=$scramblebitmaptools
2479 bootoutput
="bootloader-proto1.lyre"
2480 # architecture, manufacturer and model for the target-tree build
2482 t_manufacturer
="at91sam"
2483 t_model
="lyre_proto1"
2488 modelname
="mini2440"
2492 tool
="$rootdir/tools/scramble -add=m244"
2493 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2494 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2495 output
="rockbox.mini2440"
2496 appextra
="recorder:gui:radio"
2499 toolset
=$scramblebitmaptools
2501 bootoutput
="bootloader-mini2440.lyre"
2502 # architecture, manufacturer and model for the target-tree build
2504 t_manufacturer
="s3c2440"
2510 modelname
="samsungyh820"
2511 target
="-DSAMSUNG_YH820"
2514 tool
="$rootdir/tools/scramble -mi4v2 -model=y820 -type=RBOS"
2515 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2516 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2517 output
="rockbox.mi4"
2518 appextra
="recorder:gui:radio"
2521 boottool
="$rootdir/tools/scramble -mi4v2 -model=y820 -type=RBBL"
2522 bootoutput
="FW_YH820.mi4"
2523 # toolset is the tools within the tools directory that we build for
2524 # this particular target.
2525 toolset
=$scramblebitmaptools
2526 # architecture, manufacturer and model for the target-tree build
2528 t_manufacturer
="samsung"
2534 modelname
="samsungyh920"
2535 target
="-DSAMSUNG_YH920"
2538 tool
="$rootdir/tools/scramble -mi4v2 -model=y920 -type=RBOS"
2539 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2540 bmp2rb_native
="$rootdir/tools/bmp2rb -f 2"
2541 output
="rockbox.mi4"
2542 appextra
="recorder:gui:radio"
2545 boottool
="$rootdir/tools/scramble -mi4v2 -model=y920 -type=RBBL"
2546 bootoutput
="PP5020.mi4"
2547 # toolset is the tools within the tools directory that we build for
2548 # this particular target.
2549 toolset
=$scramblebitmaptools
2550 # architecture, manufacturer and model for the target-tree build
2552 t_manufacturer
="samsung"
2558 modelname
="samsungyh925"
2559 target
="-DSAMSUNG_YH925"
2562 tool
="$rootdir/tools/scramble -mi4v2 -model=y925 -type=RBOS"
2563 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2564 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2565 output
="rockbox.mi4"
2566 appextra
="recorder:gui:radio"
2569 boottool
="$rootdir/tools/scramble -mi4v2 -model=y925 -type=RBBL"
2570 bootoutput
="FW_YH925.mi4"
2571 # toolset is the tools within the tools directory that we build for
2572 # this particular target.
2573 toolset
=$scramblebitmaptools
2574 # architecture, manufacturer and model for the target-tree build
2576 t_manufacturer
="samsung"
2582 modelname
="samsungyps3"
2583 target
="-DSAMSUNG_YPS3"
2587 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2588 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2589 output
="rockbox.yps3"
2590 appextra
="recorder:gui:radio"
2593 toolset
=$genericbitmaptools
2595 bootoutput
="rockboot.ebn"
2596 # architecture, manufacturer and model for the target-tree build
2598 t_manufacturer
="s5l8700"
2605 target
="-DPBELL_VIBE500"
2608 tool
="$rootdir/tools/scramble -mi4v3 -model=v500 -type=RBOS"
2609 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2610 bmp2rb_native
="$rootdir/tools/bmp2rb -f 5"
2611 output
="rockbox.mi4"
2612 appextra
="recorder:gui:radio"
2615 boottool
="$rootdir/tools/scramble -mi4v3 -model=v500 -type=RBBL"
2616 bootoutput
="jukebox.mi4"
2617 # toolset is the tools within the tools directory that we build for
2618 # this particular target.
2619 toolset
=$scramblebitmaptools
2620 # architecture, manufacturer and model for the target-tree build
2622 t_manufacturer
="pbell"
2628 modelname
="mpiohd200"
2629 target
="-DMPIO_HD200"
2632 tool
="$rootdir/tools/scramble -add=hd20"
2633 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2634 bmp2rb_native
="$rootdir/tools/bmp2rb -f 7"
2635 output
="rockbox.mpio"
2636 bootoutput
="bootloader.mpio"
2637 appextra
="recorder:gui:radio"
2640 # toolset is the tools within the tools directory that we build for
2641 # this particular target.
2642 toolset
="$genericbitmaptools"
2643 # architecture, manufacturer and model for the target-tree build
2645 t_manufacturer
="mpio"
2651 modelname
="application"
2652 target
="-DAPPLICATION"
2654 if [ -z "$PREFIX" ]; then
2655 rbdir
="/usr/local/share/rockbox"
2656 bindir
="/usr/local/bin"
2658 libdir
="/usr/local/lib"
2661 rbdir
=`realpath $PREFIX/share/rockbox`
2662 bindir
="$PREFIX/bin"
2663 libdir
="$PREFIX/lib"
2664 if [ -d bindir
]; then
2665 bindir_full
=`realpath $bindir`
2667 if [ -d libdir
]; then
2668 libdir_full
=`realpath $libdir`
2671 need_full_path
="yes"
2678 appcc
"$app_platform"
2682 bmp2rb_mono
="$rootdir/tools/bmp2rb -f 0"
2683 bmp2rb_native
="$rootdir/tools/bmp2rb -f 4"
2684 output
="librockbox.so"
2685 bootoutput
="librockbox.so"
2686 appextra
="recorder:gui:radio"
2689 # architecture, manufacturer and model for the target-tree build
2691 t_manufacturer
="$app_platform"
2696 echo "Please select a supported target platform!"
2702 echo "Platform set to $modelname"
2706 ############################################################################
2707 # Amount of memory, for those that can differ. They have $memory unset at
2711 if [ -z "$memory" ]; then
2714 if [ "$ARG_RAM" ]; then
2717 echo "Enter size of your RAM (in MB): (Defaults to 32)"
2730 if [ "$ARG_RAM" ]; then
2733 echo "Enter size of your RAM (in MB): (Defaults to 2)"
2746 echo "Memory size selected: $memory MB"
2747 [ "$ARG_TYPE" ] ||
echo ""
2751 ##################################################################
2752 # Figure out build "type"
2755 # the ifp7x0 is the only platform that supports building a gdb stub like
2759 gdbstub
="(G)DB stub, "
2761 sansae200r|sansae200
)
2762 gdbstub
="(I)nstaller, "
2765 gdbstub
="(E)raser, "
2770 if [ "$ARG_TYPE" ]; then
2773 echo "Build (N)ormal, (A)dvanced, (S)imulator, (B)ootloader, (C)heckWPS, (D)atabase tool, $gdbstub(M)anual: (Defaults to N)"
2779 appsdir
='\$(ROOTDIR)/bootloader'
2781 extradefines
="$extradefines -DBOOTLOADER -DE200R_INSTALLER -ffunction-sections -fdata-sections"
2783 echo "e200R-installer build selected"
2786 appsdir
='\$(ROOTDIR)/bootloader'
2788 echo "C2(4)0 or C2(5)0"
2792 extradefines
="$extradefines -DBOOTLOADER -DC200_ERASE -DC240_ERASE -ffunction-sections -fdata-sections"
2793 echo "c240 eraser build selected"
2796 extradefines
="$extradefines -DBOOTLOADER -DC200_ERASE -DC250_ERASE -ffunction-sections -fdata-sections"
2797 echo "c240 eraser build selected"
2801 echo "c200 eraser build selected"
2804 if test $t_manufacturer = "archos"; then
2805 # Archos SH-based players do this somewhat differently for
2807 appsdir
='\$(ROOTDIR)/flash/bootbox'
2810 appsdir
='\$(ROOTDIR)/bootloader'
2813 if test -n "$boottool"; then
2816 if test -n "$bootoutput"; then
2820 extradefines
="$extradefines -DBOOTLOADER -ffunction-sections -fdata-sections"
2822 echo "Bootloader build selected"
2825 if [ "$modelname" = "sansae200r" ]; then
2826 echo "Do not use the e200R target for simulator builds. Use e200 instead."
2831 extradefines
="$extradefines -DSIMULATOR"
2834 echo "Simulator build selected"
2837 echo "Advanced build selected"
2838 whichadvanced
$btype
2841 extradefines
="$extradefines -DSTUB" # for target makefile symbol EXTRA_DEFINES
2842 appsdir
='\$(ROOTDIR)/gdb'
2851 echo "GDB stub build selected"
2856 echo "Manual build selected"
2864 extradefines
="$extradefines -DDEBUG"
2865 appsdir
='\$(ROOTDIR)/tools/checkwps';
2866 output
='checkwps.'${modelname};
2868 echo "CheckWPS build selected"
2876 appsdir
='\$(ROOTDIR)/tools/database';
2881 output
="database_${modelname}.exe"
2884 output
='database.'${modelname};
2888 echo "Database tool build selected"
2891 if [ "$modelname" = "sansae200r" ]; then
2892 echo "Do not use the e200R target for regular builds. Use e200 instead."
2896 btype
="N" # set it explicitly since RET only gets here as well
2897 echo "Normal build selected"
2901 # to be able running "make manual" from non-manual configuration
2904 manualdev
="archosfmrecorder"
2907 manualdev
="iriverh100"
2910 manualdev
="ipodmini1g"
2913 manualdev
=$modelname
2917 if [ -z "$debug" ]; then
2918 GCCOPTS
="$GCCOPTS $GCCOPTIMIZE"
2921 echo "Using source code root directory: $rootdir"
2923 # this was once possible to change at build-time, but no more:
2928 if [ "yes" = "$simulator" ]; then
2929 # setup compiler and things for simulator
2932 if [ -d "simdisk" ]; then
2933 echo "Subdirectory 'simdisk' already present"
2936 echo "Created a 'simdisk' subdirectory for simulating the hard disk"
2940 # Now, figure out version number of the (gcc) compiler we are about to use
2941 gccver
=`$CC -dumpversion`;
2943 # figure out the binutil version too and display it, mostly for the build
2944 # system etc to be able to see it easier
2945 if [ $uname = "Darwin" ]; then
2946 ldver
=`$LD -v 2>&1 | sed -e 's/[^0-9.-]//g'`
2948 ldver
=`$LD --version | head -n 1 | sed -e 's/[^0-9.]//g'`
2951 if [ -z "$gccver" ]; then
2952 echo "[WARNING] The compiler you must use ($CC) is not in your path!"
2953 echo "[WARNING] this may cause your build to fail since we cannot do the"
2954 echo "[WARNING] checks we want now."
2957 # gccver should now be "3.3.5", "3.4.3", "2.95.3-6" and similar, but don't
2960 num1
=`echo $gccver | cut -d . -f1`
2961 num2
=`echo $gccver | cut -d . -f2`
2962 gccnum
=`(expr $num1 "*" 100 + $num2) 2>/dev/null`
2969 echo "Using $CC $gccver ($gccnum)"
2971 if test "$gccnum" -ge "400"; then
2972 # gcc 4.0 is just *so* much pickier on arguments that differ in signedness
2973 # so we ignore that warnings for now
2975 GCCOPTS
="$GCCOPTS -Wno-pointer-sign"
2978 if test "$gccnum" -ge "402"; then
2979 # disable warning about "warning: initialized field overwritten" as gcc 4.2
2980 # and later would throw it for several valid cases
2981 GCCOPTS
="$GCCOPTS -Wno-override-init"
2985 ""|
"$CROSS_COMPILE")
2989 # cross-compile for win32
2992 # Verify that the cross-compiler is of a recommended version!
2993 if test "$gccver" != "$gccchoice"; then
2994 echo "WARNING: Your cross-compiler $CC $gccver is not of the recommended"
2995 echo "WARNING: version $gccchoice!"
2996 echo "WARNING: This may cause your build to fail since it may be a version"
2997 echo "WARNING: that isn't functional or known to not be the best choice."
2998 echo "WARNING: If you suffer from build problems, you know that this is"
2999 echo "WARNING: a likely source for them..."
3007 echo "Using $LD $ldver"
3009 # check the compiler for SH platforms
3010 if test "$CC" = "sh-elf-gcc"; then
3011 if test "$gccnum" -lt "400"; then
3012 echo "WARNING: Consider upgrading your compiler to the 4.0.X series!"
3013 echo "WARNING: http://www.rockbox.org/twiki/bin/view/Main/CrossCompiler"
3015 # figure out patch status
3016 gccpatch
=`$CC --version`;
3018 if { echo $gccpatch |
grep "rockbox" >/dev
/null
2>&1; } then
3019 echo "gcc $gccver is rockbox patched"
3020 # then convert -O to -Os to get smaller binaries!
3021 GCCOPTS
=`echo $GCCOPTS | sed 's/ -O / -Os /'`
3023 echo "WARNING: You use an unpatched gcc compiler: $gccver"
3024 echo "WARNING: http://www.rockbox.org/twiki/bin/view/Main/CrossCompiler"
3029 if test "$CC" = "m68k-elf-gcc"; then
3030 # convert -O to -Os to get smaller binaries!
3031 GCCOPTS
=`echo $GCCOPTS | sed 's/ -O / -Os /'`
3034 if [ "$ARG_CCACHE" = "1" ]; then
3035 echo "Enable ccache for building"
3037 elif [ "$ARG_CCACHE" != "0" ]; then
3038 ccache
=`findtool ccache`
3039 if test -n "$ccache"; then
3040 echo "Found and uses ccache ($ccache)"
3044 # figure out the full path to the various commands if possible
3045 HOSTCC
=`findtool gcc --lit`
3046 HOSTAR
=`findtool ar --lit`
3047 CC
=`findtool ${CC} --lit`
3048 LD
=`findtool ${AR} --lit`
3049 AR
=`findtool ${AR} --lit`
3050 AS
=`findtool ${AS} --lit`
3051 OC
=`findtool ${OC} --lit`
3052 WINDRES
=`findtool ${WINDRES} --lit`
3053 DLLTOOL
=`findtool ${DLLTOOL} --lit`
3054 DLLWRAP
=`findtool ${DLLWRAP} --lit`
3055 RANLIB
=`findtool ${RANLIB} --lit`
3057 if test -n "$ccache"; then
3061 if test "$ARG_ARM_THUMB" = "1"; then
3062 extradefines
="$extradefines -DUSE_THUMB"
3063 CC
="$toolsdir/thumb-cc.py $CC"
3066 if test "X$endian" = "Xbig"; then
3067 defendian
="ROCKBOX_BIG_ENDIAN"
3069 defendian
="ROCKBOX_LITTLE_ENDIAN"
3072 if [ "$ARG_RBDIR" ]; then
3073 if [ "$need_full_path" = "yes" ]; then
3074 rbdir
=`realpath $ARG_RBDIR`
3075 else # prepend '/' if needed
3076 if [ -z `echo $ARG_RBDIR | grep -P '/.*'` ]; then
3082 echo "Using alternate rockbox dir: ${rbdir}"
3086 -e "s<@ENDIAN@<${defendian}<g" \
3087 -e "s<^#undef ROCKBOX_HAS_LOGF<$use_logf<g" \
3088 -e "s<^#undef DO_BOOTCHART<$use_bootchart<g" \
3089 -e "s<@config_rtc@<$config_rtc<g" \
3090 -e "s<@have_rtc_alarm@<$have_rtc_alarm<g" \
3091 -e "s<@RBDIR@<${rbdir}<g" \
3092 -e "s<@binpath@<${bindir_full}<g" \
3093 -e "s<@libpath@<${libdir_full}<g" \
3094 -e "s<@have_backlight@<$have_backlight<g" \
3095 -e "s<@have_fmradio_in@<$have_fmradio_in<g" \
3096 -e "s<@have_ata_poweroff@<$have_ata_poweroff<g" \
3098 /* This header was made by configure */
3099 #ifndef __BUILD_AUTOCONF_H
3100 #define __BUILD_AUTOCONF_H
3102 /* Define endianess for the target or simulator platform */
3105 /* Define this if you build rockbox to support the logf logging and display */
3106 #undef ROCKBOX_HAS_LOGF
3108 /* Define this to record a chart with timings for the stages of boot */
3111 /* optional define for a backlight modded Ondio */
3114 /* optional define for FM radio mod for iAudio M5 */
3117 /* optional define for ATA poweroff on Player */
3120 /* optional defines for RTC mod for h1x0 */
3124 /* root of Rockbox */
3125 #define ROCKBOX_DIR "@RBDIR@"
3126 #define ROCKBOX_BINARY_PATH "@binpath@"
3127 #define ROCKBOX_LIBRARY_PATH "@libpath@"
3129 #endif /* __BUILD_AUTOCONF_H */
3132 if test -n "$t_cpu"; then
3133 TARGET_INC
="-I\$(FIRMDIR)/target/$t_cpu/$t_manufacturer/$t_model"
3134 if [ "$simulator" = "yes" ]; then # a few more includes for the sim target tree
3135 TARGET_INC
="$TARGET_INC -I\$(FIRMDIR)/target/hosted/sdl/"
3136 TARGET_INC
="$TARGET_INC -I\$(FIRMDIR)/target/hosted/"
3138 if [ -n "$app_platform" -a "$app_platform" = "android" ]; then
3139 # android's gcc doesn't add this :/
3140 TARGET_INC
="$TARGET_INC -I$ANDROID_NDK_PATH/build/platforms/android-4/arch-arm/usr/include"
3142 TARGET_INC
="$TARGET_INC -I\$(FIRMDIR)/target/$t_cpu/$t_manufacturer"
3143 TARGET_INC
="$TARGET_INC -I\$(FIRMDIR)/target/$t_cpu"
3147 if test "$simulator" = "yes"; then
3148 # add simul make stuff on the #SIMUL# line
3149 simmagic1
="s<@SIMUL1@<\$(SILENT)\$(MAKE) -C \$(SIMDIR) OBJDIR=\$(BUILDDIR)/sim<"
3150 simmagic2
="s<@SIMUL2@<\$(SILENT)\$(MAKE) -C \$(ROOTDIR)/uisimulator/common OBJDIR=\$(BUILDDIR)/comsim<"
3152 # delete the lines that match
3153 simmagic1
='/@SIMUL1@/D'
3154 simmagic2
='/@SIMUL2@/D'
3157 if test "$swcodec" = "yes"; then
3158 voicetoolset
="rbspeexenc voicefont wavtrim"
3160 voicetoolset
="voicefont wavtrim"
3163 if test "$apps" = "apps"; then
3164 # only when we build "real" apps we build the .lng files
3168 #### Fix the cmdline ###
3169 if [ "$ARG_CCACHE" = "1" ]; then
3171 elif [ "$ARG_CCACHE" = "0" ]; then
3172 cmdline
="--no-ccache "
3174 if [ "$ARG_ARM_EABI" = "1" ]; then
3175 cmdline
="$cmdline--eabi "
3178 cmdline
="$cmdline--target=\$(MODELNAME) --ram=\$(MEMORYSIZE) --rbdir=\$(RBDIR) --type=$btype$advopts --prefix=\$(PREFIX)"
3182 -e "s<@ROOTDIR@<${rootdir}<g" \
3183 -e "s<@DEBUG@<${debug}<g" \
3184 -e "s<@MEMORY@<${memory}<g" \
3185 -e "s<@TARGET_ID@<${target_id}<g" \
3186 -e "s<@TARGET@<${target}<g" \
3187 -e "s<@CPU@<${t_cpu}<g" \
3188 -e "s<@MANUFACTURER@<${t_manufacturer}<g" \
3189 -e "s<@MODELNAME@<${modelname}<g" \
3190 -e "s<@LANGUAGE@<${language}<g" \
3191 -e "s:@VOICELANGUAGE@:${voicelanguage}:g" \
3192 -e "s<@PWD@<${pwd}<g" \
3193 -e "s<@HOSTCC@<${HOSTCC}<g" \
3194 -e "s<@HOSTAR@<${HOSTAR}<g" \
3195 -e "s<@CC@<${CC}<g" \
3196 -e "s<@LD@<${LD}<g" \
3197 -e "s<@AR@<${AR}<g" \
3198 -e "s<@AS@<${AS}<g" \
3199 -e "s<@OC@<${OC}<g" \
3200 -e "s<@WINDRES@<${WINDRES}<g" \
3201 -e "s<@DLLTOOL@<${DLLTOOL}<g" \
3202 -e "s<@DLLWRAP@<${DLLWRAP}<g" \
3203 -e "s<@RANLIB@<${RANLIB}<g" \
3204 -e "s<@TOOL@<${tool}<g" \
3205 -e "s<@BMP2RB_NATIVE@<${bmp2rb_native}<g" \
3206 -e "s<@BMP2RB_MONO@<${bmp2rb_mono}<g" \
3207 -e "s<@BMP2RB_REMOTENATIVE@<${bmp2rb_remotenative}<g" \
3208 -e "s<@BMP2RB_REMOTEMONO@<${bmp2rb_remotemono}<g" \
3209 -e "s<@OUTPUT@<${output}<g" \
3210 -e "s<@APPEXTRA@<${appextra}<g" \
3211 -e "s<@ARCHOSROM@<${archosrom}<g" \
3212 -e "s<@FLASHFILE@<${flash}<g" \
3213 -e "s<@PLUGINS@<${plugins}<g" \
3214 -e "s<@CODECS@<${swcodec}<g" \
3215 -e "s<@PROFILE_OPTS@<${PROFILE_OPTS}<g" \
3216 -e "s<@SHARED_FLAG@<${SHARED_FLAG}<g" \
3217 -e "s<@GCCOPTS@<${GCCOPTS}<g" \
3218 -e "s<@TARGET_INC@<${TARGET_INC}<g" \
3219 -e "s<@LDOPTS@<${LDOPTS}<g" \
3220 -e "s<@GLOBAL_LDOPTS@<${GLOBAL_LDOPTS}<g" \
3221 -e "s<@LOADADDRESS@<${loadaddress}<g" \
3222 -e "s<@EXTRADEF@<${extradefines}<g" \
3223 -e "s<@APPSDIR@<${appsdir}<g" \
3224 -e "s<@FIRMDIR@<${firmdir}<g" \
3225 -e "s<@TOOLSDIR@<${toolsdir}<g" \
3226 -e "s<@APPS@<${apps}<g" \
3227 -e "s<@APP_TYPE@<${app_type}<g" \
3228 -e "s<@GCCVER@<${gccver}<g" \
3229 -e "s<@GCCNUM@<${gccnum}<g" \
3230 -e "s<@UNAME@<${uname}<g" \
3231 -e "s<@ENDIAN@<${defendian}<g" \
3232 -e "s<@TOOLSET@<${toolset}<g" \
3235 -e "s<@MANUALDEV@<${manualdev}<g" \
3236 -e "s<@ENCODER@<${ENC_CMD}<g" \
3237 -e "s<@ENC_OPTS@<${ENC_OPTS}<g" \
3238 -e "s<@TTS_ENGINE@<${TTS_ENGINE}<g" \
3239 -e "s<@TTS_OPTS@<${TTS_OPTS}<g" \
3240 -e "s<@VOICETOOLSET@<${voicetoolset}<g" \
3241 -e "s<@LANGS@<${buildlangs}<g" \
3242 -e "s<@USE_ELF@<${USE_ELF}<g" \
3243 -e "s<@RBDIR@<${rbdir}<g" \
3244 -e "s<@binpath@<${bindir}<g" \
3245 -e "s<@libpath@<${libdir}<g" \
3246 -e "s<@PREFIX@<$PREFIX<g" \
3247 -e "s<@CMDLINE@<$cmdline<g" \
3248 -e "s<@SDLCONFIG@<$sdl<g" \
3250 ## Automatically generated. http://www.rockbox.org/
3252 export ROOTDIR=@ROOTDIR@
3253 export FIRMDIR=@FIRMDIR@
3254 export APPSDIR=@APPSDIR@
3255 export TOOLSDIR=@TOOLSDIR@
3256 export DOCSDIR=\$(ROOTDIR)/docs
3257 export MANUALDIR=\${ROOTDIR}/manual
3258 export DEBUG=@DEBUG@
3259 export MODELNAME=@MODELNAME@
3260 export ARCHOSROM=@ARCHOSROM@
3261 export FLASHFILE=@FLASHFILE@
3262 export TARGET_ID=@TARGET_ID@
3263 export TARGET=@TARGET@
3265 export MANUFACTURER=@MANUFACTURER@
3267 export BUILDDIR=@PWD@
3268 export LANGUAGE=@LANGUAGE@
3269 export VOICELANGUAGE=@VOICELANGUAGE@
3270 export MEMORYSIZE=@MEMORY@
3271 export BUILDDATE:=\$(shell date -u +'-DYEAR=%Y -DMONTH=%m -DDAY=%d')
3272 export MKFIRMWARE=@TOOL@
3273 export BMP2RB_MONO=@BMP2RB_MONO@
3274 export BMP2RB_NATIVE=@BMP2RB_NATIVE@
3275 export BMP2RB_REMOTEMONO=@BMP2RB_REMOTEMONO@
3276 export BMP2RB_REMOTENATIVE=@BMP2RB_REMOTENATIVE@
3277 export BINARY=@OUTPUT@
3278 export APPEXTRA=@APPEXTRA@
3279 export ENABLEDPLUGINS=@PLUGINS@
3280 export SOFTWARECODECS=@CODECS@
3281 export EXTRA_DEFINES=@EXTRADEF@
3282 export HOSTCC=@HOSTCC@
3283 export HOSTAR=@HOSTAR@
3289 export WINDRES=@WINDRES@
3290 export DLLTOOL=@DLLTOOL@
3291 export DLLWRAP=@DLLWRAP@
3292 export RANLIB=@RANLIB@
3293 export PREFIX=@PREFIX@
3294 export PROFILE_OPTS=@PROFILE_OPTS@
3295 export APP_TYPE=@APP_TYPE@
3296 export SIMDIR=\$(ROOTDIR)/uisimulator/sdl
3297 export GCCOPTS=@GCCOPTS@
3298 export TARGET_INC=@TARGET_INC@
3299 export LOADADDRESS=@LOADADDRESS@
3300 export SHARED_FLAG=@SHARED_FLAG@
3301 export LDOPTS=@LDOPTS@
3302 export GLOBAL_LDOPTS=@GLOBAL_LDOPTS@
3303 export GCCVER=@GCCVER@
3304 export GCCNUM=@GCCNUM@
3305 export UNAME=@UNAME@
3306 export MANUALDEV=@MANUALDEV@
3307 export TTS_OPTS=@TTS_OPTS@
3308 export TTS_ENGINE=@TTS_ENGINE@
3309 export ENC_OPTS=@ENC_OPTS@
3310 export ENCODER=@ENCODER@
3311 export USE_ELF=@USE_ELF@
3312 export RBDIR=@RBDIR@
3313 export ROCKBOX_BINARY_PATH=@binpath@
3314 export ROCKBOX_LIBRARY_PATH=@libpath@
3315 export SDLCONFIG=@SDLCONFIG@
3317 CONFIGURE_OPTIONS=@CMDLINE@
3319 include \$(TOOLSDIR)/root.make
3323 echo "Created Makefile"