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