scripts/build: use ninja for cmake builds

This commit is contained in:
Lukas Rusak 2016-12-02 11:22:20 -08:00
parent f3520a24b1
commit e119599518
No known key found for this signature in database
GPG Key ID: 8C310C807E7393A3

View File

@ -133,7 +133,15 @@ if [ ! -f $STAMP ]; then
CMAKE_BUILD_TYPE="MinSizeRel" CMAKE_BUILD_TYPE="MinSizeRel"
fi fi
TARGET_CMAKE_OPTS="-DCMAKE_TOOLCHAIN_FILE=$CMAKE_CONF \ if [ "$PKG_USE_NINJA" = "no" ]; then
CMAKE_GENERATOR=""
else
CMAKE_GENERATOR="-GNinja \
-DCMAKE_EXPORT_COMPILE_COMMANDS=ON"
fi
TARGET_CMAKE_OPTS="$CMAKE_GENERATOR \
-DCMAKE_TOOLCHAIN_FILE=$CMAKE_CONF \
-DCMAKE_INSTALL_PREFIX=/usr \ -DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=$CMAKE_BUILD_TYPE" -DCMAKE_BUILD_TYPE=$CMAKE_BUILD_TYPE"
@ -149,9 +157,9 @@ if [ ! -f $STAMP ]; then
--disable-static \ --disable-static \
--enable-shared" --enable-shared"
HOST_CMAKE_OPTS="-DCMAKE_TOOLCHAIN_FILE=$CMAKE_CONF \ HOST_CMAKE_OPTS="$CMAKE_GENERATOR \
-DCMAKE_INSTALL_PREFIX=$TOOLCHAIN \ -DCMAKE_TOOLCHAIN_FILE=$CMAKE_CONF \
-DCMAKE_BUILD_TYPE=Release" -DCMAKE_INSTALL_PREFIX=$TOOLCHAIN"
# configure INIT build defaults # configure INIT build defaults
INIT_CONFIGURE_OPTS="$TARGET_CONFIGURE_OPTS" INIT_CONFIGURE_OPTS="$TARGET_CONFIGURE_OPTS"
@ -301,6 +309,20 @@ if [ ! -f $STAMP ]; then
fi fi
if [ "$(type -t make_$TARGET)" = "function" ]; then if [ "$(type -t make_$TARGET)" = "function" ]; then
make_$TARGET make_$TARGET
elif [ -f "$PKG_CMAKE_SCRIPT" -a ! "$PKG_USE_CMAKE" = "no" -a ! "$PKG_USE_NINJA" = "no" ]; then
if [ "$TARGET" = "target" ]; then
echo "Executing (target): ninja $PKG_MAKE_OPTS_TARGET" | tr -s " "
ninja $PKG_MAKE_OPTS_TARGET
elif [ "$TARGET" = "host" ]; then
echo "Executing (host): ninja $PKG_MAKE_OPTS_HOST" | tr -s " "
ninja $PKG_MAKE_OPTS_HOST
elif [ "$TARGET" = "init" ]; then
echo "Executing (init): ninja $PKG_MAKE_OPTS_INIT" | tr -s " "
ninja $PKG_MAKE_OPTS_INIT
elif [ "$TARGET" = "bootstrap" ]; then
echo "Executing (bootstrap): ninja $PKG_MAKE_OPTS_BOOTSTRAP" | tr -s " "
ninja $PKG_MAKE_OPTS_BOOTSTRAP
fi
else else
if [ "$TARGET" = "target" ]; then if [ "$TARGET" = "target" ]; then
echo "Executing (target): make $PKG_MAKE_OPTS_TARGET" | tr -s " " echo "Executing (target): make $PKG_MAKE_OPTS_TARGET" | tr -s " "
@ -326,6 +348,17 @@ if [ ! -f $STAMP ]; then
fi fi
if [ "$(type -t makeinstall_$TARGET)" = "function" ]; then if [ "$(type -t makeinstall_$TARGET)" = "function" ]; then
makeinstall_$TARGET makeinstall_$TARGET
elif [ -f "$PKG_CMAKE_SCRIPT" -a ! "$PKG_USE_CMAKE" = "no" -a ! "$PKG_USE_NINJA" = "no" ]; then
if [ "$TARGET" = "target" ]; then
DESTDIR=$SYSROOT_PREFIX ninja install $PKG_MAKEINSTALL_OPTS_TARGET
DESTDIR=$INSTALL ninja install $PKG_MAKEINSTALL_OPTS_TARGET
elif [ "$TARGET" = "host" ]; then
ninja install $PKG_MAKEINSTALL_OPTS_HOST
elif [ "$TARGET" = "init" ]; then
DESTDIR=$INSTALL ninja install $PKG_MAKEINSTALL_OPTS_INIT
elif [ "$TARGET" = "bootstrap" ]; then
ninja install $PKG_MAKEINSTALL_OPTS_BOOTSTRAP
fi
else else
if [ "$TARGET" = "target" ]; then if [ "$TARGET" = "target" ]; then
$MAKEINSTALL $PKG_MAKEINSTALL_OPTS_TARGET $MAKEINSTALL $PKG_MAKEINSTALL_OPTS_TARGET