1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- diff --git a/CrossCompile.sh b/CrossCompile.sh
- index cd87200..a94e25a 100755
- --- a/CrossCompile.sh
- +++ b/CrossCompile.sh
- @@ -6,29 +6,83 @@ WRKDIR=`pwd`
- CMDDIR=`dirname $0`
- cd $CMDDIR
-
- +#=== Asssign GNU_TARGET_NAME from .config
- +_ARCH=`grep BR2_ARCH\= .config | awk -F\= -F\" '{print $2}'`
- +_TARGET_VENDOR=`grep BR2_TOOLCHAIN_BUILDROOT_VENDOR\= .config | awk -F\= -F\" '{print $2}'`
- +
- +# -- get target os
- +_BR2_BINFMT_FLAT=`grep BR2_BINFMT_FLAT\= .config | awk -F\= '{print $2}'`
- +if [ "$_BR2_BINFMT_FLAT" = "y" ]; then
- + _TARGET_OS="uclinux"
- + else
- + _TARGET_OS="linux"
- +fi
- +
- +# -- get libc
- +_BR2_TOOLCHAIN_USES_UCLIBC=`grep BR2_TOOLCHAIN_USES_UCLIBC\= .config | awk -F\= '{print $2}'`
- +_BR2_TOOLCHAIN_USES_MUSL=`grep BR2_TOOLCHAIN_USES_MUSL\= .config | awk -F\= '{print $2}'`
- +
- +if [ "$_BR2_TOOLCHAIN_USES_UCLIBC" = "y" ]; then
- + _LIBC="uclibc"
- + else
- + if [ "$_BR2_TOOLCHAIN_USES_MUSL" = "y" ]; then
- + _LIBC="musl"
- + else
- + _LIBC="gnu"
- + fi
- +fi
- +
- +# -- ABI
- +_BR2_arm=`grep BR2_arm\= .config | awk -F\= '{print $2}'`
- +_BR2_armeb=`grep BR2_armeb\= .config | awk -F\= '{print $2}'`
- +_BR2_ARM_EABIHF=`grep BR2_ARM_EABIHF\= .config | awk -F\= '{print $2}'`
- +if [ "$_BR2_arm" = "y" ] || [ "$_BR2_armeb" = "y" ]; then
- + if [ "$_LIBC" = "uclibc" ]; then
- + _ABI="gnueabi"
- + else
- + _ABI="eabi"
- + fi
- + if [ "$_BR2_ARM_EABIHF" = "y" ]; then
- + _ABI="${_ABI}hf"
- + fi
- +fi
- +
- +_GNU_TARGET_NAME="${_ARCH}-${_TARGET_VENDOR}-${_TARGET_OS}-${_LIBC}${_ABI}"
- +#===============================================================
- +
- TOOLCHAIN=`grep BR2_HOST_DIR .config | awk -F\= -F\" '{print $2}'`
- echo $TOOLCHAIN
-
- if [[ $TOOLCHAIN = *\$\(BASE_DIR\)* ]]; then
- - export SYSROOTBIN=`readlink -f $CMDDIR`/output/host/usr/bin/
- + export SYSROOT=`readlink -f $CMDDIR`/output/host/usr/bin/
- else
- - export SYSROOTBIN=$TOOLCHAIN/usr/bin
- + export SYSROOT=$TOOLCHAIN/usr/bin
- fi
-
- -export PATH=$PATH:$SYSROOTBIN
- +export PATH=$PATH:$SYSROOT
- +
- +export CROSS_COMPILE="${_GNU_TARGET_NAME}-"
- +export CROSS=${CROSS_COMPILE}
-
- -export CROSS_COMPILE=i586-buildroot-linux-gnu-
- -export CROSS=$CROSS_COMPILE
- -export ARCH=i586
- -export KERNELDIR=`pwd`/output/build/linux-linux-4.4.y
- +export ARCH=arm
- +_KERNELDIR=`grep BR2_LINUX_KERNEL_VERSION\= .config | awk -F\= -F\" '{print $2}'`
- +export KERNELDIR=${CMDDIR}/output/build/linux-${_KERNELDIR}
- export BB_KERNEL_SOURCES=$KERNELDIR
- -export SYSROOT=`grep BR2_HOST_DIR .config | awk -F\= -F\" '{print $2}'`/usr/i586-buildroot-linux-gnu/sysroot
- -export CC_FULLPATH="${SYSROOTBIN}${CROSS_COMPILE}"
- +export SYSROOTARM=`grep BR2_HOST_DIR .config | awk -F\= -F\" '{print $2}'`/usr/${_GNU_TARGET_NAME}/sysroot
- +export CC_FULLPATH="${SYSROOT}/${CROSS_COMPILE}"
- export CC=${CROSS_COMPILE}gcc
- export CXX=${CROSS_COMPILE}g++
-
- +#--- gnupru
- +export PASM=pasm
- +##export PSYSROOT=/home/ru/pru/pru-gcc/bin
- +export PSYSROOT=/opt/GfA/PRU-ICSS/bin/pru-gcc/bin
- +export PATH=$PSYSROOT:$PATH
- +
- +export PCROSS_COMPILE=pru-
- +export PARCH=pru
- +
- cd $WRKDIR
- -echo $CROSS_COMPILE
- if [ $# -eq "0" ]
- then
- PROMPT_COMMAND='PS1="\[\033[0;31m\]CROSS CC:\[\033[0;32m\]$PS1";unset PROMPT_COMMAND' bash ; reset
|