@@ -104,47 +104,138 @@ matrix:
104104 - OPENCL_LIB=pocl
105105 - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=101"
106106 - ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${POCL_OPENCL_LIB} -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include"
107- # Xenial, OpenCL 1.2, New Boost Libs, C++11, Coverage
107+ # Xenial, OpenCL 1.2
108108 # CLANG
109109 - os : linux
110110 dist : xenial
111111 compiler : clang
112112 addons :
113113 apt :
114- packages : &xenial_pocl_packages_latest_boost
114+ packages : *xenial_pocl_packages
115+ sources : *xenial_pocl_sources
116+ env :
117+ - OPENCL_LIB=pocl
118+ - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=102"
119+ - ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${POCL_OPENCL_LIB} -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include"
120+ # GCC
121+ - os : linux
122+ dist : xenial
123+ compiler : gcc
124+ addons :
125+ apt :
126+ packages : *xenial_pocl_packages
127+ sources : *xenial_pocl_sources
128+ env :
129+ - OPENCL_LIB=pocl
130+ - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=102"
131+ - ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${POCL_OPENCL_LIB} -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include -DBOOST_COMPUTE_ENABLE_COVERAGE=ON"
132+
133+ # ###########################################################################
134+ # Intel OpenCL Runtime builds (1.2, 2.0, 2.1)
135+ # ###########################################################################
136+
137+ # Linux, Intel OpenCL 1.2
138+ # CLANG
139+ - os : linux
140+ compiler : clang
141+ addons :
142+ apt :
143+ packages : &xenial_intel_packages
115144 - g++-5
116- # POCL
117- - libltdl-dev
118- - libhwloc-dev
119- - pkg-config
120- - libedit-dev
145+ # Boost
146+ - libboost-chrono1.58-dev
147+ - libboost-date-time1.58-dev
148+ - libboost-test1.58-dev
149+ - libboost-system1.58-dev
150+ - libboost-filesystem1.58-dev
151+ - libboost-timer1.58-dev
152+ - libboost-program-options1.58-dev
153+ - libboost-thread1.58-dev
121154 # Misc
122155 - python-yaml
123156 - lcov
124157 - libopencv-dev
125- sources : &xenial_pocl_sources_latest_boost
158+ sources : &xenial_intel_packages
126159 - ubuntu-toolchain-r-test
127160 env :
128- - OPENCL_LIB=pocl
129- - BOOST_VERSION="1_67_0"
130- - BOOST_URL="https://dl.bintray.com/boostorg/release/1.67.0/source/boost_1_67_0.tar.gz"
131- - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=102"
132- - ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${POCL_OPENCL_LIB} -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include -DBOOST_COMPUTE_USE_CPP11=ON"
161+ - OPENCL_LIB=intel
162+ - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=102"
163+ - ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include"
133164 # GCC
134165 - os : linux
135- dist : xenial
136166 compiler : gcc
137167 addons :
138168 apt :
139- packages : *xenial_pocl_packages_latest_boost
140- sources : *xenial_pocl_sources_latest_boost
169+ packages : *xenial_intel_packages
170+ sources : *xenial_intel_packages
141171 env :
142- - OPENCL_LIB=pocl
143- - COVERAGE=true
144- - BOOST_VERSION="1_67_0"
145- - BOOST_URL="https://dl.bintray.com/boostorg/release/1.67.0/source/boost_1_67_0.tar.gz"
146- - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=102"
147- - ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${POCL_OPENCL_LIB} -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include -DBOOST_COMPUTE_ENABLE_COVERAGE=ON -DBOOST_COMPUTE_USE_CPP11=ON"
172+ - OPENCL_LIB=intel
173+ - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=102"
174+ - ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include"
175+ # Linux, Intel OpenCL 2.0
176+ # CLANG
177+ - os : linux
178+ compiler : clang
179+ addons :
180+ apt :
181+ packages : *xenial_intel_packages
182+ sources : *xenial_intel_packages
183+ env :
184+ - OPENCL_LIB=intel
185+ - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=200"
186+ - ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include"
187+ # GCC
188+ - os : linux
189+ compiler : gcc
190+ addons :
191+ apt :
192+ packages : *xenial_intel_packages
193+ sources : *xenial_intel_packages
194+ env :
195+ - OPENCL_LIB=intel
196+ - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=200"
197+ - ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include"
198+ # Linux, Intel OpenCL 2.1, New Boost Libs, C++11, Coverage
199+ # CLANG
200+ - os : linux
201+ compiler : clang
202+ cache :
203+ ccache : true
204+ directories :
205+ - ${DEPS_DIR}/boost
206+ addons :
207+ apt :
208+ packages : &xenial_intel_latest_boost_packages
209+ - g++-5
210+ # Misc
211+ - python-yaml
212+ - lcov
213+ - libopencv-dev
214+ sources : &xenial_intel_latest_boost_sources
215+ - ubuntu-toolchain-r-test
216+ env :
217+ - OPENCL_LIB=intel
218+ - BOOST_VERSION="1_67_0"
219+ - ENV_CXX_FLAGS="-DBOOST_COMPUTE_MAX_CL_VERSION=201"
220+ - ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include -DBOOST_COMPUTE_USE_CPP11=ON"
221+ # GCC
222+ - os : linux
223+ compiler : gcc
224+ cache :
225+ ccache : true
226+ directories :
227+ - ${DEPS_DIR}/boost
228+ addons :
229+ apt :
230+ packages : *xenial_intel_latest_boost_packages
231+ sources : *xenial_intel_latest_boost_sources
232+ env :
233+ - OPENCL_LIB=intel
234+ - BOOST_VERSION="1_67_0"
235+ - COVERAGE=true
236+ - ENV_CXX_FLAGS="-DBOOST_COMPUTE_MAX_CL_VERSION=201"
237+ - ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include -DBOOST_COMPUTE_ENABLE_COVERAGE=ON -DBOOST_COMPUTE_USE_CPP11=ON"
238+ - COVERAGE=true
148239
149240 # ###########################################################################
150241 # OSX
@@ -215,6 +306,8 @@ install:
215306 mkdir -p ${DEPS_DIR}/boost
216307 rm -rf ${DEPS_DIR}/boost/*
217308 # Download
309+ BOOST_BASENAME=$(echo ${BOOST_VERSION} | awk -F '_' '{print $1 "." $2 "." $3 }')
310+ BOOST_URL="https://dl.bintray.com/boostorg/release/${BOOST_BASENAME}/source/boost_${BOOST_VERSION}.tar.gz"
218311 travis_retry wget --no-check-certificate --quiet -O - ${BOOST_URL} | tar --strip-components=1 -xz -C ${DEPS_DIR}/boost${BOOST_VERSION}
219312 pushd ${DEPS_DIR}/boost${BOOST_VERSION}
220313 # Configure and install
@@ -261,6 +354,21 @@ install:
261354 fi
262355 fi
263356
357+ # ###########################################################################
358+ # Install Intel OpenCL Runtime
359+ # ###########################################################################
360+ - |
361+ if [[ ${TRAVIS_OS_NAME} == "linux" && ${OPENCL_LIB} == "intel" ]]; then
362+ # https://software.intel.com/en-us/articles/opencl-drivers#cpu-section
363+ PACKAGE_URL=http://registrationcenter-download.intel.com/akdlm/irc_nas/vcp/13793/l_opencl_p_18.1.0.013.tgz
364+ PACKAGE_NAME=l_opencl_p_18.1.0.013
365+
366+ wget -q ${PACKAGE_URL} -O /tmp/opencl_runtime.tgz
367+ tar -xzf /tmp/opencl_runtime.tgz -C /tmp
368+ sed 's/decline/accept/g' -i /tmp/${PACKAGE_NAME}/silent.cfg
369+ sudo /tmp/${PACKAGE_NAME}/install.sh -s /tmp/${PACKAGE_NAME}/silent.cfg
370+ fi
371+
264372script :
265373 # ###########################################################################
266374 # Build Boost.Compute tests, benchmarks and examples
@@ -285,4 +393,4 @@ after_success:
285393 lcov --directory test --base-directory ../include/boost/compute/ --capture --output-file coverage.info
286394 lcov --remove coverage.info '/usr*' '*/test/*' '*/deps/*' -o coverage.info
287395 cd .. && coveralls-lcov build/coverage.info
288- fi
396+ fi
0 commit comments