@@ -104,47 +104,144 @@ 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+ dist : xenial
141+ compiler : clang
142+ addons :
143+ apt :
144+ packages : &xenial_intel_packages
115145 - g++-5
116- # POCL
117- - libltdl-dev
118- - libhwloc-dev
119- - pkg-config
120- - libedit-dev
146+ # Boost
147+ - libboost-chrono1.58-dev
148+ - libboost-date-time1.58-dev
149+ - libboost-test1.58-dev
150+ - libboost-system1.58-dev
151+ - libboost-filesystem1.58-dev
152+ - libboost-timer1.58-dev
153+ - libboost-program-options1.58-dev
154+ - libboost-thread1.58-dev
121155 # Misc
122156 - python-yaml
123157 - lcov
124158 - libopencv-dev
125- sources : &xenial_pocl_sources_latest_boost
159+ sources : &xenial_intel_packages
126160 - ubuntu-toolchain-r-test
127161 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"
162+ - OPENCL_LIB=intel
163+ - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=102"
164+ - ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include"
133165 # GCC
134166 - os : linux
135167 dist : xenial
136168 compiler : gcc
137169 addons :
138170 apt :
139- packages : *xenial_pocl_packages_latest_boost
140- sources : *xenial_pocl_sources_latest_boost
171+ packages : *xenial_intel_packages
172+ sources : *xenial_intel_packages
141173 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"
174+ - OPENCL_LIB=intel
175+ - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=102"
176+ - ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include"
177+ # Linux, Intel OpenCL 2.0
178+ # CLANG
179+ - os : linux
180+ dist : xenial
181+ compiler : clang
182+ addons :
183+ apt :
184+ packages : *xenial_intel_packages
185+ sources : *xenial_intel_packages
186+ env :
187+ - OPENCL_LIB=intel
188+ - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=200"
189+ - ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include"
190+ # GCC
191+ - os : linux
192+ dist : xenial
193+ compiler : gcc
194+ addons :
195+ apt :
196+ packages : *xenial_intel_packages
197+ sources : *xenial_intel_packages
198+ env :
199+ - OPENCL_LIB=intel
200+ - ENV_CXX_FLAGS="-Wno-unused-local-typedef -DBOOST_COMPUTE_MAX_CL_VERSION=200"
201+ - ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include"
202+ # Linux, Intel OpenCL 2.1, New Boost Libs, C++11, Coverage
203+ # CLANG
204+ - os : linux
205+ dist : xenial
206+ compiler : clang
207+ cache :
208+ ccache : true
209+ directories :
210+ - ${DEPS_DIR}/boost
211+ addons :
212+ apt :
213+ packages : &xenial_intel_latest_boost_packages
214+ - g++-5
215+ # Misc
216+ - python-yaml
217+ - lcov
218+ - libopencv-dev
219+ sources : &xenial_intel_latest_boost_sources
220+ - ubuntu-toolchain-r-test
221+ env :
222+ - OPENCL_LIB=intel
223+ - BOOST_VERSION="1_67_0"
224+ - ENV_CXX_FLAGS="-DBOOST_COMPUTE_MAX_CL_VERSION=201"
225+ - ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include -DBOOST_COMPUTE_USE_CPP11=ON"
226+ # GCC
227+ - os : linux
228+ dist : xenial
229+ compiler : gcc
230+ cache :
231+ ccache : true
232+ directories :
233+ - ${DEPS_DIR}/boost
234+ addons :
235+ apt :
236+ packages : *xenial_intel_latest_boost_packages
237+ sources : *xenial_intel_latest_boost_sources
238+ env :
239+ - OPENCL_LIB=intel
240+ - BOOST_VERSION="1_67_0"
241+ - COVERAGE=true
242+ - ENV_CXX_FLAGS="-DBOOST_COMPUTE_MAX_CL_VERSION=201"
243+ - ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include -DBOOST_COMPUTE_ENABLE_COVERAGE=ON -DBOOST_COMPUTE_USE_CPP11=ON"
244+ - COVERAGE=true
148245
149246 # ###########################################################################
150247 # OSX
@@ -215,6 +312,8 @@ install:
215312 mkdir -p ${DEPS_DIR}/boost
216313 rm -rf ${DEPS_DIR}/boost/*
217314 # Download
315+ BOOST_BASENAME=$(echo ${BOOST_VERSION} | awk -F '_' '{print $1 "." $2 "." $3 }')
316+ BOOST_URL="https://dl.bintray.com/boostorg/release/${BOOST_BASENAME}/source/boost_${BOOST_VERSION}.tar.gz"
218317 travis_retry wget --no-check-certificate --quiet -O - ${BOOST_URL} | tar --strip-components=1 -xz -C ${DEPS_DIR}/boost${BOOST_VERSION}
219318 pushd ${DEPS_DIR}/boost${BOOST_VERSION}
220319 # Configure and install
@@ -261,6 +360,21 @@ install:
261360 fi
262361 fi
263362
363+ # ###########################################################################
364+ # Install Intel OpenCL Runtime
365+ # ###########################################################################
366+ - |
367+ if [[ ${TRAVIS_OS_NAME} == "linux" && ${OPENCL_LIB} == "intel" ]]; then
368+ # https://software.intel.com/en-us/articles/opencl-drivers#cpu-section
369+ PACKAGE_URL=http://registrationcenter-download.intel.com/akdlm/irc_nas/vcp/13793/l_opencl_p_18.1.0.013.tgz
370+ PACKAGE_NAME=l_opencl_p_18.1.0.013
371+
372+ wget -q ${PACKAGE_URL} -O /tmp/opencl_runtime.tgz
373+ tar -xzf /tmp/opencl_runtime.tgz -C /tmp
374+ sed 's/decline/accept/g' -i /tmp/${PACKAGE_NAME}/silent.cfg
375+ sudo /tmp/${PACKAGE_NAME}/install.sh -s /tmp/${PACKAGE_NAME}/silent.cfg
376+ fi
377+
264378script :
265379 # ###########################################################################
266380 # Build Boost.Compute tests, benchmarks and examples
@@ -285,4 +399,4 @@ after_success:
285399 lcov --directory test --base-directory ../include/boost/compute/ --capture --output-file coverage.info
286400 lcov --remove coverage.info '/usr*' '*/test/*' '*/deps/*' -o coverage.info
287401 cd .. && coveralls-lcov build/coverage.info
288- fi
402+ fi
0 commit comments