From 165fa3662a065121473068ac3d4ef9230ea3d43d Mon Sep 17 00:00:00 2001 From: Raul Ferreira <raulmendesferreira@gmail.com> Date: Tue, 1 Jan 2019 21:56:43 +0000 Subject: [PATCH 1/7] Simplified travis and added some new options --- .travis.yml | 212 ++++++++++++++++++++++++++-------------------------- 1 file changed, 104 insertions(+), 108 deletions(-) diff --git a/.travis.yml b/.travis.yml index 3ee0fdc17..4b5899ca7 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,10 +1,11 @@ language: cpp +dist: xenial env: global: - DEPS_DIR=${TRAVIS_BUILD_DIR}/deps # CMake - - CMAKE_URL=https://github.com/Kitware/CMake/releases/download/v3.13.2/cmake-3.13.2-Linux-x86_64.tar.gz + - CMAKE_URL=https://cmake.org/files/v3.13/cmake-3.13.2-Linux-x86_64.tar.gz # OpenCL - OPENCL_LIB=default # Khronos OpenCL ICD @@ -20,12 +21,12 @@ env: - POCL_C_COMPILER=${DEPS_DIR}/llvm-${POCL_LLVM_VERSION}/bin/clang - POCL_OPENCL_LIB=${POCL_ROOT}/lib/libOpenCL.so # Global build options and C++ flags - - GCC_VERSION=5 - CMAKE_OPTIONS="-DBOOST_COMPUTE_BUILD_TESTS=ON -DBOOST_COMPUTE_BUILD_EXAMPLES=ON -DBOOST_COMPUTE_BUILD_BENCHMARKS=ON -DBOOST_COMPUTE_USE_OFFLINE_CACHE=ON -DBOOST_COMPUTE_HAVE_OPENCV=ON -DBOOST_COMPUTE_THREAD_SAFE=ON" - CXX_FLAGS="-Wall -pedantic -Werror -Wno-variadic-macros -Wno-long-long -Wno-shadow -DCI_BUILD" # Boost - BOOST_VERSION=default # Misc + - GENERATOR="Unix Makefiles" - RUN_TESTS=true - COVERAGE=false @@ -38,12 +39,10 @@ matrix: # Xenial, OpenCL 1.0 # CLANG - os: linux - dist: xenial compiler: clang addons: apt: - packages: &xenial_pocl_packages - - g++-5 + packages: &xenial_packages # POCL - libltdl-dev - libhwloc-dev @@ -62,20 +61,17 @@ matrix: - python-yaml - lcov - libopencv-dev - sources: &xenial_pocl_sources - - ubuntu-toolchain-r-test + - clinfo env: - OPENCL_LIB=pocl - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=100" - ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${POCL_OPENCL_LIB} -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include" # GCC - os: linux - dist: xenial compiler: gcc addons: apt: - packages: *xenial_pocl_packages - sources: *xenial_pocl_sources + packages: *xenial_packages env: - OPENCL_LIB=pocl - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=100" @@ -83,24 +79,20 @@ matrix: # Xenial, OpenCL 1.1 # CLANG - os: linux - dist: xenial compiler: clang addons: apt: - packages: *xenial_pocl_packages - sources: *xenial_pocl_sources + packages: *xenial_packages env: - OPENCL_LIB=pocl - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=101" - ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${POCL_OPENCL_LIB} -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include" # GCC - os: linux - dist: xenial compiler: gcc addons: apt: - packages: *xenial_pocl_packages - sources: *xenial_pocl_sources + packages: *xenial_packages env: - OPENCL_LIB=pocl - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=101" @@ -108,24 +100,20 @@ matrix: # Xenial, OpenCL 1.2 # CLANG - os: linux - dist: xenial compiler: clang addons: apt: - packages: *xenial_pocl_packages - sources: *xenial_pocl_sources + packages: *xenial_packages env: - OPENCL_LIB=pocl - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=102" - ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${POCL_OPENCL_LIB} -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include" # GCC - os: linux - dist: xenial compiler: gcc addons: apt: - packages: *xenial_pocl_packages - sources: *xenial_pocl_sources + packages: *xenial_packages env: - OPENCL_LIB=pocl - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=102" @@ -135,75 +123,51 @@ matrix: # Intel OpenCL Runtime builds (1.2, 2.0, 2.1) ############################################################################ - # Linux, Intel OpenCL 1.2 + # Xenial, Intel OpenCL 1.2 # CLANG - os: linux - dist: xenial compiler: clang addons: apt: - packages: &xenial_intel_packages - - g++-5 - # Boost - - libboost-chrono1.58-dev - - libboost-date-time1.58-dev - - libboost-test1.58-dev - - libboost-system1.58-dev - - libboost-filesystem1.58-dev - - libboost-timer1.58-dev - - libboost-program-options1.58-dev - - libboost-thread1.58-dev - # Misc - - python-yaml - - lcov - - libopencv-dev - sources: &xenial_intel_sources - - ubuntu-toolchain-r-test + packages: *xenial_packages env: - OPENCL_LIB=intel - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=102" - ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include" # GCC - os: linux - dist: xenial compiler: gcc addons: apt: - packages: *xenial_intel_packages - sources: *xenial_intel_sources + packages: *xenial_packages env: - OPENCL_LIB=intel - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=102" - ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include" - # Linux, Intel OpenCL 2.0 + # Xenial, Intel OpenCL 2.0 # CLANG - os: linux - dist: xenial compiler: clang addons: apt: - packages: *xenial_intel_packages - sources: *xenial_intel_sources + packages: *xenial_packages env: - OPENCL_LIB=intel - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=200" - ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include" # GCC - os: linux - dist: xenial compiler: gcc addons: apt: - packages: *xenial_intel_packages - sources: *xenial_intel_sources + packages: *xenial_packages env: - OPENCL_LIB=intel - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=200" - ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include" - # Linux, Intel OpenCL 2.1, New Boost Libs, C++11, Coverage + # Xenial, Intel OpenCL 2.1, New Boost Libs, C++11, Coverage # CLANG - os: linux - dist: xenial compiler: clang cache: ccache: true @@ -212,21 +176,18 @@ matrix: addons: apt: packages: &xenial_intel_latest_boost_packages - - g++-5 - # Misc - - python-yaml - - lcov - - libopencv-dev - sources: &xenial_intel_latest_boost_sources - - ubuntu-toolchain-r-test + # Misc + - python-yaml + - lcov + - libopencv-dev + - clinfo env: - OPENCL_LIB=intel - BOOST_VERSION="1_67_0" - - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=201" + - ENV_CXX_FLAGS="-DBOOST_COMPUTE_MAX_CL_VERSION=201" - ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include -DBOOST_COMPUTE_USE_CPP11=ON" # GCC - os: linux - dist: xenial compiler: gcc cache: ccache: true @@ -235,13 +196,11 @@ matrix: addons: apt: packages: *xenial_intel_latest_boost_packages - sources: *xenial_intel_latest_boost_sources env: - OPENCL_LIB=intel - BOOST_VERSION="1_67_0" - - COVERAGE=true - - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=201" - - ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include -DBOOST_COMPUTE_ENABLE_COVERAGE=ON -DBOOST_COMPUTE_USE_CPP11=ON" + - ENV_CXX_FLAGS="-DBOOST_COMPUTE_MAX_CL_VERSION=201" + - ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include -DBOOST_COMPUTE_USE_CPP11=ON -DBOOST_COMPUTE_ENABLE_COVERAGE=ON" - COVERAGE=true ############################################################################ @@ -255,21 +214,7 @@ matrix: compiler: clang addons: apt: - packages: &xenial_packages - - g++-5 - # Boost - - libboost-chrono1.58-dev - - libboost-date-time1.58-dev - - libboost-test1.58-dev - - libboost-system1.58-dev - - libboost-filesystem1.58-dev - - libboost-timer1.58-dev - - libboost-program-options1.58-dev - - libboost-thread1.58-dev - # Misc - - libopencv-dev - sources: &xenial_sources - - ubuntu-toolchain-r-test + packages: *xenial_packages env: - OPENCL_LIB=khronos-icd - RUN_TESTS=false @@ -282,7 +227,6 @@ matrix: addons: apt: packages: *xenial_packages - sources: *xenial_sources env: - OPENCL_LIB=khronos-icd - RUN_TESTS=false @@ -293,12 +237,68 @@ matrix: # OSX ############################################################################ - # OSX build + # CLANG - os: osx + osx_image: xcode10 compiler: clang env: - - ENV_CXX_FLAGS="-Wno-c99-extensions" - - ENV_CMAKE_OPTIONS="-DBOOST_COMPUTE_HAVE_OPENCV=OFF" + - MATRIX_EVAL="CC=clang && CXX=clang++ && export PATH=\"/usr/local/opt/llvm/bin:$PATH\" && export LDFLAGS=\"-L/usr/local/opt/llvm/lib\" && export CPPFLAGS=\"-I/usr/local/opt/llvm/include\"" + addons: + homebrew: + packages: &osx_packages + - boost + - cmake + - lcov + - gcc@5 + - llvm + - opencv + - clinfo + # GCC + - os: osx + osx_image: xcode10 + compiler: gcc + env: + - MATRIX_EVAL="CC=gcc-5 && CXX=g++-5" + addons: + homebrew: + packages: *osx_packages + install: + - brew uninstall boost --ignore-dependencies + - travis_wait 50 brew install boost@1.57 --cc=gcc-5 + - brew link boost@1.57 --force + + ############################################################################ + # Windows + ############################################################################ + - os: windows + env: + - GENERATOR="Visual Studio 15 2017 Win64" + - CXX_FLAGS="-DCI_BUILD" + - ENV_CXX_FLAGS="-DBOOST_COMPUTE_MAX_CL_VERSION=200" + - NUGETDIR="C:/NUGET" + - OCL_ROOT="$NUGETDIR/opencl-nug.0.777.77/build/native" + install: + # Install OpenCV + - choco install opencv --version 3.4.4 + - export OPENCV_DIR=C:/tools/opencv/build/x64/vc15/lib + - export PATH=C:/tools/opencv/build/x64/vc15/bin:$PATH + # Install Boost + - wget https://dl.bintray.com/boostorg/release/1.67.0/source/boost_1_67_0.7z + - 7z x boost_1_67_0.7z -o/C/local + - pushd "/C/local/boost_1_67_0" + - ./bootstrap.bat + - ./b2.exe --with-chrono --with-date_time --with-filesystem --with-program_options --with-system --with-thread --with-timer --with-test + - popd + # Install OpenCL headers and libraries + - choco install nuget.commandline + - nuget install opencl-nug -Version 0.777.77 -OutputDirectory $NUGETDIR + - ls -l $OCL_ROOT + # Install OpenCL Runtime + - choco install opencl-intel-cpu-runtime + # Download clinfo executable and add it to PATH + - mkdir bin + - curl -L 'https://ci.appveyor.com/api/projects/oblomov/clinfo/artifacts/clinfo.exe?job=platform:+x64' -o ./bin/clinfo.exe + - export PATH=./bin/:$PATH cache: directories: @@ -318,22 +318,10 @@ before_install: else echo 'Using cached LLVM.' fi - # OSX - elif [[ ${TRAVIS_OS_NAME} == "osx" ]]; then - brew update - /usr/bin/yes | pip uninstall numpy - brew outdated boost || brew upgrade boost - brew outdated cmake || brew upgrade cmake - brew install lcov # homebrew/science/opencv fi - gem install coveralls-lcov - - ${CXX} --version - - if [ "$CXX" = "g++" ]; then export CXX="g++-${GCC_VERSION}" CC="gcc-${GCC_VERSION}"; fi - - ${CXX} --version - - # Combine global build options with OS/compiler-dependent options - - export CMAKE_OPTIONS=${CMAKE_OPTIONS}" "${ENV_CMAKE_OPTIONS} - - export CXX_FLAGS=${CXX_FLAGS}" "${ENV_CXX_FLAGS} + # Pick correct compiler on OSX + - eval "${MATRIX_EVAL}" install: ############################################################################ @@ -363,7 +351,6 @@ install: travis_retry wget --no-check-certificate --quiet -O - ${BOOST_URL} | tar --strip-components=1 -xz -C ${DEPS_DIR}/boost${BOOST_VERSION} pushd ${DEPS_DIR}/boost${BOOST_VERSION} # Configure and install - if [ "$CXX" = "g++-${GCC_VERSION}" ]; then echo "using gcc : ${GCC_VERSION} : g++-${GCC_VERSION} ;" > $HOME/user-config.jam; fi ./bootstrap.sh --prefix=${DEPS_DIR}/boost/ --with-libraries=program_options,filesystem,system,thread,test,timer,chrono ./b2 -d0 install popd @@ -430,7 +417,7 @@ install: # https://software.intel.com/en-us/articles/opencl-drivers#cpu-section PACKAGE_URL=http://registrationcenter-download.intel.com/akdlm/irc_nas/vcp/13793/l_opencl_p_18.1.0.013.tgz PACKAGE_NAME=l_opencl_p_18.1.0.013 - wget -q ${PACKAGE_URL} -O /tmp/opencl_runtime.tgz + travis_retry wget -q ${PACKAGE_URL} -O /tmp/opencl_runtime.tgz tar -xzf /tmp/opencl_runtime.tgz -C /tmp sed 's/decline/accept/g' -i /tmp/${PACKAGE_NAME}/silent.cfg sudo /tmp/${PACKAGE_NAME}/install.sh -s /tmp/${PACKAGE_NAME}/silent.cfg @@ -440,12 +427,22 @@ script: ############################################################################ # Build Boost.Compute tests, benchmarks and examples ############################################################################ - - mkdir -p build - - cd build + - clinfo + - mkdir build && cd build + # Combine global build options with OS/compiler-dependent options + - export CMAKE_OPTIONS=${CMAKE_OPTIONS}" "${ENV_CMAKE_OPTIONS} + - export CXXFLAGS=${CXX_FLAGS}" "${ENV_CXX_FLAGS} + - echo ${CXXFLAGS} + - echo ${CXX} + - echo ${CCFLAGS} + - echo ${CC} + - echo ${GENERATOR} - echo ${CMAKE_OPTIONS} - - echo ${CXX_FLAGS} - - cmake ${CMAKE_OPTIONS} -DCMAKE_CXX_FLAGS="${CXX_FLAGS}" .. - - make -j4 + - cmake -G"${GENERATOR}" ${CMAKE_OPTIONS} .. + # https://stackoverflow.com/questions/39865367/warning-section-textcoal-nt-is-deprecate-since-updating-to-mac-osx-sierra + # Build must be run sequentially or else the grep command will not catch warnings correctly + - if [[ ${TRAVIS_OS_NAME} == "osx" && ${CC} == "gcc-5" ]]; then cmake --build . --config Debug 2>&1 | grep -v -e '^/var/folders/*' -e '^[[:space:]]*\.section' -e '^[[:space:]]*\^[[:space:]]*~*' ; fi + - if [[ ${TRAVIS_OS_NAME} != "osx" || ${CC} != "gcc-5" ]]; then cmake --build . -j 2 --config Debug ; fi - | if [[ ${RUN_TESTS} == "true" ]]; then # Print OpenCL devices @@ -453,11 +450,10 @@ script: # Run tests and examples ctest --output-on-failure --repeat-until-fail 2 fi - after_success: - | if [[ ${COVERAGE} == "true" ]]; then lcov --directory test --base-directory ../include/boost/compute/ --capture --output-file coverage.info lcov --remove coverage.info '/usr*' '*/test/*' '*/deps/*' -o coverage.info cd .. && coveralls-lcov build/coverage.info - fi \ No newline at end of file + fi From 6fb7aac539b7b437830a38fcc3afeb17eddacaa3 Mon Sep 17 00:00:00 2001 From: Raul Ferreira <raulmendesferreira@gmail.com> Date: Wed, 2 Jan 2019 18:51:30 +0000 Subject: [PATCH 2/7] Testing Check CPU info on Windows Try to cache boost on OSX --- .travis.yml | 411 +++++++++++++++++++++++++++------------------------- 1 file changed, 211 insertions(+), 200 deletions(-) diff --git a/.travis.yml b/.travis.yml index 4b5899ca7..96f300f17 100644 --- a/.travis.yml +++ b/.travis.yml @@ -31,207 +31,207 @@ env: - COVERAGE=false matrix: - include: - ############################################################################ - # POCL builds (OpenCL 1.0, 1.1, 1.2) - ############################################################################ + include: +# ############################################################################ +# # POCL builds (OpenCL 1.0, 1.1, 1.2) +# ############################################################################ - # Xenial, OpenCL 1.0 - # CLANG - - os: linux - compiler: clang - addons: - apt: - packages: &xenial_packages - # POCL - - libltdl-dev - - libhwloc-dev - - pkg-config - - libedit-dev - # Boost - - libboost-chrono1.58-dev - - libboost-date-time1.58-dev - - libboost-test1.58-dev - - libboost-system1.58-dev - - libboost-filesystem1.58-dev - - libboost-timer1.58-dev - - libboost-program-options1.58-dev - - libboost-thread1.58-dev - # Misc - - python-yaml - - lcov - - libopencv-dev - - clinfo - env: - - OPENCL_LIB=pocl - - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=100" - - ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${POCL_OPENCL_LIB} -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include" - # GCC - - os: linux - compiler: gcc - addons: - apt: - packages: *xenial_packages - env: - - OPENCL_LIB=pocl - - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=100" - - ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${POCL_OPENCL_LIB} -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include" - # Xenial, OpenCL 1.1 - # CLANG - - os: linux - compiler: clang - addons: - apt: - packages: *xenial_packages - env: - - OPENCL_LIB=pocl - - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=101" - - ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${POCL_OPENCL_LIB} -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include" - # GCC - - os: linux - compiler: gcc - addons: - apt: - packages: *xenial_packages - env: - - OPENCL_LIB=pocl - - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=101" - - ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${POCL_OPENCL_LIB} -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include" - # Xenial, OpenCL 1.2 - # CLANG - - os: linux - compiler: clang - addons: - apt: - packages: *xenial_packages - env: - - OPENCL_LIB=pocl - - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=102" - - ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${POCL_OPENCL_LIB} -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include" - # GCC - - os: linux - compiler: gcc - addons: - apt: - packages: *xenial_packages - env: - - OPENCL_LIB=pocl - - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=102" - - ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${POCL_OPENCL_LIB} -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include -DBOOST_COMPUTE_ENABLE_COVERAGE=ON" +# # Xenial, OpenCL 1.0 +# # CLANG +# - os: linux +# compiler: clang +# addons: +# apt: +# packages: &xenial_packages +# # POCL +# - libltdl-dev +# - libhwloc-dev +# - pkg-config +# - libedit-dev +# # Boost +# - libboost-chrono1.58-dev +# - libboost-date-time1.58-dev +# - libboost-test1.58-dev +# - libboost-system1.58-dev +# - libboost-filesystem1.58-dev +# - libboost-timer1.58-dev +# - libboost-program-options1.58-dev +# - libboost-thread1.58-dev +# # Misc +# - python-yaml +# - lcov +# - libopencv-dev +# - clinfo +# env: +# - OPENCL_LIB=pocl +# - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=100" +# - ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${POCL_OPENCL_LIB} -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include" +# # GCC +# - os: linux +# compiler: gcc +# addons: +# apt: +# packages: *xenial_packages +# env: +# - OPENCL_LIB=pocl +# - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=100" +# - ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${POCL_OPENCL_LIB} -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include" +# # Xenial, OpenCL 1.1 +# # CLANG +# - os: linux +# compiler: clang +# addons: +# apt: +# packages: *xenial_packages +# env: +# - OPENCL_LIB=pocl +# - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=101" +# - ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${POCL_OPENCL_LIB} -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include" +# # GCC +# - os: linux +# compiler: gcc +# addons: +# apt: +# packages: *xenial_packages +# env: +# - OPENCL_LIB=pocl +# - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=101" +# - ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${POCL_OPENCL_LIB} -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include" +# # Xenial, OpenCL 1.2 +# # CLANG +# - os: linux +# compiler: clang +# addons: +# apt: +# packages: *xenial_packages +# env: +# - OPENCL_LIB=pocl +# - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=102" +# - ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${POCL_OPENCL_LIB} -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include" +# # GCC +# - os: linux +# compiler: gcc +# addons: +# apt: +# packages: *xenial_packages +# env: +# - OPENCL_LIB=pocl +# - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=102" +# - ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${POCL_OPENCL_LIB} -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include -DBOOST_COMPUTE_ENABLE_COVERAGE=ON" - ############################################################################ - # Intel OpenCL Runtime builds (1.2, 2.0, 2.1) - ############################################################################ +# ############################################################################ +# # Intel OpenCL Runtime builds (1.2, 2.0, 2.1) +# ############################################################################ - # Xenial, Intel OpenCL 1.2 - # CLANG - - os: linux - compiler: clang - addons: - apt: - packages: *xenial_packages - env: - - OPENCL_LIB=intel - - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=102" - - ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include" - # GCC - - os: linux - compiler: gcc - addons: - apt: - packages: *xenial_packages - env: - - OPENCL_LIB=intel - - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=102" - - ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include" - # Xenial, Intel OpenCL 2.0 - # CLANG - - os: linux - compiler: clang - addons: - apt: - packages: *xenial_packages - env: - - OPENCL_LIB=intel - - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=200" - - ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include" - # GCC - - os: linux - compiler: gcc - addons: - apt: - packages: *xenial_packages - env: - - OPENCL_LIB=intel - - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=200" - - ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include" - # Xenial, Intel OpenCL 2.1, New Boost Libs, C++11, Coverage - # CLANG - - os: linux - compiler: clang - cache: - ccache: true - directories: - - ${DEPS_DIR}/boost - addons: - apt: - packages: &xenial_intel_latest_boost_packages - # Misc - - python-yaml - - lcov - - libopencv-dev - - clinfo - env: - - OPENCL_LIB=intel - - BOOST_VERSION="1_67_0" - - ENV_CXX_FLAGS="-DBOOST_COMPUTE_MAX_CL_VERSION=201" - - ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include -DBOOST_COMPUTE_USE_CPP11=ON" - # GCC - - os: linux - compiler: gcc - cache: - ccache: true - directories: - - ${DEPS_DIR}/boost - addons: - apt: - packages: *xenial_intel_latest_boost_packages - env: - - OPENCL_LIB=intel - - BOOST_VERSION="1_67_0" - - ENV_CXX_FLAGS="-DBOOST_COMPUTE_MAX_CL_VERSION=201" - - ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include -DBOOST_COMPUTE_USE_CPP11=ON -DBOOST_COMPUTE_ENABLE_COVERAGE=ON" - - COVERAGE=true +# # Xenial, Intel OpenCL 1.2 +# # CLANG +# - os: linux +# compiler: clang +# addons: +# apt: +# packages: *xenial_packages +# env: +# - OPENCL_LIB=intel +# - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=102" +# - ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include" +# # GCC +# - os: linux +# compiler: gcc +# addons: +# apt: +# packages: *xenial_packages +# env: +# - OPENCL_LIB=intel +# - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=102" +# - ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include" +# # Xenial, Intel OpenCL 2.0 +# # CLANG +# - os: linux +# compiler: clang +# addons: +# apt: +# packages: *xenial_packages +# env: +# - OPENCL_LIB=intel +# - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=200" +# - ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include" +# # GCC +# - os: linux +# compiler: gcc +# addons: +# apt: +# packages: *xenial_packages +# env: +# - OPENCL_LIB=intel +# - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=200" +# - ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include" +# # Xenial, Intel OpenCL 2.1, New Boost Libs, C++11, Coverage +# # CLANG +# - os: linux +# compiler: clang +# cache: +# ccache: true +# directories: +# - ${DEPS_DIR}/boost +# addons: +# apt: +# packages: &xenial_intel_latest_boost_packages +# # Misc +# - python-yaml +# - lcov +# - libopencv-dev +# - clinfo +# env: +# - OPENCL_LIB=intel +# - BOOST_VERSION="1_67_0" +# - ENV_CXX_FLAGS="-DBOOST_COMPUTE_MAX_CL_VERSION=201" +# - ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include -DBOOST_COMPUTE_USE_CPP11=ON" +# # GCC +# - os: linux +# compiler: gcc +# cache: +# ccache: true +# directories: +# - ${DEPS_DIR}/boost +# addons: +# apt: +# packages: *xenial_intel_latest_boost_packages +# env: +# - OPENCL_LIB=intel +# - BOOST_VERSION="1_67_0" +# - ENV_CXX_FLAGS="-DBOOST_COMPUTE_MAX_CL_VERSION=201" +# - ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include -DBOOST_COMPUTE_USE_CPP11=ON -DBOOST_COMPUTE_ENABLE_COVERAGE=ON" +# - COVERAGE=true - ############################################################################ - # OpenCL 2.2 Only Build - ############################################################################ +# ############################################################################ +# # OpenCL 2.2 Only Build +# ############################################################################ - # Linux, OpenCL 2.2, Tests not run, C++11 - # CLANG - - os: linux - dist: xenial - compiler: clang - addons: - apt: - packages: *xenial_packages - env: - - OPENCL_LIB=khronos-icd - - RUN_TESTS=false - - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=202" - - ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${OPENCL_ICD_LIB} -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include -DBOOST_COMPUTE_USE_CPP11=ON" - # GCC - - os: linux - dist: xenial - compiler: gcc - addons: - apt: - packages: *xenial_packages - env: - - OPENCL_LIB=khronos-icd - - RUN_TESTS=false - - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=202" - - ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${OPENCL_ICD_LIB} -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include -DBOOST_COMPUTE_USE_CPP11=ON" +# # Linux, OpenCL 2.2, Tests not run, C++11 +# # CLANG +# - os: linux +# dist: xenial +# compiler: clang +# addons: +# apt: +# packages: *xenial_packages +# env: +# - OPENCL_LIB=khronos-icd +# - RUN_TESTS=false +# - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=202" +# - ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${OPENCL_ICD_LIB} -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include -DBOOST_COMPUTE_USE_CPP11=ON" +# # GCC +# - os: linux +# dist: xenial +# compiler: gcc +# addons: +# apt: +# packages: *xenial_packages +# env: +# - OPENCL_LIB=khronos-icd +# - RUN_TESTS=false +# - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=202" +# - ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${OPENCL_ICD_LIB} -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include -DBOOST_COMPUTE_USE_CPP11=ON" ############################################################################ # OSX @@ -257,15 +257,16 @@ matrix: - os: osx osx_image: xcode10 compiler: gcc + cache: + ccache: true + directories: + - /usr/local/Cellar/boost@1.57 env: - MATRIX_EVAL="CC=gcc-5 && CXX=g++-5" + - BOOST_VERSION="1.57" addons: homebrew: packages: *osx_packages - install: - - brew uninstall boost --ignore-dependencies - - travis_wait 50 brew install boost@1.57 --cc=gcc-5 - - brew link boost@1.57 --force ############################################################################ # Windows @@ -360,6 +361,15 @@ install: echo 'Using cached Boost ${BOOST_VERSION} libraries.' fi export CMAKE_OPTIONS=${CMAKE_OPTIONS}" -DBOOST_ROOT=${DEPS_DIR}/boost" + elif [[ ${TRAVIS_OS_NAME} == "osx" && ${BOOST_VERSION} != "default" ]]; then + if [ ! -f "/usr/local/Cellar/boost@{BOOST_VERSION}/cached" ]; then + brew uninstall boost --ignore-dependencies + travis_wait 50 brew install boost@{BOOST_VERSION} --cc=gcc-5 + touch /usr/local/Cellar/boost@{BOOST_VERSION}/cached + else + echo 'Using cached Boost ${BOOST_VERSION} libraries.' + fi + brew link boost@1.57 --force fi ############################################################################ @@ -427,6 +437,7 @@ script: ############################################################################ # Build Boost.Compute tests, benchmarks and examples ############################################################################ + - lscpu - clinfo - mkdir build && cd build # Combine global build options with OS/compiler-dependent options From f12ec8aec641aa276bcb45f4ec7151717576f353 Mon Sep 17 00:00:00 2001 From: Raul Ferreira <raulmendesferreira@gmail.com> Date: Wed, 2 Jan 2019 19:51:06 +0000 Subject: [PATCH 3/7] =?UTF-8?q?let=E2=80=99s=20go=20again?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .travis.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.travis.yml b/.travis.yml index 96f300f17..cbd8f034f 100644 --- a/.travis.yml +++ b/.travis.yml @@ -362,10 +362,10 @@ install: fi export CMAKE_OPTIONS=${CMAKE_OPTIONS}" -DBOOST_ROOT=${DEPS_DIR}/boost" elif [[ ${TRAVIS_OS_NAME} == "osx" && ${BOOST_VERSION} != "default" ]]; then - if [ ! -f "/usr/local/Cellar/boost@{BOOST_VERSION}/cached" ]; then + if [ ! -f "/usr/local/Cellar/boost@${BOOST_VERSION}/cached" ]; then brew uninstall boost --ignore-dependencies - travis_wait 50 brew install boost@{BOOST_VERSION} --cc=gcc-5 - touch /usr/local/Cellar/boost@{BOOST_VERSION}/cached + travis_wait 50 brew install boost@${BOOST_VERSION} --cc=gcc-5 + touch /usr/local/Cellar/boost@${BOOST_VERSION}/cached else echo 'Using cached Boost ${BOOST_VERSION} libraries.' fi @@ -437,7 +437,7 @@ script: ############################################################################ # Build Boost.Compute tests, benchmarks and examples ############################################################################ - - lscpu + - wmic cpu list config - clinfo - mkdir build && cd build # Combine global build options with OS/compiler-dependent options From da32cfea1ef9cfeaad02d085f07af51f997d11e1 Mon Sep 17 00:00:00 2001 From: Raul Ferreira <raulmendesferreira@gmail.com> Date: Thu, 3 Jan 2019 02:27:17 +0000 Subject: [PATCH 4/7] and again --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index cbd8f034f..2a430fbe6 100644 --- a/.travis.yml +++ b/.travis.yml @@ -437,7 +437,7 @@ script: ############################################################################ # Build Boost.Compute tests, benchmarks and examples ############################################################################ - - wmic cpu list config + - if [[ ${TRAVIS_OS_NAME} == "windows" ]]; then wmic cpu list config > something.txt && cat something.txt; fi - clinfo - mkdir build && cd build # Combine global build options with OS/compiler-dependent options From f93c66145300c450668b25669ac0f15b3bdb6ba9 Mon Sep 17 00:00:00 2001 From: Raul Ferreira <raulmendesferreira@gmail.com> Date: Thu, 3 Jan 2019 03:43:16 +0000 Subject: [PATCH 5/7] one more --- .travis.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index 2a430fbe6..717b47d73 100644 --- a/.travis.yml +++ b/.travis.yml @@ -362,8 +362,8 @@ install: fi export CMAKE_OPTIONS=${CMAKE_OPTIONS}" -DBOOST_ROOT=${DEPS_DIR}/boost" elif [[ ${TRAVIS_OS_NAME} == "osx" && ${BOOST_VERSION} != "default" ]]; then - if [ ! -f "/usr/local/Cellar/boost@${BOOST_VERSION}/cached" ]; then brew uninstall boost --ignore-dependencies + if [ ! -f "/usr/local/Cellar/boost@${BOOST_VERSION}/cached" ]; then travis_wait 50 brew install boost@${BOOST_VERSION} --cc=gcc-5 touch /usr/local/Cellar/boost@${BOOST_VERSION}/cached else @@ -437,7 +437,7 @@ script: ############################################################################ # Build Boost.Compute tests, benchmarks and examples ############################################################################ - - if [[ ${TRAVIS_OS_NAME} == "windows" ]]; then wmic cpu list config > something.txt && cat something.txt; fi + - if [[ ${TRAVIS_OS_NAME} == "windows" ]]; then wmic cpu list full; fi - clinfo - mkdir build && cd build # Combine global build options with OS/compiler-dependent options From 56fea5449ff8b99627275da0321a5546cde9f03d Mon Sep 17 00:00:00 2001 From: Raul Ferreira <raulmendesferreira@gmail.com> Date: Fri, 16 Aug 2019 22:55:47 +0100 Subject: [PATCH 6/7] Update .travis.yml --- .travis.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index 717b47d73..e24c8b8ad 100644 --- a/.travis.yml +++ b/.travis.yml @@ -239,7 +239,7 @@ matrix: # CLANG - os: osx - osx_image: xcode10 + osx_image: xcode11 compiler: clang env: - MATRIX_EVAL="CC=clang && CXX=clang++ && export PATH=\"/usr/local/opt/llvm/bin:$PATH\" && export LDFLAGS=\"-L/usr/local/opt/llvm/lib\" && export CPPFLAGS=\"-I/usr/local/opt/llvm/include\"" @@ -255,7 +255,7 @@ matrix: - clinfo # GCC - os: osx - osx_image: xcode10 + osx_image: xcode11 compiler: gcc cache: ccache: true From 559721afbf5b3a21c91cfad2c5a6568a9899b8a0 Mon Sep 17 00:00:00 2001 From: Raul Ferreira <raulmendesferreira@gmail.com> Date: Sun, 18 Aug 2019 16:54:47 +0100 Subject: [PATCH 7/7] Update .travis.yml --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index e24c8b8ad..8eb536423 100644 --- a/.travis.yml +++ b/.travis.yml @@ -251,7 +251,7 @@ matrix: - lcov - gcc@5 - llvm - - opencv + - opencv@3 - clinfo # GCC - os: osx