FS#10365 - Optional debug output for albumart.c
[kugel-rb.git] / tools / configure
blobe543919ca62df6913873780ad3bfcf5c1745f97a
1 #!/bin/sh
2 # __________ __ ___.
3 # Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 # Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 # Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 # Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
7 # \/ \/ \/ \/ \/
8 # $Id$
11 # global CC options for all platforms
12 CCOPTS="-W -Wall -Wundef -O -nostdlib -ffreestanding -Wstrict-prototypes"
14 use_logf="#undef ROCKBOX_HAS_LOGF"
16 scriptver=`echo '$Revision$' | sed -e 's:\\$::g' -e 's/Revision: //'`
18 rbdir=".rockbox"
21 # Begin Function Definitions
23 input() {
24 read response
25 echo $response
28 prefixtools () {
29 prefix="$1"
30 CC=${prefix}gcc
31 WINDRES=${prefix}windres
32 DLLTOOL=${prefix}dlltool
33 DLLWRAP=${prefix}dllwrap
34 RANLIB=${prefix}ranlib
35 LD=${prefix}ld
36 AR=${prefix}ar
37 AS=${prefix}as
38 OC=${prefix}objcopy
41 crosswincc () {
42 # naive approach to selecting a mingw cross-compiler on linux/*nix
43 echo "Enabling win32 crosscompiling"
45 prefixtools i586-mingw32msvc-
47 # add cross-compiler option(s)
48 GCCOPTS="$GCCOPTS `sdl-config --cflags`"
49 LDOPTS="`sdl-config --libs` -mconsole"
51 output="rockboxui.exe" # use this as output binary name
52 crosscompile="yes"
53 endian="little" # windows is little endian
56 # scan the $PATH for the given command
57 findtool(){
58 file="$1"
60 IFS=":"
61 for path in $PATH
63 # echo "checks for $file in $path" >&2
64 if test -f "$path/$file"; then
65 echo "$path/$file"
66 return
68 done
69 # check whether caller wants literal return value if not found
70 if [ "$2" = "--lit" ]; then
71 echo "$file"
75 # parse the argument list, returns the value after the = in case of a
76 # option=value type option, returns 0 in case of --ccache or --no-ccache,
77 # returns 1 if the searched argument type wasn't fount in the argument list
78 # Usage [var = ]`parse_args <argumenttype>`, e.g. `parse_args --target`
80 # var definitons below are needed so that parse_args can see the arguments
81 arg1=$1 arg2=$2 arg3=$3 arg4=$4 arg5=$5 arg6=$6 arg7=$7 arg8=$8 arg9=$9
83 parse_args() {
84 ret="1"
85 for i in $arg1 $arg2 $arg3 $arg4 $arg5 $arg6 $arg7 $arg8 $arg9
87 if [ "$1" = "--ccache" ]; then
88 if [ "$i" = "--ccache" ]; then
89 ret="0"
91 elif [ "$1" = "--no-ccache" ]; then
92 if [ "$i" = "--no-ccache" ]; then
93 ret="0"
95 elif [ "$1" = `echo $i|cut -d'=' -f1` ]; then
96 ret=`echo $i|cut -d'=' -f2`
98 done
99 echo "$ret"
102 simcc () {
104 # default tool setup for native building
105 prefixtools ""
107 simver=sdl
108 GCCOPTS='-W -Wall -g -fno-builtin'
110 output="rockboxui" # use this as default output binary name
112 # generic sdl-config checker
113 sdl=`findtool sdl-config`
115 if [ -z "$sdl" ]; then
116 echo "configure didn't find sdl-config, which indicates that you"
117 echo "don't have SDL (properly) installed. Please correct and"
118 echo "re-run configure!"
119 exit 1
122 # default share option, override below if needed
123 SHARED_FLAG="-shared"
125 case $uname in
126 CYGWIN*)
127 echo "Cygwin host detected"
129 # sdl version
130 GCCOPTS="$GCCOPTS `sdl-config --cflags`"
131 LDOPTS="`sdl-config --libs` -mconsole"
133 output="rockboxui.exe" # use this as output binary name
136 MINGW*)
137 echo "MinGW host detected"
139 # sdl version
140 GCCOPTS="$GCCOPTS `sdl-config --cflags`"
141 LDOPTS="`sdl-config --libs` -mconsole"
143 output="rockboxui.exe" # use this as output binary name
146 Linux)
147 echo "Linux host detected"
148 if [ "0" != `sdl-config --libs |grep -c mwindows` ]; then
149 # Enable crosscompiling if sdl-config is from Windows SDL
150 crosswincc
151 else
152 GCCOPTS="$GCCOPTS `sdl-config --cflags`"
153 LDOPTS="`sdl-config --libs`"
157 FreeBSD)
158 echo "FreeBSD host detected"
159 # sdl version
160 GCCOPTS="$GCCOPTS `sdl-config --cflags`"
161 LDOPTS="`sdl-config --libs`"
164 Darwin)
165 echo "Darwin host detected"
166 # sdl version
167 GCCOPTS="$GCCOPTS `sdl-config --cflags`"
168 LDOPTS="`sdl-config --libs`"
169 SHARED_FLAG="-dynamiclib -Wl\,-single_module"
173 echo "Unsupported system: $uname, fix configure and retry"
174 exit 2
176 esac
178 GCCOPTS="$GCCOPTS -I\$(SIMDIR)"
180 if test "X$crosscompile" != "Xyes"; then
181 if [ "`uname -m`" = "x86_64" ] || [ "`uname -m`" = "amd64" ]; then
182 # fPIC is needed to make shared objects link
183 # setting visibility to hidden is necessary to avoid strange crashes
184 # due to symbol clashing
185 GCCOPTS="$GCCOPTS -fPIC -fvisibility=hidden"
188 id=$$
189 cat >/tmp/conftest-$id.c <<EOF
190 #include <stdio.h>
191 int main(int argc, char **argv)
193 int var=0;
194 char *varp = (char *)&var;
195 *varp=1;
197 printf("%d\n", var);
198 return 0;
202 $CC -o /tmp/conftest-$id /tmp/conftest-$id.c 2>/dev/null
204 if test `/tmp/conftest-$id 2>/dev/null` -gt "1"; then
205 # big endian
206 endian="big"
207 else
208 # little endian
209 endian="little"
211 echo "Simulator environment deemed $endian endian"
213 # use wildcard here to make it work even if it was named *.exe like
214 # on cygwin
215 rm -f /tmp/conftest-$id*
220 # functions for setting up cross-compiler names and options
221 # also set endianess and what the exact recommended gcc version is
222 # the gcc version should most likely match what versions we build with
223 # rockboxdev.sh
225 shcc () {
226 prefixtools sh-elf-
227 GCCOPTS="$CCOPTS -m1"
228 GCCOPTIMIZE="-fomit-frame-pointer -fschedule-insns"
229 endian="big"
230 gccchoice="4.0.3"
233 calmrisccc () {
234 prefixtools calmrisc16-unknown-elf-
235 GCCOPTS="-Wl\,--no-check-sections $CCOPTS"
236 GCCOPTIMIZE="-fomit-frame-pointer"
237 endian="big"
240 coldfirecc () {
241 prefixtools m68k-elf-
242 GCCOPTS="$CCOPTS -m5206e -Wa\,-m5249 -malign-int -mstrict-align"
243 GCCOPTIMIZE="-fomit-frame-pointer"
244 endian="big"
245 gccchoice="3.4.6"
248 arm7tdmicc () {
249 prefixtools arm-elf-
250 GCCOPTS="$CCOPTS -mcpu=arm7tdmi"
251 if test "X$1" != "Xshort"; then
252 GCCOPTS="$GCCOPTS -mlong-calls"
254 GCCOPTIMIZE="-fomit-frame-pointer"
255 endian="little"
256 gccchoice="4.0.3"
259 arm9tdmicc () {
260 prefixtools arm-elf-
261 GCCOPTS="$CCOPTS -mcpu=arm9tdmi"
262 if test "$modelname" != "gigabeatf" -a "$t_manufacturer" != "as3525"; then
263 GCCOPTS="$GCCOPTS -mlong-calls"
265 GCCOPTIMIZE="-fomit-frame-pointer"
266 endian="little"
267 gccchoice="4.0.3"
270 arm940tbecc () {
271 prefixtools arm-elf-
272 GCCOPTS="$CCOPTS -mbig-endian -mcpu=arm940t -mlong-calls"
273 GCCOPTIMIZE="-fomit-frame-pointer"
274 endian="big"
275 gccchoice="4.0.3"
278 arm946cc () {
279 prefixtools arm-elf-
280 GCCOPTS="$CCOPTS -mcpu=arm9e -mlong-calls"
281 GCCOPTIMIZE="-fomit-frame-pointer"
282 endian="little"
283 gccchoice="4.0.3"
286 arm926ejscc () {
287 prefixtools arm-elf-
288 GCCOPTS="$CCOPTS -mcpu=arm926ej-s -mlong-calls"
289 GCCOPTIMIZE="-fomit-frame-pointer"
290 endian="little"
291 gccchoice="4.0.3"
294 arm1136jfscc () {
295 prefixtools arm-elf-
296 GCCOPTS="$CCOPTS -mcpu=arm1136jf-s"
297 if test "$modelname" != "gigabeats"; then
298 GCCOPTS="$GCCOPTS -mlong-calls"
300 GCCOPTIMIZE="-fomit-frame-pointer"
301 endian="little"
302 gccchoice="4.0.3"
305 mipselcc () {
306 prefixtools mipsel-elf-
307 GCCOPTS="$CCOPTS -march=mips32 -mtune=r4600 -mno-mips16 -mno-long-calls"
308 GCCOPTS="$GCCOPTS -ffunction-sections -msoft-float -G 0 -Wno-parentheses"
309 GCCOPTIMIZE="-fomit-frame-pointer"
310 endian="little"
311 gccchoice="4.1.2"
314 whichadvanced () {
315 ##################################################################
316 # Prompt for specific developer options
318 echo ""
319 echo "Enter your developer options (press enter when done)"
320 printf "(D)EBUG, (L)ogf, (S)imulator, (P)rofiling, (V)oice"
321 if [ "$memory" = "2" ]; then
322 printf ", (8)MB MOD"
324 if [ "$modelname" = "player" ]; then
325 printf ", Use (A)TA poweroff"
327 if [ "$t_model" = "ondio" ]; then
328 printf ", (B)acklight MOD"
330 if [ "$modelname" = "m5" ]; then
331 printf ", (F)M radio MOD"
333 if [ "$modelname" = "h120" ]; then
334 printf ", (R)TC MOD"
336 echo ""
338 cont=1
340 while [ $cont = "1" ]; do
342 option=`input`;
344 case $option in
345 [Dd])
346 if [ "yes" = "$profile" ]; then
347 echo "Debug is incompatible with profiling"
348 else
349 echo "define DEBUG"
350 use_debug="yes"
353 [Ll])
354 echo "logf() support enabled"
355 logf="yes"
357 [Ss])
358 echo "Simulator build enabled"
359 simulator="yes"
361 [Pp])
362 if [ "yes" = "$use_debug" ]; then
363 echo "Profiling is incompatible with debug"
364 else
365 echo "Profiling support is enabled"
366 profile="yes"
369 [Vv])
370 echo "Voice build selected"
371 voice="yes"
374 if [ "$memory" = "2" ]; then
375 memory="8"
376 echo "Memory size selected: 8MB"
377 else
378 cont=0
381 [Aa])
382 if [ "$modelname" = "player" ]; then
383 have_ata_poweroff="#define HAVE_ATA_POWEROFF"
384 echo "ATA poweroff enabled"
385 else
386 cont=0
389 [Bb])
390 if [ "$t_model" = "ondio" ]; then
391 have_backlight="#define HAVE_BACKLIGHT"
392 echo "Backlight functions enabled"
393 else
394 cont=0
397 [Ff])
398 if [ "$modelname" = "m5" ]; then
399 have_fmradio_in="#define HAVE_FMRADIO_IN"
400 echo "FM radio functions enabled"
401 else
402 cont=0
405 [Rr])
406 if [ "$modelname" = "h120" ]; then
407 config_rtc="#define CONFIG_RTC RTC_DS1339_DS3231"
408 have_rtc_alarm="#define HAVE_RTC_ALARM"
409 echo "RTC functions enabled (DS1339/DS3231)"
410 else
411 cont=0
415 cont=0
417 esac
418 done
419 echo "done"
421 if [ "yes" = "$voice" ]; then
422 # Ask about languages to build
423 echo "Select a number for the language to use (default is english)"
424 # The multiple-language feature is currently broken
425 # echo "You may enter a comma-separated list of languages to build"
427 picklang
428 voicelanguage=`whichlang`
430 if [ -z "$voicelanguage" ]; then
431 # pick a default
432 voicelanguage="english"
434 echo "Voice language set to $voicelanguage"
436 # Configure encoder and TTS engine for each language
437 for thislang in `echo $voicelanguage | sed 's/,/ /g'`; do
438 voiceconfig "$thislang"
439 done
441 if [ "yes" = "$use_debug" ]; then
442 debug="-DDEBUG"
443 GCCOPTS="$GCCOPTS -g -DDEBUG"
445 if [ "yes" = "$logf" ]; then
446 use_logf="#define ROCKBOX_HAS_LOGF 1"
448 if [ "yes" = "$simulator" ]; then
449 debug="-DDEBUG"
450 extradefines="$extradefines -DSIMULATOR"
451 archosrom=""
452 flash=""
454 if [ "yes" = "$profile" ]; then
455 extradefines="$extradefines -DRB_PROFILE"
456 PROFILE_OPTS="-finstrument-functions"
460 # Configure voice settings
461 voiceconfig () {
462 thislang=$1
463 echo "Building $thislang voice for $modelname. Select options"
464 echo ""
466 if [ -n "`findtool flite`" ]; then
467 FLITE="F(l)ite "
468 FLITE_OPTS=""
469 DEFAULT_TTS="flite"
470 DEFAULT_TTS_OPTS=$FLITE_OPTS
471 DEFAULT_NOISEFLOOR="500"
472 DEFAULT_CHOICE="L"
474 if [ -n "`findtool espeak`" ]; then
475 ESPEAK="(e)Speak "
476 ESPEAK_OPTS=""
477 DEFAULT_TTS="espeak"
478 DEFAULT_TTS_OPTS=$ESPEAK_OPTS
479 DEFAULT_NOISEFLOOR="500"
480 DEFAULT_CHOICE="e"
482 if [ -n "`findtool festival`" ]; then
483 FESTIVAL="(F)estival "
484 case "$thislang" in
485 "italiano")
486 FESTIVAL_OPTS="--language italian"
488 "espanol")
489 FESTIVAL_OPTS="--language spanish"
491 "finnish")
492 FESTIVAL_OPTS="--language finnish"
494 "czech")
495 FESTIVAL_OPTS="--language czech"
498 FESTIVAL_OPTS=""
500 esac
501 DEFAULT_TTS="festival"
502 DEFAULT_TTS_OPTS=$FESTIVAL_OPTS
503 DEFAULT_NOISEFLOOR="500"
504 DEFAULT_CHOICE="F"
506 if [ -n "`findtool swift`" ]; then
507 SWIFT="S(w)ift "
508 SWIFT_OPTS=""
509 DEFAULT_TTS="swift"
510 DEFAULT_TTS_OPTS=$SWIFT_OPTS
511 DEFAULT_NOISEFLOOR="500"
512 DEFAULT_CHOICE="w"
514 # Allow SAPI if Windows is in use
515 if [ -n "`findtool winver`" ]; then
516 SAPI="(S)API "
517 SAPI_OPTS=""
518 DEFAULT_TTS="sapi"
519 DEFAULT_TTS_OPTS=$SAPI_OPTS
520 DEFAULT_NOISEFLOOR="500"
521 DEFAULT_CHOICE="S"
524 if [ "$FESTIVAL" = "$FLITE" ] && [ "$FLITE" = "$ESPEAK" ] && [ "$ESPEAK" = "$SAPI" ] && [ "$SAPI" = "$SWIFT" ]; then
525 echo "You need Festival, eSpeak or Flite in your path, or SAPI available to build voice files"
526 exit 3
529 echo "TTS engine to use: ${FLITE}${FESTIVAL}${ESPEAK}${SAPI}${SWIFT}(${DEFAULT_CHOICE})?"
530 option=`input`
531 case "$option" in
532 [Ll])
533 TTS_ENGINE="flite"
534 NOISEFLOOR="500" # TODO: check this value
535 TTS_OPTS=$FLITE_OPTS
537 [Ee])
538 TTS_ENGINE="espeak"
539 NOISEFLOOR="500"
540 TTS_OPTS=$ESPEAK_OPTS
542 [Ff])
543 TTS_ENGINE="festival"
544 NOISEFLOOR="500"
545 TTS_OPTS=$FESTIVAL_OPTS
547 [Ss])
548 TTS_ENGINE="sapi"
549 NOISEFLOOR="500"
550 TTS_OPTS=$SAPI_OPTS
552 [Ww])
553 TTS_ENGINE="swift"
554 NOISEFLOOR="500"
555 TTS_OPTS=$SWIFT_OPTS
558 TTS_ENGINE=$DEFAULT_TTS
559 TTS_OPTS=$DEFAULT_TTS_OPTS
560 NOISEFLOOR=$DEFAULT_NOISEFLOOR
561 esac
562 echo "Using $TTS_ENGINE for TTS"
564 # Select which voice to use for Festival
565 if [ "$TTS_ENGINE" = "festival" ]; then
567 for voice in `echo "(voice.list)"|festival -i 2>/dev/null |tr "\n" " "|sed -e 's/.*festival> (\(.*\)) festival>/\1/'|sort`; do
568 if [ "$i" = "1" ]; then
569 TTS_FESTIVAL_VOICE="$voice" # Default choice
571 printf "%3d. %s\n" "$i" "$voice"
572 i=`expr $i + 1`
573 done
574 printf "Please select which Festival voice to use (default is $TTS_FESTIVAL_VOICE): "
575 CHOICE=`input`
577 for voice in `echo "(voice.list)"|festival -i 2>/dev/null |tr "\n" " "|sed -e 's/.*festival> (\(.*\)) festival>/\1/'|sort`; do
578 if [ "$i" = "$CHOICE" -o "$voice" = "$CHOICE" ]; then
579 TTS_FESTIVAL_VOICE="$voice"
581 i=`expr $i + 1`
582 done
583 echo "Festival voice set to $TTS_FESTIVAL_VOICE"
584 echo "(voice_$TTS_FESTIVAL_VOICE)" > festival-prolog.scm
587 # Allow the user to input manual commandline options
588 printf "Enter $TTS_ENGINE options (enter for defaults \"$TTS_OPTS\"): "
589 USER_TTS_OPTS=`input`
590 if [ -n "$USER_TTS_OPTS" ]; then
591 TTS_OPTS="$USER_TTS_OPTS"
594 echo ""
596 if [ "$swcodec" = "yes" ]; then
597 ENCODER="rbspeexenc"
598 ENC_CMD="rbspeexenc"
599 ENC_OPTS="-q 4 -c 10"
600 else
601 if [ -n "`findtool lame`" ]; then
602 ENCODER="lame"
603 ENC_CMD="lame"
604 ENC_OPTS="--resample 12 -t -m m -h -V 9.999 -S -B 64 --vbr-new"
605 else
606 echo "You need LAME in the system path to build voice files for"
607 echo "HWCODEC targets."
608 exit 4
612 echo "Using $ENCODER for encoding voice clips"
614 # Allow the user to input manual commandline options
615 printf "Enter $ENCODER options (enter for defaults \"$ENC_OPTS\"): "
616 USER_ENC_OPTS=`input`
617 if [ -n "$USER_ENC_OPTS" ]; then
618 ENC_OPTS=$USER_ENC_OPTS
621 TEMPDIR="${pwd}"
622 if [ -n "`findtool cygpath`" ]; then
623 TEMPDIR=`cygpath . -a -w`
627 picklang() {
628 # figure out which languages that are around
629 for file in $rootdir/apps/lang/*.lang; do
630 clean=`echo $file | sed -e 's:.*/::g' | cut "-d." -f1`
631 langs="$langs $clean"
632 done
634 num=1
635 for one in $langs; do
636 echo "$num. $one"
637 num=`expr $num + 1`
638 done
640 read pick
643 whichlang() {
644 output=""
645 # Allow the user to pass a comma-separated list of langauges
646 for thispick in `echo $pick | sed 's/,/ /g'`; do
647 num=1
648 for one in $langs; do
649 # Accept both the language number and name
650 if [ "$num" = "$thispick" ] || [ "$thispick" = "$one" ]; then
651 if [ "$output" = "" ]; then
652 output=$one
653 else
654 output=$output,$one
657 num=`expr $num + 1`
658 done
659 done
660 echo $output
663 opt=$1
665 if test "$opt" = "--help"; then
666 echo "Rockbox configure script."
667 echo "Invoke this in a directory to generate a Makefile to build Rockbox"
668 echo "Do *NOT* run this within the tools directory!"
669 echo ""
670 cat <<EOF
671 Usage: configure [OPTION]...
672 Options:
673 --target=TARGET Sets the target, TARGET can be either the target ID or
674 corresponding string. Run without this option to see all
675 available targets.
677 --ram=RAM Sets the RAM for certain targets. Even though any number
678 is accepted, not every number is correct. The default
679 value will be applied, if you entered a wrong number
680 (which depends on the target). Watch the output. Run
681 without this option if you are not sure which the right
682 number is.
684 --type=TYPE Sets the build type. The shortcut is also valid.
685 Run without this option to see available types.
687 --rbdir=dir Use alternative rockbox directory (default: ${rbdir}).
688 This is useful for having multiple alternate builds on
689 your device that you can load with ROLO. However as the
690 bootloader looks for .rockbox you won't be able to boot
691 into this build.
693 --ccache Enable ccache use (done by default these days)
694 --no-ccache Disable ccache use
695 --help Shows this message (must not be used with other options)
699 exit
702 if test -r "configure"; then
703 # this is a check for a configure script in the current directory, it there
704 # is one, try to figure out if it is this one!
706 if { grep "^# Jukebox" configure >/dev/null 2>&1 ; } then
707 echo "WEEEEEEEEP. Don't run this configure script within the tools directory."
708 echo "It will only cause you pain and grief. Instead do this:"
709 echo ""
710 echo " cd .."
711 echo " mkdir build-dir"
712 echo " cd build-dir"
713 echo " ../tools/configure"
714 echo ""
715 echo "Much happiness will arise from this. Enjoy"
716 exit 5
720 # get our current directory
721 pwd=`pwd`;
723 if { echo $pwd | grep " "; } then
724 echo "You're running this script in a path that contains space. The build"
725 echo "system is unfortunately not clever enough to deal with this. Please"
726 echo "run the script from a different path, rename the path or fix the build"
727 echo "system!"
728 exit 6
731 if [ -z "$rootdir" ]; then
732 ##################################################################
733 # Figure out where the source code root is!
735 rootdir=`dirname $0`/../
737 #####################################################################
738 # Convert the possibly relative directory name to an absolute version
740 now=`pwd`
741 cd $rootdir
742 rootdir=`pwd`
744 # cd back to the build dir
745 cd $now
748 apps="apps"
749 appsdir='\$(ROOTDIR)/apps'
750 firmdir='\$(ROOTDIR)/firmware'
751 toolsdir='\$(ROOTDIR)/tools'
754 ##################################################################
755 # Figure out target platform
758 if [ "1" != `parse_args --target` ]; then
759 buildfor=`parse_args --target`;
760 else
761 echo "Enter target platform:"
762 cat <<EOF
763 ==Archos== ==iriver== ==Apple iPod==
764 0) Player/Studio 10) H120/H140 20) Color/Photo
765 1) Recorder 11) H320/H340 21) Nano
766 2) FM Recorder 12) iHP-100/110/115 22) Video
767 3) Recorder v2 13) iFP-790 23) 3G
768 4) Ondio SP 14) H10 20Gb 24) 4G Grayscale
769 5) Ondio FM 15) H10 5/6Gb 25) Mini 1G
770 6) AV300 26) Mini 2G
771 ==Toshiba== 27) 1G, 2G
772 ==Cowon/iAudio== 40) Gigabeat F
773 30) X5/X5V/X5L 41) Gigabeat S ==SanDisk==
774 31) M5/M5L 50) Sansa e200
775 32) 7 ==Olympus= 51) Sansa e200R
776 33) D2 70) M:Robe 500 52) Sansa c200
777 34) M3/M3L 71) M:Robe 100 53) Sansa m200
778 54) Sansa c100
779 ==Creative== ==Philips== 55) Sansa Clip
780 90) Zen Vision:M 30GB 100) GoGear SA9200 56) Sansa e200v2
781 91) Zen Vision:M 60GB 101) GoGear HDD1630/ 57) Sansa m200v4
782 92) Zen Vision HDD1830 58) Sansa Fuze
783 59) Sansa c200v2
784 ==Onda== ==Meizu== 60) Sansa Clipv2
785 120) VX747 110) M6SL
786 121) VX767 111) M6SP ==Logik==
787 122) VX747+ 112) M3 80) DAX 1GB MP3/DAB
788 123) VX777
790 ==Samsung== ==Tatung== ==Lyre project==
791 140) YH-820 150) Elio TPJ-1022 130) Lyre proto 1
792 141) YH-920
793 142) YH-925
796 buildfor=`input`;
799 # Set of tools built for all target platforms:
800 toolset="rdf2binary convbdf codepages"
802 # Toolsets for some target families:
803 archosbitmaptools="$toolset scramble descramble sh2d uclpack bmp2rb"
804 iriverbitmaptools="$toolset scramble descramble mkboot bmp2rb"
805 iaudiobitmaptools="$toolset scramble descramble mkboot bmp2rb"
806 ipodbitmaptools="$toolset scramble bmp2rb"
807 gigabeatbitmaptools="$toolset scramble descramble bmp2rb"
808 tccbitmaptools="$toolset scramble mktccboot bmp2rb"
809 # generic is used by IFP, Meizu and Onda
810 genericbitmaptools="$toolset bmp2rb"
811 # scramble is used by all other targets
812 scramblebitmaptools="$genericbitmaptools scramble"
815 # ---- For each target ----
817 # *Variables*
818 # target_id: a unique number identifying this target, IS NOT the menu number.
819 # Just use the currently highest number+1 when you add a new
820 # target.
821 # modelname: short model name used all over to identify this target
822 # memory: number of megabytes of RAM this target has. If the amount can
823 # be selected by the size prompt, let memory be unset here
824 # target: -Ddefine passed to the build commands to make the correct
825 # config-*.h file get included etc
826 # tool: the tool that takes a plain binary and converts that into a
827 # working "firmware" file for your target
828 # output: the final output file name
829 # boottool: the tool that takes a plain binary and generates a bootloader
830 # file for your target (or blank to use $tool)
831 # bootoutput:the final output file name for the bootloader (or blank to use
832 # $output)
833 # appextra: passed to the APPEXTRA variable in the Makefiles.
834 # TODO: add proper explanation
835 # archosrom: used only for Archos targets that build a special flashable .ucl
836 # image.
837 # flash: name of output for flashing, for targets where there's a special
838 # file output for this.
839 # plugins: set to 'yes' to build the plugins. Early development builds can
840 # set this to no in the early stages to have an easier life for a
841 # while
842 # swcodec: set 'yes' on swcodec targets
843 # toolset: lists what particular tools in the tools/ directory that this
844 # target needs to have built prior to building Rockbox
846 # *Functions*
847 # *cc: sets up gcc and compiler options for your target builds. Note
848 # that if you select a simulator build, the compiler selection is
849 # overridden later in the script.
851 case $buildfor in
853 0|player)
854 target_id=1
855 modelname="player"
856 target="-DARCHOS_PLAYER"
857 shcc
858 tool="$rootdir/tools/scramble"
859 output="archos.mod"
860 appextra="player:gui"
861 archosrom="$pwd/rombox.ucl"
862 flash="$pwd/rockbox.ucl"
863 plugins="yes"
864 swcodec=""
866 # toolset is the tools within the tools directory that we build for
867 # this particular target.
868 toolset="$toolset scramble descramble sh2d player_unifont uclpack"
870 # Note: the convbdf is present in the toolset just because: 1) the
871 # firmware/Makefile assumes it is present always, and 2) we will need it when we
872 # build the player simulator
874 t_cpu="sh"
875 t_manufacturer="archos"
876 t_model="player"
879 1|recorder)
880 target_id=2
881 modelname="recorder"
882 target="-DARCHOS_RECORDER"
883 shcc
884 tool="$rootdir/tools/scramble"
885 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
886 bmp2rb_native="$rootdir/tools/bmp2rb -f 0"
887 output="ajbrec.ajz"
888 appextra="recorder:gui"
889 #archosrom="$pwd/rombox.ucl"
890 flash="$pwd/rockbox.ucl"
891 plugins="yes"
892 swcodec=""
893 # toolset is the tools within the tools directory that we build for
894 # this particular target.
895 toolset=$archosbitmaptools
896 t_cpu="sh"
897 t_manufacturer="archos"
898 t_model="recorder"
901 2|fmrecorder)
902 target_id=3
903 modelname="fmrecorder"
904 target="-DARCHOS_FMRECORDER"
905 shcc
906 tool="$rootdir/tools/scramble -fm"
907 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
908 bmp2rb_native="$rootdir/tools/bmp2rb -f 0"
909 output="ajbrec.ajz"
910 appextra="recorder:gui"
911 #archosrom="$pwd/rombox.ucl"
912 flash="$pwd/rockbox.ucl"
913 plugins="yes"
914 swcodec=""
915 # toolset is the tools within the tools directory that we build for
916 # this particular target.
917 toolset=$archosbitmaptools
918 t_cpu="sh"
919 t_manufacturer="archos"
920 t_model="fm_v2"
923 3|recorderv2)
924 target_id=4
925 modelname="recorderv2"
926 target="-DARCHOS_RECORDERV2"
927 shcc
928 tool="$rootdir/tools/scramble -v2"
929 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
930 bmp2rb_native="$rootdir/tools/bmp2rb -f 0"
931 output="ajbrec.ajz"
932 appextra="recorder:gui"
933 #archosrom="$pwd/rombox.ucl"
934 flash="$pwd/rockbox.ucl"
935 plugins="yes"
936 swcodec=""
937 # toolset is the tools within the tools directory that we build for
938 # this particular target.
939 toolset=$archosbitmaptools
940 t_cpu="sh"
941 t_manufacturer="archos"
942 t_model="fm_v2"
945 4|ondiosp)
946 target_id=7
947 modelname="ondiosp"
948 target="-DARCHOS_ONDIOSP"
949 shcc
950 tool="$rootdir/tools/scramble -osp"
951 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
952 bmp2rb_native="$rootdir/tools/bmp2rb -f 0"
953 output="ajbrec.ajz"
954 appextra="recorder:gui"
955 archosrom="$pwd/rombox.ucl"
956 flash="$pwd/rockbox.ucl"
957 plugins="yes"
958 swcodec=""
959 # toolset is the tools within the tools directory that we build for
960 # this particular target.
961 toolset=$archosbitmaptools
962 t_cpu="sh"
963 t_manufacturer="archos"
964 t_model="ondio"
967 5|ondiofm)
968 target_id=8
969 modelname="ondiofm"
970 target="-DARCHOS_ONDIOFM"
971 shcc
972 tool="$rootdir/tools/scramble -ofm"
973 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
974 bmp2rb_native="$rootdir/tools/bmp2rb -f 0"
975 output="ajbrec.ajz"
976 appextra="recorder:gui"
977 #archosrom="$pwd/rombox.ucl"
978 flash="$pwd/rockbox.ucl"
979 plugins="yes"
980 swcodec=""
981 toolset=$archosbitmaptools
982 t_cpu="sh"
983 t_manufacturer="archos"
984 t_model="ondio"
987 6|av300)
988 target_id=38
989 modelname="av300"
990 target="-DARCHOS_AV300"
991 memory=16 # always
992 arm7tdmicc
993 tool="$rootdir/tools/scramble -mm=C"
994 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
995 bmp2rb_native="$rootdir/tools/bmp2rb -f 6"
996 output="cjbm.ajz"
997 appextra="recorder:gui"
998 plugins="yes"
999 swcodec=""
1000 # toolset is the tools within the tools directory that we build for
1001 # this particular target.
1002 toolset="$toolset scramble descramble bmp2rb"
1003 # architecture, manufacturer and model for the target-tree build
1004 t_cpu="arm"
1005 t_manufacturer="archos"
1006 t_model="av300"
1009 10|h120)
1010 target_id=9
1011 modelname="h120"
1012 target="-DIRIVER_H120"
1013 memory=32 # always
1014 coldfirecc
1015 tool="$rootdir/tools/scramble -add=h120"
1016 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1017 bmp2rb_native="$rootdir/tools/bmp2rb -f 2"
1018 bmp2rb_remotemono="$rootdir/tools/bmp2rb -f 0"
1019 bmp2rb_remotenative="$rootdir/tools/bmp2rb -f 0"
1020 output="rockbox.iriver"
1021 appextra="recorder:gui"
1022 flash="$pwd/rombox.iriver"
1023 plugins="yes"
1024 swcodec="yes"
1025 # toolset is the tools within the tools directory that we build for
1026 # this particular target.
1027 toolset=$iriverbitmaptools
1028 t_cpu="coldfire"
1029 t_manufacturer="iriver"
1030 t_model="h100"
1033 11|h300)
1034 target_id=10
1035 modelname="h300"
1036 target="-DIRIVER_H300"
1037 memory=32 # always
1038 coldfirecc
1039 tool="$rootdir/tools/scramble -add=h300"
1040 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1041 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
1042 bmp2rb_remotemono="$rootdir/tools/bmp2rb -f 0"
1043 bmp2rb_remotenative="$rootdir/tools/bmp2rb -f 0"
1044 output="rockbox.iriver"
1045 appextra="recorder:gui"
1046 plugins="yes"
1047 swcodec="yes"
1048 # toolset is the tools within the tools directory that we build for
1049 # this particular target.
1050 toolset=$iriverbitmaptools
1051 t_cpu="coldfire"
1052 t_manufacturer="iriver"
1053 t_model="h300"
1056 12|h100)
1057 target_id=11
1058 modelname="h100"
1059 target="-DIRIVER_H100"
1060 memory=16 # always
1061 coldfirecc
1062 tool="$rootdir/tools/scramble -add=h100"
1063 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1064 bmp2rb_native="$rootdir/tools/bmp2rb -f 2"
1065 bmp2rb_remotemono="$rootdir/tools/bmp2rb -f 0"
1066 bmp2rb_remotenative="$rootdir/tools/bmp2rb -f 0"
1067 output="rockbox.iriver"
1068 appextra="recorder:gui"
1069 flash="$pwd/rombox.iriver"
1070 plugins="yes"
1071 swcodec="yes"
1072 # toolset is the tools within the tools directory that we build for
1073 # this particular target.
1074 toolset=$iriverbitmaptools
1075 t_cpu="coldfire"
1076 t_manufacturer="iriver"
1077 t_model="h100"
1080 13|ifp7xx)
1081 target_id=19
1082 modelname="ifp7xx"
1083 target="-DIRIVER_IFP7XX"
1084 memory=1
1085 arm7tdmicc short
1086 tool="cp"
1087 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1088 bmp2rb_native="$rootdir/tools/bmp2rb -f 0"
1089 output="rockbox.wma"
1090 appextra="recorder:gui"
1091 plugins="yes"
1092 swcodec="yes"
1093 # toolset is the tools within the tools directory that we build for
1094 # this particular target.
1095 toolset=$genericbitmaptools
1096 t_cpu="arm"
1097 t_manufacturer="pnx0101"
1098 t_model="iriver-ifp7xx"
1101 14|h10)
1102 target_id=22
1103 modelname="h10"
1104 target="-DIRIVER_H10"
1105 memory=32 # always
1106 arm7tdmicc
1107 tool="$rootdir/tools/scramble -mi4v3 -model=h10 -type=RBOS"
1108 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1109 bmp2rb_native="$rootdir/tools/bmp2rb -f 5"
1110 output="rockbox.mi4"
1111 appextra="recorder:gui"
1112 plugins="yes"
1113 swcodec="yes"
1114 boottool="$rootdir/tools/scramble -mi4v3 -model=h10 -type=RBBL"
1115 bootoutput="H10_20GC.mi4"
1116 # toolset is the tools within the tools directory that we build for
1117 # this particular target.
1118 toolset=$scramblebitmaptools
1119 # architecture, manufacturer and model for the target-tree build
1120 t_cpu="arm"
1121 t_manufacturer="iriver"
1122 t_model="h10"
1125 15|h10_5gb)
1126 target_id=24
1127 modelname="h10_5gb"
1128 target="-DIRIVER_H10_5GB"
1129 memory=32 # always
1130 arm7tdmicc
1131 tool="$rootdir/tools/scramble -mi4v2 -model=h105 -type=RBOS"
1132 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1133 bmp2rb_native="$rootdir/tools/bmp2rb -f 5"
1134 output="rockbox.mi4"
1135 appextra="recorder:gui"
1136 plugins="yes"
1137 swcodec="yes"
1138 boottool="$rootdir/tools/scramble -mi4v2 -model=h105 -type=RBBL"
1139 bootoutput="H10.mi4"
1140 # toolset is the tools within the tools directory that we build for
1141 # this particular target.
1142 toolset=$scramblebitmaptools
1143 # architecture, manufacturer and model for the target-tree build
1144 t_cpu="arm"
1145 t_manufacturer="iriver"
1146 t_model="h10"
1149 20|ipodcolor)
1150 target_id=13
1151 modelname="ipodcolor"
1152 target="-DIPOD_COLOR"
1153 memory=32 # always
1154 arm7tdmicc
1155 tool="$rootdir/tools/scramble -add=ipco"
1156 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1157 bmp2rb_native="$rootdir/tools/bmp2rb -f 5"
1158 output="rockbox.ipod"
1159 appextra="recorder:gui"
1160 plugins="yes"
1161 swcodec="yes"
1162 bootoutput="bootloader-$modelname.ipod"
1163 # toolset is the tools within the tools directory that we build for
1164 # this particular target.
1165 toolset=$ipodbitmaptools
1166 # architecture, manufacturer and model for the target-tree build
1167 t_cpu="arm"
1168 t_manufacturer="ipod"
1169 t_model="color"
1172 21|ipodnano)
1173 target_id=14
1174 modelname="ipodnano"
1175 target="-DIPOD_NANO"
1176 memory=32 # always
1177 arm7tdmicc
1178 tool="$rootdir/tools/scramble -add=nano"
1179 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1180 bmp2rb_native="$rootdir/tools/bmp2rb -f 5"
1181 output="rockbox.ipod"
1182 appextra="recorder:gui"
1183 plugins="yes"
1184 swcodec="yes"
1185 bootoutput="bootloader-$modelname.ipod"
1186 # toolset is the tools within the tools directory that we build for
1187 # this particular target.
1188 toolset=$ipodbitmaptools
1189 # architecture, manufacturer and model for the target-tree build
1190 t_cpu="arm"
1191 t_manufacturer="ipod"
1192 t_model="nano"
1195 22|ipodvideo)
1196 target_id=15
1197 modelname="ipodvideo"
1198 target="-DIPOD_VIDEO"
1199 arm7tdmicc
1200 tool="$rootdir/tools/scramble -add=ipvd"
1201 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1202 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
1203 output="rockbox.ipod"
1204 appextra="recorder:gui"
1205 plugins="yes"
1206 swcodec="yes"
1207 bootoutput="bootloader-$modelname.ipod"
1208 # toolset is the tools within the tools directory that we build for
1209 # this particular target.
1210 toolset=$ipodbitmaptools
1211 # architecture, manufacturer and model for the target-tree build
1212 t_cpu="arm"
1213 t_manufacturer="ipod"
1214 t_model="video"
1217 23|ipod3g)
1218 target_id=16
1219 modelname="ipod3g"
1220 target="-DIPOD_3G"
1221 memory=32 # always
1222 arm7tdmicc
1223 tool="$rootdir/tools/scramble -add=ip3g"
1224 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1225 bmp2rb_native="$rootdir/tools/bmp2rb -f 6"
1226 output="rockbox.ipod"
1227 appextra="recorder:gui"
1228 plugins="yes"
1229 swcodec="yes"
1230 bootoutput="bootloader-$modelname.ipod"
1231 # toolset is the tools within the tools directory that we build for
1232 # this particular target.
1233 toolset=$ipodbitmaptools
1234 # architecture, manufacturer and model for the target-tree build
1235 t_cpu="arm"
1236 t_manufacturer="ipod"
1237 t_model="3g"
1240 24|ipod4g)
1241 target_id=17
1242 modelname="ipod4g"
1243 target="-DIPOD_4G"
1244 memory=32 # always
1245 arm7tdmicc
1246 tool="$rootdir/tools/scramble -add=ip4g"
1247 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1248 bmp2rb_native="$rootdir/tools/bmp2rb -f 6"
1249 output="rockbox.ipod"
1250 appextra="recorder:gui"
1251 plugins="yes"
1252 swcodec="yes"
1253 bootoutput="bootloader-$modelname.ipod"
1254 # toolset is the tools within the tools directory that we build for
1255 # this particular target.
1256 toolset=$ipodbitmaptools
1257 # architecture, manufacturer and model for the target-tree build
1258 t_cpu="arm"
1259 t_manufacturer="ipod"
1260 t_model="4g"
1263 25|ipodmini)
1264 target_id=18
1265 modelname="ipodmini"
1266 target="-DIPOD_MINI"
1267 memory=32 # always
1268 arm7tdmicc
1269 tool="$rootdir/tools/scramble -add=mini"
1270 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1271 bmp2rb_native="$rootdir/tools/bmp2rb -f 6"
1272 output="rockbox.ipod"
1273 appextra="recorder:gui"
1274 plugins="yes"
1275 swcodec="yes"
1276 bootoutput="bootloader-$modelname.ipod"
1277 # toolset is the tools within the tools directory that we build for
1278 # this particular target.
1279 toolset=$ipodbitmaptools
1280 # architecture, manufacturer and model for the target-tree build
1281 t_cpu="arm"
1282 t_manufacturer="ipod"
1283 t_model="mini"
1286 26|ipodmini2g)
1287 target_id=21
1288 modelname="ipodmini2g"
1289 target="-DIPOD_MINI2G"
1290 memory=32 # always
1291 arm7tdmicc
1292 tool="$rootdir/tools/scramble -add=mn2g"
1293 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1294 bmp2rb_native="$rootdir/tools/bmp2rb -f 6"
1295 output="rockbox.ipod"
1296 appextra="recorder:gui"
1297 plugins="yes"
1298 swcodec="yes"
1299 bootoutput="bootloader-$modelname.ipod"
1300 # toolset is the tools within the tools directory that we build for
1301 # this particular target.
1302 toolset=$ipodbitmaptools
1303 # architecture, manufacturer and model for the target-tree build
1304 t_cpu="arm"
1305 t_manufacturer="ipod"
1306 t_model="mini2g"
1309 27|ipod1g2g)
1310 target_id=29
1311 modelname="ipod1g2g"
1312 target="-DIPOD_1G2G"
1313 memory=32 # always
1314 arm7tdmicc
1315 tool="$rootdir/tools/scramble -add=1g2g"
1316 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1317 bmp2rb_native="$rootdir/tools/bmp2rb -f 6"
1318 output="rockbox.ipod"
1319 appextra="recorder:gui"
1320 plugins="yes"
1321 swcodec="yes"
1322 bootoutput="bootloader-$modelname.ipod"
1323 # toolset is the tools within the tools directory that we build for
1324 # this particular target.
1325 toolset=$ipodbitmaptools
1326 # architecture, manufacturer and model for the target-tree build
1327 t_cpu="arm"
1328 t_manufacturer="ipod"
1329 t_model="1g2g"
1332 30|x5)
1333 target_id=12
1334 modelname="x5"
1335 target="-DIAUDIO_X5"
1336 memory=16 # always
1337 coldfirecc
1338 tool="$rootdir/tools/scramble -add=iax5"
1339 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1340 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
1341 bmp2rb_remotemono="$rootdir/tools/bmp2rb -f 0"
1342 bmp2rb_remotenative="$rootdir/tools/bmp2rb -f 7"
1343 output="rockbox.iaudio"
1344 appextra="recorder:gui"
1345 plugins="yes"
1346 swcodec="yes"
1347 # toolset is the tools within the tools directory that we build for
1348 # this particular target.
1349 toolset="$iaudiobitmaptools"
1350 # architecture, manufacturer and model for the target-tree build
1351 t_cpu="coldfire"
1352 t_manufacturer="iaudio"
1353 t_model="x5"
1356 31|m5)
1357 target_id=28
1358 modelname="m5"
1359 target="-DIAUDIO_M5"
1360 memory=16 # always
1361 coldfirecc
1362 tool="$rootdir/tools/scramble -add=iam5"
1363 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1364 bmp2rb_native="$rootdir/tools/bmp2rb -f 2"
1365 bmp2rb_remotemono="$rootdir/tools/bmp2rb -f 0"
1366 bmp2rb_remotenative="$rootdir/tools/bmp2rb -f 7"
1367 output="rockbox.iaudio"
1368 appextra="recorder:gui"
1369 plugins="yes"
1370 swcodec="yes"
1371 # toolset is the tools within the tools directory that we build for
1372 # this particular target.
1373 toolset="$iaudiobitmaptools"
1374 # architecture, manufacturer and model for the target-tree build
1375 t_cpu="coldfire"
1376 t_manufacturer="iaudio"
1377 t_model="m5"
1380 32|iaudio7)
1381 target_id=32
1382 modelname="iaudio7"
1383 target="-DIAUDIO_7"
1384 memory=16 # always
1385 arm946cc
1386 tool="$rootdir/tools/scramble -add=i7"
1387 boottool="$rootdir/tools/scramble -tcc=crc"
1388 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1389 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
1390 output="rockbox.iaudio"
1391 appextra="recorder:gui"
1392 plugins="yes"
1393 swcodec="yes"
1394 bootoutput="I7_FW.BIN"
1395 # toolset is the tools within the tools directory that we build for
1396 # this particular target.
1397 toolset="$tccbitmaptools"
1398 # architecture, manufacturer and model for the target-tree build
1399 t_cpu="arm"
1400 t_manufacturer="tcc77x"
1401 t_model="iaudio7"
1404 33|cowond2)
1405 target_id=34
1406 modelname="cowond2"
1407 target="-DCOWON_D2"
1408 memory=32
1409 arm926ejscc
1410 tool="$rootdir/tools/scramble -add=d2"
1411 boottool="$rootdir/tools/scramble -tcc=crc"
1412 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1413 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
1414 output="rockbox.d2"
1415 appextra="recorder:gui"
1416 plugins="yes"
1417 swcodec="yes"
1418 toolset="$tccbitmaptools"
1419 # architecture, manufacturer and model for the target-tree build
1420 t_cpu="arm"
1421 t_manufacturer="tcc780x"
1422 t_model="cowond2"
1425 34|m3)
1426 target_id=37
1427 modelname="m3"
1428 target="-DIAUDIO_M3"
1429 memory=16 # always
1430 coldfirecc
1431 tool="$rootdir/tools/scramble -add=iam3"
1432 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1433 bmp2rb_native="$rootdir/tools/bmp2rb -f 7"
1434 output="rockbox.iaudio"
1435 appextra="recorder:gui"
1436 plugins="yes"
1437 swcodec="yes"
1438 # toolset is the tools within the tools directory that we build for
1439 # this particular target.
1440 toolset="$iaudiobitmaptools"
1441 # architecture, manufacturer and model for the target-tree build
1442 t_cpu="coldfire"
1443 t_manufacturer="iaudio"
1444 t_model="m3"
1447 40|gigabeatf)
1448 target_id=20
1449 modelname="gigabeatf"
1450 target="-DGIGABEAT_F"
1451 memory=32 # always
1452 arm9tdmicc
1453 tool="$rootdir/tools/scramble -add=giga"
1454 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1455 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
1456 output="rockbox.gigabeat"
1457 appextra="recorder:gui"
1458 plugins="yes"
1459 swcodec="yes"
1460 toolset=$gigabeatbitmaptools
1461 boottool="$rootdir/tools/scramble -gigabeat"
1462 bootoutput="FWIMG01.DAT"
1463 # architecture, manufacturer and model for the target-tree build
1464 t_cpu="arm"
1465 t_manufacturer="s3c2440"
1466 t_model="gigabeat-fx"
1469 41|gigabeats)
1470 target_id=26
1471 modelname="gigabeats"
1472 target="-DGIGABEAT_S"
1473 memory=64
1474 arm1136jfscc
1475 tool="$rootdir/tools/scramble -add=gigs"
1476 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1477 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
1478 output="rockbox.gigabeat"
1479 appextra="recorder:gui"
1480 plugins="yes"
1481 swcodec="yes"
1482 toolset="$gigabeatbitmaptools mknkboot"
1483 boottool="$rootdir/tools/scramble -gigabeats"
1484 bootoutput="nk.bin"
1485 # architecture, manufacturer and model for the target-tree build
1486 t_cpu="arm"
1487 t_manufacturer="imx31"
1488 t_model="gigabeat-s"
1491 70|mrobe500)
1492 target_id=36
1493 modelname="mrobe500"
1494 target="-DMROBE_500"
1495 memory=64 # always
1496 arm926ejscc
1497 tool="$rootdir/tools/scramble -add=m500"
1498 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1499 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
1500 bmp2rb_remotemono="$rootdir/tools/bmp2rb -f 0"
1501 bmp2rb_remotenative="$rootdir/tools/bmp2rb -f 0"
1502 output="rockbox.mrobe500"
1503 appextra="recorder:gui"
1504 plugins="yes"
1505 swcodec="yes"
1506 toolset=$gigabeatbitmaptools
1507 boottool="cp "
1508 bootoutput="rockbox.mrboot"
1509 # architecture, manufacturer and model for the target-tree build
1510 t_cpu="arm"
1511 t_manufacturer="tms320dm320"
1512 t_model="mrobe-500"
1515 71|mrobe100)
1516 target_id=33
1517 modelname="mrobe100"
1518 target="-DMROBE_100"
1519 memory=32 # always
1520 arm7tdmicc
1521 tool="$rootdir/tools/scramble -mi4v2 -model=m100 -type=RBOS"
1522 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1523 bmp2rb_native="$rootdir/tools/bmp2rb -f 0"
1524 output="rockbox.mi4"
1525 appextra="recorder:gui"
1526 plugins="yes"
1527 swcodec="yes"
1528 boottool="$rootdir/tools/scramble -mi4v2 -model=m100 -type=RBBL"
1529 bootoutput="pp5020.mi4"
1530 # toolset is the tools within the tools directory that we build for
1531 # this particular target.
1532 toolset=$scramblebitmaptools
1533 # architecture, manufacturer and model for the target-tree build
1534 t_cpu="arm"
1535 t_manufacturer="olympus"
1536 t_model="mrobe-100"
1539 80|logikdax)
1540 target_id=31
1541 modelname="logikdax"
1542 target="-DLOGIK_DAX"
1543 memory=2 # always
1544 arm946cc
1545 tool="$rootdir/tools/scramble -add=ldax"
1546 boottool="$rootdir/tools/scramble -tcc=crc"
1547 bootoutput="player.rom"
1548 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1549 bmp2rb_native="$rootdir/tools/bmp2rb -f 0"
1550 output="rockbox.logik"
1551 appextra="recorder:gui"
1552 plugins=""
1553 swcodec="yes"
1554 # toolset is the tools within the tools directory that we build for
1555 # this particular target.
1556 toolset=$tccbitmaptools
1557 # architecture, manufacturer and model for the target-tree build
1558 t_cpu="arm"
1559 t_manufacturer="tcc77x"
1560 t_model="logikdax"
1563 90|creativezvm30gb)
1564 target_id=35
1565 modelname="creativezvm30"
1566 target="-DCREATIVE_ZVM"
1567 memory=64
1568 arm926ejscc
1569 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1570 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
1571 tool="$rootdir/tools/scramble -creative=zvm"
1572 USE_ELF="yes"
1573 output="rockbox.zvm"
1574 appextra="recorder:gui"
1575 plugins="yes"
1576 swcodec="yes"
1577 toolset=$ipodbitmaptools
1578 boottool="$rootdir/tools/scramble -creative=zvm -no-ciff"
1579 bootoutput="rockbox.zvmboot"
1580 # architecture, manufacturer and model for the target-tree build
1581 t_cpu="arm"
1582 t_manufacturer="tms320dm320"
1583 t_model="creative-zvm"
1586 91|creativezvm60gb)
1587 target_id=40
1588 modelname="creativezvm60"
1589 target="-DCREATIVE_ZVM60GB"
1590 memory=64
1591 arm926ejscc
1592 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1593 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
1594 tool="$rootdir/tools/scramble -creative=zvm60 -no-ciff"
1595 USE_ELF="yes"
1596 output="rockbox.zvm60"
1597 appextra="recorder:gui"
1598 plugins="yes"
1599 swcodec="yes"
1600 toolset=$ipodbitmaptools
1601 boottool="$rootdir/tools/scramble -creative=zvm60"
1602 bootoutput="rockbox.zvm60boot"
1603 # architecture, manufacturer and model for the target-tree build
1604 t_cpu="arm"
1605 t_manufacturer="tms320dm320"
1606 t_model="creative-zvm"
1609 92|creativezenvision)
1610 target_id=39
1611 modelname="creativezv"
1612 target="-DCREATIVE_ZV"
1613 memory=64
1614 arm926ejscc
1615 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1616 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
1617 tool="$rootdir/tools/scramble -creative=zenvision -no-ciff"
1618 USE_ELF="yes"
1619 output="rockbox.zv"
1620 appextra="recorder:gui"
1621 plugins=""
1622 swcodec="yes"
1623 toolset=$ipodbitmaptools
1624 boottool="$rootdir/tools/scramble -creative=zenvision"
1625 bootoutput="rockbox.zvboot"
1626 # architecture, manufacturer and model for the target-tree build
1627 t_cpu="arm"
1628 t_manufacturer="tms320dm320"
1629 t_model="creative-zvm"
1632 50|e200)
1633 target_id=23
1634 modelname="e200"
1635 target="-DSANSA_E200"
1636 memory=32 # supposedly
1637 arm7tdmicc
1638 tool="$rootdir/tools/scramble -mi4v3 -model=e200 -type=RBOS"
1639 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1640 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
1641 output="rockbox.mi4"
1642 appextra="recorder:gui"
1643 plugins="yes"
1644 swcodec="yes"
1645 boottool="$rootdir/tools/scramble -mi4v3 -model=e200 -type=RBBL"
1646 bootoutput="PP5022.mi4"
1647 # toolset is the tools within the tools directory that we build for
1648 # this particular target.
1649 toolset=$scramblebitmaptools
1650 # architecture, manufacturer and model for the target-tree build
1651 t_cpu="arm"
1652 t_manufacturer="sandisk"
1653 t_model="sansa-e200"
1656 51|e200r)
1657 # the e200R model is pretty much identical to the e200, it only has a
1658 # different option to the scramble tool when building a bootloader and
1659 # makes the bootloader output file name in all lower case.
1660 target_id=27
1661 modelname="e200r"
1662 target="-DSANSA_E200"
1663 memory=32 # supposedly
1664 arm7tdmicc
1665 tool="$rootdir/tools/scramble -mi4v3 -model=e20r -type=RBOS"
1666 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1667 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
1668 output="rockbox.mi4"
1669 appextra="recorder:gui"
1670 plugins="yes"
1671 swcodec="yes"
1672 boottool="$rootdir/tools/scramble -mi4r -model=e20r -type=RBBL"
1673 bootoutput="pp5022.mi4"
1674 # toolset is the tools within the tools directory that we build for
1675 # this particular target.
1676 toolset=$scramblebitmaptools
1677 # architecture, manufacturer and model for the target-tree build
1678 t_cpu="arm"
1679 t_manufacturer="sandisk"
1680 t_model="sansa-e200"
1683 52|c200)
1684 target_id=30
1685 modelname="c200"
1686 target="-DSANSA_C200"
1687 memory=32 # supposedly
1688 arm7tdmicc
1689 tool="$rootdir/tools/scramble -mi4v3 -model=c200 -type=RBOS"
1690 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1691 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
1692 output="rockbox.mi4"
1693 appextra="recorder:gui"
1694 plugins="yes"
1695 swcodec="yes"
1696 boottool="$rootdir/tools/scramble -mi4v3 -model=c200 -type=RBBL"
1697 bootoutput="firmware.mi4"
1698 # toolset is the tools within the tools directory that we build for
1699 # this particular target.
1700 toolset=$scramblebitmaptools
1701 # architecture, manufacturer and model for the target-tree build
1702 t_cpu="arm"
1703 t_manufacturer="sandisk"
1704 t_model="sansa-c200"
1707 53|m200)
1708 target_id=48
1709 modelname="m200"
1710 target="-DSANSA_M200"
1711 memory=1 # always
1712 arm946cc
1713 tool="$rootdir/tools/scramble -add=m200"
1714 boottool="$rootdir/tools/scramble -tcc=crc"
1715 bootoutput="player.rom"
1716 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1717 bmp2rb_native="$rootdir/tools/bmp2rb -f 0"
1718 output="rockbox.m200"
1719 appextra="recorder:gui"
1720 plugins=""
1721 swcodec="yes"
1722 # toolset is the tools within the tools directory that we build for
1723 # this particular target.
1724 toolset=$tccbitmaptools
1725 # architecture, manufacturer and model for the target-tree build
1726 t_cpu="arm"
1727 t_manufacturer="tcc77x"
1728 t_model="m200"
1731 54|c100)
1732 target_id=42
1733 modelname="c100"
1734 target="-DSANSA_C100"
1735 memory=2
1736 arm946cc
1737 tool="$rootdir/tools/scramble -add=c100"
1738 boottool="$rootdir/tools/scramble -tcc=crc"
1739 bootoutput="player.rom"
1740 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1741 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
1742 output="rockbox.c100"
1743 appextra="recorder:gui"
1744 plugins=""
1745 swcodec="yes"
1746 # toolset is the tools within the tools directory that we build for
1747 # this particular target.
1748 toolset=$tccbitmaptools
1749 # architecture, manufacturer and model for the target-tree build
1750 t_cpu="arm"
1751 t_manufacturer="tcc77x"
1752 t_model="c100"
1755 55|Clip|clip)
1756 target_id=50
1757 modelname="clip"
1758 target="-DSANSA_CLIP"
1759 memory=2
1760 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1761 bmp2rb_native="$bmp2rb_mono"
1762 tool="$rootdir/tools/scramble -add=clip"
1763 output="rockbox.sansa"
1764 bootoutput="bootloader-clip.sansa"
1765 appextra="recorder:gui"
1766 plugins="yes"
1767 swcodec="yes"
1768 toolset=$scramblebitmaptools
1769 t_cpu="arm"
1770 t_manufacturer="as3525"
1771 t_model="sansa-clip"
1772 arm9tdmicc
1776 56|e200v2)
1777 target_id=51
1778 modelname="e200v2"
1779 target="-DSANSA_E200V2"
1780 memory=8
1781 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1782 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
1783 tool="$rootdir/tools/scramble -add=e2v2"
1784 output="rockbox.sansa"
1785 bootoutput="bootloader-e200v2.sansa"
1786 appextra="recorder:gui"
1787 plugins="yes"
1788 swcodec="yes"
1789 toolset=$scramblebitmaptools
1790 t_cpu="arm"
1791 t_manufacturer="as3525"
1792 t_model="sansa-e200v2"
1793 arm9tdmicc
1797 57|m200v4)
1798 target_id=52
1799 modelname="m200v4"
1800 target="-DSANSA_M200V4"
1801 memory=2
1802 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1803 bmp2rb_native="$bmp2rb_mono"
1804 tool="$rootdir/tools/scramble -add=m2v4"
1805 output="rockbox.sansa"
1806 bootoutput="bootloader-m200v4.sansa"
1807 appextra="recorder:gui"
1808 plugins="yes"
1809 swcodec="yes"
1810 toolset=$scramblebitmaptools
1811 t_cpu="arm"
1812 t_manufacturer="as3525"
1813 t_model="sansa-m200v4"
1814 arm9tdmicc
1818 58|fuze)
1819 target_id=53
1820 modelname="fuze"
1821 target="-DSANSA_FUZE"
1822 memory=8
1823 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1824 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
1825 tool="$rootdir/tools/scramble -add=fuze"
1826 output="rockbox.sansa"
1827 bootoutput="bootloader-fuze.sansa"
1828 appextra="recorder:gui"
1829 plugins="yes"
1830 swcodec="yes"
1831 toolset=$scramblebitmaptools
1832 t_cpu="arm"
1833 t_manufacturer="as3525"
1834 t_model="sansa-fuze"
1835 arm9tdmicc
1839 59|c200v2)
1840 target_id=55
1841 modelname="c200v2"
1842 target="-DSANSA_C200V2"
1843 memory=2 # as per OF diagnosis mode
1844 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1845 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
1846 tool="$rootdir/tools/scramble -add=c2v2"
1847 output="rockbox.sansa"
1848 bootoutput="bootloader-c200v2.sansa"
1849 appextra="recorder:gui"
1850 plugins="yes"
1851 swcodec="yes"
1852 # toolset is the tools within the tools directory that we build for
1853 # this particular target.
1854 toolset=$scramblebitmaptools
1855 # architecture, manufacturer and model for the target-tree build
1856 t_cpu="arm"
1857 t_manufacturer="as3525"
1858 t_model="sansa-c200v2"
1859 arm9tdmicc
1862 60|Clipv2|clipv2)
1863 echo "Sansa Clipv2 is not yet supported !"
1864 exit 1
1865 target_id=60
1866 modelname="clipv2"
1867 target="-DSANSA_CLIPV2"
1868 memory=8
1869 arm926ejscc
1870 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1871 bmp2rb_native="$bmp2rb_mono"
1872 tool="$rootdir/tools/scramble -add=clv2"
1873 output="rockbox.sansa"
1874 bootoutput="bootloader-clipv2.sansa"
1875 appextra="recorder:gui"
1876 plugins="yes"
1877 swcodec="yes"
1878 toolset=$scramblebitmaptools
1879 t_cpu="arm"
1880 t_manufacturer="as3525"
1881 t_model="sansa-clipv2"
1884 150|tpj1022)
1885 target_id=25
1886 modelname="tpj1022"
1887 target="-DELIO_TPJ1022"
1888 memory=32 # always
1889 arm7tdmicc
1890 tool="$rootdir/tools/scramble -add tpj2"
1891 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1892 bmp2rb_native="$rootdir/tools/bmp2rb -f 5"
1893 output="rockbox.elio"
1894 appextra="recorder:gui"
1895 plugins="yes"
1896 swcodec="yes"
1897 boottool="$rootdir/tools/scramble -mi4v2"
1898 bootoutput="pp5020.mi4"
1899 # toolset is the tools within the tools directory that we build for
1900 # this particular target.
1901 toolset=$scramblebitmaptools
1902 # architecture, manufacturer and model for the target-tree build
1903 t_cpu="arm"
1904 t_manufacturer="tatung"
1905 t_model="tpj1022"
1908 100|sa9200)
1909 target_id=41
1910 modelname="sa9200"
1911 target="-DPHILIPS_SA9200"
1912 memory=32 # supposedly
1913 arm7tdmicc
1914 tool="$rootdir/tools/scramble -mi4v3 -model=9200 -type=RBOS"
1915 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1916 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
1917 output="rockbox.mi4"
1918 appextra="recorder:gui"
1919 plugins=""
1920 swcodec="yes"
1921 boottool="$rootdir/tools/scramble -mi4v3 -model=9200 -type=RBBL"
1922 bootoutput="FWImage.ebn"
1923 # toolset is the tools within the tools directory that we build for
1924 # this particular target.
1925 toolset=$scramblebitmaptools
1926 # architecture, manufacturer and model for the target-tree build
1927 t_cpu="arm"
1928 t_manufacturer="philips"
1929 t_model="sa9200"
1932 101|hdd1630)
1933 target_id=43
1934 modelname="hdd1630"
1935 target="-DPHILIPS_HDD1630"
1936 memory=32 # supposedly
1937 arm7tdmicc
1938 tool="$rootdir/tools/scramble -mi4v3 -model=1630 -type=RBOS"
1939 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1940 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
1941 output="rockbox.mi4"
1942 appextra="recorder:gui"
1943 plugins="yes"
1944 swcodec="yes"
1945 boottool="$rootdir/tools/scramble -mi4v3 -model=1630 -type=RBBL"
1946 bootoutput="FWImage.ebn"
1947 # toolset is the tools within the tools directory that we build for
1948 # this particular target.
1949 toolset=$scramblebitmaptools
1950 # architecture, manufacturer and model for the target-tree build
1951 t_cpu="arm"
1952 t_manufacturer="philips"
1953 t_model="hdd1630"
1956 110|meizum6sl)
1957 target_id=49
1958 modelname="meizum6sl"
1959 target="-DMEIZU_M6SL"
1960 memory=16 # always
1961 arm940tbecc
1962 tool="cp"
1963 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1964 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
1965 output="rockbox.meizu"
1966 appextra="recorder:gui"
1967 plugins="no" #FIXME
1968 swcodec="yes"
1969 toolset=$genericbitmaptools
1970 boottool="cp"
1971 bootoutput="rockboot.ebn"
1972 # architecture, manufacturer and model for the target-tree build
1973 t_cpu="arm"
1974 t_manufacturer="s5l8700"
1975 t_model="meizu-m6sl"
1978 111|meizum6sp)
1979 target_id=46
1980 modelname="meizum6sp"
1981 target="-DMEIZU_M6SP"
1982 memory=16 # always
1983 arm940tbecc
1984 tool="cp"
1985 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
1986 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
1987 output="rockbox.meizu"
1988 appextra="recorder:gui"
1989 plugins="no" #FIXME
1990 swcodec="yes"
1991 toolset=$genericbitmaptools
1992 boottool="cp"
1993 bootoutput="rockboot.ebn"
1994 # architecture, manufacturer and model for the target-tree build
1995 t_cpu="arm"
1996 t_manufacturer="s5l8700"
1997 t_model="meizu-m6sp"
2000 112|meizum3)
2001 target_id=47
2002 modelname="meizum3"
2003 target="-DMEIZU_M3"
2004 memory=16 # always
2005 arm940tbecc
2006 tool="cp"
2007 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
2008 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
2009 output="rockbox.meizu"
2010 appextra="recorder:gui"
2011 plugins="no" #FIXME
2012 swcodec="yes"
2013 toolset=$genericbitmaptools
2014 boottool="cp"
2015 bootoutput="rockboot.ebn"
2016 # architecture, manufacturer and model for the target-tree build
2017 t_cpu="arm"
2018 t_manufacturer="s5l8700"
2019 t_model="meizu-m3"
2022 120|ondavx747)
2023 target_id=44
2024 modelname="ondavx747"
2025 target="-DONDA_VX747"
2026 memory=16
2027 mipselcc
2028 tool="$rootdir/tools/scramble -add=x747"
2029 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
2030 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
2031 output="rockbox.vx747"
2032 appextra="recorder:gui"
2033 plugins="yes"
2034 swcodec="yes"
2035 toolset=$genericbitmaptools
2036 boottool="cp"
2037 bootoutput="rockboot.vx747"
2038 # architecture, manufacturer and model for the target-tree build
2039 t_cpu="mips"
2040 t_manufacturer="ingenic_jz47xx"
2041 t_model="onda_vx747"
2044 121|ondavx767)
2045 target_id=45
2046 modelname="ondavx767"
2047 target="-DONDA_VX767"
2048 memory=16 #FIXME
2049 mipselcc
2050 tool="cp"
2051 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
2052 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
2053 output="rockbox.vx767"
2054 appextra="recorder:gui"
2055 plugins="" #FIXME
2056 swcodec="yes"
2057 toolset=$genericbitmaptools
2058 boottool="cp"
2059 bootoutput="rockboot.vx767"
2060 # architecture, manufacturer and model for the target-tree build
2061 t_cpu="mips"
2062 t_manufacturer="ingenic_jz47xx"
2063 t_model="onda_vx767"
2066 122|ondavx747p)
2067 target_id=54
2068 modelname="ondavx747p"
2069 target="-DONDA_VX747P"
2070 memory=16
2071 mipselcc
2072 tool="$rootdir/tools/scramble -add=747p"
2073 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
2074 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
2075 output="rockbox.vx747p"
2076 appextra="recorder:gui"
2077 plugins="yes"
2078 swcodec="yes"
2079 toolset=$genericbitmaptools
2080 boottool="cp"
2081 bootoutput="rockboot.vx747p"
2082 # architecture, manufacturer and model for the target-tree build
2083 t_cpu="mips"
2084 t_manufacturer="ingenic_jz47xx"
2085 t_model="onda_vx747"
2088 123|ondavx777)
2089 target_id=61
2090 modelname="ondavx777"
2091 target="-DONDA_VX777"
2092 memory=16
2093 mipselcc
2094 tool="$rootdir/tools/scramble -add=x777"
2095 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
2096 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
2097 output="rockbox.vx777"
2098 appextra="recorder:gui"
2099 plugins="" #TODO
2100 swcodec="yes"
2101 toolset=$genericbitmaptools
2102 boottool="cp"
2103 bootoutput="rockboot.vx777"
2104 # architecture, manufacturer and model for the target-tree build
2105 t_cpu="mips"
2106 t_manufacturer="ingenic_jz47xx"
2107 t_model="onda_vx747"
2110 130|lyre_proto1)
2111 target_id=56
2112 modelname="lyre_proto1"
2113 target="-DLYRE_PROTO1"
2114 memory=64
2115 arm926ejscc
2116 tool="cp"
2117 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
2118 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
2119 output="rockbox.lyre"
2120 appextra="recorder:gui"
2121 plugins=""
2122 swcodec="yes"
2123 toolset=$scramblebitmaptools
2124 boottool="cp"
2125 bootoutput="bootloader-proto1.lyre"
2126 # architecture, manufacturer and model for the target-tree build
2127 t_cpu="arm"
2128 t_manufacturer="at91sam"
2129 t_model="lyre_proto1"
2132 140|yh_820)
2133 target_id=57
2134 modelname="yh_820"
2135 target="-DSAMSUNG_YH820"
2136 memory=32 # always
2137 arm7tdmicc
2138 tool="$rootdir/tools/scramble -mi4v2 -model=y820 -type=RBOS"
2139 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
2140 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
2141 output="rockbox.mi4"
2142 appextra="recorder:gui"
2143 plugins=""
2144 swcodec="yes"
2145 boottool="$rootdir/tools/scramble -mi4v2 -model=y820 -type=RBBL"
2146 bootoutput="FW_YH820.mi4"
2147 # toolset is the tools within the tools directory that we build for
2148 # this particular target.
2149 toolset=$scramblebitmaptools
2150 # architecture, manufacturer and model for the target-tree build
2151 t_cpu="arm"
2152 t_manufacturer="samsung"
2153 t_model="yh820"
2156 141|yh_920)
2157 target_id=58
2158 modelname="yh_920"
2159 target="-DSAMSUNG_YH920"
2160 memory=32 # always
2161 arm7tdmicc
2162 tool="$rootdir/tools/scramble -mi4v2 -model=y920 -type=RBOS"
2163 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
2164 bmp2rb_native="$rootdir/tools/bmp2rb -f 2"
2165 output="rockbox.mi4"
2166 appextra="recorder:gui"
2167 plugins=""
2168 swcodec="yes"
2169 boottool="$rootdir/tools/scramble -mi4v2 -model=y920 -type=RBBL"
2170 bootoutput="PP5020.mi4"
2171 # toolset is the tools within the tools directory that we build for
2172 # this particular target.
2173 toolset=$scramblebitmaptools
2174 # architecture, manufacturer and model for the target-tree build
2175 t_cpu="arm"
2176 t_manufacturer="samsung"
2177 t_model="yh920"
2180 142|yh_925)
2181 target_id=59
2182 modelname="yh_925"
2183 target="-DSAMSUNG_YH925"
2184 memory=32 # always
2185 arm7tdmicc
2186 tool="$rootdir/tools/scramble -mi4v2 -model=y925 -type=RBOS"
2187 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
2188 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
2189 output="rockbox.mi4"
2190 appextra="recorder:gui"
2191 plugins=""
2192 swcodec="yes"
2193 boottool="$rootdir/tools/scramble -mi4v2 -model=y925 -type=RBBL"
2194 bootoutput="FW_YH925.mi4"
2195 # toolset is the tools within the tools directory that we build for
2196 # this particular target.
2197 toolset=$scramblebitmaptools
2198 # architecture, manufacturer and model for the target-tree build
2199 t_cpu="arm"
2200 t_manufacturer="samsung"
2201 t_model="yh925"
2205 echo "Please select a supported target platform!"
2206 exit 7
2209 esac
2211 echo "Platform set to $modelname"
2214 #remove start
2215 ############################################################################
2216 # Amount of memory, for those that can differ. They have $memory unset at
2217 # this point.
2220 if [ -z "$memory" ]; then
2221 case $target_id in
2223 echo "Enter size of your RAM (in MB): (Defaults to 32)"
2224 if [ "1" != `parse_args --ram` ]; then
2225 size=`parse_args --ram`;
2226 else
2227 size=`input`;
2229 case $size in
2230 60|64)
2231 memory="64"
2234 memory="32"
2236 esac
2239 echo "Enter size of your RAM (in MB): (Defaults to 2)"
2240 if [ "1" != `parse_args --ram` ]; then
2241 size=`parse_args --ram`;
2242 else
2243 size=`input`;
2245 case $size in
2247 memory="8"
2250 memory="2"
2252 esac
2254 esac
2255 echo "Memory size selected: $memory MB"
2256 echo ""
2258 #remove end
2260 ##################################################################
2261 # Figure out build "type"
2264 # the ifp7x0 is the only platform that supports building a gdb stub like
2265 # this
2266 case $modelname in
2267 ifp7xx)
2268 gdbstub="(G)DB stub, "
2270 e200r|e200)
2271 gdbstub="(I)nstaller, "
2273 c200)
2274 gdbstub="(E)raser, "
2278 esac
2279 if [ "1" != `parse_args --type` ]; then
2280 btype=`parse_args --type`;
2281 else
2282 echo "Build (N)ormal, (A)dvanced, (S)imulator, (B)ootloader, $gdbstub(M)anual: (Defaults to N)"
2283 btype=`input`;
2286 case $btype in
2287 [Ii])
2288 appsdir='\$(ROOTDIR)/bootloader'
2289 apps="bootloader"
2290 extradefines="-DBOOTLOADER -DE200R_INSTALLER -ffunction-sections -fdata-sections"
2291 bootloader="1"
2292 echo "e200R-installer build selected"
2294 [Ee])
2295 appsdir='\$(ROOTDIR)/bootloader'
2296 apps="bootloader"
2297 echo "C2(4)0 or C2(5)0"
2298 variant=`input`
2299 case $variant in
2301 extradefines="-DBOOTLOADER -DC200_ERASE -DC240_ERASE -ffunction-sections -fdata-sections"
2302 echo "c240 eraser build selected"
2305 extradefines="-DBOOTLOADER -DC200_ERASE -DC250_ERASE -ffunction-sections -fdata-sections"
2306 echo "c240 eraser build selected"
2308 esac
2309 bootloader="1"
2310 echo "c200 eraser build selected"
2312 [Bb])
2313 if test $t_manufacturer = "archos"; then
2314 # Archos SH-based players do this somewhat differently for
2315 # some reason
2316 appsdir='\$(ROOTDIR)/flash/bootbox'
2317 apps="bootbox"
2318 else
2319 appsdir='\$(ROOTDIR)/bootloader'
2320 apps="bootloader"
2321 flash=""
2322 if test -n "$boottool"; then
2323 tool="$boottool"
2325 if test -n "$bootoutput"; then
2326 output=$bootoutput
2329 extradefines="-DBOOTLOADER -ffunction-sections -fdata-sections"
2330 bootloader="1"
2331 echo "Bootloader build selected"
2333 [Ss])
2334 debug="-DDEBUG"
2335 simulator="yes"
2336 extradefines="-DSIMULATOR"
2337 archosrom=""
2338 flash=""
2339 echo "Simulator build selected"
2341 [Aa])
2342 echo "Advanced build selected"
2343 whichadvanced
2345 [Gg])
2346 extradefines="-DSTUB" # for target makefile symbol EXTRA_DEFINES
2347 appsdir='\$(ROOTDIR)/gdb'
2348 apps="stub"
2349 case $modelname in
2350 ifp7xx)
2351 output="stub.wma"
2355 esac
2356 echo "GDB stub build selected"
2358 [Mm])
2359 toolset='';
2360 apps="manual"
2361 echo "Manual build selected"
2364 if [ "$modelname" = "e200r" ]; then
2365 echo "Do not use the e200R target for regular builds. Use e200 instead."
2366 exit 8
2368 debug=""
2369 btype="N" # set it explicitly since RET only gets here as well
2370 echo "Normal build selected"
2373 esac
2374 # to be able running "make manual" from non-manual configuration
2375 case $modelname in
2376 fmrecorder)
2377 manualdev="recorderv2fm"
2379 recorderv2)
2380 manualdev="recorderv2fm"
2382 h1??)
2383 manualdev="h100"
2385 ipodmini2g)
2386 manualdev="ipodmini"
2389 manualdev=$modelname
2391 esac
2393 if [ -z "$debug" ]; then
2394 GCCOPTS="$GCCOPTS $GCCOPTIMIZE"
2397 echo "Using source code root directory: $rootdir"
2399 # this was once possible to change at build-time, but no more:
2400 language="english"
2402 uname=`uname`
2404 if [ "yes" = "$simulator" ]; then
2405 # setup compiler and things for simulator
2406 simcc
2408 if [ -d "simdisk" ]; then
2409 echo "Subdirectory 'simdisk' already present"
2410 else
2411 mkdir simdisk
2412 echo "Created a 'simdisk' subdirectory for simulating the hard disk"
2416 # Now, figure out version number of the (gcc) compiler we are about to use
2417 gccver=`$CC -dumpversion`;
2419 # figure out the binutil version too and display it, mostly for the build
2420 # system etc to be able to see it easier
2421 if [ $uname = "Darwin" ]; then
2422 ldver=`$LD -v 2>&1 | sed -e 's/[^0-9.-]//g'`
2423 else
2424 ldver=`$LD --version | head -n 1 | sed -e 's/[^0-9.]//g'`
2427 if [ -z "$gccver" ]; then
2428 echo "WARNING: The compiler you must use ($CC) is not in your path!"
2429 echo "WARNING: this may cause your build to fail since we cannot do the"
2430 echo "WARNING: checks we want now."
2431 else
2433 # gccver should now be "3.3.5", "3.4.3", "2.95.3-6" and similar, but don't
2434 # DEPEND on it
2436 num1=`echo $gccver | cut -d . -f1`
2437 num2=`echo $gccver | cut -d . -f2`
2438 gccnum=`(expr $num1 "*" 100 + $num2) 2>/dev/null`
2440 # This makes:
2441 # 3.3.X => 303
2442 # 3.4.X => 304
2443 # 2.95.3 => 295
2445 echo "Using $CC $gccver ($gccnum)"
2447 if test "$gccnum" -ge "400"; then
2448 # gcc 4.0 is just *so* much pickier on arguments that differ in signedness
2449 # so we ignore that warnings for now
2450 # -Wno-pointer-sign
2451 GCCOPTS="$GCCOPTS -Wno-pointer-sign"
2454 if test "$gccnum" -ge "401"; then
2455 # this is a lame hack to avoid "warning: dereferencing type-punned pointer
2456 # will break strict-aliasing rules"
2458 GCCOPTS="$GCCOPTS -fno-strict-aliasing"
2461 if test "$gccnum" -ge "402"; then
2462 # disable warning about "warning: initialized field overwritten" as gcc 4.2
2463 # and later would throw it for several valid cases
2464 GCCOPTS="$GCCOPTS -Wno-override-init"
2467 case $prefix in
2469 # simulator
2471 i586-mingw32msvc-)
2472 # cross-compile for win32
2475 # Verify that the cross-compiler is of a recommended version!
2476 if test "$gccver" != "$gccchoice"; then
2477 echo "WARNING: Your cross-compiler $CC $gccver is not of the recommended"
2478 echo "WARNING: version $gccchoice!"
2479 echo "WARNING: This may cause your build to fail since it may be a version"
2480 echo "WARNING: that isn't functional or known to not be the best choice."
2481 echo "WARNING: If you suffer from build problems, you know that this is"
2482 echo "WARNING: a likely source for them..."
2485 esac
2490 echo "Using $LD $ldver"
2492 # check the compiler for SH platforms
2493 if test "$CC" = "sh-elf-gcc"; then
2494 if test "$gccnum" -lt "400"; then
2495 echo "WARNING: Consider upgrading your compiler to the 4.0.X series!"
2496 echo "WARNING: http://www.rockbox.org/twiki/bin/view/Main/CrossCompiler"
2497 else
2498 # figure out patch status
2499 gccpatch=`$CC --version`;
2501 if { echo $gccpatch | grep "rockbox" >/dev/null 2>&1; } then
2502 echo "gcc $gccver is rockbox patched"
2503 # then convert -O to -Os to get smaller binaries!
2504 GCCOPTS=`echo $GCCOPTS | sed 's/ -O / -Os /'`
2505 else
2506 echo "WARNING: You use an unpatched gcc compiler: $gccver"
2507 echo "WARNING: http://www.rockbox.org/twiki/bin/view/Main/CrossCompiler"
2512 if test "$CC" = "m68k-elf-gcc"; then
2513 # convert -O to -Os to get smaller binaries!
2514 GCCOPTS=`echo $GCCOPTS | sed 's/ -O / -Os /'`
2517 if [ "1" != `parse_args --ccache` ]; then
2518 echo "Enable ccache for building"
2519 ccache="ccache"
2520 else
2521 if [ "1" = `parse_args --no-ccache` ]; then
2522 ccache=`findtool ccache`
2523 if test -n "$ccache"; then
2524 echo "Found and uses ccache ($ccache)"
2529 # figure out the full path to the various commands if possible
2530 HOSTCC=`findtool gcc --lit`
2531 HOSTAR=`findtool ar --lit`
2532 CC=`findtool ${CC} --lit`
2533 LD=`findtool ${AR} --lit`
2534 AR=`findtool ${AR} --lit`
2535 AS=`findtool ${AS} --lit`
2536 OC=`findtool ${OC} --lit`
2537 WINDRES=`findtool ${WINDRES} --lit`
2538 DLLTOOL=`findtool ${DLLTOOL} --lit`
2539 DLLWRAP=`findtool ${DLLWRAP} --lit`
2540 RANLIB=`findtool ${RANLIB} --lit`
2542 if test -n "$ccache"; then
2543 CC="$ccache $CC"
2546 if test "X$endian" = "Xbig"; then
2547 defendian="ROCKBOX_BIG_ENDIAN"
2548 else
2549 defendian="ROCKBOX_LITTLE_ENDIAN"
2552 if [ "1" != `parse_args --rbdir` ]; then
2553 rbdir=`parse_args --rbdir`;
2554 echo "Using alternate rockbox dir: ${rbdir}"
2557 sed > autoconf.h \
2558 -e "s,@ENDIAN@,${defendian},g" \
2559 -e "s,^#undef ROCKBOX_HAS_LOGF,$use_logf,g" \
2560 -e "s,@config_rtc@,$config_rtc,g" \
2561 -e "s,@have_rtc_alarm@,$have_rtc_alarm,g" \
2562 -e "s,@RBDIR@,${rbdir},g" \
2563 -e "s,@have_backlight@,$have_backlight,g" \
2564 -e "s,@have_fmradio_in@,$have_fmradio_in,g" \
2565 -e "s,@have_ata_poweroff@,$have_ata_poweroff,g" \
2566 <<EOF
2567 /* This header was made by configure */
2568 #ifndef __BUILD_AUTOCONF_H
2569 #define __BUILD_AUTOCONF_H
2571 /* Define endianess for the target or simulator platform */
2572 #define @ENDIAN@ 1
2574 /* Define this if you build rockbox to support the logf logging and display */
2575 #undef ROCKBOX_HAS_LOGF
2577 /* optional define for a backlight modded Ondio */
2578 @have_backlight@
2580 /* optional define for FM radio mod for iAudio M5 */
2581 @have_fmradio_in@
2583 /* optional define for ATA poweroff on Player */
2584 @have_ata_poweroff@
2586 /* optional defines for RTC mod for h1x0 */
2587 @config_rtc@
2588 @have_rtc_alarm@
2590 /* root of Rockbox */
2591 #define ROCKBOX_DIR "/@RBDIR@"
2593 #endif /* __BUILD_AUTOCONF_H */
2596 if test -n "$t_cpu"; then
2597 TARGET_INC="-I\$(FIRMDIR)/target/$t_cpu/$t_manufacturer/$t_model"
2598 TARGET_INC="$TARGET_INC -I\$(FIRMDIR)/target/$t_cpu/$t_manufacturer"
2599 TARGET_INC="$TARGET_INC -I\$(FIRMDIR)/target/$t_cpu"
2600 GCCOPTS="$GCCOPTS"
2603 if test "$simulator" = "yes"; then
2604 # add simul make stuff on the #SIMUL# line
2605 simmagic1="s,@SIMUL1@,\$(SILENT)\$(MAKE) -C \$(SIMDIR) OBJDIR=\$(BUILDDIR)/sim,"
2606 simmagic2="s,@SIMUL2@,\$(SILENT)\$(MAKE) -C \$(ROOTDIR)/uisimulator/common OBJDIR=\$(BUILDDIR)/comsim,"
2607 else
2608 # delete the lines that match
2609 simmagic1='/@SIMUL1@/D'
2610 simmagic2='/@SIMUL2@/D'
2613 if test "$swcodec" = "yes"; then
2614 voicetoolset="rbspeexenc voicefont wavtrim"
2615 else
2616 voicetoolset="voicefont wavtrim"
2619 if test "$apps" = "apps"; then
2620 # only when we build "real" apps we build the .lng files
2621 buildlangs="langs"
2624 #### Fix the cmdline ###
2625 if test -n "$ccache"; then
2626 cmdline="--ccache"
2629 cmdline="$cmdline --target=\$(MODELNAME) --ram=\$(MEMORYSIZE) --rbdir=\$(RBDIR) --type=$btype"
2632 ### end of cmdline
2634 sed > Makefile \
2635 -e "s,@ROOTDIR@,${rootdir},g" \
2636 -e "s,@DEBUG@,${debug},g" \
2637 -e "s,@MEMORY@,${memory},g" \
2638 -e "s,@TARGET_ID@,${target_id},g" \
2639 -e "s,@TARGET@,${target},g" \
2640 -e "s,@CPU@,${t_cpu},g" \
2641 -e "s,@MANUFACTURER@,${t_manufacturer},g" \
2642 -e "s,@MODELNAME@,${modelname},g" \
2643 -e "s,@LANGUAGE@,${language},g" \
2644 -e "s:@VOICELANGUAGE@:${voicelanguage}:g" \
2645 -e "s,@PWD@,${pwd},g" \
2646 -e "s,@HOSTCC@,${HOSTCC},g" \
2647 -e "s,@HOSTAR@,${HOSTAR},g" \
2648 -e "s,@CC@,${CC},g" \
2649 -e "s,@LD@,${LD},g" \
2650 -e "s,@AR@,${AR},g" \
2651 -e "s,@AS@,${AS},g" \
2652 -e "s,@OC@,${OC},g" \
2653 -e "s,@WINDRES@,${WINDRES},g" \
2654 -e "s,@DLLTOOL@,${DLLTOOL},g" \
2655 -e "s,@DLLWRAP@,${DLLWRAP},g" \
2656 -e "s,@RANLIB@,${RANLIB},g" \
2657 -e "s,@TOOL@,${tool},g" \
2658 -e "s,@BMP2RB_NATIVE@,${bmp2rb_native},g" \
2659 -e "s,@BMP2RB_MONO@,${bmp2rb_mono},g" \
2660 -e "s,@BMP2RB_REMOTENATIVE@,${bmp2rb_remotenative},g" \
2661 -e "s,@BMP2RB_REMOTEMONO@,${bmp2rb_remotemono},g" \
2662 -e "s,@OUTPUT@,${output},g" \
2663 -e "s,@APPEXTRA@,${appextra},g" \
2664 -e "s,@ARCHOSROM@,${archosrom},g" \
2665 -e "s,@FLASHFILE@,${flash},g" \
2666 -e "s,@PLUGINS@,${plugins},g" \
2667 -e "s,@CODECS@,${swcodec},g" \
2668 -e "s,@PROFILE_OPTS@,${PROFILE_OPTS},g" \
2669 -e "s,@SHARED_FLAG@,${SHARED_FLAG},g" \
2670 -e "s,@GCCOPTS@,${GCCOPTS},g" \
2671 -e "s,@TARGET_INC@,${TARGET_INC},g" \
2672 -e "s!@LDOPTS@!${LDOPTS}!g" \
2673 -e "s,@LOADADDRESS@,${loadaddress},g" \
2674 -e "s,@EXTRADEF@,${extradefines},g" \
2675 -e "s,@APPSDIR@,${appsdir},g" \
2676 -e "s,@FIRMDIR@,${firmdir},g" \
2677 -e "s,@TOOLSDIR@,${toolsdir},g" \
2678 -e "s,@APPS@,${apps},g" \
2679 -e "s,@SIMVER@,${simver},g" \
2680 -e "s,@GCCVER@,${gccver},g" \
2681 -e "s,@GCCNUM@,${gccnum},g" \
2682 -e "s,@UNAME@,${uname},g" \
2683 -e "s,@ENDIAN@,${defendian},g" \
2684 -e "s,@TOOLSET@,${toolset},g" \
2685 -e "${simmagic1}" \
2686 -e "${simmagic2}" \
2687 -e "s,@MANUALDEV@,${manualdev},g" \
2688 -e "s,@ENCODER@,${ENC_CMD},g" \
2689 -e "s,@ENC_OPTS@,${ENC_OPTS},g" \
2690 -e "s,@TTS_ENGINE@,${TTS_ENGINE},g" \
2691 -e "s,@TTS_OPTS@,${TTS_OPTS},g" \
2692 -e "s,@VOICETOOLSET@,${voicetoolset},g" \
2693 -e "s,@LANGS@,${buildlangs},g" \
2694 -e "s,@USE_ELF@,${USE_ELF},g" \
2695 -e "s,@RBDIR@,${rbdir},g" \
2696 -e "s,@PREFIX@,$PREFIX,g" \
2697 -e "s,@CMDLINE@,$cmdline,g" \
2698 <<EOF
2699 ## Automatically generated. http://www.rockbox.org/
2701 export ROOTDIR=@ROOTDIR@
2702 export FIRMDIR=@FIRMDIR@
2703 export APPSDIR=@APPSDIR@
2704 export TOOLSDIR=@TOOLSDIR@
2705 export DOCSDIR=\$(ROOTDIR)/docs
2706 export MANUALDIR=\${ROOTDIR}/manual
2707 export DEBUG=@DEBUG@
2708 export MODELNAME=@MODELNAME@
2709 export ARCHOSROM=@ARCHOSROM@
2710 export FLASHFILE=@FLASHFILE@
2711 export TARGET_ID=@TARGET_ID@
2712 export TARGET=@TARGET@
2713 export CPU=@CPU@
2714 export MANUFACTURER=@MANUFACTURER@
2715 export OBJDIR=@PWD@
2716 export BUILDDIR=@PWD@
2717 export LANGUAGE=@LANGUAGE@
2718 export VOICELANGUAGE=@VOICELANGUAGE@
2719 export MEMORYSIZE=@MEMORY@
2720 export VERSION:=\$(shell \$(ROOTDIR)/tools/version.sh \$(ROOTDIR))
2721 export BUILDDATE:=\$(shell date -u +'-DYEAR=%Y -DMONTH=%m -DDAY=%d')
2722 export MKFIRMWARE=@TOOL@
2723 export BMP2RB_MONO=@BMP2RB_MONO@
2724 export BMP2RB_NATIVE=@BMP2RB_NATIVE@
2725 export BMP2RB_REMOTEMONO=@BMP2RB_REMOTEMONO@
2726 export BMP2RB_REMOTENATIVE=@BMP2RB_REMOTENATIVE@
2727 export BINARY=@OUTPUT@
2728 export APPEXTRA=@APPEXTRA@
2729 export ENABLEDPLUGINS=@PLUGINS@
2730 export SOFTWARECODECS=@CODECS@
2731 export EXTRA_DEFINES=@EXTRADEF@
2732 export HOSTCC=@HOSTCC@
2733 export HOSTAR=@HOSTAR@
2734 export CC=@CC@
2735 export LD=@LD@
2736 export AR=@AR@
2737 export AS=@AS@
2738 export OC=@OC@
2739 export WINDRES=@WINDRES@
2740 export DLLTOOL=@DLLTOOL@
2741 export DLLWRAP=@DLLWRAP@
2742 export RANLIB=@RANLIB@
2743 export PREFIX=@PREFIX@
2744 export PROFILE_OPTS=@PROFILE_OPTS@
2745 export SIMVER=@SIMVER@
2746 export SIMDIR=\$(ROOTDIR)/uisimulator/sdl
2747 export GCCOPTS=@GCCOPTS@
2748 export TARGET_INC=@TARGET_INC@
2749 export LOADADDRESS=@LOADADDRESS@
2750 export SHARED_FLAG=@SHARED_FLAG@
2751 export LDOPTS=@LDOPTS@
2752 export GCCVER=@GCCVER@
2753 export GCCNUM=@GCCNUM@
2754 export UNAME=@UNAME@
2755 export MANUALDEV=@MANUALDEV@
2756 export TTS_OPTS=@TTS_OPTS@
2757 export TTS_ENGINE=@TTS_ENGINE@
2758 export ENC_OPTS=@ENC_OPTS@
2759 export ENCODER=@ENCODER@
2760 export USE_ELF=@USE_ELF@
2761 export RBDIR=@RBDIR@
2763 CONFIGURE_OPTIONS=@CMDLINE@
2765 include \$(TOOLSDIR)/root.make
2769 echo "Created Makefile"