mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-24 11:16:51 +00:00
config/functions: rework setup_toolchain, add cmake configuration
Signed-off-by: Stephan Raue <stephan@openelec.tv>
This commit is contained in:
parent
e726b1a358
commit
ccb0683056
135
config/functions
135
config/functions
@ -1,62 +1,81 @@
|
||||
setup_toolchain() {
|
||||
if [ "$1" = target ]; then
|
||||
export DESTIMAGE="target"
|
||||
|
||||
unset CPP
|
||||
|
||||
export CC=$TARGET_CC
|
||||
export CXX=$TARGET_CXX
|
||||
export LD=$TARGET_LD
|
||||
export AS=$TARGET_AS
|
||||
export AR=$TARGET_AR
|
||||
export NM=$TARGET_NM
|
||||
export RANLIB=$TARGET_RANLIB
|
||||
export OBJCOPY=$TARGET_OBJCOPY
|
||||
export OBJDUMP=$TARGET_OBJDUMP
|
||||
export STRIP=$TARGET_STRIP
|
||||
export CPPFLAGS="$TARGET_CPPFLAGS"
|
||||
export CFLAGS="$TARGET_CFLAGS"
|
||||
export CXXFLAGS="$TARGET_CXXFLAGS"
|
||||
export LDFLAGS="$TARGET_LDFLAGS"
|
||||
export PKG_CONFIG_PATH="$TARGET_PKG_CONFIG_PATH"
|
||||
export PKG_CONFIG_LIBDIR="$TARGET_PKG_CONFIG_LIBDIR"
|
||||
export PKG_CONFIG_SYSROOT_DIR="$TARGET_PKG_CONFIG_SYSROOT_DIR"
|
||||
|
||||
# set python defaults
|
||||
export _python_sysroot="$SYSROOT_PREFIX"
|
||||
export _python_prefix=/usr
|
||||
export _python_exec_prefix=/usr
|
||||
|
||||
# set CMAKE configfile for target
|
||||
export CMAKE_CONF=$ROOT/$TOOLCHAIN/etc/cmake-$TARGET_NAME.conf
|
||||
|
||||
elif [ "$1" = host ]; then
|
||||
export DESTIMAGE="host"
|
||||
|
||||
unset CPP
|
||||
|
||||
export AWK=$HOST_AWK
|
||||
export CC=$HOST_CC
|
||||
export CXX=$HOST_CXX
|
||||
export LD=$HOST_LD
|
||||
export AS=$HOST_AS
|
||||
export AR=$HOST_AR
|
||||
export NM=$HOST_NM
|
||||
export RANLIB=$HOST_RANLIB
|
||||
export OBJCOPY=$HOST_OBJCOPY
|
||||
export STRIP=$HOST_STRIP
|
||||
export CPPFLAGS="$HOST_CPPFLAGS"
|
||||
export CFLAGS="$HOST_CFLAGS"
|
||||
export CXXFLAGS="$HOST_CXXFLAGS"
|
||||
export LDFLAGS="$HOST_LDFLAGS"
|
||||
export PKG_CONFIG_PATH="$HOST_PKG_CONFIG_PATH"
|
||||
export PKG_CONFIG_LIBDIR="$HOST_PKG_CONFIG_LIBDIR"
|
||||
export PKG_CONFIG_SYSROOT_DIR="$HOST_PKG_CONFIG_SYSROOT_DIR"
|
||||
|
||||
# set CMAKE configfile for host
|
||||
export CMAKE_CONF=$ROOT/$TOOLCHAIN/etc/cmake-$HOST_NAME.conf
|
||||
|
||||
fi
|
||||
case "$1" in
|
||||
target)
|
||||
export DESTIMAGE="target"
|
||||
export CC="$TARGET_CC"
|
||||
export CXX="$TARGET_CXX"
|
||||
export CPP="$TARGET_CPP"
|
||||
export LD="$TARGET_LD"
|
||||
export AS="$TARGET_AS"
|
||||
export AR="$TARGET_AR"
|
||||
export NM="$TARGET_NM"
|
||||
export RANLIB=$TARGET_RANLIB
|
||||
export OBJCOPY=$TARGET_OBJCOPY
|
||||
export OBJDUMP=$TARGET_OBJDUMP
|
||||
export STRIP=$TARGET_STRIP
|
||||
export CPPFLAGS="$TARGET_CPPFLAGS"
|
||||
export CFLAGS="$TARGET_CFLAGS"
|
||||
export CXXFLAGS="$TARGET_CXXFLAGS"
|
||||
export LDFLAGS="$TARGET_LDFLAGS"
|
||||
export PKG_CONFIG_PATH="$TARGET_PKG_CONFIG_PATH"
|
||||
export PKG_CONFIG_LIBDIR="$TARGET_PKG_CONFIG_LIBDIR"
|
||||
export PKG_CONFIG_SYSROOT_DIR="$TARGET_PKG_CONFIG_SYSROOT_DIR"
|
||||
export CMAKE_CONF=$ROOT/$TOOLCHAIN/etc/cmake-$TARGET_NAME.conf
|
||||
export CMAKE="cmake -DCMAKE_TOOLCHAIN_FILE=$CMAKE_CONF -DCMAKE_INSTALL_PREFIX=/usr"
|
||||
if [ ! -f $CMAKE_CONF ] ; then
|
||||
mkdir -p $ROOT/$TOOLCHAIN/etc
|
||||
echo "SET(CMAKE_SYSTEM_NAME Linux)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_SYSTEM_VERSION 1)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_SYSTEM_PROCESSOR $TARGET_ARCH)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_C_COMPILER $CC)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_CXX_COMPILER $CXX)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_CPP_COMPILER $CPP)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_FIND_ROOT_PATH $SYSROOT_PREFIX)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)" >> $CMAKE_CONF
|
||||
fi
|
||||
export _python_sysroot="$SYSROOT_PREFIX"
|
||||
export _python_prefix=/usr
|
||||
export _python_exec_prefix=/usr
|
||||
;;
|
||||
host)
|
||||
export DESTIMAGE="host"
|
||||
export AWK=$HOST_AWK
|
||||
export CC="$HOST_CC"
|
||||
export CXX="$HOST_CXX"
|
||||
export CPP="$HOST_CPP"
|
||||
export LD="$HOST_LD"
|
||||
export AS="$HOST_AS"
|
||||
export AR="$HOST_AR"
|
||||
export NM="$HOST_NM"
|
||||
export RANLIB="$HOST_RANLIB"
|
||||
export OBJCOPY="$HOST_OBJCOPY"
|
||||
export STRIP="$HOST_STRIP"
|
||||
export CPPFLAGS="$HOST_CPPFLAGS"
|
||||
export CFLAGS="$HOST_CFLAGS"
|
||||
export CXXFLAGS="$HOST_CXXFLAGS"
|
||||
export LDFLAGS="$HOST_LDFLAGS"
|
||||
export PKG_CONFIG_PATH="$HOST_PKG_CONFIG_PATH"
|
||||
export PKG_CONFIG_LIBDIR="$HOST_PKG_CONFIG_LIBDIR"
|
||||
export PKG_CONFIG_SYSROOT_DIR="$HOST_PKG_CONFIG_SYSROOT_DIR"
|
||||
export CMAKE_CONF=$ROOT/$TOOLCHAIN/etc/cmake-$HOST_NAME.conf
|
||||
export CMAKE="cmake -DCMAKE_TOOLCHAIN_FILE=$CMAKE_CONF -DCMAKE_INSTALL_PREFIX=$ROOT/$TOOLCHAIN"
|
||||
if [ ! -f $CMAKE_CONF ] ; then
|
||||
mkdir -p $TOOLCHAIN/etc
|
||||
echo "SET(CMAKE_SYSTEM_NAME Linux)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_SYSTEM_VERSION 1)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_C_COMPILER $CC)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_CXX_COMPILER $CXX)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_CPP_COMPILER $CXX)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_AR $AR)" >> $CMAKE_CONF # hum?
|
||||
echo "SET(CMAKE_FIND_ROOT_PATH $ROOT/$TOOLCHAIN)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM BOTH)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH)" >> $CMAKE_CONF
|
||||
echo "SET(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE BOTH)" >> $CMAKE_CONF
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
kernel_path() {
|
||||
|
@ -168,10 +168,9 @@ XORG_PATH_DRIVERS=/usr/lib/xorg/modules/drivers
|
||||
TOOLCHAIN_LANGUAGES=c
|
||||
[ "$TOOLCHAIN_CXX" = yes ] && TOOLCHAIN_LANGUAGES=${TOOLCHAIN_LANGUAGES},c++
|
||||
|
||||
unset TARGET_CPP
|
||||
|
||||
TARGET_CC=${TARGET_PREFIX}gcc
|
||||
TARGET_CXX=${TARGET_PREFIX}g++
|
||||
TARGET_CPP=${TARGET_PREFIX}cpp
|
||||
TARGET_LD=${TARGET_PREFIX}ld
|
||||
TARGET_AS=${TARGET_PREFIX}as
|
||||
TARGET_AR=${TARGET_PREFIX}ar
|
||||
@ -187,11 +186,10 @@ 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"
|
||||
|
||||
unset HOST_CPP
|
||||
|
||||
HOST_AWK=gawk
|
||||
HOST_CC=$ROOT/$TOOLCHAIN/bin/host-gcc
|
||||
HOST_CXX=$ROOT/$TOOLCHAIN/bin/host-g++
|
||||
HOST_CPP=cpp
|
||||
HOST_LD=ld
|
||||
HOST_AS=as
|
||||
HOST_AR=ar
|
||||
|
Loading…
x
Reference in New Issue
Block a user