blob: 13e2cdf5963968d2d99065445c17d28b8b256297 [file] [log] [blame]
#!/bin/bash
set -e
set -x
LOCAL_DIR=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )
ROOT_DIR=$(dirname "$LOCAL_DIR")
cd "$ROOT_DIR"
mkdir build
cd build
# Special cases - run script and exit
if [ "$BUILD_ANDROID" = 'true' ]; then
export ANDROID_NDK=/opt/android_ndk
sh "${ROOT_DIR}/scripts/build_android.sh"
exit 0
fi
if [ "$BUILD_IOS" = 'true' ]; then
sh "${ROOT_DIR}/scripts/build_ios.sh" -DCMAKE_OSX_ARCHITECTURES=arm64
exit 0
fi
# Configure
CMAKE_ARGS=('-DCMAKE_VERBOSE_MAKEFILE=ON')
CMAKE_ARGS+=('-DCMAKE_INSTALL_PREFIX=../install')
if [ "$BUILD_CUDA" = 'true' ]; then
CMAKE_ARGS+=('-DUSE_CUDA=ON')
CMAKE_ARGS+=('-DCUDA_ARCH_NAME=Pascal')
CMAKE_ARGS+=('-DCUDA_NVCC_EXECUTABLE=/usr/local/bin/nvcc')
export PATH="/usr/local/cuda/bin:${PATH}"
CMAKE_ARGS+=('-DUSE_NNPACK=OFF')
else
CMAKE_ARGS+=('-DUSE_CUDA=OFF')
fi
if [ "$BUILD_MKL" = 'true' ]; then
CMAKE_ARGS+=('-DBLAS=MKL')
fi
if [ "$BUILD_TESTS" = 'false' ]; then
CMAKE_ARGS+=('-DBUILD_TEST=OFF')
fi
cmake .. ${CMAKE_ARGS[*]}
# Build
if [ "$TRAVIS_OS_NAME" = 'linux' ]; then
make "-j$(nproc)" install
elif [ "$TRAVIS_OS_NAME" = 'osx' ]; then
make "-j$(sysctl -n hw.ncpu)" install
fi