Skip to content

Commit

Permalink
Catch2: Install on CI
Browse files Browse the repository at this point in the history
- AppVeyor
- Travis-CI
  • Loading branch information
ax3l committed Dec 12, 2018
1 parent 1eda3a7 commit fb03c38
Show file tree
Hide file tree
Showing 8 changed files with 59 additions and 11 deletions.
29 changes: 23 additions & 6 deletions .appveyor.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#
# Copyright 2015-2017 Benjamin Worpitz, Erik Zenker
# Copyright 2015-2018 Benjamin Worpitz, Erik Zenker, Axel Huebl
#
# This file is part of alpaka.
#
Expand Down Expand Up @@ -50,9 +50,11 @@ environment:
- ALPAKA_DEBUG: 2
OMP_NUM_THREADS: 4
ALPAKA_BOOST_BRANCH: boost-1.66.0
ALPAKA_CATCH2_BRANCH: v2.4.0
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
- OMP_NUM_THREADS: 4
ALPAKA_BOOST_BRANCH: boost-1.64.0
ALPAKA_CATCH2_BRANCH: v2.5.0
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017

matrix:
Expand Down Expand Up @@ -119,6 +121,12 @@ before_build:
- cmd: echo "%PLATFORM%"
- cmd: echo "%CONFIGURATION%"

#-------------------------------------------------------------------------------
# Select CMake Visual Studio Generator
- cmd: if "%APPVEYOR_BUILD_WORKER_IMAGE%"=="Visual Studio 2017" set ALPAKA_CMAKE_GENERATOR=Visual Studio 15 2017
- cmd: if "%APPVEYOR_BUILD_WORKER_IMAGE%"=="Visual Studio 2017" "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat" amd64
- cmd: if "%PLATFORM%"=="x64" set ALPAKA_CMAKE_GENERATOR=%ALPAKA_CMAKE_GENERATOR% Win64

#-------------------------------------------------------------------------------
# Clone boost.
- cmd: set ALPAKA_CI_BOOST_ROOT_DIR=C:\projects\boost
Expand All @@ -143,6 +151,19 @@ before_build:
- cmd: if "%APPVEYOR_BUILD_WORKER_IMAGE%"=="Visual Studio 2017" set ALPAKA_BOOST_TOOLSET=msvc-14.1
- cmd: b2 -j2 --toolset=%ALPAKA_BOOST_TOOLSET% --layout=versioned %ALPAKA_BOOST_B2% architecture=x86 address-model=%ALPAKA_BOOST_ADDRESS_MODEL% variant=%ALPAKA_BOOST_VARIANT% link=static threading=multi runtime-link=shared define=_CRT_NONSTDC_NO_DEPRECATE define=_CRT_SECURE_NO_DEPRECATE define=_SCL_SECURE_NO_DEPRECAT define=BOOST_USE_WINFIBERS define=_ENABLE_EXTENDED_ALIGNED_STORAGE --stagedir="%ALPAKA_B2_STAGE_DIR%"

#-------------------------------------------------------------------------------
# Install Catch2
- cmd: set ALPAKA_CI_CATCH2_ROOT_DIR=C:\projects\catch2
- cmd: set ALPAKA_CI_CATCH2_STAGE_DIR=%ALPAKA_CI_CATCH2_ROOT_DIR%\sources
- cmd: git clone -b %ALPAKA_CATCH2_BRANCH% --recursive --single-branch --depth 1 https://github.com/catchorg/Catch2.git %ALPAKA_CI_CATCH2_STAGE_DIR%
- cmd: cd %ALPAKA_CI_CATCH2_STAGE_DIR%
- cmd: mkdir build
- cmd: cd build
- cmd: cmake -G "%ALPAKA_CMAKE_GENERATOR%" -DCMAKE_BUILD_TYPE=%CONFIGURATION% -DCMAKE_INSTALL_PREFIX=%ALPAKA_CI_CATCH2_ROOT_DIR% -DBUILD_TESTING=OFF ..
- cmd: cmake --build . --config %CONFIGURATION%
- cmd: cmake --build . --config %CONFIGURATION% --target install
- cmd: set CMAKE_PREFIX_PATH=%ALPAKA_CI_CATCH2_ROOT_DIR%;%CMAKE_PREFIX_PATH%

#-------------------------------------------------------------------------------
# Install TBB
- cmd: set TBB_ARCHIVE_VER=tbb44_20160526oss
Expand All @@ -158,12 +179,8 @@ before_build:
- cmd: set PATH=%PATH%;%ALPAKA_TBB_BIN_DIR%

#-------------------------------------------------------------------------------
# Build the visual studio soultion from the cmake files.
# Build the visual studio solution from the cmake files.
- cmd: cd C:\projects\alpaka

- cmd: if "%APPVEYOR_BUILD_WORKER_IMAGE%"=="Visual Studio 2017" set ALPAKA_CMAKE_GENERATOR=Visual Studio 15 2017
- cmd: if "%APPVEYOR_BUILD_WORKER_IMAGE%"=="Visual Studio 2017" "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat" amd64
- cmd: if "%PLATFORM%"=="x64" set ALPAKA_CMAKE_GENERATOR=%ALPAKA_CMAKE_GENERATOR% Win64
- cmd: mkdir build
- cmd: cd build
- cmd: cmake -G "%ALPAKA_CMAKE_GENERATOR%" -DCMAKE_BUILD_TYPE=%CONFIGURATION% -DTBB_ROOT_DIR="%TBB_ROOT_DIR%" -DBOOST_ROOT="%ALPAKA_CI_BOOST_ROOT_DIR%" -DBOOST_LIBRARYDIR="%ALPAKA_CI_BOOST_LIB_DIR%" -DBoost_USE_STATIC_LIBS=ON -DBoost_USE_MULTITHREADED=ON -DBoost_USE_STATIC_RUNTIME=OFF -DALPAKA_ACC_CPU_B_SEQ_T_SEQ_ENABLE="%ALPAKA_ACC_CPU_B_SEQ_T_SEQ_ENABLE%" -DALPAKA_ACC_CPU_B_SEQ_T_THREADS_ENABLE="%ALPAKA_ACC_CPU_B_SEQ_T_THREADS_ENABLE%" -DALPAKA_ACC_CPU_B_SEQ_T_FIBERS_ENABLE="%ALPAKA_ACC_CPU_B_SEQ_T_FIBERS_ENABLE%" -DALPAKA_ACC_CPU_B_TBB_T_SEQ_ENABLE="%ALPAKA_ACC_CPU_B_TBB_T_SEQ_ENABLE%" -DALPAKA_ACC_CPU_B_OMP2_T_SEQ_ENABLE="%ALPAKA_ACC_CPU_B_OMP2_T_SEQ_ENABLE%" -DALPAKA_ACC_CPU_B_SEQ_T_OMP2_ENABLE="%ALPAKA_ACC_CPU_B_SEQ_T_OMP2_ENABLE%" -DALPAKA_ACC_CPU_BT_OMP4_ENABLE="%ALPAKA_ACC_CPU_BT_OMP4_ENABLE%" -DALPAKA_ACC_GPU_CUDA_ENABLE="%ALPAKA_ACC_GPU_CUDA_ENABLE%" -DALPAKA_ACC_GPU_CUDA_ONLY_MODE="%ALPAKA_ACC_GPU_CUDA_ONLY_MODE%" -DALPAKA_DEBUG="%ALPAKA_DEBUG%" -DALPAKA_CI=APPVEYOR ".."
Expand Down
3 changes: 3 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,7 @@ services:
# ALPAKA_ACC_GPU_HIP_ENABLE : {ON, OFF}
# [ON] ALPAKA_CI_HIP_BRANCH : {master}
# [ON] ALPAKA_HIP_PLATFORM : {nvcc}
# [ON] ALPAKA_CI_CATCH2_BRANCH : {2.4.0}
env:
global:
- ALPAKA_CI=TRAVIS
Expand All @@ -66,6 +67,8 @@ env:
- ALPAKA_CI_DOCKER_CACHE_IMAGE_FILE_PATH=${ALPAKA_CI_DOCKER_CACHE_DIR}/${ALPAKA_CI_DOCKER_IMAGE_NAME}.tar.gz
- ALPAKA_CI_BOOST_ROOT_DIR=${HOME}/boost
- ALPAKA_CI_BOOST_LIB_DIR=${HOME}/boost_libs/x64
- ALPAKA_CI_CATCH2_BRANCH=v2.4.0
- ALPAKA_CI_CATCH2_ROOT_DIR=${HOME}/catch2
- ALPAKA_CI_CLANG_DIR=${HOME}/llvm
- ALPAKA_CI_CMAKE_DIR=${HOME}/CMake
- ALPAKA_CI_CUDA_DIR=${HOME}/CUDA
Expand Down
12 changes: 7 additions & 5 deletions script/travis/docker_install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -28,11 +28,11 @@ ls "${ALPAKA_CI_DOCKER_CACHE_DIR}"

ALPAKA_DOCKER_BUILD_REQUIRED=1

if [ -f "${ALPAKA_CI_DOCKER_CACHE_IMAGE_FILE_PATH}" ]
then
# NOTE: The image being available is not the only precondition. If anything within any of the scripts has changed in comparison to the ones that created the docker image, we might have to rebuild the image.
ALPAKA_DOCKER_BUILD_REQUIRED=0
fi
#if [ -f "${ALPAKA_CI_DOCKER_CACHE_IMAGE_FILE_PATH}" ]
#then
# # NOTE: The image being available is not the only precondition. If anything within any of the scripts has changed in comparison to the ones that created the docker image, we might have to rebuild the image.
# ALPAKA_DOCKER_BUILD_REQUIRED=0
#fi

# runtime and compile time options
ALPAKA_DOCKER_ENV_LIST=()
Expand All @@ -44,6 +44,8 @@ ALPAKA_DOCKER_ENV_LIST+=("--env" "ALPAKA_CI_ANALYSIS=${ALPAKA_CI_ANALYSIS}")
ALPAKA_DOCKER_ENV_LIST+=("--env" "ALPAKA_CI_BOOST_BRANCH=${ALPAKA_CI_BOOST_BRANCH}")
ALPAKA_DOCKER_ENV_LIST+=("--env" "ALPAKA_CI_BOOST_ROOT_DIR=${ALPAKA_CI_BOOST_ROOT_DIR}")
ALPAKA_DOCKER_ENV_LIST+=("--env" "ALPAKA_CI_BOOST_LIB_DIR=${ALPAKA_CI_BOOST_LIB_DIR}")
ALPAKA_DOCKER_ENV_LIST+=("--env" "ALPAKA_CI_CATCH2_BRANCH=${ALPAKA_CI_CATCH2_BRANCH}")
ALPAKA_DOCKER_ENV_LIST+=("--env" "ALPAKA_CI_CATCH2_ROOT_DIR=${ALPAKA_CI_CATCH2_ROOT_DIR}")
ALPAKA_DOCKER_ENV_LIST+=("--env" "ALPAKA_CI_CLANG_DIR=${ALPAKA_CI_CLANG_DIR}")
if [ "${CXX}" == "clang++" ]
then
Expand Down
2 changes: 2 additions & 0 deletions script/travis/docker_run.sh
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,8 @@ ALPAKA_DOCKER_ENV_LIST+=("--env" "ALPAKA_CI_ANALYSIS=${ALPAKA_CI_ANALYSIS}")
ALPAKA_DOCKER_ENV_LIST+=("--env" "ALPAKA_CI_BOOST_BRANCH=${ALPAKA_CI_BOOST_BRANCH}")
ALPAKA_DOCKER_ENV_LIST+=("--env" "ALPAKA_CI_BOOST_ROOT_DIR=${ALPAKA_CI_BOOST_ROOT_DIR}")
ALPAKA_DOCKER_ENV_LIST+=("--env" "ALPAKA_CI_BOOST_LIB_DIR=${ALPAKA_CI_BOOST_LIB_DIR}")
ALPAKA_DOCKER_ENV_LIST+=("--env" "ALPAKA_CI_CATCH2_BRANCH=${ALPAKA_CI_CATCH2_BRANCH}")
ALPAKA_DOCKER_ENV_LIST+=("--env" "ALPAKA_CI_CATCH2_ROOT_DIR=${ALPAKA_CI_CATCH2_ROOT_DIR}")
ALPAKA_DOCKER_ENV_LIST+=("--env" "ALPAKA_CI_CLANG_DIR=${ALPAKA_CI_CLANG_DIR}")
if [ "${CXX}" == "clang++" ]
then
Expand Down
1 change: 1 addition & 0 deletions script/travis/install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ then
fi
if [ "${CXX}" == "g++" ] ;then ./script/travis/install_gcc.sh ;fi
if [ "${CXX}" == "clang++" ] ;then source ./script/travis/install_clang.sh ;fi
./script/travis/install_catch2.sh
# If the variable is not set, the backend will most probably be used by default so we install it.
if [[ ! -v ALPAKA_ACC_CPU_B_TBB_T_SEQ_ENABLE || "${ALPAKA_ACC_CPU_B_TBB_T_SEQ_ENABLE}" == "ON" ]] ;then ./script/travis/install_tbb.sh ;fi
if [ "${ALPAKA_ACC_GPU_HIP_ENABLE}" == "ON" ] ;then ./script/travis/install_hip.sh ;fi
Expand Down
16 changes: 16 additions & 0 deletions script/travis/install_catch2.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@

: ${ALPAKA_CI_CATCH2_ROOT_DIR?"ALPAKA_CI_CATCH2_ROOT_DIR must be specified"}
: ${ALPAKA_CI_CATCH2_BRANCH?"ALPAKA_CI_CATCH2_BRANCH must be specified"}
: ${CMAKE_BUILD_TYPE?"CMAKE_BUILD_TYPE must be specified"}
: ${CXX?"CXX must be specified"}
: ${CC?"CC must be specified"}
: ${ALPAKA_CI_CMAKE_DIR?"ALPAKA_CI_CMAKE_DIR must be specified"}

# CMake
export PATH=${ALPAKA_CI_CMAKE_DIR}/bin:${PATH}
cmake --version

CATCH2_SOURCE_DIR=${ALPAKA_CI_CATCH2_ROOT_DIR}/source-catch2/

git clone -b "${ALPAKA_CI_CATCH2_BRANCH}" --quiet --recursive --single-branch https://github.com/catchorg/Catch2.git "${CATCH2_SOURCE_DIR}"
(cd "${CATCH2_SOURCE_DIR}"; mkdir -p build; cd build; cmake -DCMAKE_BUILD_TYPE="${CMAKE_BUILD_TYPE}" -DCMAKE_INSTALL_PREFIX="${ALPAKA_CI_CATCH2_ROOT_DIR}" -DBUILD_TESTING=OFF .. && make && make install)
3 changes: 3 additions & 0 deletions script/travis/run.sh
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,9 @@ fi
export PATH=${ALPAKA_CI_CMAKE_DIR}/bin:${PATH}
cmake --version

# Catch2
export CMAKE_PREFIX_PATH=${ALPAKA_CI_CATCH2_ROOT_DIR}:${CMAKE_PREFIX_PATH:-}

if [ "${ALPAKA_ACC_GPU_CUDA_ENABLE}" == "ON" ] || [ "${ALPAKA_ACC_GPU_HIP_ENABLE}" == "ON" ] && [ "${ALPAKA_HIP_PLATFORM}" == "nvcc" ]
then
# CUDA
Expand Down
4 changes: 4 additions & 0 deletions script/travis/run_build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,10 @@ echo "KMP_ALL_THREADS=${KMP_ALL_THREADS}"
echo "KMP_TEAMS_THREAD_LIMIT=${KMP_TEAMS_THREAD_LIMIT}"
echo "OMP_THREAD_LIMIT=${OMP_THREAD_LIMIT}"
echo "OMP_NUM_THREADS=${OMP_NUM_THREADS}"
echo "ALPAKA_CI_CATCH2_ROOT_DIR=${ALPAKA_CI_CATCH2_ROOT_DIR}"
ls ${ALPAKA_CI_CATCH2_ROOT_DIR}
ls -R ${ALPAKA_CI_CATCH2_ROOT_DIR}
echo "CMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH}"

mkdir --parents build/make/
cd build/make/
Expand Down

0 comments on commit fb03c38

Please sign in to comment.