summaryrefslogtreecommitdiff
path: root/tools/configure
diff options
context:
space:
mode:
authorThomas Martitz <kugel@rockbox.org>2011-12-24 11:56:46 +0000
committerThomas Martitz <kugel@rockbox.org>2011-12-24 11:56:46 +0000
commit249bba03f1051f4984538f66b9e7d36674c61e5c (patch)
treeb9a0d78e05269ed2043521ab0dfdad83aeaf2aff /tools/configure
parent567e0ad93ef3048f2266932b10dcdb309b1a77c9 (diff)
downloadrockbox-249bba03f1051f4984538f66b9e7d36674c61e5c.tar.gz
rockbox-249bba03f1051f4984538f66b9e7d36674c61e5c.zip
Initial commit of the Samsung YP-R0 port.
This port is a hybrid native/RaaA port. It runs on a embedded linux system, but is the only application. It therefore can implement lots of stuff that native targets also implement, while leveraging the underlying linux kernel. The port is quite advanced. User interface, audio playback, plugins work mostly fine. Missing is e.g. power mangement and USB (see SamsungYPR0 wiki page). Included in utils/ypr0tools are scripts and programs required to generate a patched firmware. The patched firmware has the rootfs modified to load Rockbox. It includes a early/safe USB mode. This port needs a new toolchain, one that includes glibc headers and libraries. rockboxdev.sh can generate it, but e.g. codesourcey and distro packages may also work. Most of the initial effort is done by Lorenzo Miori and others (on ABI), including reverse engineering and patching of the original firmware, initial drivers, and more. Big thanks to you. Flyspray: FS#12348 Author: Lorenzo Miori, myself Merry christmas to ypr0 owners! :) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31415 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'tools/configure')
-rwxr-xr-xtools/configure48
1 files changed, 46 insertions, 2 deletions
diff --git a/tools/configure b/tools/configure
index 895aca8025..1cb4c5b240 100755
--- a/tools/configure
+++ b/tools/configure
@@ -647,6 +647,26 @@ pandoracc () {
647 GCCOPTS="$GCCOPTS -ffast-math -fsingle-precision-constant" 647 GCCOPTS="$GCCOPTS -ffast-math -fsingle-precision-constant"
648} 648}
649 649
650ypr0cc () {
651
652 GCCOPTS=`echo $CCOPTS | sed -e s/-ffreestanding// -e s/-nostdlib//`
653 GCCOPTIMIZE=''
654 LDOPTS="-lasound -lpthread -lm -ldl -lrt $LDOPTS"
655 GLOBAL_LDOPTS="$GLOBAL_LDOPTS -Wl,-z,defs"
656 SHARED_LDFLAG="-shared"
657 SHARED_CFLAGS=''
658 endian="little"
659 thread_support="HAVE_SIGALTSTACK_THREADS"
660 app_type="ypr0"
661
662 # Include path
663 GCCOPTS="$GCCOPTS -D_GNU_SOURCE=1 -U_FORTIFY_SOURCE -D_REENTRANT"
664
665 # Set up compiler
666 gccchoice="4.4.6"
667 prefixtools "arm-ypr0-linux-gnueabi-"
668}
669
650androidcc () { 670androidcc () {
651 if [ -z "$ANDROID_SDK_PATH" ]; then 671 if [ -z "$ANDROID_SDK_PATH" ]; then
652 echo "ERROR: You need the Android SDK installed and have the ANDROID_SDK_PATH" 672 echo "ERROR: You need the Android SDK installed and have the ANDROID_SDK_PATH"
@@ -1290,7 +1310,7 @@ cat <<EOF
1290 202) Nokia N8xx 131) Mini2440 1310 202) Nokia N8xx 131) Mini2440
1291 203) Nokia N900 ==ROCKCHIP== ==HiFiMAN== 1311 203) Nokia N900 ==ROCKCHIP== ==HiFiMAN==
1292 204) Pandora 180) rk27xx generic 190) HM-60x 1312 204) Pandora 180) rk27xx generic 190) HM-60x
1293 191) HM-801 1313 205) Samsung YP-R0 191) HM-801
1294 1314
1295EOF 1315EOF
1296 1316
@@ -3228,6 +3248,30 @@ fi
3228 t_model="app" 3248 t_model="app"
3229 ;; 3249 ;;
3230 3250
3251 205|samsungypr0)
3252 application="yes"
3253 target_id=78
3254 modelname="samsungypr0"
3255 target="SAMSUNG_YPR0"
3256 app_set_lcd_size 240 320
3257 memory=32
3258 uname=`uname`
3259 ypr0cc
3260 tool="cp "
3261 boottool="cp "
3262 bmp2rb_mono="$rootdir/tools/bmp2rb -f 0"
3263 bmp2rb_native="$rootdir/tools/bmp2rb -f 4"
3264 output="rockbox"
3265 bootoutput="rockbox"
3266 appextra="recorder:gui:radio"
3267 plugins="yes"
3268 swcodec="yes"
3269 # architecture, manufacturer and model for the target-tree build
3270 t_cpu="hosted"
3271 t_manufacturer="ypr0"
3272 t_model="app"
3273 ;;
3274
3231 *) 3275 *)
3232 echo "Please select a supported target platform!" 3276 echo "Please select a supported target platform!"
3233 exit 7 3277 exit 7
@@ -3473,7 +3517,7 @@ gccver=`$CC -dumpversion`;
3473if [ $uname = "Darwin" ]; then 3517if [ $uname = "Darwin" ]; then
3474 ldver=`$LD -v 2>&1 | sed -e 's/[^0-9.-]//g'` 3518 ldver=`$LD -v 2>&1 | sed -e 's/[^0-9.-]//g'`
3475else 3519else
3476 ldver=`$LD --version | head -n 1 | sed -e 's/[^0-9.]//g'` 3520 ldver=`$LD --version | head -n 1 | sed -e 's/\ /\n/g' | tail -n 1`
3477fi 3521fi
3478 3522
3479if [ -z "$gccver" ]; then 3523if [ -z "$gccver" ]; then