Jonas Häggqvist | e543901 | 2006-11-06 11:48:00 +0000 | [diff] [blame] | 1 | #!/bin/sh |
Daniel Stenberg | 3aacd2e | 2002-05-23 09:11:35 +0000 | [diff] [blame] | 2 | # __________ __ ___. |
| 3 | # Open \______ \ ____ ____ | | _\_ |__ _______ ___ |
| 4 | # Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / |
| 5 | # Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < |
| 6 | # Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ |
| 7 | # \/ \/ \/ \/ \/ |
Daniel Stenberg | 3aacd2e | 2002-05-23 09:11:35 +0000 | [diff] [blame] | 8 | # |
| 9 | |
Daniel Stenberg | 235b50b | 2004-10-04 13:02:41 +0000 | [diff] [blame] | 10 | # global CC options for all platforms |
Rafaël Carré | c168d23 | 2010-09-07 14:21:13 +0000 | [diff] [blame] | 11 | CCOPTS="-W -Wall -Wundef -O -nostdlib -ffreestanding -Wstrict-prototypes -pipe -std=gnu99" |
Frank Gevaerts | b8286d4 | 2010-07-03 20:58:22 +0000 | [diff] [blame] | 12 | |
Thomas Martitz | 3414c95 | 2012-03-29 08:15:20 +0200 | [diff] [blame] | 13 | # LD options for the core |
| 14 | LDOPTS="" |
| 15 | # LD options for the core + plugins |
Rafaël Carré | 94eff15 | 2010-07-04 15:02:11 +0000 | [diff] [blame] | 16 | GLOBAL_LDOPTS="" |
Daniel Stenberg | 3aacd2e | 2002-05-23 09:11:35 +0000 | [diff] [blame] | 17 | |
Thomas Martitz | 240923a | 2010-08-02 20:34:47 +0000 | [diff] [blame] | 18 | extradefines="" |
Daniel Stenberg | edc0792 | 2005-05-30 13:00:43 +0000 | [diff] [blame] | 19 | use_logf="#undef ROCKBOX_HAS_LOGF" |
Torne Wuff | 52e528e | 2010-04-01 16:27:21 +0000 | [diff] [blame] | 20 | use_bootchart="#undef DO_BOOTCHART" |
Ralf Ertzinger | d2f97da | 2011-09-09 12:28:36 +0200 | [diff] [blame] | 21 | use_logf_serial="#undef LOGF_SERIAL" |
Daniel Stenberg | edc0792 | 2005-05-30 13:00:43 +0000 | [diff] [blame] | 22 | |
Daniel Stenberg | 2af252d | 2005-07-08 10:19:02 +0000 | [diff] [blame] | 23 | scriptver=`echo '$Revision$' | sed -e 's:\\$::g' -e 's/Revision: //'` |
| 24 | |
Thomas Martitz | 9c0b247 | 2010-08-01 16:15:27 +0000 | [diff] [blame] | 25 | rbdir="/.rockbox" |
Thomas Martitz | 9c0b247 | 2010-08-01 16:15:27 +0000 | [diff] [blame] | 26 | bindir= |
| 27 | libdir= |
Thomas Martitz | 7a9fd0b | 2010-12-06 22:28:14 +0000 | [diff] [blame] | 28 | sharedir= |
Thomas Martitz | 240923a | 2010-08-02 20:34:47 +0000 | [diff] [blame] | 29 | |
Thomas Martitz | 6d85de3 | 2011-02-18 22:46:01 +0000 | [diff] [blame] | 30 | thread_support="ASSEMBLER_THREADS" |
Thomas Martitz | 240923a | 2010-08-02 20:34:47 +0000 | [diff] [blame] | 31 | app_lcd_width= |
| 32 | app_lcd_height= |
Dominik Riebeling | 26a92fa | 2011-06-04 10:36:34 +0000 | [diff] [blame] | 33 | app_lcd_orientation= |
Jens Arnold | 334e612 | 2012-01-08 13:59:15 +0000 | [diff] [blame] | 34 | |
| 35 | # Properly retain command line arguments containing spaces |
| 36 | cmdline= |
| 37 | for arg in "$@"; do |
| 38 | case "$arg" in |
| 39 | *\ *) cmdline="$cmdline \"$arg\"";; |
| 40 | *) cmdline="$cmdline $arg";; |
| 41 | esac |
| 42 | done |
| 43 | |
Robert Hak | c3320ae | 2002-10-17 09:08:05 +0000 | [diff] [blame] | 44 | # |
| 45 | # Begin Function Definitions |
| 46 | # |
Daniel Stenberg | 3aacd2e | 2002-05-23 09:11:35 +0000 | [diff] [blame] | 47 | input() { |
| 48 | read response |
| 49 | echo $response |
| 50 | } |
| 51 | |
Daniel Stenberg | cdde25b | 2005-02-18 13:47:17 +0000 | [diff] [blame] | 52 | prefixtools () { |
| 53 | prefix="$1" |
| 54 | CC=${prefix}gcc |
Thomas Martitz | 8e8e978 | 2012-01-07 19:49:02 +0100 | [diff] [blame] | 55 | CPP=${prefix}cpp |
Daniel Stenberg | cdde25b | 2005-02-18 13:47:17 +0000 | [diff] [blame] | 56 | WINDRES=${prefix}windres |
| 57 | DLLTOOL=${prefix}dlltool |
| 58 | DLLWRAP=${prefix}dllwrap |
| 59 | RANLIB=${prefix}ranlib |
| 60 | LD=${prefix}ld |
| 61 | AR=${prefix}ar |
| 62 | AS=${prefix}as |
| 63 | OC=${prefix}objcopy |
| 64 | } |
| 65 | |
Dave Chapman | 9e638c7 | 2011-02-11 19:51:29 +0000 | [diff] [blame] | 66 | app_set_paths () { |
| 67 | # setup files and paths depending on the platform |
| 68 | if [ -z "$ARG_PREFIX" ]; then |
| 69 | sharedir="/usr/local/share/rockbox" |
| 70 | bindir="/usr/local/bin" |
| 71 | libdir="/usr/local/lib" |
Björn Stenberg | a8ed339 | 2010-09-24 12:03:15 +0000 | [diff] [blame] | 72 | else |
Dave Chapman | 9e638c7 | 2011-02-11 19:51:29 +0000 | [diff] [blame] | 73 | if [ -d "$ARG_PREFIX" ]; then |
| 74 | if [ -z `echo $ARG_PREFIX | grep "^/"` ]; then |
| 75 | ARG_PREFIX=`realpath $ARG_PREFIX` |
| 76 | if [ "0" != "$?" ]; then |
| 77 | echo "ERROR: Could not get prefix path (is realpath installed?)." |
| 78 | exit |
| 79 | fi |
| 80 | fi |
| 81 | sharedir="$ARG_PREFIX/share/rockbox" |
| 82 | bindir="$ARG_PREFIX/bin" |
| 83 | libdir="$ARG_PREFIX/lib" |
| 84 | else |
Thomas Jarosch | ec6e64c | 2011-02-22 20:15:26 +0000 | [diff] [blame] | 85 | echo "ERROR: PREFIX directory $ARG_PREFIX does not exist" |
Dave Chapman | 9e638c7 | 2011-02-11 19:51:29 +0000 | [diff] [blame] | 86 | exit |
| 87 | fi |
| 88 | fi |
| 89 | } |
| 90 | |
| 91 | # Set the application LCD size according to the following priorities: |
| 92 | # 1) If --lcdwidth and --lcdheight are set, use them |
| 93 | # 2) If a size is passed to the app_set_lcd_size() function, use that |
| 94 | # 3) Otherwise ask the user |
| 95 | app_set_lcd_size () { |
| 96 | if [ -z "$ARG_LCDWIDTH" ]; then |
| 97 | ARG_LCDWIDTH=$1 |
| 98 | fi |
| 99 | if [ -z "$ARG_LCDHEIGHT" ]; then |
| 100 | ARG_LCDHEIGHT=$2 |
Björn Stenberg | a8ed339 | 2010-09-24 12:03:15 +0000 | [diff] [blame] | 101 | fi |
| 102 | |
Rafaël Carré | 3b0521a4 | 2010-08-03 17:44:41 +0000 | [diff] [blame] | 103 | echo "Enter the LCD width (default: 320)" |
Björn Stenberg | a8ed339 | 2010-09-24 12:03:15 +0000 | [diff] [blame] | 104 | if [ -z "$ARG_LCDWIDTH" ]; then |
| 105 | app_lcd_width=`input` |
| 106 | else |
Teruaki Kawashima | 900ec8d | 2010-10-14 13:10:12 +0000 | [diff] [blame] | 107 | app_lcd_width="$ARG_LCDWIDTH" |
Björn Stenberg | a8ed339 | 2010-09-24 12:03:15 +0000 | [diff] [blame] | 108 | fi |
Thomas Martitz | 240923a | 2010-08-02 20:34:47 +0000 | [diff] [blame] | 109 | if [ -z "$app_lcd_width" ]; then app_lcd_width="320"; fi |
Rafaël Carré | 3b0521a4 | 2010-08-03 17:44:41 +0000 | [diff] [blame] | 110 | echo "Enter the LCD height (default: 480)" |
Björn Stenberg | a8ed339 | 2010-09-24 12:03:15 +0000 | [diff] [blame] | 111 | if [ -z "$ARG_LCDHEIGHT" ]; then |
| 112 | app_lcd_height=`input` |
| 113 | else |
| 114 | app_lcd_height="$ARG_LCDHEIGHT" |
| 115 | fi |
Thomas Martitz | 240923a | 2010-08-02 20:34:47 +0000 | [diff] [blame] | 116 | if [ -z "$app_lcd_height" ]; then app_lcd_height="480"; fi |
Dominik Riebeling | 26a92fa | 2011-06-04 10:36:34 +0000 | [diff] [blame] | 117 | if [ $app_lcd_width -gt $app_lcd_height ]; then |
| 118 | lcd_orientation="landscape" |
| 119 | else |
| 120 | lcd_orientation="portrait" |
| 121 | fi |
| 122 | echo "Selected $app_lcd_width x $app_lcd_height resolution ($lcd_orientation)" |
Teruaki Kawashima | 900ec8d | 2010-10-14 13:10:12 +0000 | [diff] [blame] | 123 | ARG_LCDWIDTH=$app_lcd_width |
| 124 | ARG_LCDHEIGHT=$app_lcd_height |
Thomas Martitz | 240923a | 2010-08-02 20:34:47 +0000 | [diff] [blame] | 125 | |
| 126 | app_lcd_width="#define LCD_WIDTH $app_lcd_width" |
| 127 | app_lcd_height="#define LCD_HEIGHT $app_lcd_height" |
Thomas Martitz | 240923a | 2010-08-02 20:34:47 +0000 | [diff] [blame] | 128 | } |
| 129 | |
Thomas Martitz | 45fc5ba | 2009-11-19 22:47:14 +0000 | [diff] [blame] | 130 | findarmgcc() { |
Rafaël Carré | 05ebf79 | 2012-04-14 19:17:06 -0400 | [diff] [blame] | 131 | prefixtools arm-elf-eabi- |
| 132 | gccchoice="4.4.4" |
Thomas Martitz | 45fc5ba | 2009-11-19 22:47:14 +0000 | [diff] [blame] | 133 | } |
| 134 | |
Daniel Stenberg | bea1589 | 2006-01-09 12:41:07 +0000 | [diff] [blame] | 135 | # scan the $PATH for the given command |
| 136 | findtool(){ |
| 137 | file="$1" |
| 138 | |
| 139 | IFS=":" |
| 140 | for path in $PATH |
| 141 | do |
| 142 | # echo "checks for $file in $path" >&2 |
| 143 | if test -f "$path/$file"; then |
| 144 | echo "$path/$file" |
| 145 | return |
| 146 | fi |
| 147 | done |
Jens Arnold | 7433f84 | 2008-10-06 23:04:31 +0000 | [diff] [blame] | 148 | # check whether caller wants literal return value if not found |
| 149 | if [ "$2" = "--lit" ]; then |
| 150 | echo "$file" |
| 151 | fi |
Daniel Stenberg | bea1589 | 2006-01-09 12:41:07 +0000 | [diff] [blame] | 152 | } |
| 153 | |
Jens Arnold | db2f0ed | 2010-04-05 15:47:12 +0000 | [diff] [blame] | 154 | # scan the $PATH for sdl-config - check whether for a (cross-)win32 |
| 155 | # sdl as requested |
Jonas Häggqvist | b285a77 | 2009-10-12 18:49:29 +0000 | [diff] [blame] | 156 | findsdl(){ |
Dominik Riebeling | e6317d5 | 2011-09-08 17:48:18 +0000 | [diff] [blame] | 157 | # sdl-config might (not) be prefixed for cross compiles so try both. |
Thomas Martitz | 013cc9d | 2011-12-23 09:03:31 +0000 | [diff] [blame] | 158 | files="${CROSS_COMPILE}sdl-config:sdl-config" |
Jens Arnold | db2f0ed | 2010-04-05 15:47:12 +0000 | [diff] [blame] | 159 | winbuild="$1" |
Jonas Häggqvist | b285a77 | 2009-10-12 18:49:29 +0000 | [diff] [blame] | 160 | |
| 161 | IFS=":" |
Dominik Riebeling | e6317d5 | 2011-09-08 17:48:18 +0000 | [diff] [blame] | 162 | for file in $files |
Jonas Häggqvist | b285a77 | 2009-10-12 18:49:29 +0000 | [diff] [blame] | 163 | do |
Dominik Riebeling | e6317d5 | 2011-09-08 17:48:18 +0000 | [diff] [blame] | 164 | for path in $PATH |
| 165 | do |
| 166 | #echo "checks for $file in $path" >&2 |
| 167 | if test -f "$path/$file"; then |
| 168 | if [ "0" != `$path/$file --libs |grep -c mwindows` ]; then |
| 169 | if [ "yes" = "${winbuild}" ]; then |
| 170 | echo "$path/$file" |
| 171 | return |
| 172 | fi |
| 173 | else |
| 174 | if [ "yes" != "${winbuild}" ]; then |
| 175 | echo "$path/$file" |
| 176 | return |
| 177 | fi |
Jens Arnold | db2f0ed | 2010-04-05 15:47:12 +0000 | [diff] [blame] | 178 | fi |
Jonas Häggqvist | b285a77 | 2009-10-12 18:49:29 +0000 | [diff] [blame] | 179 | fi |
Dominik Riebeling | e6317d5 | 2011-09-08 17:48:18 +0000 | [diff] [blame] | 180 | done |
Jonas Häggqvist | b285a77 | 2009-10-12 18:49:29 +0000 | [diff] [blame] | 181 | done |
| 182 | } |
| 183 | |
Thomas Martitz | 6d85de3 | 2011-02-18 22:46:01 +0000 | [diff] [blame] | 184 | # check for availability of sigaltstack to support our thread engine |
| 185 | check_sigaltstack() { |
| 186 | cat >$tmpdir/check_threads.c <<EOF |
| 187 | #include <signal.h> |
| 188 | int main(int argc, char **argv) |
| 189 | { |
Thomas Martitz | 1e391fb | 2011-02-18 23:17:07 +0000 | [diff] [blame] | 190 | #ifndef NULL |
Thomas Martitz | 6d85de3 | 2011-02-18 22:46:01 +0000 | [diff] [blame] | 191 | #define NULL (void*)0 |
Thomas Martitz | 1e391fb | 2011-02-18 23:17:07 +0000 | [diff] [blame] | 192 | #endif |
Thomas Martitz | 6d85de3 | 2011-02-18 22:46:01 +0000 | [diff] [blame] | 193 | sigaltstack(NULL, NULL); |
| 194 | return 0; |
| 195 | } |
| 196 | EOF |
| 197 | $CC -o $tmpdir/check_threads $tmpdir/check_threads.c 1> /dev/null |
| 198 | result=$? |
| 199 | rm -rf $tmpdir/check_threads* |
| 200 | echo $result |
| 201 | } |
| 202 | |
| 203 | # check for availability of Fiber on Win32 to support our thread engine |
| 204 | check_fiber() { |
| 205 | cat >$tmpdir/check_threads.c <<EOF |
| 206 | #include <windows.h> |
| 207 | int main(int argc, char **argv) |
| 208 | { |
| 209 | ConvertThreadToFiber(NULL); |
| 210 | return 0; |
| 211 | } |
| 212 | EOF |
| 213 | $CC -o $tmpdir/check_threads $tmpdir/check_threads.c 2>/dev/null |
| 214 | result=$? |
| 215 | rm -rf $tmpdir/check_threads* |
| 216 | echo $result |
| 217 | } |
| 218 | |
Daniel Stenberg | cdde25b | 2005-02-18 13:47:17 +0000 | [diff] [blame] | 219 | simcc () { |
| 220 | |
| 221 | # default tool setup for native building |
Thomas Martitz | efbc5df | 2010-06-05 17:09:04 +0000 | [diff] [blame] | 222 | prefixtools "$CROSS_COMPILE" |
Rafaël Carré | b14c96d | 2010-06-11 12:16:15 +0000 | [diff] [blame] | 223 | ARG_ARM_THUMB=0 # can't use thumb in native builds |
Daniel Stenberg | cdde25b | 2005-02-18 13:47:17 +0000 | [diff] [blame] | 224 | |
Thomas Martitz | 3a3f4d6 | 2012-03-28 23:24:02 +0200 | [diff] [blame] | 225 | # unset arch if already set shcc() and friends |
| 226 | arch= |
| 227 | arch_version= |
| 228 | |
Thomas Martitz | 57613ea | 2010-07-10 13:49:49 +0000 | [diff] [blame] | 229 | app_type=$1 |
Rafaël Carré | 94eff15 | 2010-07-04 15:02:11 +0000 | [diff] [blame] | 230 | winbuild="" |
Thomas Jarosch | 949e639 | 2012-01-03 22:33:47 +0000 | [diff] [blame] | 231 | GCCOPTS=`echo $CCOPTS | sed -e s/-ffreestanding// -e s/-nostdlib// -e s/-Wundef//` |
Thomas Jarosch | 949e639 | 2012-01-03 22:33:47 +0000 | [diff] [blame] | 232 | |
Thomas Martitz | 921ac8d | 2010-12-02 21:20:30 +0000 | [diff] [blame] | 233 | GCCOPTS="$GCCOPTS -fno-builtin -g" |
Frank Gevaerts | 9e9a913 | 2009-10-07 14:31:16 +0000 | [diff] [blame] | 234 | GCCOPTIMIZE='' |
Thomas Martitz | b18d76a | 2012-03-30 22:52:09 +0200 | [diff] [blame] | 235 | LDOPTS="$LDOPTS -lm" # button-sdl.c uses sqrt() |
Thomas Martitz | 6d85de3 | 2011-02-18 22:46:01 +0000 | [diff] [blame] | 236 | sigaltstack="" |
| 237 | fibers="" |
Thomas Martitz | c00938e | 2011-12-23 09:13:36 +0000 | [diff] [blame] | 238 | endian="" # endianess of the dap doesnt matter here |
Daniel Stenberg | cdde25b | 2005-02-18 13:47:17 +0000 | [diff] [blame] | 239 | |
Thomas Martitz | 240923a | 2010-08-02 20:34:47 +0000 | [diff] [blame] | 240 | # default output binary name, don't override app_get_platform() |
| 241 | if [ "$app_type" != "sdl-app" ]; then |
| 242 | output="rockboxui" |
| 243 | fi |
Daniel Stenberg | bea1589 | 2006-01-09 12:41:07 +0000 | [diff] [blame] | 244 | |
Daniel Stenberg | 77854b7 | 2007-04-20 11:27:03 +0000 | [diff] [blame] | 245 | # default share option, override below if needed |
Nils Wallménius | 331b23d | 2011-06-07 11:56:23 +0000 | [diff] [blame] | 246 | SHARED_LDFLAG="-shared" |
| 247 | SHARED_CFLAGS="-fPIC -fvisibility=hidden" |
Daniel Stenberg | 77854b7 | 2007-04-20 11:27:03 +0000 | [diff] [blame] | 248 | |
Rafaël Carré | 94eff15 | 2010-07-04 15:02:11 +0000 | [diff] [blame] | 249 | if [ "$win32crosscompile" = "yes" ]; then |
Thomas Martitz | 013cc9d | 2011-12-23 09:03:31 +0000 | [diff] [blame] | 250 | # We are crosscompiling |
| 251 | # add cross-compiler option(s) |
Rafaël Carré | 94eff15 | 2010-07-04 15:02:11 +0000 | [diff] [blame] | 252 | LDOPTS="$LDOPTS -mconsole" |
Thomas Martitz | 240923a | 2010-08-02 20:34:47 +0000 | [diff] [blame] | 253 | output="$output.exe" |
Rafaël Carré | 94eff15 | 2010-07-04 15:02:11 +0000 | [diff] [blame] | 254 | winbuild="yes" |
Thomas Martitz | 013cc9d | 2011-12-23 09:03:31 +0000 | [diff] [blame] | 255 | CROSS_COMPILE=${CROSS_COMPILE:-"i586-mingw32msvc-"} |
Andree Buschmann | dc0abc7 | 2011-06-22 17:46:26 +0000 | [diff] [blame] | 256 | SHARED_CFLAGS='' |
Thomas Martitz | 013cc9d | 2011-12-23 09:03:31 +0000 | [diff] [blame] | 257 | prefixtools "$CROSS_COMPILE" |
| 258 | fibers=`check_fiber` |
| 259 | endian="little" # windows is little endian |
| 260 | echo "Enabling MMX support" |
| 261 | GCCOPTS="$GCCOPTS -mmmx" |
Rafaël Carré | 94eff15 | 2010-07-04 15:02:11 +0000 | [diff] [blame] | 262 | else |
Daniel Stenberg | cdde25b | 2005-02-18 13:47:17 +0000 | [diff] [blame] | 263 | case $uname in |
| 264 | CYGWIN*) |
| 265 | echo "Cygwin host detected" |
Daniel Stenberg | 22b7701 | 2005-02-22 12:19:12 +0000 | [diff] [blame] | 266 | |
Thomas Martitz | 6d85de3 | 2011-02-18 22:46:01 +0000 | [diff] [blame] | 267 | fibers=`check_fiber` |
Rafaël Carré | 033634f | 2010-06-24 20:58:07 +0000 | [diff] [blame] | 268 | LDOPTS="$LDOPTS -mconsole" |
Thomas Martitz | 240923a | 2010-08-02 20:34:47 +0000 | [diff] [blame] | 269 | output="$output.exe" |
Jens Arnold | db2f0ed | 2010-04-05 15:47:12 +0000 | [diff] [blame] | 270 | winbuild="yes" |
Andree Buschmann | dc0abc7 | 2011-06-22 17:46:26 +0000 | [diff] [blame] | 271 | SHARED_CFLAGS='' |
Daniel Stenberg | cdde25b | 2005-02-18 13:47:17 +0000 | [diff] [blame] | 272 | ;; |
| 273 | |
Maurus Cuelenaere | e8da447 | 2009-02-04 20:59:27 +0000 | [diff] [blame] | 274 | MINGW*) |
| 275 | echo "MinGW host detected" |
| 276 | |
Thomas Martitz | 6d85de3 | 2011-02-18 22:46:01 +0000 | [diff] [blame] | 277 | fibers=`check_fiber` |
Rafaël Carré | 033634f | 2010-06-24 20:58:07 +0000 | [diff] [blame] | 278 | LDOPTS="$LDOPTS -mconsole" |
Thomas Martitz | 240923a | 2010-08-02 20:34:47 +0000 | [diff] [blame] | 279 | output="$output.exe" |
Jens Arnold | db2f0ed | 2010-04-05 15:47:12 +0000 | [diff] [blame] | 280 | winbuild="yes" |
Maurus Cuelenaere | e8da447 | 2009-02-04 20:59:27 +0000 | [diff] [blame] | 281 | ;; |
| 282 | |
Daniel Stenberg | cdde25b | 2005-02-18 13:47:17 +0000 | [diff] [blame] | 283 | Linux) |
Thomas Martitz | 6d85de3 | 2011-02-18 22:46:01 +0000 | [diff] [blame] | 284 | sigaltstack=`check_sigaltstack` |
Daniel Stenberg | cdde25b | 2005-02-18 13:47:17 +0000 | [diff] [blame] | 285 | echo "Linux host detected" |
Rafaël Carré | 033634f | 2010-06-24 20:58:07 +0000 | [diff] [blame] | 286 | LDOPTS="$LDOPTS -ldl" |
Daniel Stenberg | cdde25b | 2005-02-18 13:47:17 +0000 | [diff] [blame] | 287 | ;; |
| 288 | |
| 289 | FreeBSD) |
Thomas Martitz | 6d85de3 | 2011-02-18 22:46:01 +0000 | [diff] [blame] | 290 | sigaltstack=`check_sigaltstack` |
Daniel Stenberg | cdde25b | 2005-02-18 13:47:17 +0000 | [diff] [blame] | 291 | echo "FreeBSD host detected" |
Kevin Zheng | 513914c | 2013-10-14 21:49:54 -0500 | [diff] [blame] | 292 | LDOPTS="$LDOPTS" |
Daniel Stenberg | cdde25b | 2005-02-18 13:47:17 +0000 | [diff] [blame] | 293 | ;; |
| 294 | |
Barry Wardell | 64f949f | 2006-09-29 16:15:11 +0000 | [diff] [blame] | 295 | Darwin) |
Thomas Martitz | 6d85de3 | 2011-02-18 22:46:01 +0000 | [diff] [blame] | 296 | sigaltstack=`check_sigaltstack` |
Barry Wardell | 64f949f | 2006-09-29 16:15:11 +0000 | [diff] [blame] | 297 | echo "Darwin host detected" |
Rafaël Carré | 033634f | 2010-06-24 20:58:07 +0000 | [diff] [blame] | 298 | LDOPTS="$LDOPTS -ldl" |
Nils Wallménius | 331b23d | 2011-06-07 11:56:23 +0000 | [diff] [blame] | 299 | SHARED_LDFLAG="-dynamiclib -Wl\,-single_module" |
Barry Wardell | 64f949f | 2006-09-29 16:15:11 +0000 | [diff] [blame] | 300 | ;; |
| 301 | |
Jens Arnold | 43f2382 | 2010-03-20 08:57:47 +0000 | [diff] [blame] | 302 | SunOS) |
Thomas Martitz | 6d85de3 | 2011-02-18 22:46:01 +0000 | [diff] [blame] | 303 | sigaltstack=`check_sigaltstack` |
Jens Arnold | 43f2382 | 2010-03-20 08:57:47 +0000 | [diff] [blame] | 304 | echo "*Solaris host detected" |
Jens Arnold | b012671 | 2010-04-05 16:07:39 +0000 | [diff] [blame] | 305 | |
| 306 | GCCOPTS="$GCCOPTS -fPIC" |
Rafaël Carré | 033634f | 2010-06-24 20:58:07 +0000 | [diff] [blame] | 307 | LDOPTS="$LDOPTS -ldl" |
Jens Arnold | 43f2382 | 2010-03-20 08:57:47 +0000 | [diff] [blame] | 308 | ;; |
| 309 | |
Daniel Stenberg | cdde25b | 2005-02-18 13:47:17 +0000 | [diff] [blame] | 310 | *) |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 311 | echo "[ERROR] Unsupported system: $uname, fix configure and retry" |
Jens Arnold | db2f0ed | 2010-04-05 15:47:12 +0000 | [diff] [blame] | 312 | exit 1 |
Daniel Stenberg | cdde25b | 2005-02-18 13:47:17 +0000 | [diff] [blame] | 313 | ;; |
| 314 | esac |
Rafaël Carré | 94eff15 | 2010-07-04 15:02:11 +0000 | [diff] [blame] | 315 | fi |
Greg White | 355be50 | 2007-01-13 02:24:15 +0000 | [diff] [blame] | 316 | |
Thomas Martitz | 013cc9d | 2011-12-23 09:03:31 +0000 | [diff] [blame] | 317 | if [ "$winbuild" != "yes" ]; then |
| 318 | GLOBAL_LDOPTS="$GLOBAL_LDOPTS -Wl,-z,defs" |
| 319 | if [ "`uname -m`" = "i686" ]; then |
| 320 | echo "Enabling MMX support" |
| 321 | GCCOPTS="$GCCOPTS -mmmx" |
| 322 | fi |
| 323 | fi |
| 324 | |
Jens Arnold | db2f0ed | 2010-04-05 15:47:12 +0000 | [diff] [blame] | 325 | sdl=`findsdl $winbuild` |
| 326 | |
Thomas Martitz | 57613ea | 2010-07-10 13:49:49 +0000 | [diff] [blame] | 327 | if [ -n `echo $app_type | grep "sdl"` ]; then |
Jens Arnold | db2f0ed | 2010-04-05 15:47:12 +0000 | [diff] [blame] | 328 | if [ -z "$sdl" ]; then |
| 329 | echo "configure didn't find sdl-config, which indicates that you" |
| 330 | echo "don't have SDL (properly) installed. Please correct and" |
| 331 | echo "re-run configure!" |
| 332 | exit 2 |
| 333 | else |
| 334 | # generic sdl-config checker |
Thomas Martitz | 36568ed | 2010-05-09 14:17:35 +0000 | [diff] [blame] | 335 | GCCOPTS="$GCCOPTS `$sdl --cflags`" |
Jens Arnold | db2f0ed | 2010-04-05 15:47:12 +0000 | [diff] [blame] | 336 | LDOPTS="$LDOPTS `$sdl --libs`" |
| 337 | fi |
| 338 | fi |
Thomas Martitz | 240923a | 2010-08-02 20:34:47 +0000 | [diff] [blame] | 339 | |
Jens Arnold | db2f0ed | 2010-04-05 15:47:12 +0000 | [diff] [blame] | 340 | |
Daniel Stenberg | f6209cc | 2007-04-20 11:58:39 +0000 | [diff] [blame] | 341 | GCCOPTS="$GCCOPTS -I\$(SIMDIR)" |
Thomas Martitz | 013cc9d | 2011-12-23 09:03:31 +0000 | [diff] [blame] | 342 | # x86_64 supports MMX by default |
Daniel Stenberg | f6209cc | 2007-04-20 11:58:39 +0000 | [diff] [blame] | 343 | |
Thomas Martitz | 013cc9d | 2011-12-23 09:03:31 +0000 | [diff] [blame] | 344 | if [ "$endian" = "" ]; then |
| 345 | id=$$ |
| 346 | cat >$tmpdir/conftest-$id.c <<EOF |
Daniel Stenberg | 6c38d85 | 2005-04-26 22:41:48 +0000 | [diff] [blame] | 347 | #include <stdio.h> |
| 348 | int main(int argc, char **argv) |
| 349 | { |
Thomas Martitz | 013cc9d | 2011-12-23 09:03:31 +0000 | [diff] [blame] | 350 | int var=0; |
| 351 | char *varp = (char *)&var; |
| 352 | *varp=1; |
Daniel Stenberg | 6c38d85 | 2005-04-26 22:41:48 +0000 | [diff] [blame] | 353 | |
Thomas Martitz | 013cc9d | 2011-12-23 09:03:31 +0000 | [diff] [blame] | 354 | printf("%d\n", var); |
| 355 | return 0; |
Daniel Stenberg | 6c38d85 | 2005-04-26 22:41:48 +0000 | [diff] [blame] | 356 | } |
| 357 | EOF |
Thomas Martitz | 013cc9d | 2011-12-23 09:03:31 +0000 | [diff] [blame] | 358 | $CC -o $tmpdir/conftest-$id $tmpdir/conftest-$id.c 2>/dev/null |
| 359 | # when cross compiling, the endianess cannot be detected because the above program doesn't run |
| 360 | # on the local machine. assume little endian but print a warning |
| 361 | endian=`$tmpdir/conftest-$id 2> /dev/null` |
| 362 | if [ "$endian" != "" ] && [ $endian -gt "1" ]; then |
| 363 | # big endian |
| 364 | endian="big" |
| 365 | else |
| 366 | # little endian |
| 367 | endian="little" |
| 368 | fi |
| 369 | fi |
Daniel Stenberg | 6c38d85 | 2005-04-26 22:41:48 +0000 | [diff] [blame] | 370 | |
Thomas Martitz | 013cc9d | 2011-12-23 09:03:31 +0000 | [diff] [blame] | 371 | if [ "$CROSS_COMPILE" != "" ]; then |
| 372 | echo "WARNING: Cross Compiling, cannot detect endianess. Assuming $endian endian!" |
Daniel Stenberg | 6c38d85 | 2005-04-26 22:41:48 +0000 | [diff] [blame] | 373 | fi |
Thomas Martitz | 6d85de3 | 2011-02-18 22:46:01 +0000 | [diff] [blame] | 374 | |
Thomas Martitz | 013cc9d | 2011-12-23 09:03:31 +0000 | [diff] [blame] | 375 | if [ "$app_type" = "sdl-sim" ]; then |
| 376 | echo "Simulator environment deemed $endian endian" |
| 377 | elif [ "$app_type" = "sdl-app" ]; then |
| 378 | echo "Application environment deemed $endian endian" |
| 379 | elif [ "$app_type" = "checkwps" ]; then |
| 380 | echo "CheckWPS environment deemed $endian endian" |
| 381 | fi |
| 382 | |
| 383 | # use wildcard here to make it work even if it was named *.exe like |
| 384 | # on cygwin |
| 385 | rm -f $tmpdir/conftest-$id* |
| 386 | |
Thomas Martitz | 6d85de3 | 2011-02-18 22:46:01 +0000 | [diff] [blame] | 387 | thread_support= |
| 388 | if [ -z "$ARG_THREAD_SUPPORT" ] || [ "$ARG_THREAD_SUPPORT" = "0" ]; then |
| 389 | if [ "$sigaltstack" = "0" ]; then |
| 390 | thread_support="HAVE_SIGALTSTACK_THREADS" |
Thomas Martitz | 66643cf | 2011-02-19 02:19:04 +0000 | [diff] [blame] | 391 | LDOPTS="$LDOPTS -lpthread" # pthread needed |
Thomas Martitz | 6d85de3 | 2011-02-18 22:46:01 +0000 | [diff] [blame] | 392 | echo "Selected sigaltstack threads" |
| 393 | elif [ "$fibers" = "0" ]; then |
| 394 | thread_support="HAVE_WIN32_FIBER_THREADS" |
| 395 | echo "Selected Win32 Fiber threads" |
| 396 | fi |
| 397 | fi |
| 398 | |
| 399 | if [ -n `echo $app_type | grep "sdl"` ] && [ -z "$thread_support" ] \ |
| 400 | && [ "$ARG_THREAD_SUPPORT" != "0" ]; then |
| 401 | thread_support="HAVE_SDL_THREADS" |
| 402 | if [ "$ARG_THREAD_SUPPORT" = "1" ]; then |
| 403 | echo "Selected SDL threads" |
| 404 | else |
| 405 | echo "WARNING: Falling back to SDL threads" |
| 406 | fi |
| 407 | fi |
Daniel Stenberg | cdde25b | 2005-02-18 13:47:17 +0000 | [diff] [blame] | 408 | } |
| 409 | |
Daniel Stenberg | 9e8e270 | 2008-02-27 21:37:48 +0000 | [diff] [blame] | 410 | # |
| 411 | # functions for setting up cross-compiler names and options |
| 412 | # also set endianess and what the exact recommended gcc version is |
| 413 | # the gcc version should most likely match what versions we build with |
| 414 | # rockboxdev.sh |
| 415 | # |
Daniel Stenberg | fc1e925 | 2004-09-22 08:58:50 +0000 | [diff] [blame] | 416 | shcc () { |
Daniel Stenberg | cdde25b | 2005-02-18 13:47:17 +0000 | [diff] [blame] | 417 | prefixtools sh-elf- |
Daniel Stenberg | 235b50b | 2004-10-04 13:02:41 +0000 | [diff] [blame] | 418 | GCCOPTS="$CCOPTS -m1" |
Linus Nielsen Feltzing | c21e7e7 | 2004-10-07 07:08:57 +0000 | [diff] [blame] | 419 | GCCOPTIMIZE="-fomit-frame-pointer -fschedule-insns" |
Daniel Stenberg | 6c38d85 | 2005-04-26 22:41:48 +0000 | [diff] [blame] | 420 | endian="big" |
Daniel Stenberg | 9e8e270 | 2008-02-27 21:37:48 +0000 | [diff] [blame] | 421 | gccchoice="4.0.3" |
Daniel Stenberg | fc1e925 | 2004-09-22 08:58:50 +0000 | [diff] [blame] | 422 | } |
| 423 | |
Daniel Stenberg | 72fdf37 | 2005-01-04 15:00:06 +0000 | [diff] [blame] | 424 | calmrisccc () { |
Daniel Stenberg | cdde25b | 2005-02-18 13:47:17 +0000 | [diff] [blame] | 425 | prefixtools calmrisc16-unknown-elf- |
Jean-Philippe Bernardy | dd4ea29 | 2005-02-10 22:37:09 +0000 | [diff] [blame] | 426 | GCCOPTS="-Wl\,--no-check-sections $CCOPTS" |
Daniel Stenberg | 72fdf37 | 2005-01-04 15:00:06 +0000 | [diff] [blame] | 427 | GCCOPTIMIZE="-fomit-frame-pointer" |
Daniel Stenberg | 6c38d85 | 2005-04-26 22:41:48 +0000 | [diff] [blame] | 428 | endian="big" |
Daniel Stenberg | 72fdf37 | 2005-01-04 15:00:06 +0000 | [diff] [blame] | 429 | } |
| 430 | |
Daniel Stenberg | fc1e925 | 2004-09-22 08:58:50 +0000 | [diff] [blame] | 431 | coldfirecc () { |
Daniel Stenberg | cdde25b | 2005-02-18 13:47:17 +0000 | [diff] [blame] | 432 | prefixtools m68k-elf- |
Nils Wallménius | c8535f2 | 2011-01-12 22:28:43 +0000 | [diff] [blame] | 433 | GCCOPTS="$CCOPTS -mcpu=5249 -malign-int -mstrict-align" |
Linus Nielsen Feltzing | c21e7e7 | 2004-10-07 07:08:57 +0000 | [diff] [blame] | 434 | GCCOPTIMIZE="-fomit-frame-pointer" |
Daniel Stenberg | 6c38d85 | 2005-04-26 22:41:48 +0000 | [diff] [blame] | 435 | endian="big" |
Nils Wallménius | c8535f2 | 2011-01-12 22:28:43 +0000 | [diff] [blame] | 436 | gccchoice="4.5.2" |
Daniel Stenberg | fc1e925 | 2004-09-22 08:58:50 +0000 | [diff] [blame] | 437 | } |
| 438 | |
Dave Chapman | 38e8fb6 | 2005-11-08 00:52:39 +0000 | [diff] [blame] | 439 | arm7tdmicc () { |
Thomas Martitz | 45fc5ba | 2009-11-19 22:47:14 +0000 | [diff] [blame] | 440 | findarmgcc |
Tomasz Malesinski | 17972c9 | 2006-08-12 22:46:34 +0000 | [diff] [blame] | 441 | GCCOPTS="$CCOPTS -mcpu=arm7tdmi" |
Dave Chapman | 38e8fb6 | 2005-11-08 00:52:39 +0000 | [diff] [blame] | 442 | GCCOPTIMIZE="-fomit-frame-pointer" |
| 443 | endian="little" |
| 444 | } |
| 445 | |
Marcoen Hirschberg | 338e2bb | 2006-02-24 15:42:52 +0000 | [diff] [blame] | 446 | arm9tdmicc () { |
Thomas Martitz | 45fc5ba | 2009-11-19 22:47:14 +0000 | [diff] [blame] | 447 | findarmgcc |
Michael Sevakis | ca07873 | 2009-02-10 09:27:20 +0000 | [diff] [blame] | 448 | GCCOPTS="$CCOPTS -mcpu=arm9tdmi" |
Marcoen Hirschberg | 338e2bb | 2006-02-24 15:42:52 +0000 | [diff] [blame] | 449 | GCCOPTIMIZE="-fomit-frame-pointer" |
| 450 | endian="little" |
| 451 | } |
| 452 | |
Marcoen Hirschberg | 7b10ef9 | 2008-06-27 23:24:34 +0000 | [diff] [blame] | 453 | arm940tbecc () { |
Thomas Martitz | 45fc5ba | 2009-11-19 22:47:14 +0000 | [diff] [blame] | 454 | findarmgcc |
Andrew Mahone | 9656bc9 | 2009-11-20 02:51:23 +0000 | [diff] [blame] | 455 | GCCOPTS="$CCOPTS -mbig-endian -mcpu=arm940t" |
Marcoen Hirschberg | 7b10ef9 | 2008-06-27 23:24:34 +0000 | [diff] [blame] | 456 | GCCOPTIMIZE="-fomit-frame-pointer" |
| 457 | endian="big" |
Marcoen Hirschberg | 7b10ef9 | 2008-06-27 23:24:34 +0000 | [diff] [blame] | 458 | } |
| 459 | |
Dave Chapman | afe43d3 | 2009-07-12 22:16:51 +0000 | [diff] [blame] | 460 | arm940tcc () { |
Thomas Martitz | 45fc5ba | 2009-11-19 22:47:14 +0000 | [diff] [blame] | 461 | findarmgcc |
Andrew Mahone | 9656bc9 | 2009-11-20 02:51:23 +0000 | [diff] [blame] | 462 | GCCOPTS="$CCOPTS -mcpu=arm940t" |
Dave Chapman | afe43d3 | 2009-07-12 22:16:51 +0000 | [diff] [blame] | 463 | GCCOPTIMIZE="-fomit-frame-pointer" |
| 464 | endian="little" |
Dave Chapman | afe43d3 | 2009-07-12 22:16:51 +0000 | [diff] [blame] | 465 | } |
| 466 | |
Dave Chapman | 28f6ae4 | 2007-10-28 11:08:10 +0000 | [diff] [blame] | 467 | arm946cc () { |
Thomas Martitz | 45fc5ba | 2009-11-19 22:47:14 +0000 | [diff] [blame] | 468 | findarmgcc |
Andrew Mahone | 9656bc9 | 2009-11-20 02:51:23 +0000 | [diff] [blame] | 469 | GCCOPTS="$CCOPTS -mcpu=arm9e" |
Dave Chapman | 28f6ae4 | 2007-10-28 11:08:10 +0000 | [diff] [blame] | 470 | GCCOPTIMIZE="-fomit-frame-pointer" |
| 471 | endian="little" |
Daniel Stenberg | 65068e2 | 2008-02-18 19:08:29 +0000 | [diff] [blame] | 472 | } |
| 473 | |
Karl Kurbjun | b8ddc61 | 2007-11-13 04:09:25 +0000 | [diff] [blame] | 474 | arm926ejscc () { |
Thomas Martitz | 45fc5ba | 2009-11-19 22:47:14 +0000 | [diff] [blame] | 475 | findarmgcc |
Andrew Mahone | 9656bc9 | 2009-11-20 02:51:23 +0000 | [diff] [blame] | 476 | GCCOPTS="$CCOPTS -mcpu=arm926ej-s" |
Karl Kurbjun | b8ddc61 | 2007-11-13 04:09:25 +0000 | [diff] [blame] | 477 | GCCOPTIMIZE="-fomit-frame-pointer" |
| 478 | endian="little" |
| 479 | } |
| 480 | |
Nils Wallménius | 7b8f4a5 | 2008-02-10 17:40:06 +0000 | [diff] [blame] | 481 | arm1136jfscc () { |
Thomas Martitz | 45fc5ba | 2009-11-19 22:47:14 +0000 | [diff] [blame] | 482 | findarmgcc |
Michael Sevakis | ca07873 | 2009-02-10 09:27:20 +0000 | [diff] [blame] | 483 | GCCOPTS="$CCOPTS -mcpu=arm1136jf-s" |
Nils Wallménius | 7b8f4a5 | 2008-02-10 17:40:06 +0000 | [diff] [blame] | 484 | GCCOPTIMIZE="-fomit-frame-pointer" |
| 485 | endian="little" |
| 486 | } |
| 487 | |
Robert Keevil | eea149b | 2009-07-13 21:09:39 +0000 | [diff] [blame] | 488 | arm1176jzscc () { |
Thomas Martitz | 45fc5ba | 2009-11-19 22:47:14 +0000 | [diff] [blame] | 489 | findarmgcc |
Andrew Mahone | 9656bc9 | 2009-11-20 02:51:23 +0000 | [diff] [blame] | 490 | GCCOPTS="$CCOPTS -mcpu=arm1176jz-s" |
Robert Keevil | eea149b | 2009-07-13 21:09:39 +0000 | [diff] [blame] | 491 | GCCOPTIMIZE="-fomit-frame-pointer" |
| 492 | endian="little" |
Robert Keevil | eea149b | 2009-07-13 21:09:39 +0000 | [diff] [blame] | 493 | } |
| 494 | |
Marcin Bukat | 976a169 | 2011-05-30 21:10:37 +0000 | [diff] [blame] | 495 | arm7ejscc () { |
| 496 | findarmgcc |
| 497 | GCCOPTS="$CCOPTS -march=armv5te" |
| 498 | GCCOPTIMIZE="-fomit-frame-pointer" |
| 499 | endian="little" |
| 500 | } |
| 501 | |
Maurus Cuelenaere | 0709f0a | 2008-07-14 15:03:10 +0000 | [diff] [blame] | 502 | mipselcc () { |
Maurus Cuelenaere | b89ee32 | 2008-07-30 08:28:35 +0000 | [diff] [blame] | 503 | prefixtools mipsel-elf- |
Thomas Martitz | 3478bc5 | 2010-08-24 13:41:45 +0000 | [diff] [blame] | 504 | # mips is predefined, but we want it for paths. use __mips instead |
| 505 | GCCOPTS="$CCOPTS -march=mips32 -mtune=r4600 -mno-mips16 -mno-long-calls -Umips" |
Maurus Cuelenaere | 29c87a7 | 2009-05-30 16:13:42 +0000 | [diff] [blame] | 506 | GCCOPTS="$GCCOPTS -ffunction-sections -msoft-float -G 0 -Wno-parentheses" |
Maurus Cuelenaere | 0709f0a | 2008-07-14 15:03:10 +0000 | [diff] [blame] | 507 | GCCOPTIMIZE="-fomit-frame-pointer" |
Maurus Cuelenaere | 0709f0a | 2008-07-14 15:03:10 +0000 | [diff] [blame] | 508 | endian="little" |
| 509 | gccchoice="4.1.2" |
| 510 | } |
| 511 | |
Thomas Jarosch | 5f037ac | 2011-02-08 20:05:25 +0000 | [diff] [blame] | 512 | maemocc () { |
| 513 | # Scratchbox sets up "gcc" based on the active target |
| 514 | prefixtools "" |
| 515 | |
| 516 | GCCOPTS=`echo $CCOPTS | sed -e s/-ffreestanding// -e s/-nostdlib// -e s/-Wundef//` |
| 517 | GCCOPTS="$GCCOPTS -fno-builtin -g -I\$(SIMDIR)" |
| 518 | GCCOPTIMIZE='' |
| 519 | LDOPTS="-lm -ldl $LDOPTS" |
| 520 | GLOBAL_LDOPTS="$GLOBAL_LDOPTS -Wl,-z,defs" |
Nils Wallménius | 331b23d | 2011-06-07 11:56:23 +0000 | [diff] [blame] | 521 | SHARED_LDFLAG="-shared" |
| 522 | SHARED_CFLAGS='' |
Thomas Jarosch | 5f037ac | 2011-02-08 20:05:25 +0000 | [diff] [blame] | 523 | endian="little" |
Thomas Jarosch | 6cbb0e4 | 2011-02-19 00:50:12 +0000 | [diff] [blame] | 524 | thread_support="HAVE_SIGALTSTACK_THREADS" |
Thomas Jarosch | 5f037ac | 2011-02-08 20:05:25 +0000 | [diff] [blame] | 525 | |
| 526 | is_n900=0 |
| 527 | # Determine maemo version |
| 528 | if pkg-config --atleast-version=5 maemo-version; then |
Dave Chapman | 9e638c7 | 2011-02-11 19:51:29 +0000 | [diff] [blame] | 529 | if [ "$1" == "4" ]; then |
| 530 | echo "ERROR: Maemo 4 SDK required." |
| 531 | exit 1 |
| 532 | fi |
Thomas Jarosch | 5f037ac | 2011-02-08 20:05:25 +0000 | [diff] [blame] | 533 | extradefines="$extradefines -DMAEMO5" |
| 534 | echo "Found N900 maemo version" |
| 535 | is_n900=1 |
| 536 | elif pkg-config --atleast-version=4 maemo-version; then |
Dave Chapman | 9e638c7 | 2011-02-11 19:51:29 +0000 | [diff] [blame] | 537 | if [ "$1" == "5" ]; then |
| 538 | echo "ERROR: Maemo 5 SDK required." |
| 539 | exit 1 |
| 540 | fi |
Thomas Jarosch | 5f037ac | 2011-02-08 20:05:25 +0000 | [diff] [blame] | 541 | extradefines="$extradefines -DMAEMO4" |
| 542 | echo "Found N8xx maemo version" |
| 543 | else |
| 544 | echo "Unable to determine maemo version. Is the maemo-version-dev package installed?" |
| 545 | exit 1 |
| 546 | fi |
| 547 | |
| 548 | # SDL |
Thomas Jarosch | fb790be | 2011-02-13 11:57:32 +0000 | [diff] [blame] | 549 | if [ $is_n900 -eq 1 ]; then |
| 550 | GCCOPTS="$GCCOPTS `pkg-config --cflags sdl`" |
| 551 | LDOPTS="$LDOPTS `pkg-config --libs sdl`" |
| 552 | else |
| 553 | GCCOPTS="$GCCOPTS `sdl-config --cflags`" |
| 554 | LDOPTS="$LDOPTS `sdl-config --libs`" |
| 555 | fi |
Thomas Jarosch | 5f037ac | 2011-02-08 20:05:25 +0000 | [diff] [blame] | 556 | |
| 557 | # glib and libosso support |
| 558 | GCCOPTS="$GCCOPTS `pkg-config --cflags libosso glib-2.0 gthread-2.0`" |
| 559 | LDOPTS="$LDOPTS `pkg-config --libs libosso glib-2.0 gthread-2.0`" |
| 560 | |
| 561 | # libhal support: Battery monitoring |
| 562 | GCCOPTS="$GCCOPTS `pkg-config --cflags hal`" |
| 563 | LDOPTS="$LDOPTS `pkg-config --libs hal`" |
| 564 | |
| 565 | GCCOPTS="$GCCOPTS -O2 -fno-strict-aliasing" |
| 566 | if [ $is_n900 -eq 1 ]; then |
| 567 | # gstreamer support: Audio output. |
| 568 | GCCOPTS="$GCCOPTS `pkg-config --cflags gstreamer-base-0.10 gstreamer-plugins-base-0.10 gstreamer-app-0.10`" |
| 569 | LDOPTS="$LDOPTS `pkg-config --libs gstreamer-base-0.10 gstreamer-plugins-base-0.10 gstreamer-app-0.10`" |
| 570 | |
| 571 | # N900 specific: libplayback support |
| 572 | GCCOPTS="$GCCOPTS `pkg-config --cflags libplayback-1`" |
| 573 | LDOPTS="$LDOPTS `pkg-config --libs libplayback-1`" |
| 574 | |
| 575 | # N900 specific: Enable ARMv7 NEON support |
Thomas Jarosch | cc895b5 | 2011-02-27 19:58:38 +0000 | [diff] [blame] | 576 | if sb-conf show -A |grep -q -i arm; then |
| 577 | echo "Detected ARM target" |
Thomas Jarosch | 5f037ac | 2011-02-08 20:05:25 +0000 | [diff] [blame] | 578 | GCCOPTS="$GCCOPTS -mcpu=cortex-a8 -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp" |
| 579 | extradefines="$extradefines -DMAEMO_ARM_BUILD" |
Thomas Jarosch | cc895b5 | 2011-02-27 19:58:38 +0000 | [diff] [blame] | 580 | else |
| 581 | echo "Detected x86 target" |
Thomas Jarosch | 5f037ac | 2011-02-08 20:05:25 +0000 | [diff] [blame] | 582 | fi |
| 583 | else |
| 584 | # N8xx specific: Enable armv5te instructions |
Thomas Jarosch | cc895b5 | 2011-02-27 19:58:38 +0000 | [diff] [blame] | 585 | if sb-conf show -A |grep -q -i arm; then |
| 586 | echo "Detected ARM target" |
Thomas Jarosch | 5f037ac | 2011-02-08 20:05:25 +0000 | [diff] [blame] | 587 | GCCOPTS="$GCCOPTS -mcpu=arm1136jf-s -mfloat-abi=softfp -mfpu=vfp" |
| 588 | extradefines="$extradefines -DMAEMO_ARM_BUILD" |
Thomas Jarosch | cc895b5 | 2011-02-27 19:58:38 +0000 | [diff] [blame] | 589 | else |
| 590 | echo "Detected x86 target" |
Thomas Jarosch | 5f037ac | 2011-02-08 20:05:25 +0000 | [diff] [blame] | 591 | fi |
| 592 | fi |
| 593 | } |
| 594 | |
Thomas Jarosch | 6e9e6a7 | 2011-02-27 23:42:37 +0000 | [diff] [blame] | 595 | pandoracc () { |
| 596 | # Note: The new "Ivanovic" pandora toolchain is not able to compile rockbox. |
| 597 | # You have to use the sebt3 toolchain: |
| 598 | # http://www.gp32x.com/board/index.php?/topic/58490-yactfeau/ |
| 599 | |
| 600 | PNDSDK="/usr/local/angstrom/arm" |
| 601 | if [ ! -x $PNDSDK/bin/arm-angstrom-linux-gnueabi-gcc ]; then |
| 602 | echo "Pandora SDK gcc not found in $PNDSDK/bin/arm-angstrom-linux-gnueabi-gcc" |
| 603 | exit |
| 604 | fi |
| 605 | |
| 606 | PATH=$PNDSDK/bin:$PATH:$PNDSDK/arm-angstrom-linux-gnueabi/usr/bin |
| 607 | PKG_CONFIG_PATH=$PNDSDK/arm-angstrom-linux-gnueabi/usr/lib/pkgconfig |
| 608 | LDOPTS="-L$PNDSDK/arm-angstrom-linux-gnueabi/usr/lib -Wl,-rpath,$PNDSDK/arm-angstrom-linux-gnueabi/usr/lib $LDOPTS" |
| 609 | PKG_CONFIG="pkg-config" |
| 610 | |
| 611 | GCCOPTS=`echo $CCOPTS | sed -e s/-ffreestanding// -e s/-nostdlib// -e s/-Wundef//` |
| 612 | GCCOPTS="$GCCOPTS -fno-builtin -g -I\$(SIMDIR)" |
| 613 | GCCOPTIMIZE='' |
| 614 | LDOPTS="-lm -ldl $LDOPTS" |
| 615 | GLOBAL_LDOPTS="$GLOBAL_LDOPTS -Wl,-z,defs" |
Nils Wallménius | 331b23d | 2011-06-07 11:56:23 +0000 | [diff] [blame] | 616 | SHARED_LDFLAG="-shared" |
| 617 | SHARED_CFLAGS='' |
Thomas Jarosch | 6e9e6a7 | 2011-02-27 23:42:37 +0000 | [diff] [blame] | 618 | endian="little" |
| 619 | thread_support="HAVE_SIGALTSTACK_THREADS" |
| 620 | |
| 621 | # Include path |
Thomas Jarosch | c0c5a13 | 2011-12-10 19:23:51 +0000 | [diff] [blame] | 622 | GCCOPTS="$GCCOPTS -I$PNDSDK/arm-angstrom-linux-gnueabi/usr/include" |
Thomas Jarosch | 6e9e6a7 | 2011-02-27 23:42:37 +0000 | [diff] [blame] | 623 | |
| 624 | # Set up compiler |
| 625 | gccchoice="4.3.3" |
| 626 | prefixtools "$PNDSDK/bin/arm-angstrom-linux-gnueabi-" |
| 627 | |
| 628 | # Detect SDL |
Thomas Jarosch | 0f440d1 | 2011-03-13 12:46:59 +0000 | [diff] [blame] | 629 | GCCOPTS="$GCCOPTS `$PNDSDK/bin/sdl-config --cflags`" |
| 630 | LDOPTS="$LDOPTS `$PNDSDK/bin/sdl-config --libs`" |
Thomas Jarosch | 6e9e6a7 | 2011-02-27 23:42:37 +0000 | [diff] [blame] | 631 | |
| 632 | # Compiler options |
| 633 | GCCOPTS="$GCCOPTS -O2 -fno-strict-aliasing" |
| 634 | GCCOPTS="$GCCOPTS -march=armv7-a -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp" |
| 635 | GCCOPTS="$GCCOPTS -ffast-math -fsingle-precision-constant" |
| 636 | } |
| 637 | |
Thomas Martitz | 249bba0 | 2011-12-24 11:56:46 +0000 | [diff] [blame] | 638 | ypr0cc () { |
| 639 | |
| 640 | GCCOPTS=`echo $CCOPTS | sed -e s/-ffreestanding// -e s/-nostdlib//` |
| 641 | GCCOPTIMIZE='' |
| 642 | LDOPTS="-lasound -lpthread -lm -ldl -lrt $LDOPTS" |
| 643 | GLOBAL_LDOPTS="$GLOBAL_LDOPTS -Wl,-z,defs" |
| 644 | SHARED_LDFLAG="-shared" |
| 645 | SHARED_CFLAGS='' |
| 646 | endian="little" |
Thomas Martitz | 249bba0 | 2011-12-24 11:56:46 +0000 | [diff] [blame] | 647 | app_type="ypr0" |
| 648 | |
| 649 | # Include path |
| 650 | GCCOPTS="$GCCOPTS -D_GNU_SOURCE=1 -U_FORTIFY_SOURCE -D_REENTRANT" |
| 651 | |
| 652 | # Set up compiler |
| 653 | gccchoice="4.4.6" |
| 654 | prefixtools "arm-ypr0-linux-gnueabi-" |
| 655 | } |
| 656 | |
Thomas Martitz | 240923a | 2010-08-02 20:34:47 +0000 | [diff] [blame] | 657 | androidcc () { |
Dave Chapman | 9e638c7 | 2011-02-11 19:51:29 +0000 | [diff] [blame] | 658 | if [ -z "$ANDROID_SDK_PATH" ]; then |
| 659 | echo "ERROR: You need the Android SDK installed and have the ANDROID_SDK_PATH" |
| 660 | echo "environment variable point to the root directory of the Android SDK." |
| 661 | exit |
| 662 | fi |
| 663 | if [ -z "$ANDROID_NDK_PATH" ]; then |
| 664 | echo "ERROR: You need the Android NDK installed (r5 or higher) and have the ANDROID_NDK_PATH" |
| 665 | echo "environment variable point to the root directory of the Android NDK." |
| 666 | exit |
| 667 | fi |
Dominik Riebeling | e9eb5b3 | 2011-09-02 21:28:25 +0000 | [diff] [blame] | 668 | buildhost=$(uname | tr "[:upper:]" "[:lower:]") |
Thomas Martitz | 8e3c77d | 2012-11-06 09:25:36 +0100 | [diff] [blame] | 669 | GCCOPTS=`echo $CCOPTS | sed -e s/-ffreestanding// -e s/-nostdlib// -e s/-Wundef//` |
Thomas Martitz | 48572c6 | 2012-11-06 11:39:49 +0100 | [diff] [blame] | 670 | LDOPTS="$LDOPTS -Wl,-soname,librockbox.so -shared -ldl -llog" |
| 671 | GLOBAL_LDOPTS="-Wl,-z,defs -Wl,-z,noexecstack -shared" |
Thomas Martitz | 8e3c77d | 2012-11-06 09:25:36 +0100 | [diff] [blame] | 672 | ANDROID_ARCH=$1 # for android.make too |
| 673 | # arch dependant stuff |
| 674 | case $ANDROID_ARCH in |
| 675 | armeabi) |
| 676 | endian="little" |
| 677 | gccchoice="4.4.3" |
| 678 | gcctarget="arm-linux-androideabi-" |
Thomas Martitz | 6242d9f | 2012-11-07 23:29:54 +0100 | [diff] [blame] | 679 | # sigaltstack is not available in pre-android-9, however asm |
| 680 | # threads work fine so far |
| 681 | thread_support="ASSEMBLER_THREADS" |
Thomas Martitz | 8e3c77d | 2012-11-06 09:25:36 +0100 | [diff] [blame] | 682 | GCCOPTS="$GCCOPTS -march=armv5te -mtune=xscale -msoft-float -fomit-frame-pointer \ |
| 683 | --sysroot=$ANDROID_NDK_PATH/platforms/android-5/arch-arm" |
| 684 | LDOPTS="$LDOPTS --sysroot=$ANDROID_NDK_PATH/platforms/android-5/arch-arm" |
| 685 | ;; |
| 686 | mips) |
| 687 | endian="little" |
| 688 | gccchoice="4.4.3" |
| 689 | gcctarget="mipsel-linux-android-" |
Thomas Martitz | 6242d9f | 2012-11-07 23:29:54 +0100 | [diff] [blame] | 690 | thread_support="HAVE_SIGALTSTACK_THREADS" |
Thomas Martitz | 8e3c77d | 2012-11-06 09:25:36 +0100 | [diff] [blame] | 691 | GCCOPTS="$GCCOPTS -march=mips32 -mtune=r4600 -mno-mips16 -mno-long-calls -fomit-frame-pointer \ |
| 692 | --sysroot=$ANDROID_NDK_PATH/platforms/android-14/arch-mips -fPIC" |
| 693 | LDOPTS="$LDOPTS --sysroot=$ANDROID_NDK_PATH/platforms/android-14/arch-mips" |
| 694 | ;; |
Thomas Martitz | 48572c6 | 2012-11-06 11:39:49 +0100 | [diff] [blame] | 695 | x86) |
| 696 | endian=little |
| 697 | gccchoice="4.4.3" |
| 698 | gcctarget="i686-linux-android-" |
| 699 | gccdir=x86-$gccchoice |
Thomas Martitz | 6242d9f | 2012-11-07 23:29:54 +0100 | [diff] [blame] | 700 | thread_support="HAVE_SIGALTSTACK_THREADS" |
Thomas Martitz | 48572c6 | 2012-11-06 11:39:49 +0100 | [diff] [blame] | 701 | GCCOPTS="$GCCOPTS -Wa,--noexecstack -ffunction-sections -fomit-frame-pointer\ |
| 702 | --sysroot=$ANDROID_NDK_PATH/platforms/android-9/arch-x86" |
| 703 | LDOPTS="$LDOPTS --sysroot=$ANDROID_NDK_PATH/platforms/android-9/arch-x86" |
| 704 | ;; |
Thomas Martitz | 8e3c77d | 2012-11-06 09:25:36 +0100 | [diff] [blame] | 705 | *) |
| 706 | echo "ERROR: androidcc(): Unknown target architecture" |
| 707 | exit |
| 708 | ;; |
| 709 | esac |
| 710 | echo "Application environment deemed $endian endian" |
Thomas Martitz | 48572c6 | 2012-11-06 11:39:49 +0100 | [diff] [blame] | 711 | if [ -z "$gccdir" ]; then |
| 712 | gccdir=$gcctarget$gccchoice |
| 713 | fi |
Bryan Childs | 1489fa3 | 2013-04-26 20:26:40 +0100 | [diff] [blame] | 714 | if [ -d $ANDROID_NDK_PATH/toolchains/$gccdir/prebuilt/$buildhost-x86 ]; then |
| 715 | gccprefix=$ANDROID_NDK_PATH/toolchains/$gccdir/prebuilt/$buildhost-x86 |
| 716 | else |
| 717 | gccprefix=$ANDROID_NDK_PATH/toolchains/$gccdir/prebuilt/$buildhost-x86_64 |
| 718 | fi |
Dominik Riebeling | 4f787ba | 2011-01-23 22:09:44 +0000 | [diff] [blame] | 719 | PATH=$PATH:$gccprefix/bin |
| 720 | prefixtools $gcctarget |
Thomas Martitz | 240923a | 2010-08-02 20:34:47 +0000 | [diff] [blame] | 721 | } |
| 722 | |
Robert Kukla | ba366a0 | 2007-03-03 00:36:54 +0000 | [diff] [blame] | 723 | whichadvanced () { |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 724 | atype=`echo "$1" | cut -c 2-` |
Daniel Stenberg | edc0792 | 2005-05-30 13:00:43 +0000 | [diff] [blame] | 725 | ################################################################## |
| 726 | # Prompt for specific developer options |
| 727 | # |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 728 | if [ "$atype" ]; then |
| 729 | interact= |
| 730 | else |
| 731 | interact=1 |
| 732 | echo "" |
Thomas Martitz | f32bd59 | 2010-06-22 18:34:03 +0000 | [diff] [blame] | 733 | printf "Enter your developer options (press only enter when done)\n\ |
| 734 | (D)EBUG, (L)ogf, Boot(c)hart, (S)imulator, (P)rofiling, (V)oice, (W)in32 crosscompile,\n\ |
Ralf Ertzinger | d2f97da | 2011-09-09 12:28:36 +0200 | [diff] [blame] | 735 | (T)est plugins, S(m)all C lib, Logf to Ser(i)al port:" |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 736 | if [ "$modelname" = "archosplayer" ]; then |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 737 | printf ", Use (A)TA poweroff" |
| 738 | fi |
| 739 | if [ "$t_model" = "ondio" ]; then |
| 740 | printf ", (B)acklight MOD" |
| 741 | fi |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 742 | if [ "$modelname" = "iaudiom5" ]; then |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 743 | printf ", (F)M radio MOD" |
| 744 | fi |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 745 | if [ "$modelname" = "iriverh120" ]; then |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 746 | printf ", (R)TC MOD" |
| 747 | fi |
| 748 | echo "" |
Robert Kukla | ba366a0 | 2007-03-03 00:36:54 +0000 | [diff] [blame] | 749 | fi |
Robert Kukla | ba366a0 | 2007-03-03 00:36:54 +0000 | [diff] [blame] | 750 | |
Daniel Stenberg | edc0792 | 2005-05-30 13:00:43 +0000 | [diff] [blame] | 751 | cont=1 |
Daniel Stenberg | edc0792 | 2005-05-30 13:00:43 +0000 | [diff] [blame] | 752 | while [ $cont = "1" ]; do |
| 753 | |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 754 | if [ "$interact" ]; then |
| 755 | option=`input` |
| 756 | else |
| 757 | option=`echo "$atype" | cut -c 1` |
| 758 | fi |
Daniel Stenberg | edc0792 | 2005-05-30 13:00:43 +0000 | [diff] [blame] | 759 | |
| 760 | case $option in |
| 761 | [Dd]) |
Brandon Low | 05dccc3 | 2006-01-18 20:54:13 +0000 | [diff] [blame] | 762 | if [ "yes" = "$profile" ]; then |
| 763 | echo "Debug is incompatible with profiling" |
| 764 | else |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 765 | echo "DEBUG build enabled" |
Brandon Low | 05dccc3 | 2006-01-18 20:54:13 +0000 | [diff] [blame] | 766 | use_debug="yes" |
| 767 | fi |
Daniel Stenberg | edc0792 | 2005-05-30 13:00:43 +0000 | [diff] [blame] | 768 | ;; |
| 769 | [Ll]) |
Daniel Stenberg | edc0792 | 2005-05-30 13:00:43 +0000 | [diff] [blame] | 770 | echo "logf() support enabled" |
Brandon Low | 05dccc3 | 2006-01-18 20:54:13 +0000 | [diff] [blame] | 771 | logf="yes" |
Daniel Stenberg | edc0792 | 2005-05-30 13:00:43 +0000 | [diff] [blame] | 772 | ;; |
Thomas Martitz | f32bd59 | 2010-06-22 18:34:03 +0000 | [diff] [blame] | 773 | [Mm]) |
| 774 | echo "Using Rockbox' small C library" |
| 775 | extradefines="$extradefines -DHAVE_ROCKBOX_C_LIBRARY" |
| 776 | ;; |
Thomas Martitz | c06a23d | 2010-04-05 16:09:47 +0000 | [diff] [blame] | 777 | [Tt]) |
| 778 | echo "Including test plugins" |
| 779 | extradefines="$extradefines -DHAVE_TEST_PLUGINS" |
| 780 | ;; |
Torne Wuff | 4e5f948 | 2010-04-02 14:19:22 +0000 | [diff] [blame] | 781 | [Cc]) |
Ralf Ertzinger | d2f97da | 2011-09-09 12:28:36 +0200 | [diff] [blame] | 782 | echo "bootchart enabled (logf also enabled)" |
Torne Wuff | 52e528e | 2010-04-01 16:27:21 +0000 | [diff] [blame] | 783 | bootchart="yes" |
| 784 | logf="yes" |
| 785 | ;; |
Ralf Ertzinger | d2f97da | 2011-09-09 12:28:36 +0200 | [diff] [blame] | 786 | [Ii]) |
| 787 | echo "Logf to serial port enabled (logf also enabled)" |
| 788 | logf="yes" |
| 789 | logf_serial="yes" |
| 790 | ;; |
Daniel Stenberg | edc0792 | 2005-05-30 13:00:43 +0000 | [diff] [blame] | 791 | [Ss]) |
| 792 | echo "Simulator build enabled" |
| 793 | simulator="yes" |
| 794 | ;; |
Brandon Low | 05dccc3 | 2006-01-18 20:54:13 +0000 | [diff] [blame] | 795 | [Pp]) |
| 796 | if [ "yes" = "$use_debug" ]; then |
| 797 | echo "Profiling is incompatible with debug" |
| 798 | else |
| 799 | echo "Profiling support is enabled" |
| 800 | profile="yes" |
| 801 | fi |
| 802 | ;; |
Jonas Häggqvist | 0ed6fad | 2007-08-08 22:01:06 +0000 | [diff] [blame] | 803 | [Vv]) |
| 804 | echo "Voice build selected" |
| 805 | voice="yes" |
| 806 | ;; |
Jens Arnold | b76faec | 2009-06-20 18:37:29 +0000 | [diff] [blame] | 807 | [Aa]) |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 808 | if [ "$modelname" = "archosplayer" ]; then |
Jens Arnold | beca69b | 2010-04-11 16:07:36 +0000 | [diff] [blame] | 809 | have_ata_poweroff="#define HAVE_ATA_POWER_OFF" |
| 810 | echo "ATA power off enabled" |
Jens Arnold | b76faec | 2009-06-20 18:37:29 +0000 | [diff] [blame] | 811 | fi |
| 812 | ;; |
Jens Arnold | 81b87fe | 2009-06-12 18:53:44 +0000 | [diff] [blame] | 813 | [Bb]) |
| 814 | if [ "$t_model" = "ondio" ]; then |
| 815 | have_backlight="#define HAVE_BACKLIGHT" |
| 816 | echo "Backlight functions enabled" |
Jens Arnold | 81b87fe | 2009-06-12 18:53:44 +0000 | [diff] [blame] | 817 | fi |
| 818 | ;; |
| 819 | [Ff]) |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 820 | if [ "$modelname" = "iaudiom5" ]; then |
Jens Arnold | 81b87fe | 2009-06-12 18:53:44 +0000 | [diff] [blame] | 821 | have_fmradio_in="#define HAVE_FMRADIO_IN" |
| 822 | echo "FM radio functions enabled" |
Jens Arnold | 81b87fe | 2009-06-12 18:53:44 +0000 | [diff] [blame] | 823 | fi |
| 824 | ;; |
Robert Kukla | ba366a0 | 2007-03-03 00:36:54 +0000 | [diff] [blame] | 825 | [Rr]) |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 826 | if [ "$modelname" = "iriverh120" ]; then |
Robert Kukla | ba366a0 | 2007-03-03 00:36:54 +0000 | [diff] [blame] | 827 | config_rtc="#define CONFIG_RTC RTC_DS1339_DS3231" |
| 828 | have_rtc_alarm="#define HAVE_RTC_ALARM" |
| 829 | echo "RTC functions enabled (DS1339/DS3231)" |
Robert Kukla | ba366a0 | 2007-03-03 00:36:54 +0000 | [diff] [blame] | 830 | fi |
| 831 | ;; |
Jonas Häggqvist | b285a77 | 2009-10-12 18:49:29 +0000 | [diff] [blame] | 832 | [Ww]) |
| 833 | echo "Enabling Windows 32 cross-compiling" |
Rafaël Carré | 94eff15 | 2010-07-04 15:02:11 +0000 | [diff] [blame] | 834 | win32crosscompile="yes" |
Jonas Häggqvist | b285a77 | 2009-10-12 18:49:29 +0000 | [diff] [blame] | 835 | ;; |
Nils Wallménius | 1aaaa9e | 2010-07-31 14:52:56 +0000 | [diff] [blame] | 836 | "") # Match enter press when finished with advanced options |
| 837 | cont=0 |
| 838 | ;; |
Daniel Stenberg | edc0792 | 2005-05-30 13:00:43 +0000 | [diff] [blame] | 839 | *) |
Nils Wallménius | 1aaaa9e | 2010-07-31 14:52:56 +0000 | [diff] [blame] | 840 | echo "[ERROR] Option $option unsupported" |
Daniel Stenberg | edc0792 | 2005-05-30 13:00:43 +0000 | [diff] [blame] | 841 | ;; |
Greg White | 355be50 | 2007-01-13 02:24:15 +0000 | [diff] [blame] | 842 | esac |
Jens Arnold | b5ca489 | 2009-12-25 18:33:47 +0000 | [diff] [blame] | 843 | if [ "$interact" ]; then |
| 844 | btype="$btype$option" |
| 845 | else |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 846 | atype=`echo "$atype" | cut -c 2-` |
| 847 | [ "$atype" ] || cont=0 |
| 848 | fi |
Daniel Stenberg | edc0792 | 2005-05-30 13:00:43 +0000 | [diff] [blame] | 849 | done |
Robert Kukla | ba366a0 | 2007-03-03 00:36:54 +0000 | [diff] [blame] | 850 | echo "done" |
Daniel Stenberg | edc0792 | 2005-05-30 13:00:43 +0000 | [diff] [blame] | 851 | |
Jonas Häggqvist | 0ed6fad | 2007-08-08 22:01:06 +0000 | [diff] [blame] | 852 | if [ "yes" = "$voice" ]; then |
Jonas Häggqvist | 58537b4 | 2007-08-13 12:21:16 +0000 | [diff] [blame] | 853 | # Ask about languages to build |
Jonas Häggqvist | 58537b4 | 2007-08-13 12:21:16 +0000 | [diff] [blame] | 854 | picklang |
| 855 | voicelanguage=`whichlang` |
Jonas Häggqvist | 58537b4 | 2007-08-13 12:21:16 +0000 | [diff] [blame] | 856 | echo "Voice language set to $voicelanguage" |
| 857 | |
| 858 | # Configure encoder and TTS engine for each language |
| 859 | for thislang in `echo $voicelanguage | sed 's/,/ /g'`; do |
| 860 | voiceconfig "$thislang" |
| 861 | done |
Jonas Häggqvist | 0ed6fad | 2007-08-08 22:01:06 +0000 | [diff] [blame] | 862 | fi |
Brandon Low | 05dccc3 | 2006-01-18 20:54:13 +0000 | [diff] [blame] | 863 | if [ "yes" = "$use_debug" ]; then |
| 864 | debug="-DDEBUG" |
| 865 | GCCOPTS="$GCCOPTS -g -DDEBUG" |
| 866 | fi |
| 867 | if [ "yes" = "$logf" ]; then |
| 868 | use_logf="#define ROCKBOX_HAS_LOGF 1" |
| 869 | fi |
Ralf Ertzinger | d2f97da | 2011-09-09 12:28:36 +0200 | [diff] [blame] | 870 | if [ "yes" = "$logf_serial" ]; then |
| 871 | use_logf_serial="#define LOGF_SERIAL 1" |
| 872 | fi |
Torne Wuff | 52e528e | 2010-04-01 16:27:21 +0000 | [diff] [blame] | 873 | if [ "yes" = "$bootchart" ]; then |
| 874 | use_bootchart="#define DO_BOOTCHART 1" |
| 875 | fi |
Daniel Stenberg | edc0792 | 2005-05-30 13:00:43 +0000 | [diff] [blame] | 876 | if [ "yes" = "$simulator" ]; then |
Linus Nielsen Feltzing | dfb0015 | 2005-08-30 21:21:06 +0000 | [diff] [blame] | 877 | debug="-DDEBUG" |
Rafaël Carré | b4ca244 | 2013-06-13 18:42:29 +0200 | [diff] [blame] | 878 | extradefines="$extradefines -DSIMULATOR -DHAVE_TEST_PLUGINS" |
Boris Gjenero | c164b86 | 2009-04-21 16:13:00 +0000 | [diff] [blame] | 879 | archosrom="" |
| 880 | flash="" |
Daniel Stenberg | edc0792 | 2005-05-30 13:00:43 +0000 | [diff] [blame] | 881 | fi |
Brandon Low | 05dccc3 | 2006-01-18 20:54:13 +0000 | [diff] [blame] | 882 | if [ "yes" = "$profile" ]; then |
| 883 | extradefines="$extradefines -DRB_PROFILE" |
| 884 | PROFILE_OPTS="-finstrument-functions" |
Brandon Low | 05dccc3 | 2006-01-18 20:54:13 +0000 | [diff] [blame] | 885 | fi |
Daniel Stenberg | edc0792 | 2005-05-30 13:00:43 +0000 | [diff] [blame] | 886 | } |
| 887 | |
Jonas Häggqvist | 58537b4 | 2007-08-13 12:21:16 +0000 | [diff] [blame] | 888 | # Configure voice settings |
Jonas Häggqvist | da071d0 | 2006-11-03 21:47:52 +0000 | [diff] [blame] | 889 | voiceconfig () { |
Jonas Häggqvist | 58537b4 | 2007-08-13 12:21:16 +0000 | [diff] [blame] | 890 | thislang=$1 |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 891 | if [ ! "$ARG_TTS" ]; then |
| 892 | echo "Building $thislang voice for $modelname. Select options" |
| 893 | echo "" |
| 894 | fi |
Jonas Häggqvist | da071d0 | 2006-11-03 21:47:52 +0000 | [diff] [blame] | 895 | |
Jens Arnold | 56fa6ae | 2008-10-08 23:18:23 +0000 | [diff] [blame] | 896 | if [ -n "`findtool flite`" ]; then |
Jonas Häggqvist | da071d0 | 2006-11-03 21:47:52 +0000 | [diff] [blame] | 897 | FLITE="F(l)ite " |
Jonas Häggqvist | 17e03e7 | 2007-08-25 22:00:13 +0000 | [diff] [blame] | 898 | FLITE_OPTS="" |
Jonas Häggqvist | da071d0 | 2006-11-03 21:47:52 +0000 | [diff] [blame] | 899 | DEFAULT_TTS="flite" |
| 900 | DEFAULT_TTS_OPTS=$FLITE_OPTS |
| 901 | DEFAULT_NOISEFLOOR="500" |
Jens Arnold | 334e612 | 2012-01-08 13:59:15 +0000 | [diff] [blame] | 902 | DEFAULT_CHOICE="l" |
Jonas Häggqvist | da071d0 | 2006-11-03 21:47:52 +0000 | [diff] [blame] | 903 | fi |
Jens Arnold | 56fa6ae | 2008-10-08 23:18:23 +0000 | [diff] [blame] | 904 | if [ -n "`findtool espeak`" ]; then |
Jonas Häggqvist | da071d0 | 2006-11-03 21:47:52 +0000 | [diff] [blame] | 905 | ESPEAK="(e)Speak " |
Jonas Häggqvist | 17e03e7 | 2007-08-25 22:00:13 +0000 | [diff] [blame] | 906 | ESPEAK_OPTS="" |
Jonas Häggqvist | da071d0 | 2006-11-03 21:47:52 +0000 | [diff] [blame] | 907 | DEFAULT_TTS="espeak" |
| 908 | DEFAULT_TTS_OPTS=$ESPEAK_OPTS |
| 909 | DEFAULT_NOISEFLOOR="500" |
| 910 | DEFAULT_CHOICE="e" |
| 911 | fi |
Jens Arnold | 56fa6ae | 2008-10-08 23:18:23 +0000 | [diff] [blame] | 912 | if [ -n "`findtool festival`" ]; then |
Jonas Häggqvist | da071d0 | 2006-11-03 21:47:52 +0000 | [diff] [blame] | 913 | FESTIVAL="(F)estival " |
Jonas Häggqvist | 17e03e7 | 2007-08-25 22:00:13 +0000 | [diff] [blame] | 914 | case "$thislang" in |
| 915 | "italiano") |
| 916 | FESTIVAL_OPTS="--language italian" |
| 917 | ;; |
| 918 | "espanol") |
| 919 | FESTIVAL_OPTS="--language spanish" |
| 920 | ;; |
| 921 | "finnish") |
| 922 | FESTIVAL_OPTS="--language finnish" |
| 923 | ;; |
| 924 | "czech") |
| 925 | FESTIVAL_OPTS="--language czech" |
| 926 | ;; |
| 927 | *) |
| 928 | FESTIVAL_OPTS="" |
| 929 | ;; |
| 930 | esac |
Jonas Häggqvist | da071d0 | 2006-11-03 21:47:52 +0000 | [diff] [blame] | 931 | DEFAULT_TTS="festival" |
| 932 | DEFAULT_TTS_OPTS=$FESTIVAL_OPTS |
| 933 | DEFAULT_NOISEFLOOR="500" |
Jens Arnold | 334e612 | 2012-01-08 13:59:15 +0000 | [diff] [blame] | 934 | DEFAULT_CHOICE="f" |
Jonas Häggqvist | da071d0 | 2006-11-03 21:47:52 +0000 | [diff] [blame] | 935 | fi |
Jens Arnold | 56fa6ae | 2008-10-08 23:18:23 +0000 | [diff] [blame] | 936 | if [ -n "`findtool swift`" ]; then |
Jonas Häggqvist | 005699f | 2007-09-01 20:03:20 +0000 | [diff] [blame] | 937 | SWIFT="S(w)ift " |
| 938 | SWIFT_OPTS="" |
| 939 | DEFAULT_TTS="swift" |
| 940 | DEFAULT_TTS_OPTS=$SWIFT_OPTS |
| 941 | DEFAULT_NOISEFLOOR="500" |
| 942 | DEFAULT_CHOICE="w" |
| 943 | fi |
Steve Bavin | 6bc7da7 | 2007-08-09 12:07:42 +0000 | [diff] [blame] | 944 | # Allow SAPI if Windows is in use |
Jens Arnold | 56fa6ae | 2008-10-08 23:18:23 +0000 | [diff] [blame] | 945 | if [ -n "`findtool winver`" ]; then |
Jens Arnold | 5dbea46 | 2007-09-02 22:32:34 +0000 | [diff] [blame] | 946 | SAPI="(S)API " |
| 947 | SAPI_OPTS="" |
| 948 | DEFAULT_TTS="sapi" |
| 949 | DEFAULT_TTS_OPTS=$SAPI_OPTS |
Steve Bavin | 6bc7da7 | 2007-08-09 12:07:42 +0000 | [diff] [blame] | 950 | DEFAULT_NOISEFLOOR="500" |
Jens Arnold | 334e612 | 2012-01-08 13:59:15 +0000 | [diff] [blame] | 951 | DEFAULT_CHOICE="s" |
Steve Bavin | 6bc7da7 | 2007-08-09 12:07:42 +0000 | [diff] [blame] | 952 | fi |
Jonas Häggqvist | da071d0 | 2006-11-03 21:47:52 +0000 | [diff] [blame] | 953 | |
Jens Arnold | 5dbea46 | 2007-09-02 22:32:34 +0000 | [diff] [blame] | 954 | if [ "$FESTIVAL" = "$FLITE" ] && [ "$FLITE" = "$ESPEAK" ] && [ "$ESPEAK" = "$SAPI" ] && [ "$SAPI" = "$SWIFT" ]; then |
| 955 | echo "You need Festival, eSpeak or Flite in your path, or SAPI available to build voice files" |
Jonas Häggqvist | ea5457c | 2008-12-11 17:24:04 +0000 | [diff] [blame] | 956 | exit 3 |
Jonas Häggqvist | da071d0 | 2006-11-03 21:47:52 +0000 | [diff] [blame] | 957 | fi |
| 958 | |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 959 | if [ "$ARG_TTS" ]; then |
| 960 | option=$ARG_TTS |
| 961 | else |
| 962 | echo "TTS engine to use: ${FLITE}${FESTIVAL}${ESPEAK}${SAPI}${SWIFT}(${DEFAULT_CHOICE})?" |
| 963 | option=`input` |
Jens Arnold | 334e612 | 2012-01-08 13:59:15 +0000 | [diff] [blame] | 964 | if [ -z "$option" ]; then option=${DEFAULT_CHOICE}; fi |
| 965 | advopts="$advopts --tts=$option" |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 966 | fi |
Jonas Häggqvist | da071d0 | 2006-11-03 21:47:52 +0000 | [diff] [blame] | 967 | case "$option" in |
| 968 | [Ll]) |
| 969 | TTS_ENGINE="flite" |
| 970 | NOISEFLOOR="500" # TODO: check this value |
| 971 | TTS_OPTS=$FLITE_OPTS |
| 972 | ;; |
| 973 | [Ee]) |
| 974 | TTS_ENGINE="espeak" |
| 975 | NOISEFLOOR="500" |
| 976 | TTS_OPTS=$ESPEAK_OPTS |
| 977 | ;; |
| 978 | [Ff]) |
| 979 | TTS_ENGINE="festival" |
| 980 | NOISEFLOOR="500" |
| 981 | TTS_OPTS=$FESTIVAL_OPTS |
| 982 | ;; |
Steve Bavin | 6bc7da7 | 2007-08-09 12:07:42 +0000 | [diff] [blame] | 983 | [Ss]) |
Jens Arnold | 5dbea46 | 2007-09-02 22:32:34 +0000 | [diff] [blame] | 984 | TTS_ENGINE="sapi" |
Steve Bavin | 6bc7da7 | 2007-08-09 12:07:42 +0000 | [diff] [blame] | 985 | NOISEFLOOR="500" |
Jens Arnold | 5dbea46 | 2007-09-02 22:32:34 +0000 | [diff] [blame] | 986 | TTS_OPTS=$SAPI_OPTS |
Steve Bavin | 6bc7da7 | 2007-08-09 12:07:42 +0000 | [diff] [blame] | 987 | ;; |
Jonas Häggqvist | 005699f | 2007-09-01 20:03:20 +0000 | [diff] [blame] | 988 | [Ww]) |
| 989 | TTS_ENGINE="swift" |
| 990 | NOISEFLOOR="500" |
| 991 | TTS_OPTS=$SWIFT_OPTS |
| 992 | ;; |
Jonas Häggqvist | da071d0 | 2006-11-03 21:47:52 +0000 | [diff] [blame] | 993 | *) |
| 994 | TTS_ENGINE=$DEFAULT_TTS |
| 995 | TTS_OPTS=$DEFAULT_TTS_OPTS |
| 996 | NOISEFLOOR=$DEFAULT_NOISEFLOOR |
| 997 | esac |
| 998 | echo "Using $TTS_ENGINE for TTS" |
Greg White | 355be50 | 2007-01-13 02:24:15 +0000 | [diff] [blame] | 999 | |
Jonas Häggqvist | 839bcdf | 2009-03-02 21:36:48 +0000 | [diff] [blame] | 1000 | # Select which voice to use for Festival |
| 1001 | if [ "$TTS_ENGINE" = "festival" ]; then |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 1002 | voicelist=`echo "(voice.list)"|festival -i 2>/dev/null |tr "\n" " "|sed -e 's/.*festival> (\(.*\)) festival>/\1/'|sort` |
| 1003 | for voice in $voicelist; do |
| 1004 | TTS_FESTIVAL_VOICE="$voice" # Default choice |
| 1005 | break |
Jonas Häggqvist | 839bcdf | 2009-03-02 21:36:48 +0000 | [diff] [blame] | 1006 | done |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 1007 | if [ "$ARG_VOICE" ]; then |
| 1008 | CHOICE=$ARG_VOICE |
| 1009 | else |
| 1010 | i=1 |
| 1011 | for voice in $voicelist; do |
| 1012 | printf "%3d. %s\n" "$i" "$voice" |
| 1013 | i=`expr $i + 1` |
| 1014 | done |
| 1015 | printf "Please select which Festival voice to use (default is $TTS_FESTIVAL_VOICE): " |
| 1016 | CHOICE=`input` |
| 1017 | fi |
Jonas Häggqvist | 839bcdf | 2009-03-02 21:36:48 +0000 | [diff] [blame] | 1018 | i=1 |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 1019 | for voice in $voicelist; do |
Jonas Häggqvist | 839bcdf | 2009-03-02 21:36:48 +0000 | [diff] [blame] | 1020 | if [ "$i" = "$CHOICE" -o "$voice" = "$CHOICE" ]; then |
| 1021 | TTS_FESTIVAL_VOICE="$voice" |
| 1022 | fi |
| 1023 | i=`expr $i + 1` |
| 1024 | done |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 1025 | advopts="$advopts --voice=$CHOICE" |
Jonas Häggqvist | 839bcdf | 2009-03-02 21:36:48 +0000 | [diff] [blame] | 1026 | echo "Festival voice set to $TTS_FESTIVAL_VOICE" |
| 1027 | echo "(voice_$TTS_FESTIVAL_VOICE)" > festival-prolog.scm |
| 1028 | fi |
| 1029 | |
Björn Stenberg | f5ef0b9 | 2009-12-08 10:24:59 +0000 | [diff] [blame] | 1030 | # Read custom tts options from command line |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 1031 | if [ "$ARG_TTSOPTS" ]; then |
Jens Arnold | 60012e1 | 2009-12-25 18:35:15 +0000 | [diff] [blame] | 1032 | TTS_OPTS="$ARG_TTSOPTS" |
Björn Stenberg | f5ef0b9 | 2009-12-08 10:24:59 +0000 | [diff] [blame] | 1033 | echo "$TTS_ENGINE options set to $TTS_OPTS" |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 1034 | fi |
Jonas Häggqvist | da071d0 | 2006-11-03 21:47:52 +0000 | [diff] [blame] | 1035 | |
Thom Johansen | 7543261 | 2007-11-18 17:10:50 +0000 | [diff] [blame] | 1036 | if [ "$swcodec" = "yes" ]; then |
| 1037 | ENCODER="rbspeexenc" |
Thom Johansen | 7543261 | 2007-11-18 17:10:50 +0000 | [diff] [blame] | 1038 | ENC_OPTS="-q 4 -c 10" |
| 1039 | else |
Jens Arnold | 56fa6ae | 2008-10-08 23:18:23 +0000 | [diff] [blame] | 1040 | if [ -n "`findtool lame`" ]; then |
Thom Johansen | 7543261 | 2007-11-18 17:10:50 +0000 | [diff] [blame] | 1041 | ENCODER="lame" |
Jens Arnold | 31c279e | 2009-05-30 00:12:24 +0000 | [diff] [blame] | 1042 | ENC_OPTS="--resample 12 -t -m m -h -V 9.999 -S -B 64 --vbr-new" |
Thom Johansen | 7543261 | 2007-11-18 17:10:50 +0000 | [diff] [blame] | 1043 | else |
| 1044 | echo "You need LAME in the system path to build voice files for" |
| 1045 | echo "HWCODEC targets." |
Jonas Häggqvist | ea5457c | 2008-12-11 17:24:04 +0000 | [diff] [blame] | 1046 | exit 4 |
Thom Johansen | 7543261 | 2007-11-18 17:10:50 +0000 | [diff] [blame] | 1047 | fi |
Jonas Häggqvist | da071d0 | 2006-11-03 21:47:52 +0000 | [diff] [blame] | 1048 | fi |
Thom Johansen | 7543261 | 2007-11-18 17:10:50 +0000 | [diff] [blame] | 1049 | |
Jonas Häggqvist | da071d0 | 2006-11-03 21:47:52 +0000 | [diff] [blame] | 1050 | echo "Using $ENCODER for encoding voice clips" |
Jonas Häggqvist | 58537b4 | 2007-08-13 12:21:16 +0000 | [diff] [blame] | 1051 | |
Björn Stenberg | f5ef0b9 | 2009-12-08 10:24:59 +0000 | [diff] [blame] | 1052 | # Read custom encoder options from command line |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 1053 | if [ "$ARG_ENCOPTS" ]; then |
Björn Stenberg | f5ef0b9 | 2009-12-08 10:24:59 +0000 | [diff] [blame] | 1054 | ENC_OPTS="$ARG_ENCOPTS" |
Björn Stenberg | f5ef0b9 | 2009-12-08 10:24:59 +0000 | [diff] [blame] | 1055 | echo "$ENCODER options set to $ENC_OPTS" |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 1056 | fi |
Jonas Häggqvist | 58537b4 | 2007-08-13 12:21:16 +0000 | [diff] [blame] | 1057 | |
Steve Bavin | 6bc7da7 | 2007-08-09 12:07:42 +0000 | [diff] [blame] | 1058 | TEMPDIR="${pwd}" |
Jens Arnold | 56fa6ae | 2008-10-08 23:18:23 +0000 | [diff] [blame] | 1059 | if [ -n "`findtool cygpath`" ]; then |
Steve Bavin | 6bc7da7 | 2007-08-09 12:07:42 +0000 | [diff] [blame] | 1060 | TEMPDIR=`cygpath . -a -w` |
| 1061 | fi |
Jonas Häggqvist | da071d0 | 2006-11-03 21:47:52 +0000 | [diff] [blame] | 1062 | } |
| 1063 | |
Greg White | 355be50 | 2007-01-13 02:24:15 +0000 | [diff] [blame] | 1064 | picklang() { |
| 1065 | # figure out which languages that are around |
| 1066 | for file in $rootdir/apps/lang/*.lang; do |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 1067 | clean=`basename $file .lang` |
Greg White | 355be50 | 2007-01-13 02:24:15 +0000 | [diff] [blame] | 1068 | langs="$langs $clean" |
| 1069 | done |
Jonas Häggqvist | da071d0 | 2006-11-03 21:47:52 +0000 | [diff] [blame] | 1070 | |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 1071 | if [ "$ARG_LANG" ]; then |
| 1072 | pick=$ARG_LANG |
| 1073 | else |
| 1074 | echo "Select a number for the language to use (default is english)" |
| 1075 | # FIXME The multiple-language feature is currently broken |
| 1076 | # echo "You may enter a comma-separated list of languages to build" |
Jonas Häggqvist | da071d0 | 2006-11-03 21:47:52 +0000 | [diff] [blame] | 1077 | |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 1078 | num=1 |
| 1079 | for one in $langs; do |
| 1080 | echo "$num. $one" |
| 1081 | num=`expr $num + 1` |
| 1082 | done |
| 1083 | pick=`input` |
Jens Arnold | 334e612 | 2012-01-08 13:59:15 +0000 | [diff] [blame] | 1084 | advopts="$advopts --language=$pick" |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 1085 | fi |
Greg White | 355be50 | 2007-01-13 02:24:15 +0000 | [diff] [blame] | 1086 | } |
Jonas Häggqvist | da071d0 | 2006-11-03 21:47:52 +0000 | [diff] [blame] | 1087 | |
Greg White | 355be50 | 2007-01-13 02:24:15 +0000 | [diff] [blame] | 1088 | whichlang() { |
Jonas Häggqvist | 58537b4 | 2007-08-13 12:21:16 +0000 | [diff] [blame] | 1089 | output="" |
| 1090 | # Allow the user to pass a comma-separated list of langauges |
| 1091 | for thispick in `echo $pick | sed 's/,/ /g'`; do |
| 1092 | num=1 |
| 1093 | for one in $langs; do |
| 1094 | # Accept both the language number and name |
| 1095 | if [ "$num" = "$thispick" ] || [ "$thispick" = "$one" ]; then |
| 1096 | if [ "$output" = "" ]; then |
| 1097 | output=$one |
| 1098 | else |
| 1099 | output=$output,$one |
| 1100 | fi |
| 1101 | fi |
| 1102 | num=`expr $num + 1` |
| 1103 | done |
Greg White | 355be50 | 2007-01-13 02:24:15 +0000 | [diff] [blame] | 1104 | done |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 1105 | if [ -z "$output" ]; then |
| 1106 | # pick a default |
| 1107 | output="english" |
| 1108 | fi |
Jonas Häggqvist | 58537b4 | 2007-08-13 12:21:16 +0000 | [diff] [blame] | 1109 | echo $output |
Jonas Häggqvist | da071d0 | 2006-11-03 21:47:52 +0000 | [diff] [blame] | 1110 | } |
| 1111 | |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 1112 | help() { |
Robert Hak | c3320ae | 2002-10-17 09:08:05 +0000 | [diff] [blame] | 1113 | echo "Rockbox configure script." |
| 1114 | echo "Invoke this in a directory to generate a Makefile to build Rockbox" |
| 1115 | echo "Do *NOT* run this within the tools directory!" |
Daniel Stenberg | 2196c89 | 2005-06-01 11:42:51 +0000 | [diff] [blame] | 1116 | echo "" |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 1117 | cat <<EOF |
Daniel Stenberg | cdae493 | 2008-04-02 21:28:15 +0000 | [diff] [blame] | 1118 | Usage: configure [OPTION]... |
| 1119 | Options: |
| 1120 | --target=TARGET Sets the target, TARGET can be either the target ID or |
Jonathan Gordon | ee27a4f | 2008-07-17 02:58:53 +0000 | [diff] [blame] | 1121 | corresponding string. Run without this option to see all |
Daniel Stenberg | cdae493 | 2008-04-02 21:28:15 +0000 | [diff] [blame] | 1122 | available targets. |
| 1123 | |
| 1124 | --ram=RAM Sets the RAM for certain targets. Even though any number |
| 1125 | is accepted, not every number is correct. The default |
| 1126 | value will be applied, if you entered a wrong number |
| 1127 | (which depends on the target). Watch the output. Run |
| 1128 | without this option if you are not sure which the right |
| 1129 | number is. |
| 1130 | |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 1131 | --type=TYPE Sets the build type. Shortcuts are also valid. |
| 1132 | Run without this option to see all available types. |
| 1133 | Multiple values are allowed and managed in the input |
| 1134 | order. So --type=b stands for Bootloader build, while |
| 1135 | --type=ab stands for "Backlight MOD" build. |
| 1136 | |
Jonas Häggqvist | ed0f1ae | 2011-06-29 23:10:41 +0000 | [diff] [blame] | 1137 | --lcdwidth=X Sets the width of the LCD. Used only for application |
| 1138 | targets. |
| 1139 | |
| 1140 | --lcdheight=Y Sets the height of the LCD. Used only for application |
| 1141 | targets. |
| 1142 | |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 1143 | --language=LANG Set the language used for voice generation (used only if |
| 1144 | TYPE is AV). |
| 1145 | |
| 1146 | --tts=ENGINE Set the TTS engine used for voice generation (used only |
| 1147 | if TYPE is AV). |
| 1148 | |
| 1149 | --voice=VOICE Set voice to use with selected TTS (used only if TYPE is |
| 1150 | AV). |
| 1151 | |
| 1152 | --ttsopts=OPTS Set TTS engine manual options (used only if TYPE is AV). |
| 1153 | |
| 1154 | --encopts=OPTS Set encoder manual options (used only if ATYPE is AV). |
Björn Stenberg | ad8d603 | 2008-11-24 22:16:07 +0000 | [diff] [blame] | 1155 | |
| 1156 | --rbdir=dir Use alternative rockbox directory (default: ${rbdir}). |
| 1157 | This is useful for having multiple alternate builds on |
| 1158 | your device that you can load with ROLO. However as the |
| 1159 | bootloader looks for .rockbox you won't be able to boot |
| 1160 | into this build. |
| 1161 | |
Daniel Stenberg | cdae493 | 2008-04-02 21:28:15 +0000 | [diff] [blame] | 1162 | --ccache Enable ccache use (done by default these days) |
| 1163 | --no-ccache Disable ccache use |
Thomas Martitz | 45fc5ba | 2009-11-19 22:47:14 +0000 | [diff] [blame] | 1164 | |
Rafaël Carré | 5928862 | 2010-06-11 11:19:00 +0000 | [diff] [blame] | 1165 | --thumb Build with -mthumb (for ARM builds) |
Rafaël Carré | 2da430b | 2010-06-11 11:50:19 +0000 | [diff] [blame] | 1166 | --no-thumb The opposite of --thumb (don't use thumb even for targets |
| 1167 | where this is the default |
Thomas Martitz | 6d85de3 | 2011-02-18 22:46:01 +0000 | [diff] [blame] | 1168 | --sdl-threads Force use of SDL threads. They have inferior performance, |
| 1169 | but are better debuggable with GDB |
| 1170 | --no-sdl-threads Disallow use of SDL threads. This prevents the default |
| 1171 | behavior of falling back to them if no native thread |
| 1172 | support was found. |
Thomas Martitz | 1c3ae92 | 2010-07-06 15:06:06 +0000 | [diff] [blame] | 1173 | --prefix Target installation directory |
Daniel Stenberg | cdae493 | 2008-04-02 21:28:15 +0000 | [diff] [blame] | 1174 | --help Shows this message (must not be used with other options) |
| 1175 | |
| 1176 | EOF |
| 1177 | |
Robert Hak | c3320ae | 2002-10-17 09:08:05 +0000 | [diff] [blame] | 1178 | exit |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 1179 | } |
| 1180 | |
| 1181 | ARG_CCACHE= |
| 1182 | ARG_ENCOPTS= |
| 1183 | ARG_LANG= |
| 1184 | ARG_RAM= |
| 1185 | ARG_RBDIR= |
| 1186 | ARG_TARGET= |
| 1187 | ARG_TTS= |
| 1188 | ARG_TTSOPTS= |
| 1189 | ARG_TYPE= |
| 1190 | ARG_VOICE= |
Rafaël Carré | 2da430b | 2010-06-11 11:50:19 +0000 | [diff] [blame] | 1191 | ARG_ARM_THUMB= |
Thomas Martitz | 9321ce3 | 2010-11-14 15:29:11 +0000 | [diff] [blame] | 1192 | ARG_PREFIX="$PREFIX" |
Thomas Martitz | 6d85de3 | 2011-02-18 22:46:01 +0000 | [diff] [blame] | 1193 | ARG_THREAD_SUPPORT= |
Jens Arnold | 8b48052 | 2012-01-08 17:38:40 +0000 | [diff] [blame] | 1194 | err= |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 1195 | for arg in "$@"; do |
| 1196 | case "$arg" in |
| 1197 | --ccache) ARG_CCACHE=1;; |
Thomas Martitz | 45fc5ba | 2009-11-19 22:47:14 +0000 | [diff] [blame] | 1198 | --no-ccache) ARG_CCACHE=0;; |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 1199 | --encopts=*) ARG_ENCOPTS=`echo "$arg" | cut -d = -f 2`;; |
| 1200 | --language=*) ARG_LANG=`echo "$arg" | cut -d = -f 2`;; |
Björn Stenberg | a8ed339 | 2010-09-24 12:03:15 +0000 | [diff] [blame] | 1201 | --lcdwidth=*) ARG_LCDWIDTH=`echo "$arg" | cut -d = -f 2`;; |
| 1202 | --lcdheight=*) ARG_LCDHEIGHT=`echo "$arg" | cut -d = -f 2`;; |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 1203 | --ram=*) ARG_RAM=`echo "$arg" | cut -d = -f 2`;; |
| 1204 | --rbdir=*) ARG_RBDIR=`echo "$arg" | cut -d = -f 2`;; |
| 1205 | --target=*) ARG_TARGET=`echo "$arg" | cut -d = -f 2`;; |
| 1206 | --tts=*) ARG_TTS=`echo "$arg" | cut -d = -f 2`;; |
| 1207 | --ttsopts=*) ARG_TTSOPTS=`echo "$arg" | cut -d = -f 2`;; |
| 1208 | --type=*) ARG_TYPE=`echo "$arg" | cut -d = -f 2`;; |
| 1209 | --voice=*) ARG_VOICE=`echo "$arg" | cut -d = -f 2`;; |
Rafaël Carré | 5928862 | 2010-06-11 11:19:00 +0000 | [diff] [blame] | 1210 | --thumb) ARG_ARM_THUMB=1;; |
Rafaël Carré | 2da430b | 2010-06-11 11:50:19 +0000 | [diff] [blame] | 1211 | --no-thumb) ARG_ARM_THUMB=0;; |
Thomas Martitz | 6d85de3 | 2011-02-18 22:46:01 +0000 | [diff] [blame] | 1212 | --sdl-threads)ARG_THREAD_SUPPORT=1;; |
| 1213 | --no-sdl-threads) |
| 1214 | ARG_THREAD_SUPPORT=0;; |
Thomas Martitz | 9321ce3 | 2010-11-14 15:29:11 +0000 | [diff] [blame] | 1215 | --prefix=*) ARG_PREFIX=`echo "$arg" | cut -d = -f 2`;; |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 1216 | --help) help;; |
| 1217 | *) err=1; echo "[ERROR] Option '$arg' unsupported";; |
| 1218 | esac |
| 1219 | done |
| 1220 | [ "$err" ] && exit 1 |
| 1221 | |
| 1222 | advopts= |
| 1223 | |
| 1224 | if [ "$TMPDIR" != "" ]; then |
| 1225 | tmpdir=$TMPDIR |
| 1226 | else |
| 1227 | tmpdir=/tmp |
Robert Hak | c3320ae | 2002-10-17 09:08:05 +0000 | [diff] [blame] | 1228 | fi |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 1229 | echo Using temporary directory $tmpdir |
Robert Hak | c3320ae | 2002-10-17 09:08:05 +0000 | [diff] [blame] | 1230 | |
| 1231 | if test -r "configure"; then |
| 1232 | # this is a check for a configure script in the current directory, it there |
| 1233 | # is one, try to figure out if it is this one! |
| 1234 | |
| 1235 | if { grep "^# Jukebox" configure >/dev/null 2>&1 ; } then |
| 1236 | echo "WEEEEEEEEP. Don't run this configure script within the tools directory." |
| 1237 | echo "It will only cause you pain and grief. Instead do this:" |
| 1238 | echo "" |
| 1239 | echo " cd .." |
| 1240 | echo " mkdir build-dir" |
| 1241 | echo " cd build-dir" |
| 1242 | echo " ../tools/configure" |
| 1243 | echo "" |
| 1244 | echo "Much happiness will arise from this. Enjoy" |
Jonas Häggqvist | ea5457c | 2008-12-11 17:24:04 +0000 | [diff] [blame] | 1245 | exit 5 |
Robert Hak | c3320ae | 2002-10-17 09:08:05 +0000 | [diff] [blame] | 1246 | fi |
| 1247 | fi |
| 1248 | |
Daniel Stenberg | 58f4d0d | 2002-05-31 07:22:38 +0000 | [diff] [blame] | 1249 | # get our current directory |
| 1250 | pwd=`pwd`; |
Daniel Stenberg | 3aacd2e | 2002-05-23 09:11:35 +0000 | [diff] [blame] | 1251 | |
Daniel Stenberg | ef1109a | 2007-04-20 11:02:16 +0000 | [diff] [blame] | 1252 | if { echo $pwd | grep " "; } then |
| 1253 | echo "You're running this script in a path that contains space. The build" |
| 1254 | echo "system is unfortunately not clever enough to deal with this. Please" |
| 1255 | echo "run the script from a different path, rename the path or fix the build" |
| 1256 | echo "system!" |
Jonas Häggqvist | ea5457c | 2008-12-11 17:24:04 +0000 | [diff] [blame] | 1257 | exit 6 |
Daniel Stenberg | ef1109a | 2007-04-20 11:02:16 +0000 | [diff] [blame] | 1258 | fi |
| 1259 | |
Daniel Stenberg | 5c9c16f | 2004-05-26 11:07:16 +0000 | [diff] [blame] | 1260 | if [ -z "$rootdir" ]; then |
| 1261 | ################################################################## |
| 1262 | # Figure out where the source code root is! |
| 1263 | # |
Jonas Häggqvist | 5970ffc | 2006-11-18 22:43:55 +0000 | [diff] [blame] | 1264 | rootdir=`dirname $0`/../ |
Daniel Stenberg | 5c9c16f | 2004-05-26 11:07:16 +0000 | [diff] [blame] | 1265 | |
| 1266 | ##################################################################### |
| 1267 | # Convert the possibly relative directory name to an absolute version |
| 1268 | # |
| 1269 | now=`pwd` |
| 1270 | cd $rootdir |
| 1271 | rootdir=`pwd` |
| 1272 | |
| 1273 | # cd back to the build dir |
| 1274 | cd $now |
Daniel Stenberg | 31e0cd6 | 2003-04-22 22:18:57 +0000 | [diff] [blame] | 1275 | fi |
| 1276 | |
Daniel Stenberg | 57a09cd | 2005-05-07 23:16:08 +0000 | [diff] [blame] | 1277 | apps="apps" |
Rafaël Carré | f56bb4e | 2011-08-13 20:29:15 +0000 | [diff] [blame] | 1278 | appsdir='$(ROOTDIR)/apps' |
| 1279 | toolsdir='$(ROOTDIR)/tools' |
Christi Scarborough | d68d7c0 | 2006-02-06 07:25:25 +0000 | [diff] [blame] | 1280 | |
Daniel Stenberg | 9aac529 | 2005-01-29 00:00:47 +0000 | [diff] [blame] | 1281 | |
Daniel Stenberg | fc1e925 | 2004-09-22 08:58:50 +0000 | [diff] [blame] | 1282 | ################################################################## |
| 1283 | # Figure out target platform |
| 1284 | # |
| 1285 | |
Thomas Martitz | 5e1b9cd | 2009-08-09 19:02:22 +0000 | [diff] [blame] | 1286 | if [ "$ARG_TARGET" ]; then |
| 1287 | buildfor=$ARG_TARGET |
Daniel Stenberg | cdae493 | 2008-04-02 21:28:15 +0000 | [diff] [blame] | 1288 | else |
Daniel Stenberg | 4135046 | 2005-05-24 09:19:44 +0000 | [diff] [blame] | 1289 | echo "Enter target platform:" |
Daniel Stenberg | c704db6 | 2006-08-30 21:53:26 +0000 | [diff] [blame] | 1290 | cat <<EOF |
Jonathan Gordon | 9a9722f | 2008-09-23 11:32:00 +0000 | [diff] [blame] | 1291 | ==Archos== ==iriver== ==Apple iPod== |
| 1292 | 0) Player/Studio 10) H120/H140 20) Color/Photo |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1293 | 1) Recorder 11) H320/H340 21) Nano 1G |
Jonathan Gordon | 9a9722f | 2008-09-23 11:32:00 +0000 | [diff] [blame] | 1294 | 2) FM Recorder 12) iHP-100/110/115 22) Video |
| 1295 | 3) Recorder v2 13) iFP-790 23) 3G |
| 1296 | 4) Ondio SP 14) H10 20Gb 24) 4G Grayscale |
| 1297 | 5) Ondio FM 15) H10 5/6Gb 25) Mini 1G |
| 1298 | 6) AV300 26) Mini 2G |
Daniel Stenberg | 89b95f0 | 2008-11-05 23:12:14 +0000 | [diff] [blame] | 1299 | ==Toshiba== 27) 1G, 2G |
Björn Stenberg | 0e74fce | 2009-12-07 15:07:51 +0000 | [diff] [blame] | 1300 | ==Cowon/iAudio== 40) Gigabeat F/X 28) Nano 2G |
Michael Sparmann | 1528479 | 2011-01-02 23:16:27 +0000 | [diff] [blame] | 1301 | 30) X5/X5V/X5L 41) Gigabeat S 29) Classic/6G |
| 1302 | 31) M5/M5L |
| 1303 | 32) 7 ==Olympus= ==SanDisk== |
| 1304 | 33) D2 70) M:Robe 500 50) Sansa e200 |
| 1305 | 34) M3/M3L 71) M:Robe 100 51) Sansa e200R |
| 1306 | 52) Sansa c200 |
| 1307 | ==Creative== ==Philips== 53) Sansa m200 |
| 1308 | 90) Zen Vision:M 30GB 100) GoGear SA9200 54) Sansa c100 |
| 1309 | 91) Zen Vision:M 60GB 101) GoGear HDD1630/ 55) Sansa Clip |
| 1310 | 92) Zen Vision HDD1830 56) Sansa e200v2 |
Amaury Pouly | 12c64a4 | 2012-05-19 16:09:46 +0200 | [diff] [blame] | 1311 | 93) Zen X-Fi2 102) GoGear HDD6330 57) Sansa m200v4 |
| 1312 | 94) Zen X-Fi3 58) Sansa Fuze |
Amaury Pouly | 5cfb148 | 2013-10-22 00:42:36 +0200 | [diff] [blame] | 1313 | 96) Zen X-Fi ==Meizu== 59) Sansa c200v2 |
| 1314 | 97) Zen X-Mozaic 110) M6SL 60) Sansa Clipv2 |
| 1315 | 98) Zen 111) M6SP 61) Sansa View |
| 1316 | 112) M3 62) Sansa Clip+ |
| 1317 | ==Onda== 63) Sansa Fuze v2 |
| 1318 | 120) VX747 ==Tatung== 64) Sansa Fuze+ |
| 1319 | 121) VX767 150) Elio TPJ-1022 65) Sansa Clip Zip |
| 1320 | 122) VX747+ 66) Sansa Connect |
| 1321 | 123) VX777 ==Packard Bell== |
| 1322 | 160) Vibe 500 ==Logik== |
| 1323 | ==Samsung== 80) DAX 1GB MP3/DAB |
| 1324 | 140) YH-820 ==MPIO== |
| 1325 | 141) YH-920 170) HD200 ==Lyre project== |
| 1326 | 142) YH-925 171) HD300 130) Lyre proto 1 |
| 1327 | 143) YP-S3 131) Mini2440 |
| 1328 | ==ROCKCHIP== |
| 1329 | ==Application== 180) rk27xx generic ==HiFiMAN== |
| 1330 | 200) SDL 190) HM-60x |
| 1331 | 201) Android ==HiFi E.T.== 191) HM-801 |
| 1332 | 202) Nokia N8xx 210) MA9 |
Andrew Ryabinin | d602717 | 2013-10-27 22:34:24 +0400 | [diff] [blame] | 1333 | 203) Nokia N900 211) MA9C ==Sony== |
Amaury Pouly | 776d51c | 2013-11-13 21:31:18 +0000 | [diff] [blame^] | 1334 | 204) Pandora 212) MA8 220) NWZ-E370/E380 series |
Andrew Ryabinin | 3a97e12 | 2013-06-02 23:03:26 +0400 | [diff] [blame] | 1335 | 205) Samsung YP-R0 213) MA8C 221) NWZ-E360 series |
Amaury Pouly | 5cfb148 | 2013-10-22 00:42:36 +0200 | [diff] [blame] | 1336 | 206) Android MIPS |
| 1337 | 207) Android x86 |
Daniel Stenberg | c704db6 | 2006-08-30 21:53:26 +0000 | [diff] [blame] | 1338 | EOF |
Daniel Stenberg | fc1e925 | 2004-09-22 08:58:50 +0000 | [diff] [blame] | 1339 | |
Daniel Stenberg | 69c9d62 | 2006-08-28 08:46:16 +0000 | [diff] [blame] | 1340 | buildfor=`input`; |
Daniel Stenberg | fc1e925 | 2004-09-22 08:58:50 +0000 | [diff] [blame] | 1341 | |
Daniel Stenberg | cdae493 | 2008-04-02 21:28:15 +0000 | [diff] [blame] | 1342 | fi |
Daniel Stenberg | d7b5c5a | 2005-12-02 08:56:20 +0000 | [diff] [blame] | 1343 | # Set of tools built for all target platforms: |
Jens Arnold | 738c37c | 2007-04-01 13:09:22 +0000 | [diff] [blame] | 1344 | toolset="rdf2binary convbdf codepages" |
Daniel Stenberg | d7b5c5a | 2005-12-02 08:56:20 +0000 | [diff] [blame] | 1345 | |
| 1346 | # Toolsets for some target families: |
Jens Arnold | 738c37c | 2007-04-01 13:09:22 +0000 | [diff] [blame] | 1347 | archosbitmaptools="$toolset scramble descramble sh2d uclpack bmp2rb" |
| 1348 | iriverbitmaptools="$toolset scramble descramble mkboot bmp2rb" |
| 1349 | iaudiobitmaptools="$toolset scramble descramble mkboot bmp2rb" |
Dave Chapman | f5318d5 | 2008-01-12 18:11:46 +0000 | [diff] [blame] | 1350 | ipodbitmaptools="$toolset scramble bmp2rb" |
Jens Arnold | 738c37c | 2007-04-01 13:09:22 +0000 | [diff] [blame] | 1351 | gigabeatbitmaptools="$toolset scramble descramble bmp2rb" |
Dave Chapman | 48430bf | 2009-10-28 21:11:43 +0000 | [diff] [blame] | 1352 | tccbitmaptools="$toolset scramble bmp2rb" |
Dave Chapman | 6bbe66a | 2008-10-12 19:34:47 +0000 | [diff] [blame] | 1353 | # generic is used by IFP, Meizu and Onda |
Jens Arnold | 738c37c | 2007-04-01 13:09:22 +0000 | [diff] [blame] | 1354 | genericbitmaptools="$toolset bmp2rb" |
Dave Chapman | 6bbe66a | 2008-10-12 19:34:47 +0000 | [diff] [blame] | 1355 | # scramble is used by all other targets |
| 1356 | scramblebitmaptools="$genericbitmaptools scramble" |
Daniel Stenberg | d7b5c5a | 2005-12-02 08:56:20 +0000 | [diff] [blame] | 1357 | |
Daniel Stenberg | fc1e925 | 2004-09-22 08:58:50 +0000 | [diff] [blame] | 1358 | |
Daniel Stenberg | 69c9d62 | 2006-08-28 08:46:16 +0000 | [diff] [blame] | 1359 | # ---- For each target ---- |
| 1360 | # |
| 1361 | # *Variables* |
Daniel Stenberg | 9759c03 | 2008-01-23 10:59:17 +0000 | [diff] [blame] | 1362 | # target_id: a unique number identifying this target, IS NOT the menu number. |
| 1363 | # Just use the currently highest number+1 when you add a new |
| 1364 | # target. |
| 1365 | # modelname: short model name used all over to identify this target |
Daniel Stenberg | cca0e3d | 2007-05-19 14:35:11 +0000 | [diff] [blame] | 1366 | # memory: number of megabytes of RAM this target has. If the amount can |
| 1367 | # be selected by the size prompt, let memory be unset here |
Daniel Stenberg | 69c9d62 | 2006-08-28 08:46:16 +0000 | [diff] [blame] | 1368 | # target: -Ddefine passed to the build commands to make the correct |
| 1369 | # config-*.h file get included etc |
| 1370 | # tool: the tool that takes a plain binary and converts that into a |
| 1371 | # working "firmware" file for your target |
| 1372 | # output: the final output file name |
Dave Chapman | 6af8603 | 2006-08-31 12:31:16 +0000 | [diff] [blame] | 1373 | # boottool: the tool that takes a plain binary and generates a bootloader |
| 1374 | # file for your target (or blank to use $tool) |
Greg White | 355be50 | 2007-01-13 02:24:15 +0000 | [diff] [blame] | 1375 | # bootoutput:the final output file name for the bootloader (or blank to use |
Dave Chapman | 6af8603 | 2006-08-31 12:31:16 +0000 | [diff] [blame] | 1376 | # $output) |
Daniel Stenberg | 69c9d62 | 2006-08-28 08:46:16 +0000 | [diff] [blame] | 1377 | # appextra: passed to the APPEXTRA variable in the Makefiles. |
| 1378 | # TODO: add proper explanation |
| 1379 | # archosrom: used only for Archos targets that build a special flashable .ucl |
Daniel Stenberg | 9759c03 | 2008-01-23 10:59:17 +0000 | [diff] [blame] | 1380 | # image. |
| 1381 | # flash: name of output for flashing, for targets where there's a special |
| 1382 | # file output for this. |
Daniel Stenberg | 69c9d62 | 2006-08-28 08:46:16 +0000 | [diff] [blame] | 1383 | # plugins: set to 'yes' to build the plugins. Early development builds can |
| 1384 | # set this to no in the early stages to have an easier life for a |
| 1385 | # while |
Daniel Stenberg | 8219912 | 2007-07-16 22:25:41 +0000 | [diff] [blame] | 1386 | # swcodec: set 'yes' on swcodec targets |
Daniel Stenberg | 69c9d62 | 2006-08-28 08:46:16 +0000 | [diff] [blame] | 1387 | # toolset: lists what particular tools in the tools/ directory that this |
| 1388 | # target needs to have built prior to building Rockbox |
| 1389 | # |
| 1390 | # *Functions* |
| 1391 | # *cc: sets up gcc and compiler options for your target builds. Note |
| 1392 | # that if you select a simulator build, the compiler selection is |
| 1393 | # overridden later in the script. |
| 1394 | |
| 1395 | case $buildfor in |
| 1396 | |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1397 | 0|archosplayer) |
Daniel Stenberg | 69c9d62 | 2006-08-28 08:46:16 +0000 | [diff] [blame] | 1398 | target_id=1 |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1399 | modelname="archosplayer" |
Rafaël Carré | 08fd8ad | 2011-12-15 17:50:33 +0000 | [diff] [blame] | 1400 | target="ARCHOS_PLAYER" |
Daniel Stenberg | fc1e925 | 2004-09-22 08:58:50 +0000 | [diff] [blame] | 1401 | shcc |
Daniel Stenberg | a97fe25 | 2004-10-07 08:08:05 +0000 | [diff] [blame] | 1402 | tool="$rootdir/tools/scramble" |
Daniel Stenberg | fc1e925 | 2004-09-22 08:58:50 +0000 | [diff] [blame] | 1403 | output="archos.mod" |
Linus Nielsen Feltzing | 7da9477 | 2005-10-28 00:00:00 +0000 | [diff] [blame] | 1404 | appextra="player:gui" |
Jens Arnold | 4820177 | 2004-11-20 00:55:25 +0000 | [diff] [blame] | 1405 | archosrom="$pwd/rombox.ucl" |
| 1406 | flash="$pwd/rockbox.ucl" |
Daniel Stenberg | 8e55d0c | 2004-09-22 21:40:45 +0000 | [diff] [blame] | 1407 | plugins="yes" |
Daniel Stenberg | 8219912 | 2007-07-16 22:25:41 +0000 | [diff] [blame] | 1408 | swcodec="" |
Daniel Stenberg | d7b5c5a | 2005-12-02 08:56:20 +0000 | [diff] [blame] | 1409 | |
| 1410 | # toolset is the tools within the tools directory that we build for |
| 1411 | # this particular target. |
Jens Arnold | 5a69689 | 2007-04-04 00:16:11 +0000 | [diff] [blame] | 1412 | toolset="$toolset scramble descramble sh2d player_unifont uclpack" |
Daniel Stenberg | 59eb22d | 2005-12-04 23:25:24 +0000 | [diff] [blame] | 1413 | |
| 1414 | # Note: the convbdf is present in the toolset just because: 1) the |
| 1415 | # firmware/Makefile assumes it is present always, and 2) we will need it when we |
| 1416 | # build the player simulator |
| 1417 | |
Jens Arnold | 0e6dd7e | 2006-11-27 02:16:32 +0000 | [diff] [blame] | 1418 | t_cpu="sh" |
| 1419 | t_manufacturer="archos" |
| 1420 | t_model="player" |
Daniel Stenberg | fc1e925 | 2004-09-22 08:58:50 +0000 | [diff] [blame] | 1421 | ;; |
| 1422 | |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1423 | 1|archosrecorder) |
Daniel Stenberg | 69c9d62 | 2006-08-28 08:46:16 +0000 | [diff] [blame] | 1424 | target_id=2 |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1425 | modelname="archosrecorder" |
Rafaël Carré | 08fd8ad | 2011-12-15 17:50:33 +0000 | [diff] [blame] | 1426 | target="ARCHOS_RECORDER" |
Daniel Stenberg | 0482ff5 | 2005-06-15 11:27:37 +0000 | [diff] [blame] | 1427 | shcc |
| 1428 | tool="$rootdir/tools/scramble" |
Dave Chapman | 1e7043a2 | 2006-01-22 21:30:32 +0000 | [diff] [blame] | 1429 | bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" |
| 1430 | bmp2rb_native="$rootdir/tools/bmp2rb -f 0" |
Daniel Stenberg | 0482ff5 | 2005-06-15 11:27:37 +0000 | [diff] [blame] | 1431 | output="ajbrec.ajz" |
Jonathan Gordon | b6867dc | 2010-05-17 15:03:59 +0000 | [diff] [blame] | 1432 | appextra="recorder:gui:radio" |
Daniel Stenberg | 9759c03 | 2008-01-23 10:59:17 +0000 | [diff] [blame] | 1433 | #archosrom="$pwd/rombox.ucl" |
Daniel Stenberg | 0482ff5 | 2005-06-15 11:27:37 +0000 | [diff] [blame] | 1434 | flash="$pwd/rockbox.ucl" |
| 1435 | plugins="yes" |
Daniel Stenberg | 8219912 | 2007-07-16 22:25:41 +0000 | [diff] [blame] | 1436 | swcodec="" |
Daniel Stenberg | d7b5c5a | 2005-12-02 08:56:20 +0000 | [diff] [blame] | 1437 | # toolset is the tools within the tools directory that we build for |
| 1438 | # this particular target. |
| 1439 | toolset=$archosbitmaptools |
Jens Arnold | 0e6dd7e | 2006-11-27 02:16:32 +0000 | [diff] [blame] | 1440 | t_cpu="sh" |
| 1441 | t_manufacturer="archos" |
| 1442 | t_model="recorder" |
Daniel Stenberg | 0482ff5 | 2005-06-15 11:27:37 +0000 | [diff] [blame] | 1443 | ;; |
| 1444 | |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1445 | 2|archosfmrecorder) |
Daniel Stenberg | 69c9d62 | 2006-08-28 08:46:16 +0000 | [diff] [blame] | 1446 | target_id=3 |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1447 | modelname="archosfmrecorder" |
Rafaël Carré | 08fd8ad | 2011-12-15 17:50:33 +0000 | [diff] [blame] | 1448 | target="ARCHOS_FMRECORDER" |
Daniel Stenberg | fc1e925 | 2004-09-22 08:58:50 +0000 | [diff] [blame] | 1449 | shcc |
Daniel Stenberg | a97fe25 | 2004-10-07 08:08:05 +0000 | [diff] [blame] | 1450 | tool="$rootdir/tools/scramble -fm" |
Dave Chapman | 1e7043a2 | 2006-01-22 21:30:32 +0000 | [diff] [blame] | 1451 | bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" |
| 1452 | bmp2rb_native="$rootdir/tools/bmp2rb -f 0" |
Daniel Stenberg | fc1e925 | 2004-09-22 08:58:50 +0000 | [diff] [blame] | 1453 | output="ajbrec.ajz" |
Jonathan Gordon | b6867dc | 2010-05-17 15:03:59 +0000 | [diff] [blame] | 1454 | appextra="recorder:gui:radio" |
Daniel Stenberg | 9759c03 | 2008-01-23 10:59:17 +0000 | [diff] [blame] | 1455 | #archosrom="$pwd/rombox.ucl" |
Daniel Stenberg | 59bec2e | 2004-10-07 08:20:25 +0000 | [diff] [blame] | 1456 | flash="$pwd/rockbox.ucl" |
Daniel Stenberg | 8e55d0c | 2004-09-22 21:40:45 +0000 | [diff] [blame] | 1457 | plugins="yes" |
Daniel Stenberg | 8219912 | 2007-07-16 22:25:41 +0000 | [diff] [blame] | 1458 | swcodec="" |
Daniel Stenberg | d7b5c5a | 2005-12-02 08:56:20 +0000 | [diff] [blame] | 1459 | # toolset is the tools within the tools directory that we build for |
| 1460 | # this particular target. |
| 1461 | toolset=$archosbitmaptools |
Jens Arnold | 0e6dd7e | 2006-11-27 02:16:32 +0000 | [diff] [blame] | 1462 | t_cpu="sh" |
| 1463 | t_manufacturer="archos" |
| 1464 | t_model="fm_v2" |
Daniel Stenberg | fc1e925 | 2004-09-22 08:58:50 +0000 | [diff] [blame] | 1465 | ;; |
| 1466 | |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1467 | 3|archosrecorderv2) |
Daniel Stenberg | 69c9d62 | 2006-08-28 08:46:16 +0000 | [diff] [blame] | 1468 | target_id=4 |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1469 | modelname="archosrecorderv2" |
Rafaël Carré | 08fd8ad | 2011-12-15 17:50:33 +0000 | [diff] [blame] | 1470 | target="ARCHOS_RECORDERV2" |
Daniel Stenberg | fc1e925 | 2004-09-22 08:58:50 +0000 | [diff] [blame] | 1471 | shcc |
Daniel Stenberg | a97fe25 | 2004-10-07 08:08:05 +0000 | [diff] [blame] | 1472 | tool="$rootdir/tools/scramble -v2" |
Dave Chapman | 1e7043a2 | 2006-01-22 21:30:32 +0000 | [diff] [blame] | 1473 | bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" |
| 1474 | bmp2rb_native="$rootdir/tools/bmp2rb -f 0" |
Daniel Stenberg | fc1e925 | 2004-09-22 08:58:50 +0000 | [diff] [blame] | 1475 | output="ajbrec.ajz" |
Jonathan Gordon | b6867dc | 2010-05-17 15:03:59 +0000 | [diff] [blame] | 1476 | appextra="recorder:gui:radio" |
Daniel Stenberg | 9759c03 | 2008-01-23 10:59:17 +0000 | [diff] [blame] | 1477 | #archosrom="$pwd/rombox.ucl" |
Daniel Stenberg | 59bec2e | 2004-10-07 08:20:25 +0000 | [diff] [blame] | 1478 | flash="$pwd/rockbox.ucl" |
Daniel Stenberg | 8e55d0c | 2004-09-22 21:40:45 +0000 | [diff] [blame] | 1479 | plugins="yes" |
Daniel Stenberg | 8219912 | 2007-07-16 22:25:41 +0000 | [diff] [blame] | 1480 | swcodec="" |
Daniel Stenberg | d7b5c5a | 2005-12-02 08:56:20 +0000 | [diff] [blame] | 1481 | # toolset is the tools within the tools directory that we build for |
| 1482 | # this particular target. |
| 1483 | toolset=$archosbitmaptools |
Jens Arnold | 0e6dd7e | 2006-11-27 02:16:32 +0000 | [diff] [blame] | 1484 | t_cpu="sh" |
| 1485 | t_manufacturer="archos" |
| 1486 | t_model="fm_v2" |
Daniel Stenberg | fc1e925 | 2004-09-22 08:58:50 +0000 | [diff] [blame] | 1487 | ;; |
| 1488 | |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1489 | 4|archosondiosp) |
Daniel Stenberg | 69c9d62 | 2006-08-28 08:46:16 +0000 | [diff] [blame] | 1490 | target_id=7 |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1491 | modelname="archosondiosp" |
Rafaël Carré | 08fd8ad | 2011-12-15 17:50:33 +0000 | [diff] [blame] | 1492 | target="ARCHOS_ONDIOSP" |
Daniel Stenberg | fc1e925 | 2004-09-22 08:58:50 +0000 | [diff] [blame] | 1493 | shcc |
Daniel Stenberg | a97fe25 | 2004-10-07 08:08:05 +0000 | [diff] [blame] | 1494 | tool="$rootdir/tools/scramble -osp" |
Dave Chapman | 1e7043a2 | 2006-01-22 21:30:32 +0000 | [diff] [blame] | 1495 | bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" |
| 1496 | bmp2rb_native="$rootdir/tools/bmp2rb -f 0" |
Daniel Stenberg | fc1e925 | 2004-09-22 08:58:50 +0000 | [diff] [blame] | 1497 | output="ajbrec.ajz" |
Jonathan Gordon | b6867dc | 2010-05-17 15:03:59 +0000 | [diff] [blame] | 1498 | appextra="recorder:gui:radio" |
Frank Gevaerts | 4ddaee7 | 2010-02-21 21:48:47 +0000 | [diff] [blame] | 1499 | #archosrom="$pwd/rombox.ucl" |
Daniel Stenberg | 59bec2e | 2004-10-07 08:20:25 +0000 | [diff] [blame] | 1500 | flash="$pwd/rockbox.ucl" |
Jörg Hohensohn | 8642585 | 2004-10-07 06:51:22 +0000 | [diff] [blame] | 1501 | plugins="yes" |
Daniel Stenberg | 8219912 | 2007-07-16 22:25:41 +0000 | [diff] [blame] | 1502 | swcodec="" |
Daniel Stenberg | d7b5c5a | 2005-12-02 08:56:20 +0000 | [diff] [blame] | 1503 | # toolset is the tools within the tools directory that we build for |
| 1504 | # this particular target. |
| 1505 | toolset=$archosbitmaptools |
Jens Arnold | 0e6dd7e | 2006-11-27 02:16:32 +0000 | [diff] [blame] | 1506 | t_cpu="sh" |
| 1507 | t_manufacturer="archos" |
| 1508 | t_model="ondio" |
Daniel Stenberg | fc1e925 | 2004-09-22 08:58:50 +0000 | [diff] [blame] | 1509 | ;; |
| 1510 | |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1511 | 5|archosondiofm) |
Daniel Stenberg | 69c9d62 | 2006-08-28 08:46:16 +0000 | [diff] [blame] | 1512 | target_id=8 |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1513 | modelname="archosondiofm" |
Rafaël Carré | 08fd8ad | 2011-12-15 17:50:33 +0000 | [diff] [blame] | 1514 | target="ARCHOS_ONDIOFM" |
Daniel Stenberg | fc1e925 | 2004-09-22 08:58:50 +0000 | [diff] [blame] | 1515 | shcc |
Daniel Stenberg | a97fe25 | 2004-10-07 08:08:05 +0000 | [diff] [blame] | 1516 | tool="$rootdir/tools/scramble -ofm" |
Dave Chapman | 1e7043a2 | 2006-01-22 21:30:32 +0000 | [diff] [blame] | 1517 | bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" |
| 1518 | bmp2rb_native="$rootdir/tools/bmp2rb -f 0" |
Daniel Stenberg | fc1e925 | 2004-09-22 08:58:50 +0000 | [diff] [blame] | 1519 | output="ajbrec.ajz" |
Jonathan Gordon | b6867dc | 2010-05-17 15:03:59 +0000 | [diff] [blame] | 1520 | appextra="recorder:gui:radio" |
Daniel Stenberg | 9759c03 | 2008-01-23 10:59:17 +0000 | [diff] [blame] | 1521 | #archosrom="$pwd/rombox.ucl" |
Daniel Stenberg | 59bec2e | 2004-10-07 08:20:25 +0000 | [diff] [blame] | 1522 | flash="$pwd/rockbox.ucl" |
Jörg Hohensohn | 8642585 | 2004-10-07 06:51:22 +0000 | [diff] [blame] | 1523 | plugins="yes" |
Daniel Stenberg | 8219912 | 2007-07-16 22:25:41 +0000 | [diff] [blame] | 1524 | swcodec="" |
Daniel Stenberg | d7b5c5a | 2005-12-02 08:56:20 +0000 | [diff] [blame] | 1525 | toolset=$archosbitmaptools |
Jens Arnold | 0e6dd7e | 2006-11-27 02:16:32 +0000 | [diff] [blame] | 1526 | t_cpu="sh" |
| 1527 | t_manufacturer="archos" |
| 1528 | t_model="ondio" |
Daniel Stenberg | fc1e925 | 2004-09-22 08:58:50 +0000 | [diff] [blame] | 1529 | ;; |
| 1530 | |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1531 | 6|archosav300) |
Jens Arnold | cdec67c | 2008-03-10 00:27:00 +0000 | [diff] [blame] | 1532 | target_id=38 |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1533 | modelname="archosav300" |
Rafaël Carré | 08fd8ad | 2011-12-15 17:50:33 +0000 | [diff] [blame] | 1534 | target="ARCHOS_AV300" |
Dave Chapman | d64e626 | 2007-01-14 13:48:09 +0000 | [diff] [blame] | 1535 | memory=16 # always |
| 1536 | arm7tdmicc |
| 1537 | tool="$rootdir/tools/scramble -mm=C" |
| 1538 | bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" |
| 1539 | bmp2rb_native="$rootdir/tools/bmp2rb -f 6" |
| 1540 | output="cjbm.ajz" |
Jonathan Gordon | b6867dc | 2010-05-17 15:03:59 +0000 | [diff] [blame] | 1541 | appextra="recorder:gui:radio" |
Dave Chapman | d64e626 | 2007-01-14 13:48:09 +0000 | [diff] [blame] | 1542 | plugins="yes" |
Daniel Stenberg | 8219912 | 2007-07-16 22:25:41 +0000 | [diff] [blame] | 1543 | swcodec="" |
Dave Chapman | d64e626 | 2007-01-14 13:48:09 +0000 | [diff] [blame] | 1544 | # toolset is the tools within the tools directory that we build for |
| 1545 | # this particular target. |
Nils Wallménius | 2ee454a | 2007-09-07 15:34:54 +0000 | [diff] [blame] | 1546 | toolset="$toolset scramble descramble bmp2rb" |
Dave Chapman | d64e626 | 2007-01-14 13:48:09 +0000 | [diff] [blame] | 1547 | # architecture, manufacturer and model for the target-tree build |
| 1548 | t_cpu="arm" |
| 1549 | t_manufacturer="archos" |
| 1550 | t_model="av300" |
| 1551 | ;; |
| 1552 | |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1553 | 10|iriverh120) |
Daniel Stenberg | 69c9d62 | 2006-08-28 08:46:16 +0000 | [diff] [blame] | 1554 | target_id=9 |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1555 | modelname="iriverh120" |
Rafaël Carré | 08fd8ad | 2011-12-15 17:50:33 +0000 | [diff] [blame] | 1556 | target="IRIVER_H120" |
Daniel Stenberg | fc1e925 | 2004-09-22 08:58:50 +0000 | [diff] [blame] | 1557 | memory=32 # always |
| 1558 | coldfirecc |
Linus Nielsen Feltzing | 35c27b8 | 2005-01-28 12:27:39 +0000 | [diff] [blame] | 1559 | tool="$rootdir/tools/scramble -add=h120" |
Dave Chapman | 1e7043a2 | 2006-01-22 21:30:32 +0000 | [diff] [blame] | 1560 | bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" |
| 1561 | bmp2rb_native="$rootdir/tools/bmp2rb -f 2" |
| 1562 | bmp2rb_remotemono="$rootdir/tools/bmp2rb -f 0" |
| 1563 | bmp2rb_remotenative="$rootdir/tools/bmp2rb -f 0" |
Daniel Stenberg | fc1e925 | 2004-09-22 08:58:50 +0000 | [diff] [blame] | 1564 | output="rockbox.iriver" |
Alex Parker | 4b7e536 | 2009-10-24 22:56:00 +0000 | [diff] [blame] | 1565 | bootoutput="bootloader.iriver" |
Jonathan Gordon | b6867dc | 2010-05-17 15:03:59 +0000 | [diff] [blame] | 1566 | appextra="recorder:gui:radio" |
Miika Pekkarinen | b1af4e6 | 2007-01-08 18:21:12 +0000 | [diff] [blame] | 1567 | flash="$pwd/rombox.iriver" |
Daniel Stenberg | b3272f4 | 2005-02-04 12:52:15 +0000 | [diff] [blame] | 1568 | plugins="yes" |
Daniel Stenberg | 8219912 | 2007-07-16 22:25:41 +0000 | [diff] [blame] | 1569 | swcodec="yes" |
Daniel Stenberg | d7b5c5a | 2005-12-02 08:56:20 +0000 | [diff] [blame] | 1570 | # toolset is the tools within the tools directory that we build for |
| 1571 | # this particular target. |
| 1572 | toolset=$iriverbitmaptools |
Jonathan Gordon | cad563b | 2006-10-29 10:26:41 +0000 | [diff] [blame] | 1573 | t_cpu="coldfire" |
| 1574 | t_manufacturer="iriver" |
| 1575 | t_model="h100" |
Daniel Stenberg | fc1e925 | 2004-09-22 08:58:50 +0000 | [diff] [blame] | 1576 | ;; |
| 1577 | |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1578 | 11|iriverh300) |
Daniel Stenberg | 69c9d62 | 2006-08-28 08:46:16 +0000 | [diff] [blame] | 1579 | target_id=10 |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1580 | modelname="iriverh300" |
Rafaël Carré | 08fd8ad | 2011-12-15 17:50:33 +0000 | [diff] [blame] | 1581 | target="IRIVER_H300" |
Daniel Stenberg | 0482ff5 | 2005-06-15 11:27:37 +0000 | [diff] [blame] | 1582 | memory=32 # always |
| 1583 | coldfirecc |
Daniel Stenberg | 9a46adc | 2005-07-01 09:46:23 +0000 | [diff] [blame] | 1584 | tool="$rootdir/tools/scramble -add=h300" |
Dave Chapman | 1e7043a2 | 2006-01-22 21:30:32 +0000 | [diff] [blame] | 1585 | bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" |
| 1586 | bmp2rb_native="$rootdir/tools/bmp2rb -f 4" |
| 1587 | bmp2rb_remotemono="$rootdir/tools/bmp2rb -f 0" |
| 1588 | bmp2rb_remotenative="$rootdir/tools/bmp2rb -f 0" |
Daniel Stenberg | 0482ff5 | 2005-06-15 11:27:37 +0000 | [diff] [blame] | 1589 | output="rockbox.iriver" |
Jonathan Gordon | b6867dc | 2010-05-17 15:03:59 +0000 | [diff] [blame] | 1590 | appextra="recorder:gui:radio" |
Daniel Stenberg | 8e55d0c | 2004-09-22 21:40:45 +0000 | [diff] [blame] | 1591 | plugins="yes" |
Daniel Stenberg | 8219912 | 2007-07-16 22:25:41 +0000 | [diff] [blame] | 1592 | swcodec="yes" |
Daniel Stenberg | d7b5c5a | 2005-12-02 08:56:20 +0000 | [diff] [blame] | 1593 | # toolset is the tools within the tools directory that we build for |
| 1594 | # this particular target. |
| 1595 | toolset=$iriverbitmaptools |
Jonathan Gordon | cad563b | 2006-10-29 10:26:41 +0000 | [diff] [blame] | 1596 | t_cpu="coldfire" |
| 1597 | t_manufacturer="iriver" |
| 1598 | t_model="h300" |
Linus Nielsen Feltzing | ba05650 | 2004-09-22 09:29:58 +0000 | [diff] [blame] | 1599 | ;; |
| 1600 | |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1601 | 12|iriverh100) |
Daniel Stenberg | 69c9d62 | 2006-08-28 08:46:16 +0000 | [diff] [blame] | 1602 | target_id=11 |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1603 | modelname="iriverh100" |
Rafaël Carré | 08fd8ad | 2011-12-15 17:50:33 +0000 | [diff] [blame] | 1604 | target="IRIVER_H100" |
Daniel Stenberg | 8493ccb | 2005-07-08 06:31:13 +0000 | [diff] [blame] | 1605 | memory=16 # always |
| 1606 | coldfirecc |
| 1607 | tool="$rootdir/tools/scramble -add=h100" |
Dave Chapman | 1e7043a2 | 2006-01-22 21:30:32 +0000 | [diff] [blame] | 1608 | bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" |
| 1609 | bmp2rb_native="$rootdir/tools/bmp2rb -f 2" |
| 1610 | bmp2rb_remotemono="$rootdir/tools/bmp2rb -f 0" |
| 1611 | bmp2rb_remotenative="$rootdir/tools/bmp2rb -f 0" |
Daniel Stenberg | 8493ccb | 2005-07-08 06:31:13 +0000 | [diff] [blame] | 1612 | output="rockbox.iriver" |
Alex Parker | 4b7e536 | 2009-10-24 22:56:00 +0000 | [diff] [blame] | 1613 | bootoutput="bootloader.iriver" |
Jonathan Gordon | b6867dc | 2010-05-17 15:03:59 +0000 | [diff] [blame] | 1614 | appextra="recorder:gui:radio" |
Miika Pekkarinen | 698113d | 2008-02-09 15:06:09 +0000 | [diff] [blame] | 1615 | flash="$pwd/rombox.iriver" |
Daniel Stenberg | 8493ccb | 2005-07-08 06:31:13 +0000 | [diff] [blame] | 1616 | plugins="yes" |
Daniel Stenberg | 8219912 | 2007-07-16 22:25:41 +0000 | [diff] [blame] | 1617 | swcodec="yes" |
Daniel Stenberg | d7b5c5a | 2005-12-02 08:56:20 +0000 | [diff] [blame] | 1618 | # toolset is the tools within the tools directory that we build for |
| 1619 | # this particular target. |
| 1620 | toolset=$iriverbitmaptools |
Jonathan Gordon | cad563b | 2006-10-29 10:26:41 +0000 | [diff] [blame] | 1621 | t_cpu="coldfire" |
| 1622 | t_manufacturer="iriver" |
| 1623 | t_model="h100" |
Daniel Stenberg | 8493ccb | 2005-07-08 06:31:13 +0000 | [diff] [blame] | 1624 | ;; |
| 1625 | |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1626 | 13|iriverifp7xx) |
Jens Arnold | 9382e55 | 2007-07-26 22:42:31 +0000 | [diff] [blame] | 1627 | target_id=19 |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1628 | modelname="iriverifp7xx" |
Rafaël Carré | 08fd8ad | 2011-12-15 17:50:33 +0000 | [diff] [blame] | 1629 | target="IRIVER_IFP7XX" |
Jens Arnold | 9382e55 | 2007-07-26 22:42:31 +0000 | [diff] [blame] | 1630 | memory=1 |
| 1631 | arm7tdmicc short |
| 1632 | tool="cp" |
Dave Chapman | 1e7043a2 | 2006-01-22 21:30:32 +0000 | [diff] [blame] | 1633 | bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" |
Jens Arnold | 9382e55 | 2007-07-26 22:42:31 +0000 | [diff] [blame] | 1634 | bmp2rb_native="$rootdir/tools/bmp2rb -f 0" |
| 1635 | output="rockbox.wma" |
Jonathan Gordon | b6867dc | 2010-05-17 15:03:59 +0000 | [diff] [blame] | 1636 | appextra="recorder:gui:radio" |
Daniel Stenberg | 930dc60 | 2005-07-15 21:24:10 +0000 | [diff] [blame] | 1637 | plugins="yes" |
Daniel Stenberg | 8219912 | 2007-07-16 22:25:41 +0000 | [diff] [blame] | 1638 | swcodec="yes" |
Daniel Stenberg | d7b5c5a | 2005-12-02 08:56:20 +0000 | [diff] [blame] | 1639 | # toolset is the tools within the tools directory that we build for |
| 1640 | # this particular target. |
Jens Arnold | 9382e55 | 2007-07-26 22:42:31 +0000 | [diff] [blame] | 1641 | toolset=$genericbitmaptools |
| 1642 | t_cpu="arm" |
| 1643 | t_manufacturer="pnx0101" |
| 1644 | t_model="iriver-ifp7xx" |
Daniel Stenberg | 930dc60 | 2005-07-15 21:24:10 +0000 | [diff] [blame] | 1645 | ;; |
| 1646 | |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1647 | 14|iriverh10) |
Jens Arnold | 9382e55 | 2007-07-26 22:42:31 +0000 | [diff] [blame] | 1648 | target_id=22 |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1649 | modelname="iriverh10" |
Rafaël Carré | 08fd8ad | 2011-12-15 17:50:33 +0000 | [diff] [blame] | 1650 | target="IRIVER_H10" |
Jens Arnold | 9382e55 | 2007-07-26 22:42:31 +0000 | [diff] [blame] | 1651 | memory=32 # always |
| 1652 | arm7tdmicc |
| 1653 | tool="$rootdir/tools/scramble -mi4v3 -model=h10 -type=RBOS" |
Jens Arnold | b4994a0 | 2007-03-04 14:09:21 +0000 | [diff] [blame] | 1654 | bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" |
Jens Arnold | 8aeed2d | 2007-10-12 00:28:57 +0000 | [diff] [blame] | 1655 | bmp2rb_native="$rootdir/tools/bmp2rb -f 5" |
Jens Arnold | 9382e55 | 2007-07-26 22:42:31 +0000 | [diff] [blame] | 1656 | output="rockbox.mi4" |
Jonathan Gordon | b6867dc | 2010-05-17 15:03:59 +0000 | [diff] [blame] | 1657 | appextra="recorder:gui:radio" |
Jens Arnold | b4994a0 | 2007-03-04 14:09:21 +0000 | [diff] [blame] | 1658 | plugins="yes" |
Daniel Stenberg | 8219912 | 2007-07-16 22:25:41 +0000 | [diff] [blame] | 1659 | swcodec="yes" |
Jens Arnold | 9382e55 | 2007-07-26 22:42:31 +0000 | [diff] [blame] | 1660 | boottool="$rootdir/tools/scramble -mi4v3 -model=h10 -type=RBBL" |
| 1661 | bootoutput="H10_20GC.mi4" |
Jens Arnold | b4994a0 | 2007-03-04 14:09:21 +0000 | [diff] [blame] | 1662 | # toolset is the tools within the tools directory that we build for |
| 1663 | # this particular target. |
Dave Chapman | 6bbe66a | 2008-10-12 19:34:47 +0000 | [diff] [blame] | 1664 | toolset=$scramblebitmaptools |
Jens Arnold | b4994a0 | 2007-03-04 14:09:21 +0000 | [diff] [blame] | 1665 | # architecture, manufacturer and model for the target-tree build |
Jens Arnold | 9382e55 | 2007-07-26 22:42:31 +0000 | [diff] [blame] | 1666 | t_cpu="arm" |
Rafaël Carré | 4ef988b | 2012-01-03 04:23:08 +0000 | [diff] [blame] | 1667 | t_soc="pp" |
Jens Arnold | 9382e55 | 2007-07-26 22:42:31 +0000 | [diff] [blame] | 1668 | t_manufacturer="iriver" |
| 1669 | t_model="h10" |
| 1670 | ;; |
| 1671 | |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1672 | 15|iriverh10_5gb) |
Jens Arnold | 9382e55 | 2007-07-26 22:42:31 +0000 | [diff] [blame] | 1673 | target_id=24 |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1674 | modelname="iriverh10_5gb" |
Rafaël Carré | 08fd8ad | 2011-12-15 17:50:33 +0000 | [diff] [blame] | 1675 | target="IRIVER_H10_5GB" |
Jens Arnold | 9382e55 | 2007-07-26 22:42:31 +0000 | [diff] [blame] | 1676 | memory=32 # always |
| 1677 | arm7tdmicc |
| 1678 | tool="$rootdir/tools/scramble -mi4v2 -model=h105 -type=RBOS" |
| 1679 | bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" |
| 1680 | bmp2rb_native="$rootdir/tools/bmp2rb -f 5" |
| 1681 | output="rockbox.mi4" |
Jonathan Gordon | b6867dc | 2010-05-17 15:03:59 +0000 | [diff] [blame] | 1682 | appextra="recorder:gui:radio" |
Jens Arnold | 9382e55 | 2007-07-26 22:42:31 +0000 | [diff] [blame] | 1683 | plugins="yes" |
| 1684 | swcodec="yes" |
| 1685 | boottool="$rootdir/tools/scramble -mi4v2 -model=h105 -type=RBBL" |
| 1686 | bootoutput="H10.mi4" |
| 1687 | # toolset is the tools within the tools directory that we build for |
| 1688 | # this particular target. |
Dave Chapman | 6bbe66a | 2008-10-12 19:34:47 +0000 | [diff] [blame] | 1689 | toolset=$scramblebitmaptools |
Jens Arnold | 9382e55 | 2007-07-26 22:42:31 +0000 | [diff] [blame] | 1690 | # architecture, manufacturer and model for the target-tree build |
| 1691 | t_cpu="arm" |
Rafaël Carré | 4ef988b | 2012-01-03 04:23:08 +0000 | [diff] [blame] | 1692 | t_soc="pp" |
Jens Arnold | 9382e55 | 2007-07-26 22:42:31 +0000 | [diff] [blame] | 1693 | t_manufacturer="iriver" |
| 1694 | t_model="h10" |
Jens Arnold | b4994a0 | 2007-03-04 14:09:21 +0000 | [diff] [blame] | 1695 | ;; |
| 1696 | |
Daniel Stenberg | c704db6 | 2006-08-30 21:53:26 +0000 | [diff] [blame] | 1697 | 20|ipodcolor) |
Daniel Stenberg | 69c9d62 | 2006-08-28 08:46:16 +0000 | [diff] [blame] | 1698 | target_id=13 |
Daniel Stenberg | 9759c03 | 2008-01-23 10:59:17 +0000 | [diff] [blame] | 1699 | modelname="ipodcolor" |
Rafaël Carré | 08fd8ad | 2011-12-15 17:50:33 +0000 | [diff] [blame] | 1700 | target="IPOD_COLOR" |
Dave Chapman | 38e8fb6 | 2005-11-08 00:52:39 +0000 | [diff] [blame] | 1701 | memory=32 # always |
| 1702 | arm7tdmicc |
| 1703 | tool="$rootdir/tools/scramble -add=ipco" |
Dave Chapman | 1e7043a2 | 2006-01-22 21:30:32 +0000 | [diff] [blame] | 1704 | bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" |
| 1705 | bmp2rb_native="$rootdir/tools/bmp2rb -f 5" |
Dave Chapman | 38e8fb6 | 2005-11-08 00:52:39 +0000 | [diff] [blame] | 1706 | output="rockbox.ipod" |
Jonathan Gordon | b6867dc | 2010-05-17 15:03:59 +0000 | [diff] [blame] | 1707 | appextra="recorder:gui:radio" |
Dave Chapman | 38e8fb6 | 2005-11-08 00:52:39 +0000 | [diff] [blame] | 1708 | plugins="yes" |
Daniel Stenberg | 8219912 | 2007-07-16 22:25:41 +0000 | [diff] [blame] | 1709 | swcodec="yes" |
Daniel Stenberg | 9759c03 | 2008-01-23 10:59:17 +0000 | [diff] [blame] | 1710 | bootoutput="bootloader-$modelname.ipod" |
Daniel Stenberg | d7b5c5a | 2005-12-02 08:56:20 +0000 | [diff] [blame] | 1711 | # toolset is the tools within the tools directory that we build for |
| 1712 | # this particular target. |
| 1713 | toolset=$ipodbitmaptools |
Barry Wardell | d4945dc | 2006-10-05 10:58:51 +0000 | [diff] [blame] | 1714 | # architecture, manufacturer and model for the target-tree build |
| 1715 | t_cpu="arm" |
Rafaël Carré | 4ef988b | 2012-01-03 04:23:08 +0000 | [diff] [blame] | 1716 | t_soc="pp" |
Barry Wardell | d4945dc | 2006-10-05 10:58:51 +0000 | [diff] [blame] | 1717 | t_manufacturer="ipod" |
| 1718 | t_model="color" |
Dave Chapman | 38e8fb6 | 2005-11-08 00:52:39 +0000 | [diff] [blame] | 1719 | ;; |
| 1720 | |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1721 | 21|ipodnano1g) |
Daniel Stenberg | 69c9d62 | 2006-08-28 08:46:16 +0000 | [diff] [blame] | 1722 | target_id=14 |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1723 | modelname="ipodnano1g" |
Rafaël Carré | 08fd8ad | 2011-12-15 17:50:33 +0000 | [diff] [blame] | 1724 | target="IPOD_NANO" |
Dave Chapman | 38e8fb6 | 2005-11-08 00:52:39 +0000 | [diff] [blame] | 1725 | memory=32 # always |
| 1726 | arm7tdmicc |
| 1727 | tool="$rootdir/tools/scramble -add=nano" |
Dave Chapman | 1e7043a2 | 2006-01-22 21:30:32 +0000 | [diff] [blame] | 1728 | bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" |
| 1729 | bmp2rb_native="$rootdir/tools/bmp2rb -f 5" |
Dave Chapman | 38e8fb6 | 2005-11-08 00:52:39 +0000 | [diff] [blame] | 1730 | output="rockbox.ipod" |
Jonathan Gordon | b6867dc | 2010-05-17 15:03:59 +0000 | [diff] [blame] | 1731 | appextra="recorder:gui:radio" |
Dave Chapman | 38e8fb6 | 2005-11-08 00:52:39 +0000 | [diff] [blame] | 1732 | plugins="yes" |
Daniel Stenberg | 8219912 | 2007-07-16 22:25:41 +0000 | [diff] [blame] | 1733 | swcodec="yes" |
Daniel Stenberg | 9759c03 | 2008-01-23 10:59:17 +0000 | [diff] [blame] | 1734 | bootoutput="bootloader-$modelname.ipod" |
Daniel Stenberg | d7b5c5a | 2005-12-02 08:56:20 +0000 | [diff] [blame] | 1735 | # toolset is the tools within the tools directory that we build for |
| 1736 | # this particular target. |
| 1737 | toolset=$ipodbitmaptools |
Barry Wardell | d4945dc | 2006-10-05 10:58:51 +0000 | [diff] [blame] | 1738 | # architecture, manufacturer and model for the target-tree build |
| 1739 | t_cpu="arm" |
Rafaël Carré | 4ef988b | 2012-01-03 04:23:08 +0000 | [diff] [blame] | 1740 | t_soc="pp" |
Barry Wardell | d4945dc | 2006-10-05 10:58:51 +0000 | [diff] [blame] | 1741 | t_manufacturer="ipod" |
| 1742 | t_model="nano" |
Dave Chapman | 38e8fb6 | 2005-11-08 00:52:39 +0000 | [diff] [blame] | 1743 | ;; |
| 1744 | |
Daniel Stenberg | c704db6 | 2006-08-30 21:53:26 +0000 | [diff] [blame] | 1745 | 22|ipodvideo) |
Daniel Stenberg | 69c9d62 | 2006-08-28 08:46:16 +0000 | [diff] [blame] | 1746 | target_id=15 |
Daniel Stenberg | 9759c03 | 2008-01-23 10:59:17 +0000 | [diff] [blame] | 1747 | modelname="ipodvideo" |
Rafaël Carré | 08fd8ad | 2011-12-15 17:50:33 +0000 | [diff] [blame] | 1748 | target="IPOD_VIDEO" |
Frank Gevaerts | a1cf4ce | 2010-08-31 19:06:04 +0000 | [diff] [blame] | 1749 | memory=64 # always. This is reduced at runtime if needed |
Dave Chapman | 2a7bd9f | 2005-12-18 13:04:00 +0000 | [diff] [blame] | 1750 | arm7tdmicc |
| 1751 | tool="$rootdir/tools/scramble -add=ipvd" |
Dave Chapman | 1e7043a2 | 2006-01-22 21:30:32 +0000 | [diff] [blame] | 1752 | bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" |
| 1753 | bmp2rb_native="$rootdir/tools/bmp2rb -f 4" |
Dave Chapman | 2a7bd9f | 2005-12-18 13:04:00 +0000 | [diff] [blame] | 1754 | output="rockbox.ipod" |
Jonathan Gordon | b6867dc | 2010-05-17 15:03:59 +0000 | [diff] [blame] | 1755 | appextra="recorder:gui:radio" |
Dave Chapman | 2a7bd9f | 2005-12-18 13:04:00 +0000 | [diff] [blame] | 1756 | plugins="yes" |
Daniel Stenberg | 8219912 | 2007-07-16 22:25:41 +0000 | [diff] [blame] | 1757 | swcodec="yes" |
Daniel Stenberg | 9759c03 | 2008-01-23 10:59:17 +0000 | [diff] [blame] | 1758 | bootoutput="bootloader-$modelname.ipod" |
Dave Chapman | 2a7bd9f | 2005-12-18 13:04:00 +0000 | [diff] [blame] | 1759 | # toolset is the tools within the tools directory that we build for |
| 1760 | # this particular target. |
| 1761 | toolset=$ipodbitmaptools |
Barry Wardell | d4945dc | 2006-10-05 10:58:51 +0000 | [diff] [blame] | 1762 | # architecture, manufacturer and model for the target-tree build |
| 1763 | t_cpu="arm" |
Rafaël Carré | 4ef988b | 2012-01-03 04:23:08 +0000 | [diff] [blame] | 1764 | t_soc="pp" |
Barry Wardell | d4945dc | 2006-10-05 10:58:51 +0000 | [diff] [blame] | 1765 | t_manufacturer="ipod" |
| 1766 | t_model="video" |
Dave Chapman | 2a7bd9f | 2005-12-18 13:04:00 +0000 | [diff] [blame] | 1767 | ;; |
| 1768 | |
Daniel Stenberg | c704db6 | 2006-08-30 21:53:26 +0000 | [diff] [blame] | 1769 | 23|ipod3g) |
Daniel Stenberg | 69c9d62 | 2006-08-28 08:46:16 +0000 | [diff] [blame] | 1770 | target_id=16 |
Daniel Stenberg | 9759c03 | 2008-01-23 10:59:17 +0000 | [diff] [blame] | 1771 | modelname="ipod3g" |
Rafaël Carré | 08fd8ad | 2011-12-15 17:50:33 +0000 | [diff] [blame] | 1772 | target="IPOD_3G" |
Dave Chapman | 0d10031 | 2006-02-05 18:30:50 +0000 | [diff] [blame] | 1773 | memory=32 # always |
| 1774 | arm7tdmicc |
| 1775 | tool="$rootdir/tools/scramble -add=ip3g" |
| 1776 | bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" |
Jens Arnold | 41e1aa8 | 2006-02-16 20:03:07 +0000 | [diff] [blame] | 1777 | bmp2rb_native="$rootdir/tools/bmp2rb -f 6" |
Dave Chapman | 0d10031 | 2006-02-05 18:30:50 +0000 | [diff] [blame] | 1778 | output="rockbox.ipod" |
Jonathan Gordon | b6867dc | 2010-05-17 15:03:59 +0000 | [diff] [blame] | 1779 | appextra="recorder:gui:radio" |
Dave Chapman | 0d10031 | 2006-02-05 18:30:50 +0000 | [diff] [blame] | 1780 | plugins="yes" |
Daniel Stenberg | 8219912 | 2007-07-16 22:25:41 +0000 | [diff] [blame] | 1781 | swcodec="yes" |
Daniel Stenberg | 9759c03 | 2008-01-23 10:59:17 +0000 | [diff] [blame] | 1782 | bootoutput="bootloader-$modelname.ipod" |
Dave Chapman | 0d10031 | 2006-02-05 18:30:50 +0000 | [diff] [blame] | 1783 | # toolset is the tools within the tools directory that we build for |
| 1784 | # this particular target. |
| 1785 | toolset=$ipodbitmaptools |
Barry Wardell | d4945dc | 2006-10-05 10:58:51 +0000 | [diff] [blame] | 1786 | # architecture, manufacturer and model for the target-tree build |
| 1787 | t_cpu="arm" |
Rafaël Carré | 4ef988b | 2012-01-03 04:23:08 +0000 | [diff] [blame] | 1788 | t_soc="pp" |
Barry Wardell | d4945dc | 2006-10-05 10:58:51 +0000 | [diff] [blame] | 1789 | t_manufacturer="ipod" |
| 1790 | t_model="3g" |
Dave Chapman | 0d10031 | 2006-02-05 18:30:50 +0000 | [diff] [blame] | 1791 | ;; |
Greg White | 355be50 | 2007-01-13 02:24:15 +0000 | [diff] [blame] | 1792 | |
Daniel Stenberg | c704db6 | 2006-08-30 21:53:26 +0000 | [diff] [blame] | 1793 | 24|ipod4g) |
Daniel Stenberg | 69c9d62 | 2006-08-28 08:46:16 +0000 | [diff] [blame] | 1794 | target_id=17 |
Daniel Stenberg | 9759c03 | 2008-01-23 10:59:17 +0000 | [diff] [blame] | 1795 | modelname="ipod4g" |
Rafaël Carré | 08fd8ad | 2011-12-15 17:50:33 +0000 | [diff] [blame] | 1796 | target="IPOD_4G" |
Dave Chapman | 0d10031 | 2006-02-05 18:30:50 +0000 | [diff] [blame] | 1797 | memory=32 # always |
| 1798 | arm7tdmicc |
| 1799 | tool="$rootdir/tools/scramble -add=ip4g" |
| 1800 | bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" |
Jens Arnold | 41e1aa8 | 2006-02-16 20:03:07 +0000 | [diff] [blame] | 1801 | bmp2rb_native="$rootdir/tools/bmp2rb -f 6" |
Dave Chapman | 0d10031 | 2006-02-05 18:30:50 +0000 | [diff] [blame] | 1802 | output="rockbox.ipod" |
Jonathan Gordon | b6867dc | 2010-05-17 15:03:59 +0000 | [diff] [blame] | 1803 | appextra="recorder:gui:radio" |
Dave Chapman | 0d10031 | 2006-02-05 18:30:50 +0000 | [diff] [blame] | 1804 | plugins="yes" |
Daniel Stenberg | 8219912 | 2007-07-16 22:25:41 +0000 | [diff] [blame] | 1805 | swcodec="yes" |
Daniel Stenberg | 9759c03 | 2008-01-23 10:59:17 +0000 | [diff] [blame] | 1806 | bootoutput="bootloader-$modelname.ipod" |
Dave Chapman | 0d10031 | 2006-02-05 18:30:50 +0000 | [diff] [blame] | 1807 | # toolset is the tools within the tools directory that we build for |
| 1808 | # this particular target. |
| 1809 | toolset=$ipodbitmaptools |
Barry Wardell | d4945dc | 2006-10-05 10:58:51 +0000 | [diff] [blame] | 1810 | # architecture, manufacturer and model for the target-tree build |
| 1811 | t_cpu="arm" |
Rafaël Carré | 4ef988b | 2012-01-03 04:23:08 +0000 | [diff] [blame] | 1812 | t_soc="pp" |
Barry Wardell | d4945dc | 2006-10-05 10:58:51 +0000 | [diff] [blame] | 1813 | t_manufacturer="ipod" |
| 1814 | t_model="4g" |
Dave Chapman | 0d10031 | 2006-02-05 18:30:50 +0000 | [diff] [blame] | 1815 | ;; |
Greg White | 355be50 | 2007-01-13 02:24:15 +0000 | [diff] [blame] | 1816 | |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1817 | 25|ipodmini1g) |
Daniel Stenberg | 69c9d62 | 2006-08-28 08:46:16 +0000 | [diff] [blame] | 1818 | target_id=18 |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1819 | modelname="ipodmini1g" |
Rafaël Carré | 08fd8ad | 2011-12-15 17:50:33 +0000 | [diff] [blame] | 1820 | target="IPOD_MINI" |
Dave Chapman | 8b1297a | 2006-02-21 15:01:25 +0000 | [diff] [blame] | 1821 | memory=32 # always |
| 1822 | arm7tdmicc |
| 1823 | tool="$rootdir/tools/scramble -add=mini" |
| 1824 | bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" |
| 1825 | bmp2rb_native="$rootdir/tools/bmp2rb -f 6" |
| 1826 | output="rockbox.ipod" |
Jonathan Gordon | b6867dc | 2010-05-17 15:03:59 +0000 | [diff] [blame] | 1827 | appextra="recorder:gui:radio" |
Dave Chapman | 8b1297a | 2006-02-21 15:01:25 +0000 | [diff] [blame] | 1828 | plugins="yes" |
Daniel Stenberg | 8219912 | 2007-07-16 22:25:41 +0000 | [diff] [blame] | 1829 | swcodec="yes" |
Daniel Stenberg | 9759c03 | 2008-01-23 10:59:17 +0000 | [diff] [blame] | 1830 | bootoutput="bootloader-$modelname.ipod" |
Dave Chapman | 8b1297a | 2006-02-21 15:01:25 +0000 | [diff] [blame] | 1831 | # toolset is the tools within the tools directory that we build for |
| 1832 | # this particular target. |
| 1833 | toolset=$ipodbitmaptools |
Barry Wardell | d4945dc | 2006-10-05 10:58:51 +0000 | [diff] [blame] | 1834 | # architecture, manufacturer and model for the target-tree build |
| 1835 | t_cpu="arm" |
Rafaël Carré | 4ef988b | 2012-01-03 04:23:08 +0000 | [diff] [blame] | 1836 | t_soc="pp" |
Barry Wardell | d4945dc | 2006-10-05 10:58:51 +0000 | [diff] [blame] | 1837 | t_manufacturer="ipod" |
| 1838 | t_model="mini" |
Dave Chapman | 8b1297a | 2006-02-21 15:01:25 +0000 | [diff] [blame] | 1839 | ;; |
Greg White | 355be50 | 2007-01-13 02:24:15 +0000 | [diff] [blame] | 1840 | |
Daniel Stenberg | c704db6 | 2006-08-30 21:53:26 +0000 | [diff] [blame] | 1841 | 26|ipodmini2g) |
Daniel Stenberg | 69c9d62 | 2006-08-28 08:46:16 +0000 | [diff] [blame] | 1842 | target_id=21 |
Daniel Stenberg | 9759c03 | 2008-01-23 10:59:17 +0000 | [diff] [blame] | 1843 | modelname="ipodmini2g" |
Rafaël Carré | 08fd8ad | 2011-12-15 17:50:33 +0000 | [diff] [blame] | 1844 | target="IPOD_MINI2G" |
Jens Arnold | d3feb78 | 2006-03-30 17:29:21 +0000 | [diff] [blame] | 1845 | memory=32 # always |
| 1846 | arm7tdmicc |
| 1847 | tool="$rootdir/tools/scramble -add=mn2g" |
| 1848 | bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" |
| 1849 | bmp2rb_native="$rootdir/tools/bmp2rb -f 6" |
| 1850 | output="rockbox.ipod" |
Jonathan Gordon | b6867dc | 2010-05-17 15:03:59 +0000 | [diff] [blame] | 1851 | appextra="recorder:gui:radio" |
Jens Arnold | d3feb78 | 2006-03-30 17:29:21 +0000 | [diff] [blame] | 1852 | plugins="yes" |
Daniel Stenberg | 8219912 | 2007-07-16 22:25:41 +0000 | [diff] [blame] | 1853 | swcodec="yes" |
Daniel Stenberg | 9759c03 | 2008-01-23 10:59:17 +0000 | [diff] [blame] | 1854 | bootoutput="bootloader-$modelname.ipod" |
Jens Arnold | d3feb78 | 2006-03-30 17:29:21 +0000 | [diff] [blame] | 1855 | # toolset is the tools within the tools directory that we build for |
| 1856 | # this particular target. |
| 1857 | toolset=$ipodbitmaptools |
Barry Wardell | d4945dc | 2006-10-05 10:58:51 +0000 | [diff] [blame] | 1858 | # architecture, manufacturer and model for the target-tree build |
| 1859 | t_cpu="arm" |
Rafaël Carré | 4ef988b | 2012-01-03 04:23:08 +0000 | [diff] [blame] | 1860 | t_soc="pp" |
Barry Wardell | d4945dc | 2006-10-05 10:58:51 +0000 | [diff] [blame] | 1861 | t_manufacturer="ipod" |
| 1862 | t_model="mini2g" |
Jens Arnold | d3feb78 | 2006-03-30 17:29:21 +0000 | [diff] [blame] | 1863 | ;; |
| 1864 | |
Jens Arnold | 9382e55 | 2007-07-26 22:42:31 +0000 | [diff] [blame] | 1865 | 27|ipod1g2g) |
| 1866 | target_id=29 |
Daniel Stenberg | 9759c03 | 2008-01-23 10:59:17 +0000 | [diff] [blame] | 1867 | modelname="ipod1g2g" |
Rafaël Carré | 08fd8ad | 2011-12-15 17:50:33 +0000 | [diff] [blame] | 1868 | target="IPOD_1G2G" |
Daniel Stenberg | 95ea758 | 2006-08-01 22:22:01 +0000 | [diff] [blame] | 1869 | memory=32 # always |
| 1870 | arm7tdmicc |
Jens Arnold | 9382e55 | 2007-07-26 22:42:31 +0000 | [diff] [blame] | 1871 | tool="$rootdir/tools/scramble -add=1g2g" |
Daniel Stenberg | 95ea758 | 2006-08-01 22:22:01 +0000 | [diff] [blame] | 1872 | bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" |
Jens Arnold | 9382e55 | 2007-07-26 22:42:31 +0000 | [diff] [blame] | 1873 | bmp2rb_native="$rootdir/tools/bmp2rb -f 6" |
| 1874 | output="rockbox.ipod" |
Jonathan Gordon | b6867dc | 2010-05-17 15:03:59 +0000 | [diff] [blame] | 1875 | appextra="recorder:gui:radio" |
Daniel Stenberg | 95ea758 | 2006-08-01 22:22:01 +0000 | [diff] [blame] | 1876 | plugins="yes" |
Daniel Stenberg | 8219912 | 2007-07-16 22:25:41 +0000 | [diff] [blame] | 1877 | swcodec="yes" |
Daniel Stenberg | 9759c03 | 2008-01-23 10:59:17 +0000 | [diff] [blame] | 1878 | bootoutput="bootloader-$modelname.ipod" |
Daniel Stenberg | 95ea758 | 2006-08-01 22:22:01 +0000 | [diff] [blame] | 1879 | # toolset is the tools within the tools directory that we build for |
| 1880 | # this particular target. |
Jens Arnold | 9382e55 | 2007-07-26 22:42:31 +0000 | [diff] [blame] | 1881 | toolset=$ipodbitmaptools |
Daniel Stenberg | 95ea758 | 2006-08-01 22:22:01 +0000 | [diff] [blame] | 1882 | # architecture, manufacturer and model for the target-tree build |
| 1883 | t_cpu="arm" |
Rafaël Carré | 4ef988b | 2012-01-03 04:23:08 +0000 | [diff] [blame] | 1884 | t_soc="pp" |
Jens Arnold | 9382e55 | 2007-07-26 22:42:31 +0000 | [diff] [blame] | 1885 | t_manufacturer="ipod" |
| 1886 | t_model="1g2g" |
Daniel Stenberg | 95ea758 | 2006-08-01 22:22:01 +0000 | [diff] [blame] | 1887 | ;; |
| 1888 | |
Dave Chapman | afe43d3 | 2009-07-12 22:16:51 +0000 | [diff] [blame] | 1889 | 28|ipodnano2g) |
| 1890 | target_id=62 |
| 1891 | modelname="ipodnano2g" |
Rafaël Carré | 08fd8ad | 2011-12-15 17:50:33 +0000 | [diff] [blame] | 1892 | target="IPOD_NANO2G" |
Dave Chapman | afe43d3 | 2009-07-12 22:16:51 +0000 | [diff] [blame] | 1893 | memory=32 # always |
| 1894 | arm940tcc |
| 1895 | tool="$rootdir/tools/scramble -add=nn2g" |
| 1896 | bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" |
Dave Chapman | c30d509 | 2009-07-16 00:38:50 +0000 | [diff] [blame] | 1897 | bmp2rb_native="$rootdir/tools/bmp2rb -f 4" |
Dave Chapman | afe43d3 | 2009-07-12 22:16:51 +0000 | [diff] [blame] | 1898 | output="rockbox.ipod" |
Jonathan Gordon | b6867dc | 2010-05-17 15:03:59 +0000 | [diff] [blame] | 1899 | appextra="recorder:gui:radio" |
Dave Chapman | afe43d3 | 2009-07-12 22:16:51 +0000 | [diff] [blame] | 1900 | plugins="yes" |
| 1901 | swcodec="yes" |
Dave Chapman | b04a7a8 | 2009-10-11 01:37:12 +0000 | [diff] [blame] | 1902 | bootoutput="bootloader-$modelname.ipod" |
Dave Chapman | afe43d3 | 2009-07-12 22:16:51 +0000 | [diff] [blame] | 1903 | # toolset is the tools within the tools directory that we build for |
| 1904 | # this particular target. |
| 1905 | toolset=$ipodbitmaptools |
| 1906 | # architecture, manufacturer and model for the target-tree build |
| 1907 | t_cpu="arm" |
| 1908 | t_manufacturer="s5l8700" |
| 1909 | t_model="ipodnano2g" |
| 1910 | ;; |
| 1911 | |
Michael Sparmann | 1528479 | 2011-01-02 23:16:27 +0000 | [diff] [blame] | 1912 | 29|ipod6g) |
| 1913 | target_id=71 |
| 1914 | modelname="ipod6g" |
Rafaël Carré | 08fd8ad | 2011-12-15 17:50:33 +0000 | [diff] [blame] | 1915 | target="IPOD_6G" |
Michael Sparmann | 1528479 | 2011-01-02 23:16:27 +0000 | [diff] [blame] | 1916 | memory=64 # always |
| 1917 | arm926ejscc |
| 1918 | tool="$rootdir/tools/scramble -add=ip6g" |
| 1919 | bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" |
| 1920 | bmp2rb_native="$rootdir/tools/bmp2rb -f 4" |
| 1921 | output="rockbox.ipod" |
| 1922 | appextra="recorder:gui:radio" |
| 1923 | plugins="yes" |
| 1924 | swcodec="yes" |
| 1925 | bootoutput="bootloader-$modelname.ipod" |
| 1926 | # toolset is the tools within the tools directory that we build for |
| 1927 | # this particular target. |
| 1928 | toolset=$ipodbitmaptools |
| 1929 | # architecture, manufacturer and model for the target-tree build |
| 1930 | t_cpu="arm" |
| 1931 | t_manufacturer="s5l8702" |
| 1932 | t_model="ipod6g" |
| 1933 | ;; |
| 1934 | |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1935 | 30|iaudiox5) |
Jens Arnold | 9382e55 | 2007-07-26 22:42:31 +0000 | [diff] [blame] | 1936 | target_id=12 |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1937 | modelname="iaudiox5" |
Rafaël Carré | 08fd8ad | 2011-12-15 17:50:33 +0000 | [diff] [blame] | 1938 | target="IAUDIO_X5" |
Jens Arnold | 9382e55 | 2007-07-26 22:42:31 +0000 | [diff] [blame] | 1939 | memory=16 # always |
| 1940 | coldfirecc |
| 1941 | tool="$rootdir/tools/scramble -add=iax5" |
Jens Arnold | cf985f0 | 2010-06-14 17:49:30 +0000 | [diff] [blame] | 1942 | boottool="$rootdir/tools/scramble -iaudiox5" |
Barry Wardell | 14ed3ca | 2007-03-16 14:28:00 +0000 | [diff] [blame] | 1943 | bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" |
Jens Arnold | 9382e55 | 2007-07-26 22:42:31 +0000 | [diff] [blame] | 1944 | bmp2rb_native="$rootdir/tools/bmp2rb -f 4" |
| 1945 | bmp2rb_remotemono="$rootdir/tools/bmp2rb -f 0" |
| 1946 | bmp2rb_remotenative="$rootdir/tools/bmp2rb -f 7" |
| 1947 | output="rockbox.iaudio" |
Jens Arnold | cf985f0 | 2010-06-14 17:49:30 +0000 | [diff] [blame] | 1948 | bootoutput="x5_fw.bin" |
Jonathan Gordon | b6867dc | 2010-05-17 15:03:59 +0000 | [diff] [blame] | 1949 | appextra="recorder:gui:radio" |
Barry Wardell | 14ed3ca | 2007-03-16 14:28:00 +0000 | [diff] [blame] | 1950 | plugins="yes" |
Daniel Stenberg | 8219912 | 2007-07-16 22:25:41 +0000 | [diff] [blame] | 1951 | swcodec="yes" |
Barry Wardell | 14ed3ca | 2007-03-16 14:28:00 +0000 | [diff] [blame] | 1952 | # toolset is the tools within the tools directory that we build for |
| 1953 | # this particular target. |
Jens Arnold | 9382e55 | 2007-07-26 22:42:31 +0000 | [diff] [blame] | 1954 | toolset="$iaudiobitmaptools" |
| 1955 | # architecture, manufacturer and model for the target-tree build |
| 1956 | t_cpu="coldfire" |
| 1957 | t_manufacturer="iaudio" |
| 1958 | t_model="x5" |
| 1959 | ;; |
| 1960 | |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1961 | 31|iaudiom5) |
Jens Arnold | 9382e55 | 2007-07-26 22:42:31 +0000 | [diff] [blame] | 1962 | target_id=28 |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 1963 | modelname="iaudiom5" |
Rafaël Carré | 08fd8ad | 2011-12-15 17:50:33 +0000 | [diff] [blame] | 1964 | target="IAUDIO_M5" |
Jens Arnold | 9382e55 | 2007-07-26 22:42:31 +0000 | [diff] [blame] | 1965 | memory=16 # always |
| 1966 | coldfirecc |
| 1967 | tool="$rootdir/tools/scramble -add=iam5" |
Jens Arnold | cf985f0 | 2010-06-14 17:49:30 +0000 | [diff] [blame] | 1968 | boottool="$rootdir/tools/scramble -iaudiom5" |
Jens Arnold | 9382e55 | 2007-07-26 22:42:31 +0000 | [diff] [blame] | 1969 | bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" |
| 1970 | bmp2rb_native="$rootdir/tools/bmp2rb -f 2" |
| 1971 | bmp2rb_remotemono="$rootdir/tools/bmp2rb -f 0" |
| 1972 | bmp2rb_remotenative="$rootdir/tools/bmp2rb -f 7" |
| 1973 | output="rockbox.iaudio" |
Jens Arnold | cf985f0 | 2010-06-14 17:49:30 +0000 | [diff] [blame] | 1974 | bootoutput="m5_fw.bin" |
Jonathan Gordon | b6867dc | 2010-05-17 15:03:59 +0000 | [diff] [blame] | 1975 | appextra="recorder:gui:radio" |
Jens Arnold | 9382e55 | 2007-07-26 22:42:31 +0000 | [diff] [blame] | 1976 | plugins="yes" |
| 1977 | swcodec="yes" |
| 1978 | # toolset is the tools within the tools directory that we build for |
| 1979 | # this particular target. |
| 1980 | toolset="$iaudiobitmaptools" |
| 1981 | # architecture, manufacturer and model for the target-tree build |
| 1982 | t_cpu="coldfire" |
| 1983 | t_manufacturer="iaudio" |
| 1984 | t_model="m5" |
| 1985 | ;; |
| 1986 | |
Jens Arnold | cdec67c | 2008-03-10 00:27:00 +0000 | [diff] [blame] | 1987 | 32|iaudio7) |
| 1988 | target_id=32 |
| 1989 | modelname="iaudio7" |
Rafaël Carré | 08fd8ad | 2011-12-15 17:50:33 +0000 | [diff] [blame] | 1990 | target="IAUDIO_7" |
Jens Arnold | cdec67c | 2008-03-10 00:27:00 +0000 | [diff] [blame] | 1991 | memory=16 # always |
| 1992 | arm946cc |
Dave Chapman | d462a64 | 2008-09-06 17:50:59 +0000 | [diff] [blame] | 1993 | tool="$rootdir/tools/scramble -add=i7" |
Jens Arnold | cdec67c | 2008-03-10 00:27:00 +0000 | [diff] [blame] | 1994 | boottool="$rootdir/tools/scramble -tcc=crc" |
| 1995 | bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" |
Rob Purchase | 1a08f46 | 2008-09-16 08:09:44 +0000 | [diff] [blame] | 1996 | bmp2rb_native="$rootdir/tools/bmp2rb -f 4" |
Jens Arnold | cdec67c | 2008-03-10 00:27:00 +0000 | [diff] [blame] | 1997 | output="rockbox.iaudio" |
Jonathan Gordon | b6867dc | 2010-05-17 15:03:59 +0000 | [diff] [blame] | 1998 | appextra="recorder:gui:radio" |
Jens Arnold | cdec67c | 2008-03-10 00:27:00 +0000 | [diff] [blame] | 1999 | plugins="yes" |
| 2000 | swcodec="yes" |
| 2001 | bootoutput="I7_FW.BIN" |
| 2002 | # toolset is the tools within the tools directory that we build for |
| 2003 | # this particular target. |
| 2004 | toolset="$tccbitmaptools" |
| 2005 | # architecture, manufacturer and model for the target-tree build |
| 2006 | t_cpu="arm" |
| 2007 | t_manufacturer="tcc77x" |
| 2008 | t_model="iaudio7" |
| 2009 | ;; |
| 2010 | |
| 2011 | 33|cowond2) |
| 2012 | target_id=34 |
| 2013 | modelname="cowond2" |
Rafaël Carré | 08fd8ad | 2011-12-15 17:50:33 +0000 | [diff] [blame] | 2014 | target="COWON_D2" |
Jens Arnold | cdec67c | 2008-03-10 00:27:00 +0000 | [diff] [blame] | 2015 | memory=32 |
| 2016 | arm926ejscc |
| 2017 | tool="$rootdir/tools/scramble -add=d2" |
Rob Purchase | 80ce2c8 | 2009-10-29 22:08:47 +0000 | [diff] [blame] | 2018 | boottool="cp " |
Jens Arnold | cdec67c | 2008-03-10 00:27:00 +0000 | [diff] [blame] | 2019 | bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" |
| 2020 | bmp2rb_native="$rootdir/tools/bmp2rb -f 4" |
Rob Purchase | 131c6c2 | 2008-11-17 21:16:07 +0000 | [diff] [blame] | 2021 | output="rockbox.d2" |
Rob Purchase | 80ce2c8 | 2009-10-29 22:08:47 +0000 | [diff] [blame] | 2022 | bootoutput="bootloader-cowond2.bin" |
Jonathan Gordon | b6867dc | 2010-05-17 15:03:59 +0000 | [diff] [blame] | 2023 | appextra="recorder:gui:radio" |
Rob Purchase | 554d7ed | 2008-03-22 22:03:34 +0000 | [diff] [blame] | 2024 | plugins="yes" |
Jens Arnold | cdec67c | 2008-03-10 00:27:00 +0000 | [diff] [blame] | 2025 | swcodec="yes" |
| 2026 | toolset="$tccbitmaptools" |
| 2027 | # architecture, manufacturer and model for the target-tree build |
| 2028 | t_cpu="arm" |
| 2029 | t_manufacturer="tcc780x" |
| 2030 | t_model="cowond2" |
| 2031 | ;; |
| 2032 | |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 2033 | 34|iaudiom3) |
Jens Arnold | cdec67c | 2008-03-10 00:27:00 +0000 | [diff] [blame] | 2034 | target_id=37 |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 2035 | modelname="iaudiom3" |
Rafaël Carré | 08fd8ad | 2011-12-15 17:50:33 +0000 | [diff] [blame] | 2036 | target="IAUDIO_M3" |
Jens Arnold | cdec67c | 2008-03-10 00:27:00 +0000 | [diff] [blame] | 2037 | memory=16 # always |
| 2038 | coldfirecc |
| 2039 | tool="$rootdir/tools/scramble -add=iam3" |
Jens Arnold | cf985f0 | 2010-06-14 17:49:30 +0000 | [diff] [blame] | 2040 | boottool="$rootdir/tools/scramble -iaudiom3" |
Jens Arnold | cdec67c | 2008-03-10 00:27:00 +0000 | [diff] [blame] | 2041 | bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" |
| 2042 | bmp2rb_native="$rootdir/tools/bmp2rb -f 7" |
| 2043 | output="rockbox.iaudio" |
Jens Arnold | cf985f0 | 2010-06-14 17:49:30 +0000 | [diff] [blame] | 2044 | bootoutput="cowon_m3.bin" |
Jonathan Gordon | b6867dc | 2010-05-17 15:03:59 +0000 | [diff] [blame] | 2045 | appextra="recorder:gui:radio" |
Jens Arnold | ac5e4ac | 2008-03-23 01:01:21 +0000 | [diff] [blame] | 2046 | plugins="yes" |
Jens Arnold | cdec67c | 2008-03-10 00:27:00 +0000 | [diff] [blame] | 2047 | swcodec="yes" |
| 2048 | # toolset is the tools within the tools directory that we build for |
| 2049 | # this particular target. |
| 2050 | toolset="$iaudiobitmaptools" |
| 2051 | # architecture, manufacturer and model for the target-tree build |
| 2052 | t_cpu="coldfire" |
| 2053 | t_manufacturer="iaudio" |
| 2054 | t_model="m3" |
| 2055 | ;; |
| 2056 | |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 2057 | 40|gigabeatfx) |
Jens Arnold | 9382e55 | 2007-07-26 22:42:31 +0000 | [diff] [blame] | 2058 | target_id=20 |
Björn Stenberg | c074044 | 2009-12-07 12:19:08 +0000 | [diff] [blame] | 2059 | modelname="gigabeatfx" |
Rafaël Carré | 08fd8ad | 2011-12-15 17:50:33 +0000 | [diff] [blame] | 2060 | target="GIGABEAT_F" |
Jens Arnold | 9382e55 | 2007-07-26 22:42:31 +0000 | [diff] [blame] | 2061 | memory=32 # always |
| 2062 | arm9tdmicc |
| 2063 | tool="$rootdir/tools/scramble -add=giga" |
| 2064 | bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" |
| 2065 | bmp2rb_native="$rootdir/tools/bmp2rb -f 4" |
| 2066 | output="rockbox.gigabeat" |
Jonathan Gordon | b6867dc | 2010-05-17 15:03:59 +0000 | [diff] [blame] | 2067 | appextra="recorder:gui:radio" |
Jens Arnold | 9382e55 | 2007-07-26 22:42:31 +0000 | [diff] [blame] | 2068 | plugins="yes" |
| 2069 | swcodec="yes" |
| 2070 | toolset=$gigabeatbitmaptools |
| 2071 | boottool="$rootdir/tools/scramble -gigabeat" |
| 2072 | bootoutput="FWIMG01.DAT" |
Barry Wardell | 14ed3ca | 2007-03-16 14:28:00 +0000 | [diff] [blame] | 2073 | # architecture, manufacturer and model for the target-tree build |
| 2074 | t_cpu="arm" |
Jens Arnold | 9382e55 | 2007-07-26 22:42:31 +0000 | [diff] [blame] | 2075 | t_manufacturer="s3c2440" |
| 2076 | t_model="gigabeat-fx" |
Barry Wardell | 14ed3ca | 2007-03-16 14:28:00 +0000 | [diff] [blame] | 2077 | ;; |
| 2078 | |
Will Robertson | 590501c | 2007-09-21 15:51:53 +0000 | [diff] [blame] | 2079 | 41|gigabeats) |
| 2080 | target_id=26 |
Daniel Stenberg | 9759c03 | 2008-01-23 10:59:17 +0000 | [diff] [blame] | 2081 | modelname="gigabeats" |
Rafaël Carré | 08fd8ad | 2011-12-15 17:50:33 +0000 | [diff] [blame] | 2082 | target="GIGABEAT_S" |
Michael Sevakis | a07c034 | 2008-02-08 02:20:05 +0000 | [diff] [blame] | 2083 | memory=64 |
Nils Wallménius | 7b8f4a5 | 2008-02-10 17:40:06 +0000 | [diff] [blame] | 2084 | arm1136jfscc |
Will Robertson | 590501c | 2007-09-21 15:51:53 +0000 | [diff] [blame] | 2085 | tool="$rootdir/tools/scramble -add=gigs" |
| 2086 | bmp2rb_mono="$rootdir/tools/bmp2rb -f 0" |
| 2087 | bmp2rb_native="$rootdir/tools/bmp2rb -f 4" |
| 2088 | output="rockbox.gigabeat" |
Jonathan Gordon | b6867dc | 2010-05-17 15:03:59 +0000 | [diff] [blame] | 2089 | appextra="recorder:gui:radio" |
Will Robertson | 8215b34 | 2008-02-17 12:23:02 +0000 | [diff] [blame] | 2090 | plugins="yes" |
Will Robertson | 26a05af | 2007-09-22 02:17:08 +0000 | [diff] [blame] | 2091 | swcodec="yes" |
Dominik Riebeling | b82963b | 2009-10-27 21:15:21 +0000 | [diff] [blame] | 2092 | toolset="$gigabeatbitmaptools" |
Will Robertson | 590501c | 2007-09-21 15:51:53 +0000 | [diff] [blame] | 2093 | boottool="$rootdir/tools/scramble -gigabeats" |
| 2094 | bootoutput="nk.bin" |
| 2095 | # architecture, manufacturer and model for the target-tree build |
| 2096 | t_cpu="arm" |
| 2097 | t_manufacturer="imx31" |
| 2098 | t_model="gigabeat-s" |
| 2099 | ;; |
| 2100 | |
Karl Kurbjun | 7b97fe2 | |