forked from len0rd/rockbox
1) Introduces apps/features.txt that controls which strings are included for each target based on defines. 2) .lng and .voice files are now target specific and the format versions of both these file types have been bumped, which means that new voice files are needed. 3) Use the 'features' mechanism to exclude strings for targets that didn't use them. 4) Delete unused and deprecated and duplicated strings, sort strings in english.lang Some string IDs were changed so translations will be slightly worse than before. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14198 a1c6a512-1295-4272-9138-f99709370657
1814 lines
48 KiB
Bash
Executable file
1814 lines
48 KiB
Bash
Executable file
#!/bin/sh
|
|
# __________ __ ___.
|
|
# Open \______ \ ____ ____ | | _\_ |__ _______ ___
|
|
# Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
|
|
# Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
|
|
# Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
|
|
# \/ \/ \/ \/ \/
|
|
# $Id$
|
|
#
|
|
|
|
# global CC options for all platforms
|
|
CCOPTS="-W -Wall -Wundef -O -nostdlib -ffreestanding -Wstrict-prototypes"
|
|
|
|
use_logf="#undef ROCKBOX_HAS_LOGF"
|
|
|
|
scriptver=`echo '$Revision$' | sed -e 's:\\$::g' -e 's/Revision: //'`
|
|
|
|
#
|
|
# Begin Function Definitions
|
|
#
|
|
input() {
|
|
read response
|
|
echo $response
|
|
}
|
|
|
|
prefixtools () {
|
|
prefix="$1"
|
|
CC=${prefix}gcc
|
|
WINDRES=${prefix}windres
|
|
DLLTOOL=${prefix}dlltool
|
|
DLLWRAP=${prefix}dllwrap
|
|
RANLIB=${prefix}ranlib
|
|
LD=${prefix}ld
|
|
AR=${prefix}ar
|
|
AS=${prefix}as
|
|
OC=${prefix}objcopy
|
|
}
|
|
|
|
crosswincc () {
|
|
# naive approach to selecting a mingw cross-compiler on linux/*nix
|
|
echo "Enabling win32 crosscompiling"
|
|
|
|
prefixtools i586-mingw32msvc-
|
|
|
|
LDOPTS="-lgdi32 -luser32 -mwindows"
|
|
# add cross-compiler option(s)
|
|
GCCOPTS="$GCCOPTS -mno-cygwin"
|
|
|
|
output="rockboxui.exe" # use this as output binary name
|
|
crosscompile="yes"
|
|
endian="little" # windows is little endian
|
|
}
|
|
|
|
# scan the $PATH for the given command
|
|
findtool(){
|
|
file="$1"
|
|
|
|
IFS=":"
|
|
for path in $PATH
|
|
do
|
|
# echo "checks for $file in $path" >&2
|
|
if test -f "$path/$file"; then
|
|
echo "$path/$file"
|
|
return
|
|
fi
|
|
done
|
|
}
|
|
|
|
|
|
simcc () {
|
|
|
|
# default tool setup for native building
|
|
prefixtools ""
|
|
|
|
simver=sdl
|
|
GCCOPTS='-W -Wall -g -fno-builtin'
|
|
|
|
output="rockboxui" # use this as default output binary name
|
|
|
|
# generic sdl-config checker
|
|
sdl=`findtool sdl-config`
|
|
|
|
if [ -z "$sdl" ]; then
|
|
echo "configure didn't find sdl-config, which indicates that you"
|
|
echo "don't have SDL (properly) installed. Please correct and"
|
|
echo "re-run configure!"
|
|
exit
|
|
fi
|
|
|
|
# default share option, override below if needed
|
|
SHARED_FLAG="-shared"
|
|
|
|
case $uname in
|
|
CYGWIN*)
|
|
echo "Cygwin host detected"
|
|
|
|
# sdl version
|
|
GCCOPTS="$GCCOPTS `sdl-config --cflags`"
|
|
LDOPTS="`sdl-config --libs` -mconsole"
|
|
|
|
output="rockboxui.exe" # use this as output binary name
|
|
;;
|
|
|
|
Linux)
|
|
echo "Linux host detected"
|
|
GCCOPTS="$GCCOPTS"
|
|
if [ "0" != `sdl-config --libs |grep -c mwindows` ]; then
|
|
# Enable crosscompiling if sdl-config is from Windows SDL
|
|
crosswincc
|
|
fi
|
|
GCCOPTS="$GCCOPTS `sdl-config --cflags`"
|
|
LDOPTS="`sdl-config --libs`"
|
|
;;
|
|
|
|
FreeBSD)
|
|
echo "FreeBSD host detected"
|
|
# sdl version
|
|
GCCOPTS="$GCCOPTS `sdl-config --cflags`"
|
|
LDOPTS="`sdl-config --libs`"
|
|
;;
|
|
|
|
Darwin)
|
|
echo "Darwin host detected"
|
|
# sdl version
|
|
GCCOPTS="$GCCOPTS `sdl-config --cflags`"
|
|
LDOPTS="`sdl-config --libs`"
|
|
SHARED_FLAG="-dynamiclib -Wl\,-single_module"
|
|
;;
|
|
|
|
*)
|
|
echo "Unsupported system: $uname, fix configure and retry"
|
|
exit
|
|
;;
|
|
esac
|
|
|
|
if [ "`uname -m`" = "x86_64" ]; then
|
|
GCCOPTS="$GCCOPTS -fPIC" # needed to make shared objects link
|
|
fi
|
|
|
|
GCCOPTS="$GCCOPTS -I\$(SIMDIR)"
|
|
|
|
if test "X$crosscompile" != "Xyes"; then
|
|
id=$$
|
|
cat >/tmp/conftest-$id.c <<EOF
|
|
#include <stdio.h>
|
|
int main(int argc, char **argv)
|
|
{
|
|
int var=0;
|
|
char *varp = (char *)&var;
|
|
*varp=1;
|
|
|
|
printf("%d\n", var);
|
|
return 0;
|
|
}
|
|
EOF
|
|
|
|
$CC -o /tmp/conftest-$id /tmp/conftest-$id.c 2>/dev/null
|
|
|
|
if test `/tmp/conftest-$id 2>/dev/null` -gt "1"; then
|
|
# big endian
|
|
endian="big"
|
|
else
|
|
# little endian
|
|
endian="little"
|
|
fi
|
|
echo "Simulator environment deemed $endian endian"
|
|
|
|
# use wildcard here to make it work even if it was named *.exe like
|
|
# on cygwin
|
|
rm -f /tmp/conftest-$id*
|
|
fi
|
|
}
|
|
|
|
shcc () {
|
|
prefixtools sh-elf-
|
|
GCCOPTS="$CCOPTS -m1"
|
|
GCCOPTIMIZE="-fomit-frame-pointer -fschedule-insns"
|
|
endian="big"
|
|
}
|
|
|
|
calmrisccc () {
|
|
prefixtools calmrisc16-unknown-elf-
|
|
GCCOPTS="-Wl\,--no-check-sections $CCOPTS"
|
|
GCCOPTIMIZE="-fomit-frame-pointer"
|
|
endian="big"
|
|
}
|
|
|
|
coldfirecc () {
|
|
prefixtools m68k-elf-
|
|
GCCOPTS="$CCOPTS -m5206e -Wa\,-m5249 -malign-int -mstrict-align"
|
|
GCCOPTIMIZE="-fomit-frame-pointer"
|
|
endian="big"
|
|
}
|
|
|
|
arm7tdmicc () {
|
|
prefixtools arm-elf-
|
|
GCCOPTS="$CCOPTS -mcpu=arm7tdmi"
|
|
if test "X$1" != "Xshort"; then
|
|
GCCOPTS="$GCCOPTS -mlong-calls"
|
|
fi
|
|
GCCOPTIMIZE="-fomit-frame-pointer"
|
|
endian="little"
|
|
}
|
|
|
|
arm9tdmicc () {
|
|
prefixtools arm-elf-
|
|
GCCOPTS="$CCOPTS -mcpu=arm9tdmi -mlong-calls"
|
|
GCCOPTIMIZE="-fomit-frame-pointer"
|
|
endian="little"
|
|
}
|
|
|
|
whichadvanced () {
|
|
##################################################################
|
|
# Prompt for specific developer options
|
|
#
|
|
echo ""
|
|
echo "Enter your developer options (press enter when done)"
|
|
echo -n "(D)EBUG, (L)ogf, (S)imulator, (P)rofiling"
|
|
if [ "$memory" = "2" ]; then
|
|
echo -n ", (8)MB MOD"
|
|
fi
|
|
if [ "$archos" = "h120" ]; then
|
|
echo -n ", (R)TC MOD"
|
|
fi
|
|
echo ""
|
|
|
|
cont=1
|
|
|
|
while [ $cont = "1" ]; do
|
|
|
|
option=`input`;
|
|
|
|
case $option in
|
|
[Dd])
|
|
if [ "yes" = "$profile" ]; then
|
|
echo "Debug is incompatible with profiling"
|
|
else
|
|
echo "define DEBUG"
|
|
use_debug="yes"
|
|
fi
|
|
;;
|
|
[Ll])
|
|
echo "logf() support enabled"
|
|
logf="yes"
|
|
;;
|
|
[Ss])
|
|
echo "Simulator build enabled"
|
|
simulator="yes"
|
|
;;
|
|
[Pp])
|
|
if [ "yes" = "$use_debug" ]; then
|
|
echo "Profiling is incompatible with debug"
|
|
else
|
|
echo "Profiling support is enabled"
|
|
profile="yes"
|
|
fi
|
|
;;
|
|
8)
|
|
if [ "$memory" = "2" ]; then
|
|
memory="8"
|
|
echo "Memory size selected: 8MB"
|
|
else
|
|
cont=0
|
|
fi
|
|
;;
|
|
[Rr])
|
|
if [ "$archos" = "h120" ]; then
|
|
config_rtc="#define CONFIG_RTC RTC_DS1339_DS3231"
|
|
have_rtc_alarm="#define HAVE_RTC_ALARM"
|
|
echo "RTC functions enabled (DS1339/DS3231)"
|
|
else
|
|
cont=0
|
|
fi
|
|
;;
|
|
*)
|
|
cont=0
|
|
;;
|
|
esac
|
|
done
|
|
echo "done"
|
|
|
|
if [ "yes" = "$use_debug" ]; then
|
|
debug="-DDEBUG"
|
|
GCCOPTS="$GCCOPTS -g -DDEBUG"
|
|
fi
|
|
if [ "yes" = "$logf" ]; then
|
|
use_logf="#define ROCKBOX_HAS_LOGF 1"
|
|
fi
|
|
if [ "yes" = "$simulator" ]; then
|
|
debug="-DDEBUG"
|
|
extradefines="$extradefines -DSIMULATOR"
|
|
fi
|
|
if [ "yes" = "$profile" ]; then
|
|
extradefines="$extradefines -DRB_PROFILE"
|
|
PROFILE_OPTS="-finstrument-functions"
|
|
fi
|
|
}
|
|
|
|
voiceconfig () {
|
|
echo "Building voice for $archos"
|
|
echo ""
|
|
|
|
if [ `which flite` ]; then
|
|
FLITE="F(l)ite "
|
|
FLITE_OPTS="FLITE_OPTS=\"\""
|
|
DEFAULT_TTS="flite"
|
|
DEFAULT_TTS_OPTS=$FLITE_OPTS
|
|
DEFAULT_NOISEFLOOR="500"
|
|
DEFAULT_CHOICE="L"
|
|
fi
|
|
if [ `which speak` ]; then
|
|
ESPEAK="(e)Speak "
|
|
ESPEAK_OPTS="ESPEAK_OPTS=\"\""
|
|
DEFAULT_TTS="espeak"
|
|
DEFAULT_TTS_OPTS=$ESPEAK_OPTS
|
|
DEFAULT_NOISEFLOOR="500"
|
|
DEFAULT_CHOICE="e"
|
|
fi
|
|
if [ `which festival` ]; then
|
|
FESTIVAL="(F)estival "
|
|
FESTIVAL_OPTS="FLITE_OPTS=\"\""
|
|
DEFAULT_TTS="festival"
|
|
DEFAULT_TTS_OPTS=$FESTIVAL_OPTS
|
|
DEFAULT_NOISEFLOOR="500"
|
|
DEFAULT_CHOICE="F"
|
|
fi
|
|
|
|
if [ "$FESTIVAL" = "$FLITE" ] && [ "$FLITE" = "$ESPEAK" ]; then
|
|
echo "You need Festival, eSpeak or Flite in your path to build voice files"
|
|
exit
|
|
fi
|
|
|
|
echo "TTS engine to use: ${FLITE}${FESTIVAL}${ESPEAK}(${DEFAULT_CHOICE})?"
|
|
option=`input`
|
|
case "$option" in
|
|
[Ll])
|
|
TTS_ENGINE="flite"
|
|
NOISEFLOOR="500" # TODO: check this value
|
|
TTS_OPTS=$FLITE_OPTS
|
|
;;
|
|
[Ee])
|
|
TTS_ENGINE="espeak"
|
|
NOISEFLOOR="500"
|
|
TTS_OPTS=$ESPEAK_OPTS
|
|
;;
|
|
[Ff])
|
|
TTS_ENGINE="festival"
|
|
NOISEFLOOR="500"
|
|
TTS_OPTS=$FESTIVAL_OPTS
|
|
;;
|
|
*)
|
|
TTS_ENGINE=$DEFAULT_TTS
|
|
TTS_OPTS=$DEFAULT_TTS_OPTS
|
|
NOISEFLOOR=$DEFAULT_NOISEFLOOR
|
|
esac
|
|
echo "Using $TTS_ENGINE for TTS"
|
|
|
|
echo ""
|
|
|
|
if [ `which oggenc` ]; then
|
|
OGGENC="(O)ggenc "
|
|
DEFAULT_ENC="oggenc"
|
|
VORBIS_OPTS="VORBIS_OPTS=\"-q0 --downmix\""
|
|
DEFAULT_ENC_OPTS=$VORBIS_OPTS
|
|
DEFAULT_CHOICE="O"
|
|
fi
|
|
if [ `which speexenc` ]; then
|
|
SPEEXENC="(S)peexenc "
|
|
DEFAULT_ENC="speexenc"
|
|
SPEEX_OPTS="" # TODO: find appropriate options for speex
|
|
DEFAULT_ENC_OPTS=$SPEEX_OPTS
|
|
DEFAULT_CHOICE="S"
|
|
fi
|
|
if [ `which lame` ]; then
|
|
LAME="(L)ame "
|
|
DEFAULT_ENC="lame"
|
|
LAME_OPTS="LAME_OPTS=\"--resample 12 -t -m m -h -V 9 -S\""
|
|
DEFAULT_ENC_OPTS=$LAME_OPTS
|
|
DEFAULT_CHOICE="L"
|
|
fi
|
|
|
|
if [ "$LAME" = "" ]; then
|
|
echo "You need to have Lame installed to build voice files"
|
|
fi
|
|
|
|
echo "Encoder to use: ${LAME}${OGGENC}${SPEEXENC}(${DEFAULT_CHOICE})?"
|
|
echo ""
|
|
echo "Note: Use Lame - the other options won't work"
|
|
option=`input`
|
|
case "$option" in
|
|
[Oo])
|
|
ENCODER="oggenc"
|
|
ENC_OPTS=$VORBIS_OPTS
|
|
;;
|
|
[Ss])
|
|
ENCODER="speexenc"
|
|
ENC_OPTS=$SPEEX_OPTS
|
|
;;
|
|
[Ll])
|
|
ENCODER="lame"
|
|
ENC_OPTS=$LAME_OPTS
|
|
;;
|
|
*)
|
|
ENCODER=$DEFAULT_ENC
|
|
ENC_OPTS=$DEFAULT_ENC_OPTS
|
|
esac
|
|
echo "Using $ENCODER for encoding voice clips"
|
|
|
|
cat > voicesettings.sh <<EOF
|
|
TTS_ENGINE="${TTS_ENGINE}"
|
|
ENCODER="${ENCODER}"
|
|
TEMPDIR="${pwd}"
|
|
NOISEFLOOR="${NOISEFLOOR}"
|
|
${TTS_OPTS}
|
|
${ENC_OPTS}
|
|
EOF
|
|
}
|
|
|
|
picklang() {
|
|
# figure out which languages that are around
|
|
for file in $rootdir/apps/lang/*.lang; do
|
|
clean=`echo $file | sed -e 's:.*/::g' | cut "-d." -f1`
|
|
langs="$langs $clean"
|
|
done
|
|
|
|
num=1
|
|
for one in $langs; do
|
|
echo "$num. $one"
|
|
num=`expr $num + 1`
|
|
done
|
|
|
|
read pick
|
|
return $pick;
|
|
}
|
|
|
|
whichlang() {
|
|
num=1
|
|
for one in $langs; do
|
|
if [ "$num" = "$pick" ]; then
|
|
echo $one
|
|
return
|
|
fi
|
|
num=`expr $num + 1`
|
|
done
|
|
}
|
|
|
|
opt=$1
|
|
|
|
if test "$opt" = "--help"; then
|
|
echo "Rockbox configure script."
|
|
echo "Invoke this in a directory to generate a Makefile to build Rockbox"
|
|
echo "Do *NOT* run this within the tools directory!"
|
|
echo ""
|
|
echo "Usage: configure [--ccache][--no-ccache]"
|
|
exit
|
|
fi
|
|
|
|
if test -r "configure"; then
|
|
# this is a check for a configure script in the current directory, it there
|
|
# is one, try to figure out if it is this one!
|
|
|
|
if { grep "^# Jukebox" configure >/dev/null 2>&1 ; } then
|
|
echo "WEEEEEEEEP. Don't run this configure script within the tools directory."
|
|
echo "It will only cause you pain and grief. Instead do this:"
|
|
echo ""
|
|
echo " cd .."
|
|
echo " mkdir build-dir"
|
|
echo " cd build-dir"
|
|
echo " ../tools/configure"
|
|
echo ""
|
|
echo "Much happiness will arise from this. Enjoy"
|
|
exit
|
|
fi
|
|
fi
|
|
|
|
# get our current directory
|
|
pwd=`pwd`;
|
|
|
|
if { echo $pwd | grep " "; } then
|
|
echo "You're running this script in a path that contains space. The build"
|
|
echo "system is unfortunately not clever enough to deal with this. Please"
|
|
echo "run the script from a different path, rename the path or fix the build"
|
|
echo "system!"
|
|
exit
|
|
fi
|
|
|
|
if [ -z "$rootdir" ]; then
|
|
##################################################################
|
|
# Figure out where the source code root is!
|
|
#
|
|
rootdir=`dirname $0`/../
|
|
|
|
#####################################################################
|
|
# Convert the possibly relative directory name to an absolute version
|
|
#
|
|
now=`pwd`
|
|
cd $rootdir
|
|
rootdir=`pwd`
|
|
|
|
# cd back to the build dir
|
|
cd $now
|
|
fi
|
|
|
|
apps="apps"
|
|
appsdir='\$(ROOTDIR)/apps'
|
|
firmdir='\$(ROOTDIR)/firmware'
|
|
toolsdir='\$(ROOTDIR)/tools'
|
|
|
|
|
|
##################################################################
|
|
# Figure out target platform
|
|
#
|
|
|
|
echo "Enter target platform:"
|
|
cat <<EOF
|
|
==Archos== ==iriver== ==Apple iPod==
|
|
0) Player/Studio 10) H120/H140 20) Color/Photo
|
|
1) Recorder 11) H320/H340 21) Nano
|
|
2) FM Recorder 12) iHP-100/110/115 22) Video
|
|
3) Recorder v2 13) iFP-790 23) 3G
|
|
4) Ondio SP 14) H10 20Gb 24) 4G Grayscale
|
|
5) Ondio FM 15) H10 5/6Gb 25) Mini 1G
|
|
6) AV300 26) Mini 2G
|
|
27) 1G, 2G
|
|
|
|
==iAudio== ==Toshiba== ==SanDisk==
|
|
30) X5/X5V/X5L 40) Gigabeat F 50) Sansa e200
|
|
31) M5/M5L 51) Sansa e200R
|
|
|
|
==Tatung==
|
|
60) Elio TPJ-1022
|
|
EOF
|
|
|
|
buildfor=`input`;
|
|
|
|
# Set of tools built for all target platforms:
|
|
toolset="rdf2binary convbdf codepages"
|
|
|
|
# Toolsets for some target families:
|
|
archosbitmaptools="$toolset scramble descramble sh2d uclpack bmp2rb"
|
|
iriverbitmaptools="$toolset scramble descramble mkboot bmp2rb"
|
|
iaudiobitmaptools="$toolset scramble descramble mkboot bmp2rb"
|
|
ipodbitmaptools="$toolset scramble ipod_fw bmp2rb codepages"
|
|
gigabeatbitmaptools="$toolset scramble descramble bmp2rb"
|
|
# generic is used by IFP, H10, Sansa-e200
|
|
genericbitmaptools="$toolset bmp2rb"
|
|
|
|
|
|
# ---- For each target ----
|
|
#
|
|
# *Variables*
|
|
# target_id: a unique number identifying this target, DOES NOT necessarily
|
|
# have to be the menu number. Just use the currently highest
|
|
# number+1 when you add a new target.
|
|
# archos: short model name used all over to identify this target
|
|
# memory: number of megabytes of RAM this target has. If the amount can
|
|
# be selected by the size prompt, let memory be unset here
|
|
# target: -Ddefine passed to the build commands to make the correct
|
|
# config-*.h file get included etc
|
|
# tool: the tool that takes a plain binary and converts that into a
|
|
# working "firmware" file for your target
|
|
# output: the final output file name
|
|
# boottool: the tool that takes a plain binary and generates a bootloader
|
|
# file for your target (or blank to use $tool)
|
|
# bootoutput:the final output file name for the bootloader (or blank to use
|
|
# $output)
|
|
# appextra: passed to the APPEXTRA variable in the Makefiles.
|
|
# TODO: add proper explanation
|
|
# archosrom: used only for Archos targets that build a special flashable .ucl
|
|
# image. Set to blank for other builds.
|
|
# flash: the same as archosrom. These two should be merged
|
|
# plugins: set to 'yes' to build the plugins. Early development builds can
|
|
# set this to no in the early stages to have an easier life for a
|
|
# while
|
|
# swcodec: set 'yes' on swcodec targets
|
|
# toolset: lists what particular tools in the tools/ directory that this
|
|
# target needs to have built prior to building Rockbox
|
|
#
|
|
# *Functions*
|
|
# *cc: sets up gcc and compiler options for your target builds. Note
|
|
# that if you select a simulator build, the compiler selection is
|
|
# overridden later in the script.
|
|
|
|
case $buildfor in
|
|
|
|
0|player)
|
|
target_id=1
|
|
archos="player"
|
|
target="-DARCHOS_PLAYER"
|
|
shcc
|
|
tool="$rootdir/tools/scramble"
|
|
output="archos.mod"
|
|
appextra="player:gui"
|
|
archosrom="$pwd/rombox.ucl"
|
|
flash="$pwd/rockbox.ucl"
|
|
plugins="yes"
|
|
swcodec=""
|
|
|
|
# toolset is the tools within the tools directory that we build for
|
|
# this particular target.
|
|
toolset="$toolset scramble descramble sh2d player_unifont uclpack"
|
|
|
|
# Note: the convbdf is present in the toolset just because: 1) the
|
|
# firmware/Makefile assumes it is present always, and 2) we will need it when we
|
|
# build the player simulator
|
|
|
|
t_cpu="sh"
|
|
t_manufacturer="archos"
|
|
t_model="player"
|
|
;;
|
|
|
|
1|recorder)
|
|
target_id=2
|
|
archos="recorder"
|
|
target="-DARCHOS_RECORDER"
|
|
shcc
|
|
tool="$rootdir/tools/scramble"
|
|
bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
|
|
bmp2rb_native="$rootdir/tools/bmp2rb -f 0"
|
|
output="ajbrec.ajz"
|
|
appextra="recorder:gui"
|
|
archosrom=""#"$pwd/rombox.ucl"
|
|
flash="$pwd/rockbox.ucl"
|
|
plugins="yes"
|
|
swcodec=""
|
|
# toolset is the tools within the tools directory that we build for
|
|
# this particular target.
|
|
toolset=$archosbitmaptools
|
|
t_cpu="sh"
|
|
t_manufacturer="archos"
|
|
t_model="recorder"
|
|
;;
|
|
|
|
2|fmrecorder)
|
|
target_id=3
|
|
archos="fmrecorder"
|
|
target="-DARCHOS_FMRECORDER"
|
|
shcc
|
|
tool="$rootdir/tools/scramble -fm"
|
|
bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
|
|
bmp2rb_native="$rootdir/tools/bmp2rb -f 0"
|
|
output="ajbrec.ajz"
|
|
appextra="recorder:gui"
|
|
archosrom=""#"$pwd/rombox.ucl"
|
|
flash="$pwd/rockbox.ucl"
|
|
plugins="yes"
|
|
swcodec=""
|
|
# toolset is the tools within the tools directory that we build for
|
|
# this particular target.
|
|
toolset=$archosbitmaptools
|
|
t_cpu="sh"
|
|
t_manufacturer="archos"
|
|
t_model="fm_v2"
|
|
;;
|
|
|
|
3|recorderv2)
|
|
target_id=4
|
|
archos="recorderv2"
|
|
target="-DARCHOS_RECORDERV2"
|
|
shcc
|
|
tool="$rootdir/tools/scramble -v2"
|
|
bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
|
|
bmp2rb_native="$rootdir/tools/bmp2rb -f 0"
|
|
output="ajbrec.ajz"
|
|
appextra="recorder:gui"
|
|
archosrom=""#"$pwd/rombox.ucl"
|
|
flash="$pwd/rockbox.ucl"
|
|
plugins="yes"
|
|
swcodec=""
|
|
# toolset is the tools within the tools directory that we build for
|
|
# this particular target.
|
|
toolset=$archosbitmaptools
|
|
t_cpu="sh"
|
|
t_manufacturer="archos"
|
|
t_model="fm_v2"
|
|
;;
|
|
|
|
4|ondiosp)
|
|
target_id=7
|
|
archos="ondiosp"
|
|
target="-DARCHOS_ONDIOSP"
|
|
shcc
|
|
tool="$rootdir/tools/scramble -osp"
|
|
bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
|
|
bmp2rb_native="$rootdir/tools/bmp2rb -f 0"
|
|
output="ajbrec.ajz"
|
|
appextra="recorder:gui"
|
|
archosrom="$pwd/rombox.ucl"
|
|
flash="$pwd/rockbox.ucl"
|
|
plugins="yes"
|
|
swcodec=""
|
|
# toolset is the tools within the tools directory that we build for
|
|
# this particular target.
|
|
toolset=$archosbitmaptools
|
|
t_cpu="sh"
|
|
t_manufacturer="archos"
|
|
t_model="ondio"
|
|
;;
|
|
|
|
5|ondiofm)
|
|
target_id=8
|
|
archos="ondiofm"
|
|
target="-DARCHOS_ONDIOFM"
|
|
shcc
|
|
tool="$rootdir/tools/scramble -ofm"
|
|
bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
|
|
bmp2rb_native="$rootdir/tools/bmp2rb -f 0"
|
|
output="ajbrec.ajz"
|
|
appextra="recorder:gui"
|
|
archosrom=""#"$pwd/rombox.ucl"
|
|
flash="$pwd/rockbox.ucl"
|
|
plugins="yes"
|
|
swcodec=""
|
|
toolset=$archosbitmaptools
|
|
t_cpu="sh"
|
|
t_manufacturer="archos"
|
|
t_model="ondio"
|
|
;;
|
|
|
|
6|av300)
|
|
target_id=26
|
|
archos="av300"
|
|
target="-DARCHOS_AV300"
|
|
memory=16 # always
|
|
arm7tdmicc
|
|
tool="$rootdir/tools/scramble -mm=C"
|
|
bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
|
|
bmp2rb_native="$rootdir/tools/bmp2rb -f 6"
|
|
output="cjbm.ajz"
|
|
appextra="recorder:gui"
|
|
archosrom=""
|
|
flash=""
|
|
plugins="yes"
|
|
swcodec=""
|
|
# toolset is the tools within the tools directory that we build for
|
|
# this particular target.
|
|
toolset="$toolset scramble descramble bmp2rb codepages"
|
|
# architecture, manufacturer and model for the target-tree build
|
|
t_cpu="arm"
|
|
t_manufacturer="archos"
|
|
t_model="av300"
|
|
;;
|
|
|
|
10|h120)
|
|
target_id=9
|
|
archos="h120"
|
|
target="-DIRIVER_H120"
|
|
memory=32 # always
|
|
coldfirecc
|
|
tool="$rootdir/tools/scramble -add=h120"
|
|
bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
|
|
bmp2rb_native="$rootdir/tools/bmp2rb -f 2"
|
|
bmp2rb_remotemono="$rootdir/tools/bmp2rb -f 0"
|
|
bmp2rb_remotenative="$rootdir/tools/bmp2rb -f 0"
|
|
output="rockbox.iriver"
|
|
appextra="recorder:gui"
|
|
archosrom=""
|
|
flash="$pwd/rombox.iriver"
|
|
plugins="yes"
|
|
swcodec="yes"
|
|
# toolset is the tools within the tools directory that we build for
|
|
# this particular target.
|
|
toolset=$iriverbitmaptools
|
|
t_cpu="coldfire"
|
|
t_manufacturer="iriver"
|
|
t_model="h100"
|
|
;;
|
|
|
|
11|h300)
|
|
target_id=10
|
|
archos="h300"
|
|
target="-DIRIVER_H300"
|
|
memory=32 # always
|
|
coldfirecc
|
|
tool="$rootdir/tools/scramble -add=h300"
|
|
bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
|
|
bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
|
|
bmp2rb_remotemono="$rootdir/tools/bmp2rb -f 0"
|
|
bmp2rb_remotenative="$rootdir/tools/bmp2rb -f 0"
|
|
output="rockbox.iriver"
|
|
appextra="recorder:gui"
|
|
archosrom=""
|
|
flash=""
|
|
plugins="yes"
|
|
swcodec="yes"
|
|
# toolset is the tools within the tools directory that we build for
|
|
# this particular target.
|
|
toolset=$iriverbitmaptools
|
|
t_cpu="coldfire"
|
|
t_manufacturer="iriver"
|
|
t_model="h300"
|
|
;;
|
|
|
|
12|h100)
|
|
target_id=11
|
|
archos="h100"
|
|
target="-DIRIVER_H100"
|
|
memory=16 # always
|
|
coldfirecc
|
|
tool="$rootdir/tools/scramble -add=h100"
|
|
bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
|
|
bmp2rb_native="$rootdir/tools/bmp2rb -f 2"
|
|
bmp2rb_remotemono="$rootdir/tools/bmp2rb -f 0"
|
|
bmp2rb_remotenative="$rootdir/tools/bmp2rb -f 0"
|
|
output="rockbox.iriver"
|
|
appextra="recorder:gui"
|
|
archosrom=""
|
|
flash=""
|
|
plugins="yes"
|
|
swcodec="yes"
|
|
# toolset is the tools within the tools directory that we build for
|
|
# this particular target.
|
|
toolset=$iriverbitmaptools
|
|
t_cpu="coldfire"
|
|
t_manufacturer="iriver"
|
|
t_model="h100"
|
|
;;
|
|
|
|
13|ifp7xx)
|
|
target_id=19
|
|
archos="ifp7xx"
|
|
target="-DIRIVER_IFP7XX"
|
|
memory=1
|
|
arm7tdmicc short
|
|
tool="cp"
|
|
bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
|
|
bmp2rb_native="$rootdir/tools/bmp2rb -f 0"
|
|
output="rockbox.wma"
|
|
appextra="recorder:gui"
|
|
archosrom=""
|
|
flash=""
|
|
plugins="yes"
|
|
swcodec="yes"
|
|
# toolset is the tools within the tools directory that we build for
|
|
# this particular target.
|
|
toolset=$genericbitmaptools
|
|
t_cpu="arm"
|
|
t_manufacturer="pnx0101"
|
|
t_model="iriver-ifp7xx"
|
|
;;
|
|
|
|
14|h10)
|
|
target_id=22
|
|
archos="h10"
|
|
target="-DIRIVER_H10"
|
|
memory=32 # always
|
|
arm7tdmicc
|
|
tool="$rootdir/tools/scramble -mi4v3 -model=h10 -type=RBOS"
|
|
bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
|
|
bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
|
|
output="rockbox.mi4"
|
|
appextra="recorder:gui"
|
|
archosrom=""
|
|
flash=""
|
|
plugins="yes"
|
|
swcodec="yes"
|
|
boottool="$rootdir/tools/scramble -mi4v3 -model=h10 -type=RBBL"
|
|
bootoutput="H10_20GC.mi4"
|
|
# toolset is the tools within the tools directory that we build for
|
|
# this particular target.
|
|
toolset="$genericbitmaptools scramble"
|
|
# architecture, manufacturer and model for the target-tree build
|
|
t_cpu="arm"
|
|
t_manufacturer="iriver"
|
|
t_model="h10"
|
|
;;
|
|
|
|
15|h10_5gb)
|
|
target_id=24
|
|
archos="h10_5gb"
|
|
target="-DIRIVER_H10_5GB"
|
|
memory=32 # always
|
|
arm7tdmicc
|
|
tool="$rootdir/tools/scramble -mi4v2 -model=h105 -type=RBOS"
|
|
bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
|
|
bmp2rb_native="$rootdir/tools/bmp2rb -f 5"
|
|
output="rockbox.mi4"
|
|
appextra="recorder:gui"
|
|
archosrom=""
|
|
flash=""
|
|
plugins="yes"
|
|
swcodec="yes"
|
|
boottool="$rootdir/tools/scramble -mi4v2 -model=h105 -type=RBBL"
|
|
bootoutput="H10.mi4"
|
|
# toolset is the tools within the tools directory that we build for
|
|
# this particular target.
|
|
toolset="$genericbitmaptools scramble"
|
|
# architecture, manufacturer and model for the target-tree build
|
|
t_cpu="arm"
|
|
t_manufacturer="iriver"
|
|
t_model="h10"
|
|
;;
|
|
|
|
20|ipodcolor)
|
|
target_id=13
|
|
archos="ipodcolor"
|
|
target="-DIPOD_COLOR"
|
|
memory=32 # always
|
|
arm7tdmicc
|
|
tool="$rootdir/tools/scramble -add=ipco"
|
|
bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
|
|
bmp2rb_native="$rootdir/tools/bmp2rb -f 5"
|
|
output="rockbox.ipod"
|
|
appextra="recorder:gui"
|
|
archosrom=""
|
|
flash=""
|
|
plugins="yes"
|
|
swcodec="yes"
|
|
bootoutput="bootloader-$archos.ipod"
|
|
# toolset is the tools within the tools directory that we build for
|
|
# this particular target.
|
|
toolset=$ipodbitmaptools
|
|
# architecture, manufacturer and model for the target-tree build
|
|
t_cpu="arm"
|
|
t_manufacturer="ipod"
|
|
t_model="color"
|
|
;;
|
|
|
|
21|ipodnano)
|
|
target_id=14
|
|
archos="ipodnano"
|
|
target="-DIPOD_NANO"
|
|
memory=32 # always
|
|
arm7tdmicc
|
|
tool="$rootdir/tools/scramble -add=nano"
|
|
bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
|
|
bmp2rb_native="$rootdir/tools/bmp2rb -f 5"
|
|
output="rockbox.ipod"
|
|
appextra="recorder:gui"
|
|
archosrom=""
|
|
flash=""
|
|
plugins="yes"
|
|
swcodec="yes"
|
|
bootoutput="bootloader-$archos.ipod"
|
|
# toolset is the tools within the tools directory that we build for
|
|
# this particular target.
|
|
toolset=$ipodbitmaptools
|
|
# architecture, manufacturer and model for the target-tree build
|
|
t_cpu="arm"
|
|
t_manufacturer="ipod"
|
|
t_model="nano"
|
|
;;
|
|
|
|
22|ipodvideo)
|
|
target_id=15
|
|
archos="ipodvideo"
|
|
target="-DIPOD_VIDEO"
|
|
arm7tdmicc
|
|
tool="$rootdir/tools/scramble -add=ipvd"
|
|
bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
|
|
bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
|
|
output="rockbox.ipod"
|
|
appextra="recorder:gui"
|
|
archosrom=""
|
|
flash=""
|
|
plugins="yes"
|
|
swcodec="yes"
|
|
bootoutput="bootloader-$archos.ipod"
|
|
# toolset is the tools within the tools directory that we build for
|
|
# this particular target.
|
|
toolset=$ipodbitmaptools
|
|
# architecture, manufacturer and model for the target-tree build
|
|
t_cpu="arm"
|
|
t_manufacturer="ipod"
|
|
t_model="video"
|
|
;;
|
|
|
|
23|ipod3g)
|
|
target_id=16
|
|
archos="ipod3g"
|
|
target="-DIPOD_3G"
|
|
memory=32 # always
|
|
arm7tdmicc
|
|
tool="$rootdir/tools/scramble -add=ip3g"
|
|
bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
|
|
bmp2rb_native="$rootdir/tools/bmp2rb -f 6"
|
|
output="rockbox.ipod"
|
|
appextra="recorder:gui"
|
|
archosrom=""
|
|
flash=""
|
|
plugins="yes"
|
|
swcodec="yes"
|
|
bootoutput="bootloader-$archos.ipod"
|
|
# toolset is the tools within the tools directory that we build for
|
|
# this particular target.
|
|
toolset=$ipodbitmaptools
|
|
# architecture, manufacturer and model for the target-tree build
|
|
t_cpu="arm"
|
|
t_manufacturer="ipod"
|
|
t_model="3g"
|
|
;;
|
|
|
|
24|ipod4g)
|
|
target_id=17
|
|
archos="ipod4g"
|
|
target="-DIPOD_4G"
|
|
memory=32 # always
|
|
arm7tdmicc
|
|
tool="$rootdir/tools/scramble -add=ip4g"
|
|
bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
|
|
bmp2rb_native="$rootdir/tools/bmp2rb -f 6"
|
|
output="rockbox.ipod"
|
|
appextra="recorder:gui"
|
|
archosrom=""
|
|
flash=""
|
|
plugins="yes"
|
|
swcodec="yes"
|
|
bootoutput="bootloader-$archos.ipod"
|
|
# toolset is the tools within the tools directory that we build for
|
|
# this particular target.
|
|
toolset=$ipodbitmaptools
|
|
# architecture, manufacturer and model for the target-tree build
|
|
t_cpu="arm"
|
|
t_manufacturer="ipod"
|
|
t_model="4g"
|
|
;;
|
|
|
|
25|ipodmini)
|
|
target_id=18
|
|
archos="ipodmini"
|
|
target="-DIPOD_MINI"
|
|
memory=32 # always
|
|
arm7tdmicc
|
|
tool="$rootdir/tools/scramble -add=mini"
|
|
bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
|
|
bmp2rb_native="$rootdir/tools/bmp2rb -f 6"
|
|
output="rockbox.ipod"
|
|
appextra="recorder:gui"
|
|
archosrom=""
|
|
flash=""
|
|
plugins="yes"
|
|
swcodec="yes"
|
|
bootoutput="bootloader-$archos.ipod"
|
|
# toolset is the tools within the tools directory that we build for
|
|
# this particular target.
|
|
toolset=$ipodbitmaptools
|
|
# architecture, manufacturer and model for the target-tree build
|
|
t_cpu="arm"
|
|
t_manufacturer="ipod"
|
|
t_model="mini"
|
|
;;
|
|
|
|
26|ipodmini2g)
|
|
target_id=21
|
|
archos="ipodmini2g"
|
|
target="-DIPOD_MINI2G"
|
|
memory=32 # always
|
|
arm7tdmicc
|
|
tool="$rootdir/tools/scramble -add=mn2g"
|
|
bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
|
|
bmp2rb_native="$rootdir/tools/bmp2rb -f 6"
|
|
output="rockbox.ipod"
|
|
appextra="recorder:gui"
|
|
archosrom=""
|
|
flash=""
|
|
plugins="yes"
|
|
swcodec="yes"
|
|
bootoutput="bootloader-$archos.ipod"
|
|
# toolset is the tools within the tools directory that we build for
|
|
# this particular target.
|
|
toolset=$ipodbitmaptools
|
|
# architecture, manufacturer and model for the target-tree build
|
|
t_cpu="arm"
|
|
t_manufacturer="ipod"
|
|
t_model="mini2g"
|
|
;;
|
|
|
|
27|ipod1g2g)
|
|
target_id=29
|
|
archos="ipod1g2g"
|
|
target="-DIPOD_1G2G"
|
|
memory=32 # always
|
|
arm7tdmicc
|
|
tool="$rootdir/tools/scramble -add=1g2g"
|
|
bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
|
|
bmp2rb_native="$rootdir/tools/bmp2rb -f 6"
|
|
output="rockbox.ipod"
|
|
appextra="recorder:gui"
|
|
archosrom=""
|
|
flash=""
|
|
plugins="yes"
|
|
swcodec="yes"
|
|
bootoutput="bootloader-$archos.ipod"
|
|
# toolset is the tools within the tools directory that we build for
|
|
# this particular target.
|
|
toolset=$ipodbitmaptools
|
|
# architecture, manufacturer and model for the target-tree build
|
|
t_cpu="arm"
|
|
t_manufacturer="ipod"
|
|
t_model="1g2g"
|
|
;;
|
|
|
|
30|x5)
|
|
target_id=12
|
|
archos="x5"
|
|
target="-DIAUDIO_X5"
|
|
memory=16 # always
|
|
coldfirecc
|
|
tool="$rootdir/tools/scramble -add=iax5"
|
|
bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
|
|
bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
|
|
bmp2rb_remotemono="$rootdir/tools/bmp2rb -f 0"
|
|
bmp2rb_remotenative="$rootdir/tools/bmp2rb -f 7"
|
|
output="rockbox.iaudio"
|
|
appextra="recorder:gui"
|
|
archosrom=""
|
|
flash=""
|
|
plugins="yes"
|
|
swcodec="yes"
|
|
# toolset is the tools within the tools directory that we build for
|
|
# this particular target.
|
|
toolset="$iaudiobitmaptools"
|
|
# architecture, manufacturer and model for the target-tree build
|
|
t_cpu="coldfire"
|
|
t_manufacturer="iaudio"
|
|
t_model="x5"
|
|
;;
|
|
|
|
31|m5)
|
|
target_id=28
|
|
archos="m5"
|
|
target="-DIAUDIO_M5"
|
|
memory=16 # always
|
|
coldfirecc
|
|
tool="$rootdir/tools/scramble -add=iam5"
|
|
bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
|
|
bmp2rb_native="$rootdir/tools/bmp2rb -f 2"
|
|
bmp2rb_remotemono="$rootdir/tools/bmp2rb -f 0"
|
|
bmp2rb_remotenative="$rootdir/tools/bmp2rb -f 7"
|
|
output="rockbox.iaudio"
|
|
appextra="recorder:gui"
|
|
archosrom=""
|
|
flash=""
|
|
plugins="yes"
|
|
swcodec="yes"
|
|
# toolset is the tools within the tools directory that we build for
|
|
# this particular target.
|
|
toolset="$iaudiobitmaptools"
|
|
# architecture, manufacturer and model for the target-tree build
|
|
t_cpu="coldfire"
|
|
t_manufacturer="iaudio"
|
|
t_model="m5"
|
|
;;
|
|
|
|
40|gigabeatf)
|
|
target_id=20
|
|
archos="gigabeatf"
|
|
target="-DGIGABEAT_F"
|
|
memory=32 # always
|
|
arm9tdmicc
|
|
tool="$rootdir/tools/scramble -add=giga"
|
|
bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
|
|
bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
|
|
output="rockbox.gigabeat"
|
|
appextra="recorder:gui"
|
|
archosrom=""
|
|
flash=""
|
|
plugins="yes"
|
|
swcodec="yes"
|
|
toolset=$gigabeatbitmaptools
|
|
boottool="$rootdir/tools/scramble -gigabeat"
|
|
bootoutput="FWIMG01.DAT"
|
|
# architecture, manufacturer and model for the target-tree build
|
|
t_cpu="arm"
|
|
t_manufacturer="s3c2440"
|
|
t_model="gigabeat-fx"
|
|
;;
|
|
|
|
50|e200)
|
|
target_id=23
|
|
archos="e200"
|
|
target="-DSANSA_E200"
|
|
memory=32 # supposedly
|
|
arm7tdmicc
|
|
tool="$rootdir/tools/scramble -mi4v3 -model=e200 -type=RBOS"
|
|
bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
|
|
bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
|
|
output="rockbox.mi4"
|
|
appextra="recorder:gui"
|
|
archosrom=""
|
|
flash=""
|
|
plugins="yes"
|
|
swcodec="yes"
|
|
boottool="$rootdir/tools/scramble -mi4v3 -model=e200 -type=RBBL"
|
|
bootoutput="PP5022.mi4"
|
|
# toolset is the tools within the tools directory that we build for
|
|
# this particular target.
|
|
toolset="$genericbitmaptools scramble"
|
|
# architecture, manufacturer and model for the target-tree build
|
|
t_cpu="arm"
|
|
t_manufacturer="sandisk"
|
|
t_model="sansa-e200"
|
|
;;
|
|
|
|
51|e200r)
|
|
# the e200R model is pretty much identical to the e200, it only has a
|
|
# different option to the scramble tool when building a bootloader and
|
|
# makes the bootloader output file name in all lower case.
|
|
target_id=27
|
|
archos="e200r"
|
|
target="-DSANSA_E200"
|
|
memory=32 # supposedly
|
|
arm7tdmicc
|
|
tool="$rootdir/tools/scramble -mi4v3 -model=e20r -type=RBOS"
|
|
bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
|
|
bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
|
|
output="rockbox.mi4"
|
|
appextra="recorder:gui"
|
|
archosrom=""
|
|
flash=""
|
|
plugins="yes"
|
|
swcodec="yes"
|
|
boottool="$rootdir/tools/scramble -mi4r -model=e20r -type=RBBL"
|
|
bootoutput="pp5022.mi4"
|
|
# toolset is the tools within the tools directory that we build for
|
|
# this particular target.
|
|
toolset="$genericbitmaptools scramble"
|
|
# architecture, manufacturer and model for the target-tree build
|
|
t_cpu="arm"
|
|
t_manufacturer="sandisk"
|
|
t_model="sansa-e200"
|
|
;;
|
|
|
|
60|tpj1022)
|
|
target_id=25
|
|
archos="tpj1022"
|
|
target="-DELIO_TPJ1022"
|
|
memory=32 # always
|
|
arm7tdmicc
|
|
tool="$rootdir/tools/scramble -add tpj2"
|
|
bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
|
|
bmp2rb_native="$rootdir/tools/bmp2rb -f 5"
|
|
output="rockbox.elio"
|
|
appextra="recorder:gui"
|
|
archosrom=""
|
|
flash=""
|
|
plugins="yes"
|
|
swcodec="yes"
|
|
boottool="$rootdir/tools/scramble -mi4v2"
|
|
bootoutput="pp5020.mi4"
|
|
# toolset is the tools within the tools directory that we build for
|
|
# this particular target.
|
|
toolset="$genericbitmaptools scramble"
|
|
# architecture, manufacturer and model for the target-tree build
|
|
t_cpu="arm"
|
|
t_manufacturer="tatung"
|
|
t_model="tpj1022"
|
|
;;
|
|
|
|
*)
|
|
echo "Please select a supported target platform!"
|
|
exit
|
|
;;
|
|
|
|
esac
|
|
|
|
echo "Platform set to $archos"
|
|
|
|
|
|
#remove start
|
|
############################################################################
|
|
# Amount of memory, for those that can differ. They have $memory unset at
|
|
# this point.
|
|
#
|
|
|
|
if [ -z "$memory" ]; then
|
|
|
|
case $target_id in
|
|
15)
|
|
echo "Enter size of your RAM (in MB): (Defaults to 32)"
|
|
size=`input`;
|
|
case $size in
|
|
60|64)
|
|
memory="64"
|
|
;;
|
|
*)
|
|
memory="32"
|
|
;;
|
|
esac
|
|
;;
|
|
|
|
*)
|
|
echo "Enter size of your RAM (in MB): (defaults to 2)"
|
|
size=`input`;
|
|
case $size in
|
|
8)
|
|
memory="8"
|
|
;;
|
|
*)
|
|
memory="2"
|
|
;;
|
|
esac
|
|
;;
|
|
esac
|
|
|
|
echo "Memory size selected: $memory MB"
|
|
fi
|
|
#remove end
|
|
|
|
##################################################################
|
|
# Figure out build "type"
|
|
#
|
|
|
|
# the ifp7x0 is the only platform that supports building a gdb stub like
|
|
# this
|
|
case $archos in
|
|
ifp7xx)
|
|
gdbstub="(G)DB stub, "
|
|
;;
|
|
*)
|
|
;;
|
|
esac
|
|
|
|
echo ""
|
|
echo "Build (N)ormal, (A)dvanced, (S)imulator, (B)ootloader, $gdbstub(M)anual, (V)oice? (N)"
|
|
|
|
option=`input`;
|
|
|
|
case $option in
|
|
[Bb])
|
|
if test -n "$archosrom"; then
|
|
# Archos SH-based players do this somewhat differently for
|
|
# some reason
|
|
appsdir='\$(ROOTDIR)/flash/bootbox'
|
|
apps="bootbox"
|
|
else
|
|
appsdir='\$(ROOTDIR)/bootloader'
|
|
apps="bootloader"
|
|
flash=""
|
|
if test -n "$boottool"; then
|
|
tool="$boottool"
|
|
fi
|
|
if test -n "$bootoutput"; then
|
|
output=$bootoutput
|
|
fi
|
|
fi
|
|
extradefines="-DBOOTLOADER -ffunction-sections -fdata-sections"
|
|
bootloader="1"
|
|
echo "Bootloader build selected"
|
|
;;
|
|
[Ss])
|
|
debug="-DDEBUG"
|
|
simulator="yes"
|
|
extradefines="-DSIMULATOR"
|
|
echo "Simulator build selected"
|
|
;;
|
|
[Aa])
|
|
echo "Advanced build selected"
|
|
whichadvanced
|
|
;;
|
|
[Gg])
|
|
extradefines="-DSTUB" # for target makefile symbol EXTRA_DEFINES
|
|
appsdir='\$(ROOTDIR)/gdb'
|
|
apps="stub"
|
|
case $archos in
|
|
ifp7xx)
|
|
output="stub.wma"
|
|
;;
|
|
*)
|
|
;;
|
|
esac
|
|
echo "GDB stub build selected"
|
|
;;
|
|
[Mm])
|
|
appsdir='\$(ROOTDIR)/manual'
|
|
firmdir='\$(ROOTDIR)/manual/platform' # No Makefile here. Effectively ignores target
|
|
toolsdir=$firmdir;
|
|
toolset='';
|
|
apps="manual"
|
|
echo "Manual build selected"
|
|
;;
|
|
[Vv])
|
|
echo "Voice build selected"
|
|
voiceconfig
|
|
toolset="${toolset} voicefont wavtrim"
|
|
voice="yes"
|
|
;;
|
|
*)
|
|
debug=""
|
|
echo "Normal build selected"
|
|
;;
|
|
|
|
esac
|
|
# to be able running "make manual" from non-manual configuration
|
|
case $archos in
|
|
fmrecorder)
|
|
manualdev="recorderv2fm"
|
|
;;
|
|
recorderv2)
|
|
manualdev="recorderv2fm"
|
|
;;
|
|
h1??)
|
|
manualdev="h1xx"
|
|
;;
|
|
ipodmini2g)
|
|
manualdev="ipodmini"
|
|
;;
|
|
*)
|
|
manualdev=$archos
|
|
;;
|
|
esac
|
|
|
|
if [ -z "$debug" ]; then
|
|
GCCOPTS="$GCCOPTS $GCCOPTIMIZE"
|
|
fi
|
|
|
|
echo "Using source code root directory: $rootdir"
|
|
|
|
# this was once possible to change at build-time, but no more:
|
|
language="english"
|
|
|
|
# Ask about language if building voice
|
|
if [ "yes" = "$voice" ]; then
|
|
echo "Select a number for the language to use (default is english)"
|
|
|
|
picklang
|
|
language=`whichlang`
|
|
|
|
if [ -z "$language" ]; then
|
|
# pick a default
|
|
language="english"
|
|
fi
|
|
echo "Language set to $language"
|
|
fi
|
|
|
|
uname=`uname`
|
|
|
|
if [ "yes" = "$simulator" ]; then
|
|
# setup compiler and things for simulator
|
|
simcc
|
|
|
|
if [ -d "archos" ]; then
|
|
echo "sub directory archos already present"
|
|
else
|
|
mkdir archos
|
|
echo "created an archos subdirectory for simulating the hard disk"
|
|
fi
|
|
fi
|
|
|
|
# Now, figure out version number of the (gcc) compiler we are about to use
|
|
gccver=`$CC -dumpversion`;
|
|
|
|
if [ -z "$gccver" ]; then
|
|
echo "WARNING: The compiler you must use ($CC) is not in your path!"
|
|
echo "WARNING: this may cause your build to fail since we cannot do the"
|
|
echo "WARNING: checks we want now."
|
|
else
|
|
|
|
# gccver should now be "3.3.5", "3.4.3", "2.95.3-6" and similar, but don't
|
|
# DEPEND on it
|
|
|
|
num1=`echo $gccver | cut -d . -f1`
|
|
num2=`echo $gccver | cut -d . -f2`
|
|
gccnum=`(expr $num1 "*" 100 + $num2) 2>/dev/null`
|
|
|
|
# This makes:
|
|
# 3.3.X => 303
|
|
# 3.4.X => 304
|
|
# 2.95.3 => 295
|
|
|
|
echo "Using $CC $gccver ($gccnum)"
|
|
|
|
if test "$gccnum" -ge "400"; then
|
|
# gcc 4.0 is just *so* much pickier on arguments that differ in signedness
|
|
# so we ignore that warnings for now
|
|
# -Wno-pointer-sign
|
|
GCCOPTS="$GCCOPTS -Wno-pointer-sign"
|
|
fi
|
|
|
|
if test "$gccnum" -ge "401"; then
|
|
# this is a lame hack to avoid "warning: dereferencing type-punned pointer
|
|
# will break strict-aliasing rules"
|
|
|
|
GCCOPTS="$GCCOPTS -fno-strict-aliasing"
|
|
fi
|
|
|
|
fi
|
|
|
|
# check the compiler for SH platforms
|
|
if test "$CC" = "sh-elf-gcc"; then
|
|
if test "$gccnum" -lt "400"; then
|
|
echo "WARNING: Consider upgrading your compiler to the 4.0.X series!"
|
|
echo "WARNING: http://www.rockbox.org/twiki/bin/view/Main/CrossCompiler"
|
|
else
|
|
# figure out patch status
|
|
gccpatch=`$CC --version`;
|
|
|
|
if { echo $gccpatch | grep "rockbox" >/dev/null 2>&1; } then
|
|
echo "gcc $gccver is rockbox patched"
|
|
# then convert -O to -Os to get smaller binaries!
|
|
GCCOPTS=`echo $GCCOPTS | sed 's/ -O / -Os /'`
|
|
else
|
|
echo "WARNING: You use an unpatched gcc compiler: $gccver"
|
|
echo "WARNING: http://www.rockbox.org/twiki/bin/view/Main/CrossCompiler"
|
|
fi
|
|
fi
|
|
fi
|
|
|
|
if test "$CC" = "m68k-elf-gcc"; then
|
|
# convert -O to -Os to get smaller binaries!
|
|
GCCOPTS=`echo $GCCOPTS | sed 's/ -O / -Os /'`
|
|
fi
|
|
|
|
if test "$1" = "--ccache"; then
|
|
echo "Enable ccache for building"
|
|
ccache="ccache"
|
|
else
|
|
if test "$1" != "--no-ccache"; then
|
|
ccache=`findtool ccache`
|
|
if test -n "$ccache"; then
|
|
echo "Found and uses ccache ($ccache)"
|
|
fi
|
|
fi
|
|
fi
|
|
|
|
if test -n "$ccache"; then
|
|
CC="$ccache $CC"
|
|
fi
|
|
|
|
if test "X$endian" = "Xbig"; then
|
|
defendian="ROCKBOX_BIG_ENDIAN"
|
|
else
|
|
defendian="ROCKBOX_LITTLE_ENDIAN"
|
|
fi
|
|
|
|
sed > autoconf.h \
|
|
-e "s,@ENDIAN@,${defendian},g" \
|
|
-e "s,^#undef ROCKBOX_HAS_LOGF,$use_logf,g" \
|
|
-e "s,@config_rtc@,$config_rtc,g" \
|
|
-e "s,@have_rtc_alarm@,$have_rtc_alarm,g" \
|
|
<<EOF
|
|
/* This header was made by configure */
|
|
#ifndef __BUILD_AUTOCONF_H
|
|
#define __BUILD_AUTOCONF_H
|
|
|
|
/* Define endianess for the target or simulator platform */
|
|
#define @ENDIAN@ 1
|
|
|
|
/* Define this if you build rockbox to support the logf logging and display */
|
|
#undef ROCKBOX_HAS_LOGF
|
|
|
|
/* optional defines for RTC mod for h1x0 */
|
|
@config_rtc@
|
|
@have_rtc_alarm@
|
|
|
|
#endif /* __BUILD_AUTOCONF_H */
|
|
EOF
|
|
|
|
if test -n "$t_cpu"; then
|
|
TARGET_INC="-I\$(FIRMDIR)/target/$t_cpu/$t_manufacturer/$t_model"
|
|
TARGET_INC="$TARGET_INC -I\$(FIRMDIR)/target/$t_cpu/$t_manufacturer"
|
|
TARGET_INC="$TARGET_INC -I\$(FIRMDIR)/target/$t_cpu"
|
|
GCCOPTS="$GCCOPTS"
|
|
fi
|
|
|
|
if test "$simulator" = "yes"; then
|
|
# add simul make stuff on the #SIMUL# line
|
|
simmagic1="s,@SIMUL1@,\$(SILENT)\$(MAKE) -C \$(SIMDIR) OBJDIR=\$(BUILDDIR)/sim,"
|
|
simmagic2="s,@SIMUL2@,\$(SILENT)\$(MAKE) -C \$(ROOTDIR)/uisimulator/common OBJDIR=\$(BUILDDIR)/comsim,"
|
|
else
|
|
# delete the lines that match
|
|
simmagic1='/@SIMUL1@/D'
|
|
simmagic2='/@SIMUL2@/D'
|
|
fi
|
|
|
|
sed > Makefile \
|
|
-e "s,@ROOTDIR@,${rootdir},g" \
|
|
-e "s,@DEBUG@,${debug},g" \
|
|
-e "s,@MEMORY@,${memory},g" \
|
|
-e "s,@TARGET_ID@,${target_id},g" \
|
|
-e "s,@TARGET@,${target},g" \
|
|
-e "s,@CPU@,${t_cpu},g" \
|
|
-e "s,@MANUFACTURER@,${t_manufacturer},g" \
|
|
-e "s,@ARCHOS@,${archos},g" \
|
|
-e "s,@LANGUAGE@,${language},g" \
|
|
-e "s,@PWD@,${pwd},g" \
|
|
-e "s,@CC@,${CC},g" \
|
|
-e "s,@LD@,${LD},g" \
|
|
-e "s,@AR@,${AR},g" \
|
|
-e "s,@AS@,${AS},g" \
|
|
-e "s,@OC@,${OC},g" \
|
|
-e "s,@WINDRES@,${WINDRES},g" \
|
|
-e "s,@DLLTOOL@,${DLLTOOL},g" \
|
|
-e "s,@DLLWRAP@,${DLLWRAP},g" \
|
|
-e "s,@RANLIB@,${RANLIB},g" \
|
|
-e "s,@TOOL@,${tool},g" \
|
|
-e "s,@BMP2RB_NATIVE@,${bmp2rb_native},g" \
|
|
-e "s,@BMP2RB_MONO@,${bmp2rb_mono},g" \
|
|
-e "s,@BMP2RB_REMOTENATIVE@,${bmp2rb_remotenative},g" \
|
|
-e "s,@BMP2RB_REMOTEMONO@,${bmp2rb_remotemono},g" \
|
|
-e "s,@OUTPUT@,${output},g" \
|
|
-e "s,@APPEXTRA@,${appextra},g" \
|
|
-e "s,@ARCHOSROM@,${archosrom},g" \
|
|
-e "s,@FLASHFILE@,${flash},g" \
|
|
-e "s,@PLUGINS@,${plugins},g" \
|
|
-e "s,@CODECS@,${swcodec},g" \
|
|
-e "s,@PROFILE_OPTS@,${PROFILE_OPTS},g" \
|
|
-e "s,@SHARED_FLAG@,${SHARED_FLAG},g" \
|
|
-e "s,@GCCOPTS@,${GCCOPTS},g" \
|
|
-e "s,@TARGET_INC@,${TARGET_INC},g" \
|
|
-e "s!@LDOPTS@!${LDOPTS}!g" \
|
|
-e "s,@LOADADDRESS@,${loadaddress},g" \
|
|
-e "s,@EXTRADEF@,${extradefines},g" \
|
|
-e "s,@APPSDIR@,${appsdir},g" \
|
|
-e "s,@FIRMDIR@,${firmdir},g" \
|
|
-e "s,@TOOLSDIR@,${toolsdir},g" \
|
|
-e "s,@APPS@,${apps},g" \
|
|
-e "s,@SIMVER@,${simver},g" \
|
|
-e "s,@GCCVER@,${gccver},g" \
|
|
-e "s,@GCCNUM@,${gccnum},g" \
|
|
-e "s,@UNAME@,${uname},g" \
|
|
-e "s,@ENDIAN@,${defendian},g" \
|
|
-e "s,@TOOLSET@,${toolset},g" \
|
|
-e "${simmagic1}" \
|
|
-e "${simmagic2}" \
|
|
-e "s,@MANUALDEV@,${manualdev},g" \
|
|
<<EOF
|
|
## Automaticly generated. http://www.rockbox.org/
|
|
|
|
ifndef V
|
|
SILENT=@
|
|
else
|
|
VERBOSEOPT=-v
|
|
endif
|
|
|
|
# old 'make' versions don't have the built-in 'info' function
|
|
info=old\$(shell echo >&2 "Consider upgrading to GNU make 3.81+ for optimum build performance.")
|
|
ifeq (\$(call info),old)
|
|
export info=echo "\$\$(1)";
|
|
endif
|
|
|
|
export ROOTDIR=@ROOTDIR@
|
|
export FIRMDIR=@FIRMDIR@
|
|
export APPSDIR=@APPSDIR@
|
|
export TOOLSDIR=@TOOLSDIR@
|
|
export DOCSDIR=\$(ROOTDIR)/docs
|
|
export MANUALDIR=\${ROOTDIR}/manual
|
|
export DEBUG=@DEBUG@
|
|
export ARCHOS=@ARCHOS@
|
|
export ARCHOSROM=@ARCHOSROM@
|
|
export FLASHFILE=@FLASHFILE@
|
|
export TARGET_ID=@TARGET_ID@
|
|
export TARGET=@TARGET@
|
|
export CPU=@CPU@
|
|
export MANUFACTURER=@MANUFACTURER@
|
|
export OBJDIR=@PWD@
|
|
export BUILDDIR=@PWD@
|
|
export LANGUAGE=@LANGUAGE@
|
|
export MEMORYSIZE=@MEMORY@
|
|
export VERSION=\$(shell \$(ROOTDIR)/tools/svnversion.sh \$(ROOTDIR))
|
|
export BUILDDATE=\$(shell date -u +'-DYEAR=%Y -DMONTH=%m -DDAY=%d')
|
|
export MKFIRMWARE=@TOOL@
|
|
export BMP2RB_MONO=@BMP2RB_MONO@
|
|
export BMP2RB_NATIVE=@BMP2RB_NATIVE@
|
|
export BMP2RB_REMOTEMONO=@BMP2RB_REMOTEMONO@
|
|
export BMP2RB_REMOTENATIVE=@BMP2RB_REMOTENATIVE@
|
|
export BINARY=@OUTPUT@
|
|
export APPEXTRA=@APPEXTRA@
|
|
export ENABLEDPLUGINS=@PLUGINS@
|
|
export SOFTWARECODECS=@CODECS@
|
|
export EXTRA_DEFINES=@EXTRADEF@
|
|
export HOSTCC=gcc
|
|
export CC=@CC@
|
|
export LD=@LD@
|
|
export AR=@AR@
|
|
export AS=@AS@
|
|
export OC=@OC@
|
|
export WINDRES=@WINDRES@
|
|
export DLLTOOL=@DLLTOOL@
|
|
export DLLWRAP=@DLLWRAP@
|
|
export RANLIB=@RANLIB@
|
|
export PROFILE_OPTS=@PROFILE_OPTS@
|
|
export SIMVER=@SIMVER@
|
|
export SIMDIR=\$(ROOTDIR)/uisimulator/sdl
|
|
export GCCOPTS=@GCCOPTS@
|
|
export TARGET_INC=@TARGET_INC@
|
|
export LOADADDRESS=@LOADADDRESS@
|
|
export SHARED_FLAG=@SHARED_FLAG@
|
|
export LDOPTS=@LDOPTS@
|
|
export GCCVER=@GCCVER@
|
|
export GCCNUM=@GCCNUM@
|
|
export UNAME=@UNAME@
|
|
export MANUALDEV=@MANUALDEV@
|
|
|
|
# Do not print "Entering directory ..."
|
|
MAKEFLAGS += --no-print-directory
|
|
|
|
.PHONY: all clean tags zip tools manual bin build info
|
|
|
|
all: info
|
|
|
|
info: build
|
|
\$(SILENT)\$(TOOLSDIR)/mkinfo.pl \$(BUILDDIR)/rockbox-info.txt
|
|
|
|
build: tools
|
|
@SIMUL1@
|
|
@SIMUL2@
|
|
\$(SILENT)\$(MAKE) -C \$(FIRMDIR) OBJDIR=\$(BUILDDIR)/firmware
|
|
\$(SILENT)\$(MAKE) -C \$(APPSDIR) OBJDIR=\$(BUILDDIR)/@APPS@
|
|
|
|
bin: tools
|
|
@SIMUL1@
|
|
@SIMUL2@
|
|
\$(SILENT)\$(MAKE) -C \$(FIRMDIR) OBJDIR=\$(BUILDDIR)/firmware
|
|
\$(SILENT)\$(MAKE) -C \$(APPSDIR) OBJDIR=\$(BUILDDIR)/@APPS@ \$(BUILDDIR)/\$(BINARY)
|
|
|
|
rocks: tools
|
|
\$(SILENT)\$(MAKE) -C \$(APPSDIR) OBJDIR=\$(BUILDDIR)/@APPS@ rocks
|
|
|
|
veryclean: clean toolsclean
|
|
|
|
toolsclean:
|
|
\$(SILENT)\$(MAKE) -C \$(TOOLSDIR) clean
|
|
|
|
clean:
|
|
\$(SILENT)echo Cleaning build directory
|
|
\$(SILENT)rm -rf rockbox.zip TAGS @APPS@ firmware comsim sim lang.[ch]\
|
|
manual *.pdf *.a credits.raw @OUTPUT@ bitmaps pluginbitmaps \
|
|
@ARCHOSROM@ @FLASHFILE@ UI256.bmp rockbox-full.zip \
|
|
html txt rockbox-manual*.zip sysfont.h rockbox-info.txt \
|
|
voicefontids
|
|
|
|
voice: tools
|
|
\$(SILENT)\$(MAKE) -C \$(APPSDIR) OBJDIR=\$(BUILDDIR)/@APPS@ features
|
|
\$(SILENT)for f in \`cat \$(BUILDDIR)/@APPS@/features\`; do feat="\$\$feat:\$\$f" ; done ; \\
|
|
\$(TOOLSDIR)/genvoice.sh \$(ROOTDIR) \$(LANGUAGE) \$(ARCHOS)\$\$feat \$(TARGET_ID) voicesettings.sh
|
|
|
|
tools:
|
|
\$(SILENT)\$(MAKE) -C \$(TOOLSDIR) CC=\$(HOSTCC) @TOOLSET@
|
|
|
|
tags:
|
|
\$(SILENT)rm -f TAGS
|
|
\$(SILENT)\$(MAKE) -C \$(FIRMDIR) tags
|
|
\$(SILENT)\$(MAKE) -C \$(APPSDIR) tags
|
|
\$(SILENT)\$(MAKE) -C \$(APPSDIR)/plugins tags
|
|
\$(SILENT)\$(MAKE) -C \$(APPSDIR)/plugins/lib tags
|
|
|
|
fontzip:
|
|
\$(SILENT)\$(TOOLSDIR)/buildzip.pl \$(VERBOSEOPT) -t \"\$(ARCHOS)\" -r "\$(ROOTDIR)" -f 1 -o rockbox-fonts.zip \$(TARGET) \$(BINARY)
|
|
|
|
zip:
|
|
\$(SILENT)for f in \`cat \$(BUILDDIR)/@APPS@/features\`; do feat="\$\$feat:\$\$f" ; done ; \\
|
|
\$(TOOLSDIR)/buildzip.pl \$(VERBOSEOPT) -t \"\$(ARCHOS)\$\$feat\" -i \"\$(TARGET_ID)\" -r "\$(ROOTDIR)" \$(TARGET) \$(BINARY)
|
|
|
|
mapzip:
|
|
\$(SILENT)find . -name "*.map" | xargs zip rockbox-maps.zip
|
|
|
|
fullzip:
|
|
\$(SILENT)for f in \`cat \$(BUILDDIR)/@APPS@/features\`; do feat="\$\$feat:\$\$f" ; done; \\
|
|
\$(TOOLSDIR)/buildzip.pl \$(VERBOSEOPT) -t \"\$(ARCHOS)\$\$feat\" -i \"\$(TARGET_ID)\" -r "\$(ROOTDIR)" -f 2 -o rockbox-full.zip \$(TARGET) \$(BINARY)
|
|
|
|
7zip:
|
|
\$(SILENT)for f in \`cat \$(BUILDDIR)/@APPS@/features\`; do feat="\$\$feat:\$\$f" ; done; \\
|
|
\$(TOOLSDIR)/buildzip.pl \$(VERBOSEOPT) -t \"\$(ARCHOS)\$\$feat\" -i \"\$(TARGET_ID)\" -o "rockbox.7z" -z "7za a" -r "\$(ROOTDIR)" \$(TARGET) \$(BINARY)
|
|
|
|
tar:
|
|
\$(SILENT)rm -f rockbox.tar
|
|
\$(SILENT)for f in \`cat \$(BUILDDIR)/@APPS@/features\`; do feat="\$\$feat:\$\$f" ; done; \\
|
|
\$(TOOLSDIR)/buildzip.pl \$(VERBOSEOPT) -t \"\$(ARCHOS)\$\$feat\" -i \"\$(TARGET_ID)\" -o "rockbox.tar" -z "tar --no-recursion -uf" -r "\$(ROOTDIR)" \$(TARGET) \$(BINARY)
|
|
|
|
bzip2: tar
|
|
\$(SILENT)bzip2 -f9 rockbox.tar
|
|
|
|
gzip: tar
|
|
\$(SILENT)gzip -f9 rockbox.tar
|
|
|
|
manual: manual-pdf
|
|
manual-pdf:
|
|
\$(SILENT)\$(MAKE) -C \$(MANUALDIR) OBJDIR=\$(BUILDDIR)/manual manual-pdf
|
|
manual-html:
|
|
\$(SILENT)\$(MAKE) -C \$(MANUALDIR) OBJDIR=\$(BUILDDIR)/manual manual-html
|
|
manual-zhtml: manual-zip
|
|
manual-txt:
|
|
\$(SILENT)\$(MAKE) -C \$(MANUALDIR) OBJDIR=\$(BUILDDIR)/manual manual-txt
|
|
manual-ztxt:
|
|
\$(SILENT)\$(MAKE) -C \$(MANUALDIR) OBJDIR=\$(BUILDDIR)/manual manual-txt-zip
|
|
manual-zip:
|
|
\$(SILENT)\$(MAKE) -C \$(MANUALDIR) OBJDIR=\$(BUILDDIR)/manual manual-zip
|
|
|
|
help:
|
|
@echo "A few helpful make targets"
|
|
@echo ""
|
|
@echo "all - builds a full Rockbox (default), including tools"
|
|
@echo "bin - builds only the Rockbox.<target name> file"
|
|
@echo "clean - cleans a build directory (not tools)"
|
|
@echo "veryclean - cleans the build and tools directories"
|
|
@echo "manual - builds a manual"
|
|
@echo "manual-html - HTML manual"
|
|
@echo "manual-zip - HTML manual (zipped)"
|
|
@echo "manual-txt - txt manual"
|
|
@echo "fullzip - creates a rockbox.zip of your build with fonts"
|
|
@echo "zip - creates a rockbox.zip of your build (no fonts)"
|
|
@echo "gzip - creates a rockbox.tar.gz of your build (no fonts)"
|
|
@echo "bzip2 - creates a rockbox.tar.bz2 of your build (no fonts)"
|
|
@echo "7zip - creates a rockbox.7z of your build (no fonts)"
|
|
@echo "fontzip - creates rockbox-fonts.zip"
|
|
@echo "mapzip - creates rockbox-maps.zip with all .map files"
|
|
@echo "tools - builds the tools only"
|
|
@echo "install - installs your build (for simulator builds only)"
|
|
|
|
EOF
|
|
|
|
if [ "yes" = "$simulator" ]; then
|
|
|
|
cat >> Makefile <<EOF
|
|
|
|
install:
|
|
@echo "installing a full setup in your archos dir"
|
|
@(\$(MAKE) fullzip && cd archos && unzip -oq ../rockbox-full.zip)
|
|
EOF
|
|
|
|
fi
|
|
|
|
echo "Created Makefile"
|