From 98853a9daa96e20d3713822df49a8cbeb218b6bc Mon Sep 17 00:00:00 2001 From: Stephan Raue Date: Mon, 21 Mar 2011 21:39:29 +0100 Subject: [PATCH] config/path: move ARCH specific options to ARCH specific config files Signed-off-by: Stephan Raue --- config/arch | 32 -------------------------------- config/arch.arm | 42 ++++++++++++++++++++++++++++++++++++++---- config/arch.i386 | 10 +++++++--- config/arch.x86_64 | 11 ++++++++--- config/path | 37 +++++++++---------------------------- 5 files changed, 62 insertions(+), 70 deletions(-) delete mode 100644 config/arch diff --git a/config/arch b/config/arch deleted file mode 100644 index 98ea3fd1ac..0000000000 --- a/config/arch +++ /dev/null @@ -1,32 +0,0 @@ -# determine architecture's family -case $TARGET_ARCH in - arm) - TARGET_SUBARCH=arm - TARGET_ABI=eabi - ;; - - i386) - TARGET_SUBARCH=i686 - ;; - - x86_64) - TARGET_SUBARCH=x86_64 - ;; -esac - -# determines TARGET_CPU, if not forced by user -if [ -z "$TARGET_CPU" ]; then - case $TARGET_ARCH in - arm) - TARGET_CPU=cortex-a8 - ;; - - i386) - TARGET_CPU=i686 - ;; - - x86_64) - TARGET_CPU=core2 - ;; - esac -fi diff --git a/config/arch.arm b/config/arch.arm index 23cad56998..a688f8f80b 100644 --- a/config/arch.arm +++ b/config/arch.arm @@ -1,8 +1,42 @@ -# determine architecture's family - TARGET_SUBARCH=arm - TARGET_ABI=eabi - # determines TARGET_CPU, if not forced by user if [ -z "$TARGET_CPU" ]; then TARGET_CPU=cortex-a8 fi + +# TARGET_CPU: +# arm2 arm250 arm3 arm6 arm60 arm600 arm610 arm620 arm7 arm7m arm7d +# arm7dm arm7di arm7dmi arm70 arm700 arm700i arm710 arm710c +# arm7100 arm720 arm7500 arm7500fe arm7tdmi arm7tdmi-s arm710t +# arm720t arm740t strongarm strongarm110 strongarm1100 +# strongarm1110 arm8 arm810 arm9 arm9e arm920 arm920t arm922t +# arm946e-s arm966e-s arm968e-s arm926ej-s arm940t arm9tdmi +# arm10tdmi arm1020t arm1026ej-s arm10e arm1020e arm1022e +# arm1136j-s arm1136jf-s mpcore mpcorenovfp arm1156t2-s +# arm1176jz-s arm1176jzf-s cortex-a8 cortex-a9 cortex-r4 +# cortex-r4f cortex-m3 cortex-m1 xscale iwmmxt iwmmxt2 ep9312. + +# TARGET_FPU: +# This specifies what floating point hardware (or hardware emulation) is +# available on the target. Permissible names are: +# fpa fpe2 fpe3 maverick vfp vfpv3 vfpv3-fp16 vfpv3-d16 vfpv3-d16-fp16 +# vfpv3xd vfpv3xd-fp16 neon neon-fp16 vfpv4 vfpv4-d16 fpv4-sp-d16 +# neon-vfpv4. + +# determine architecture's family + case $TARGET_CPU in + cortex-a8) + TARGET_SUBARCH=armv7-a + TARGET_ABI=eabi + TARGET_FPU="neon" + ;; + cortex-a9) + TARGET_SUBARCH=armv7-a + TARGET_ABI=eabi + TARGET_FPU="neon" + ;; + esac + +# setup ARCH specific *FLAGS + TARGET_CFLAGS="-fPIC -march=$TARGET_SUBARCH -mtune=$TARGET_CPU -mabi=aapcs-linux" + [ -n "$TARGET_FPU" ] && TARGET_CFLAGS="$TARGET_CFLAGS -mfpu=$TARGET_FPU" + TARGET_LDFLAGS="-fPIC -march=$TARGET_SUBARCH -mtune=$TARGET_CPU" diff --git a/config/arch.i386 b/config/arch.i386 index 5536f7c92a..9b49f81788 100644 --- a/config/arch.i386 +++ b/config/arch.i386 @@ -1,7 +1,11 @@ -# determine architecture's family - TARGET_SUBARCH=i686 - # determines TARGET_CPU, if not forced by user if [ -z "$TARGET_CPU" ]; then TARGET_CPU=i686 fi + +# determine architecture's family + TARGET_SUBARCH=i686 + +# setup ARCH specific *FLAGS + TARGET_CFLAGS="-march=$TARGET_CPU -m32" + TARGET_LDFLAGS="-march=$TARGET_CPU -m32" diff --git a/config/arch.x86_64 b/config/arch.x86_64 index 3e850f124a..4875f386d0 100644 --- a/config/arch.x86_64 +++ b/config/arch.x86_64 @@ -1,7 +1,12 @@ -# determine architecture's family - TARGET_SUBARCH=x86_64 - # determines TARGET_CPU, if not forced by user if [ -z "$TARGET_CPU" ]; then TARGET_CPU=core2 fi + +# determine architecture's family + TARGET_SUBARCH=x86_64 + +# setup ARCH specific *FLAGS + TARGET_CFLAGS="-fPIC -march=$TARGET_CPU -m64" + TARGET_CXXFLAGS="$TARGET_CFLAGS" + TARGET_LDFLAGS="-fPIC -march=$TARGET_CPU -m64" diff --git a/config/path b/config/path index c1f986f671..729e8cc286 100644 --- a/config/path +++ b/config/path @@ -13,7 +13,7 @@ set -e . config/arch.$TARGET_ARCH HOST_NAME=`$SCRIPTS/configtools/config.guess` -TARGET_NAME=${TARGET_SUBARCH}-openelec-linux-gnu${TARGET_ABI} +TARGET_NAME=$(echo $TARGET_SUBARCH | sed -e "s,-,,")-openelec-linux-gnu${TARGET_ABI} BUILD=$BUILD_BASE.$DISTRONAME-$PROJECT.$TARGET_ARCH-$OPENELEC_VERSION TARGET_IMG=$ROOT/$TARGET @@ -74,8 +74,6 @@ XORG_PATH_DRIVERS=/usr/lib/xorg/modules/drivers TOOLCHAIN_LANGUAGES=c [ "$TOOLCHAIN_CXX" = yes ] && TOOLCHAIN_LANGUAGES=${TOOLCHAIN_LANGUAGES},c++ -. config/optimize - TARGET_CC=${TARGET_PREFIX}gcc TARGET_CXX=${TARGET_PREFIX}g++ TARGET_LD=${TARGET_PREFIX}ld @@ -86,33 +84,12 @@ TARGET_RANLIB=${TARGET_PREFIX}ranlib TARGET_OBJCOPY=${TARGET_PREFIX}objcopy TARGET_STRIP=${TARGET_PREFIX}strip +. config/optimize + TARGET_CPPFLAGS= -TARGET_CFLAGS="-Wall -pipe $GCC_OPTIM $PROJECT_CFLAGS" +TARGET_CFLAGS="$TARGET_CFLAGS -Wall -pipe $GCC_OPTIM $PROJECT_CFLAGS" TARGET_CXXFLAGS="$TARGET_CFLAGS" -TARGET_LDFLAGS="$GCC_OPTIM $LD_OPTIM" - -case $TARGET_ARCH in - i386) - TARGET_CFLAGS="$TARGET_CFLAGS -march=$TARGET_CPU -m32" - TARGET_CXXFLAGS="$TARGET_CFLAGS" - TARGET_LDFLAGS="$TARGET_LDFLAGS -march=$TARGET_CPU -m32" - ;; - x86_64) - TARGET_CFLAGS="$TARGET_CFLAGS -fPIC -march=$TARGET_CPU -m64" - TARGET_CXXFLAGS="$TARGET_CFLAGS" - TARGET_LDFLAGS="$TARGET_LDFLAGS -fPIC -march=$TARGET_CPU -m64" - ;; - arm) - TARGET_CFLAGS="$TARGET_CFLAGS -fPIC -mcpu=$TARGET_CPU" - [ -n "$TARGET_FPU" ] && TARGET_CFLAGS="$TARGET_CFLAGS -mfpu=$TARGET_FPU" - TARGET_CXXFLAGS="$TARGET_CFLAGS" - TARGET_LDFLAGS="$TARGET_LDFLAGS -fPIC -mcpu=$TARGET_CPU" - ;; -esac - -TARGET_PKG_CONFIG_PATH="" -TARGET_PKG_CONFIG_LIBDIR="$SYSROOT_PREFIX/usr/lib/pkgconfig:$SYSROOT_PREFIX/usr/share/pkgconfig" -TARGET_PKG_CONFIG_SYSROOT_DIR="$SYSROOT_PREFIX" +TARGET_LDFLAGS="$TARGET_LDFLAGS $GCC_OPTIM $LD_OPTIM" if [ "$DEBUG" = yes ]; then TARGET_CFLAGS="$TARGET_CFLAGS -ggdb" @@ -124,6 +101,10 @@ else TARGET_LDFLAGS="$TARGET_LDFLAGS -s" fi +TARGET_PKG_CONFIG_PATH="" +TARGET_PKG_CONFIG_LIBDIR="$SYSROOT_PREFIX/usr/lib/pkgconfig:$SYSROOT_PREFIX/usr/share/pkgconfig" +TARGET_PKG_CONFIG_SYSROOT_DIR="$SYSROOT_PREFIX" + HOST_AWK=gawk HOST_CC=$ROOT/$TOOLCHAIN/bin/host-gcc HOST_CXX=$ROOT/$TOOLCHAIN/bin/host-g++