mirror of
https://github.com/boostorg/compute.git
synced 2026-07-21 13:13:36 +00:00
Use custom FindOpenCL.cmake only for cmake older than 3.1
This commit is contained in:
+20
-18
@@ -15,6 +15,8 @@ env:
|
||||
- POCL_VERSION=master
|
||||
- POCL_LLVM_CONFIG="llvm-config-3.7"
|
||||
- POCL_COMPILER=clang++-3.7
|
||||
# AMD APP SDK
|
||||
- AMDAPPSDKROOT=${OPENCL_ROOT}/AMDAPPSDK
|
||||
# Global build options and C++ flags
|
||||
- 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_ENABLE_COVERAGE=ON -DBOOST_COMPUTE_HAVE_OPENCV=ON -DBOOST_COMPUTE_THREAD_SAFE=ON"
|
||||
- CXX_FLAGS="-Wall -pedantic -Werror -Wno-variadic-macros -Wno-long-long -Wno-shadow -Wno-deprecated-declarations"
|
||||
@@ -65,7 +67,7 @@ matrix:
|
||||
- LINUX_DIST=trusty
|
||||
- OPENCL_LIB=pocl
|
||||
- OPENCL_VERSION="10"
|
||||
- ENV_CMAKE_OPTIONS="-DOPENCL_LIBRARIES=${OPENCL_ROOT}/pocl/lib/libOpenCL.so -DOPENCL_INCLUDE_DIRS=${OPENCL_ROOT}/include"
|
||||
- ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${OPENCL_ROOT}/pocl/lib/libOpenCL.so -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include"
|
||||
- os: linux
|
||||
dist: trusty
|
||||
sudo: required
|
||||
@@ -78,7 +80,7 @@ matrix:
|
||||
- LINUX_DIST=trusty
|
||||
- OPENCL_LIB=pocl
|
||||
- OPENCL_VERSION="10"
|
||||
- ENV_CMAKE_OPTIONS="-DOPENCL_LIBRARIES=${OPENCL_ROOT}/pocl/lib/libOpenCL.so -DOPENCL_INCLUDE_DIRS=${OPENCL_ROOT}/include"
|
||||
- ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${OPENCL_ROOT}/pocl/lib/libOpenCL.so -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include"
|
||||
# Trusty, OpenCL 1.1
|
||||
- os: linux
|
||||
dist: trusty
|
||||
@@ -92,7 +94,7 @@ matrix:
|
||||
- LINUX_DIST=trusty
|
||||
- OPENCL_LIB=pocl
|
||||
- OPENCL_VERSION="11"
|
||||
- ENV_CMAKE_OPTIONS="-DOPENCL_LIBRARIES=${OPENCL_ROOT}/pocl/lib/libOpenCL.so -DOPENCL_INCLUDE_DIRS=${OPENCL_ROOT}/include"
|
||||
- ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${OPENCL_ROOT}/pocl/lib/libOpenCL.so -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include"
|
||||
- os: linux
|
||||
dist: trusty
|
||||
sudo: required
|
||||
@@ -105,7 +107,7 @@ matrix:
|
||||
- LINUX_DIST=trusty
|
||||
- OPENCL_LIB=pocl
|
||||
- OPENCL_VERSION="11"
|
||||
- ENV_CMAKE_OPTIONS="-DOPENCL_LIBRARIES=${OPENCL_ROOT}/pocl/lib/libOpenCL.so -DOPENCL_INCLUDE_DIRS=${OPENCL_ROOT}/include"
|
||||
- ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${OPENCL_ROOT}/pocl/lib/libOpenCL.so -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include"
|
||||
|
||||
############################################################################
|
||||
# Khronos ICD builds (without running tests) (OpenCL 1.2, 2.0)
|
||||
@@ -140,7 +142,7 @@ matrix:
|
||||
# - RUN_TEST=false
|
||||
# - OPENCL_LIB=khronos-icd
|
||||
# - OPENCL_VERSION="12"
|
||||
# - ENV_CMAKE_OPTIONS="-DOPENCL_LIBRARIES=${OPENCL_ROOT}/lib/libOpenCL.so -DOPENCL_INCLUDE_DIRS=${OPENCL_ROOT}/include"
|
||||
# - ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${OPENCL_ROOT}/lib/libOpenCL.so -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include"
|
||||
# - os: linux
|
||||
# sudo: false
|
||||
# compiler: gcc
|
||||
@@ -152,7 +154,7 @@ matrix:
|
||||
# - RUN_TEST=false
|
||||
# - OPENCL_LIB=khronos-icd
|
||||
# - OPENCL_VERSION="12"
|
||||
# - ENV_CMAKE_OPTIONS="-DOPENCL_LIBRARIES=${OPENCL_ROOT}/lib/libOpenCL.so -DOPENCL_INCLUDE_DIRS=${OPENCL_ROOT}/include"
|
||||
# - ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${OPENCL_ROOT}/lib/libOpenCL.so -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include"
|
||||
# # Precise, OpenCL 2.0, Travis CI container-based infrastructure
|
||||
# - os: linux
|
||||
# sudo: false
|
||||
@@ -165,7 +167,7 @@ matrix:
|
||||
# - RUN_TEST=false
|
||||
# - OPENCL_LIB=khronos-icd
|
||||
# - OPENCL_VERSION="20"
|
||||
# - ENV_CMAKE_OPTIONS="-DOPENCL_LIBRARIES=${OPENCL_ROOT}/lib/libOpenCL.so -DOPENCL_INCLUDE_DIRS=${OPENCL_ROOT}/include"
|
||||
# - ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${OPENCL_ROOT}/lib/libOpenCL.so -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include"
|
||||
# - os: linux
|
||||
# sudo: false
|
||||
# compiler: gcc
|
||||
@@ -177,7 +179,7 @@ matrix:
|
||||
# - RUN_TEST=false
|
||||
# - OPENCL_LIB=khronos-icd
|
||||
# - OPENCL_VERSION="20"
|
||||
# - ENV_CMAKE_OPTIONS="-DOPENCL_LIBRARIES=${OPENCL_ROOT}/lib/libOpenCL.so -DOPENCL_INCLUDE_DIRS=${OPENCL_ROOT}/include"
|
||||
# - ENV_CMAKE_OPTIONS="-DOpenCL_LIBRARY=${OPENCL_ROOT}/lib/libOpenCL.so -DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include"
|
||||
|
||||
############################################################################
|
||||
# AMD APP SDK builds (v2.9.1 -> OpenCL 1.2, v3.0 -> OpenCL 2.0)
|
||||
@@ -212,7 +214,7 @@ matrix:
|
||||
- OPENCL_LIB=amdappsdk
|
||||
- OPENCL_VERSION="12"
|
||||
- AMDAPPSDK_VERSION=291 # OpenCL 1.2
|
||||
- ENV_CMAKE_OPTIONS="-DOPENCL_INCLUDE_DIRS=${OPENCL_ROOT}/include"
|
||||
- ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include"
|
||||
- os: linux
|
||||
sudo: false
|
||||
compiler: gcc
|
||||
@@ -224,7 +226,7 @@ matrix:
|
||||
- OPENCL_LIB=amdappsdk
|
||||
- OPENCL_VERSION="12"
|
||||
- AMDAPPSDK_VERSION=291 # OpenCL 1.2
|
||||
- ENV_CMAKE_OPTIONS="-DOPENCL_INCLUDE_DIRS=${OPENCL_ROOT}/include"
|
||||
- ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include"
|
||||
# Precise, AMD APP SDK v3.0, OpenCL 2.0, Travis CI container-based infrastructure
|
||||
- os: linux
|
||||
sudo: false
|
||||
@@ -237,7 +239,7 @@ matrix:
|
||||
- OPENCL_LIB=amdappsdk
|
||||
- OPENCL_VERSION="20"
|
||||
- AMDAPPSDK_VERSION=300 # OpenCL 2.0
|
||||
- ENV_CMAKE_OPTIONS="-DOPENCL_INCLUDE_DIRS=${OPENCL_ROOT}/include"
|
||||
- ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include"
|
||||
- os: linux
|
||||
sudo: false
|
||||
compiler: gcc
|
||||
@@ -249,7 +251,7 @@ matrix:
|
||||
- OPENCL_LIB=amdappsdk
|
||||
- OPENCL_VERSION="20"
|
||||
- AMDAPPSDK_VERSION=300 # OpenCL 2.0
|
||||
- ENV_CMAKE_OPTIONS="-DOPENCL_INCLUDE_DIRS=${OPENCL_ROOT}/include"
|
||||
- ENV_CMAKE_OPTIONS="-DOpenCL_INCLUDE_DIR=${OPENCL_ROOT}/include"
|
||||
|
||||
############################################################################
|
||||
# OSX
|
||||
@@ -362,14 +364,14 @@ install:
|
||||
mkdir -p ${OPENCL_ROOT}
|
||||
bash .travis/amd_sdk.sh ${AMDAPPSDK_VERSION}
|
||||
tar -xjf AMD-SDK.tar.bz2
|
||||
AMDAPPSDK=${OPENCL_ROOT}/AMDAPPSDK
|
||||
export OPENCL_VENDOR_PATH=${AMDAPPSDK}/etc/OpenCL/vendors
|
||||
export OPENCL_VENDOR_PATH=${AMDAPPSDKROOT}/etc/OpenCL/vendors
|
||||
mkdir -p ${OPENCL_VENDOR_PATH}
|
||||
sh AMD-APP-SDK*.sh --tar -xf -C ${AMDAPPSDK}
|
||||
sh AMD-APP-SDK*.sh --tar -xf -C ${AMDAPPSDKROOT}
|
||||
echo libamdocl64.so > ${OPENCL_VENDOR_PATH}/amdocl64.icd
|
||||
export LD_LIBRARY_PATH=${AMDAPPSDK}/lib/x86_64:${LD_LIBRARY_PATH}
|
||||
chmod +x ${AMDAPPSDK}/bin/x86_64/clinfo
|
||||
${AMDAPPSDK}/bin/x86_64/clinfo
|
||||
export LD_LIBRARY_PATH=${AMDAPPSDKROOT}/lib/x86_64:${LD_LIBRARY_PATH}
|
||||
export CMAKE_LIBRARY_PATH=${AMDAPPSDKROOT}/lib/x86_64;
|
||||
chmod +x ${AMDAPPSDKROOT}/bin/x86_64/clinfo
|
||||
${AMDAPPSDKROOT}/bin/x86_64/clinfo
|
||||
fi
|
||||
|
||||
script:
|
||||
|
||||
+5
-2
@@ -1,6 +1,6 @@
|
||||
# ---------------------------------------------------------------------------
|
||||
# Copyright (c) 2013 Kyle Lutz <kyle.r.lutz@gmail.com>
|
||||
#
|
||||
#
|
||||
# Distributed under the Boost Software License, Version 1.0
|
||||
# See accompanying file LICENSE_1_0.txt or copy at
|
||||
# http://www.boost.org/LICENSE_1_0.txt
|
||||
@@ -12,10 +12,13 @@ cmake_minimum_required(VERSION 2.8)
|
||||
project(BoostCompute)
|
||||
|
||||
set(CMAKE_MODULE_PATH ${BoostCompute_SOURCE_DIR}/cmake)
|
||||
if (CMAKE_VERSION VERSION_LESS "3.1.0")
|
||||
list(APPEND CMAKE_MODULE_PATH "${BoostCompute_SOURCE_DIR}/cmake/opencl")
|
||||
endif()
|
||||
|
||||
# find OpenCL
|
||||
find_package(OpenCL REQUIRED)
|
||||
include_directories(SYSTEM ${OPENCL_INCLUDE_DIRS})
|
||||
include_directories(SYSTEM ${OpenCL_INCLUDE_DIRS})
|
||||
|
||||
# find Boost
|
||||
find_package(Boost 1.48 REQUIRED)
|
||||
|
||||
@@ -1,85 +0,0 @@
|
||||
# - Try to find OpenCL
|
||||
# This module tries to find an OpenCL implementation on your system. It supports
|
||||
# AMD / ATI, Apple and NVIDIA implementations.
|
||||
#
|
||||
# To set the paths manually, define these environment variables:
|
||||
# OpenCL_INCPATH - Include path (e.g. OpenCL_INCPATH=/opt/cuda/4.0/cuda/include)
|
||||
# OpenCL_LIBPATH - Library path (e.h. OpenCL_LIBPATH=/usr/lib64/nvidia)
|
||||
#
|
||||
# Once done this will define
|
||||
# OPENCL_FOUND - system has OpenCL
|
||||
# OPENCL_INCLUDE_DIRS - the OpenCL include directory
|
||||
# OPENCL_LIBRARIES - link these to use OpenCL
|
||||
|
||||
FIND_PACKAGE(PackageHandleStandardArgs)
|
||||
|
||||
SET (OPENCL_VERSION_STRING "0.1.0")
|
||||
SET (OPENCL_VERSION_MAJOR 0)
|
||||
SET (OPENCL_VERSION_MINOR 1)
|
||||
SET (OPENCL_VERSION_PATCH 0)
|
||||
|
||||
IF (APPLE)
|
||||
|
||||
FIND_LIBRARY(OPENCL_LIBRARIES OpenCL DOC "OpenCL lib for OSX")
|
||||
FIND_PATH(OPENCL_INCLUDE_DIRS OpenCL/cl.h DOC "Include for OpenCL on OSX")
|
||||
FIND_PATH(_OPENCL_CPP_INCLUDE_DIRS OpenCL/cl.hpp DOC "Include for OpenCL CPP bindings on OSX")
|
||||
|
||||
ELSE (APPLE)
|
||||
|
||||
IF (WIN32)
|
||||
# The AMD SDK currently installs both x86 and x86_64 libraries
|
||||
# This is only a hack to find out architecture
|
||||
IF( CMAKE_SIZEOF_VOID_P EQUAL 8 )
|
||||
SET(OPENCL_LIB_DIR "$ENV{AMDAPPSDKROOT}/lib/x86_64")
|
||||
ELSE( CMAKE_SIZEOF_VOID_P EQUAL 8 )
|
||||
SET(OPENCL_LIB_DIR "$ENV{AMDAPPSDKROOT}/lib/x86")
|
||||
ENDIF( CMAKE_SIZEOF_VOID_P EQUAL 8 )
|
||||
|
||||
FIND_LIBRARY(OPENCL_LIBRARIES OpenCL.lib PATHS
|
||||
${OPENCL_LIB_DIR} $ENV{OpenCL_LIBPATH} $ENV{CUDA_LIB_PATH})
|
||||
|
||||
GET_FILENAME_COMPONENT(_OPENCL_INC_CAND ${OPENCL_LIB_DIR}/../../include ABSOLUTE)
|
||||
|
||||
# On Win32 search relative to the library
|
||||
FIND_PATH(OPENCL_INCLUDE_DIRS CL/cl.h PATHS
|
||||
${_OPENCL_INC_CAND} $ENV{OpenCL_INCPATH} $ENV{CUDA_INC_PATH})
|
||||
FIND_PATH(_OPENCL_CPP_INCLUDE_DIRS CL/cl.hpp PATHS
|
||||
${_OPENCL_INC_CAND} $ENV{OpenCL_INCPATH} $ENV{CUDA_INC_PATH})
|
||||
|
||||
ELSE (WIN32)
|
||||
|
||||
# Unix style platforms
|
||||
FIND_LIBRARY(OPENCL_LIBRARIES OpenCL
|
||||
PATHS ENV LD_LIBRARY_PATH ENV OpenCL_LIBPATH
|
||||
)
|
||||
|
||||
GET_FILENAME_COMPONENT(OPENCL_LIB_DIR ${OPENCL_LIBRARIES} PATH)
|
||||
GET_FILENAME_COMPONENT(_OPENCL_INC_CAND ${OPENCL_LIB_DIR}/../../include ABSOLUTE)
|
||||
|
||||
# The AMD SDK currently does not place its headers
|
||||
# in /usr/include, therefore also search relative
|
||||
# to the library
|
||||
FIND_PATH(OPENCL_INCLUDE_DIRS CL/cl.h PATHS "$ENV{CUDADIR}/include" ${_OPENCL_INC_CAND} "/usr/local/cuda/include" "/opt/cuda/include" "/opt/AMDAPP/include" ENV OpenCL_INCPATH)
|
||||
FIND_PATH(_OPENCL_CPP_INCLUDE_DIRS CL/cl.hpp PATHS "$ENV{CUDADIR}/include" ${_OPENCL_INC_CAND} "/usr/local/cuda/include" "/opt/cuda/include" "/opt/AMDAPP/include" ENV OpenCL_INCPATH)
|
||||
# for Mali GPUs, libmali must be linked
|
||||
FIND_LIBRARY(OPENCL_LIBRARIES_MALI mali
|
||||
PATHS ENV LD_LIBRARY_PATH ENV OpenCL_LIBPATH "/usr/lib64" "$ENV{CUDADIR}/lib64"
|
||||
)
|
||||
IF (OPENCL_LIBRARIES_MALI)
|
||||
SET(OPENCL_LIBRARIES ${OPENCL_LIBRARIES} ${OPENCL_LIBRARIES_MALI})
|
||||
ENDIF (OPENCL_LIBRARIES_MALI)
|
||||
ENDIF (WIN32)
|
||||
|
||||
ENDIF (APPLE)
|
||||
|
||||
FIND_PACKAGE_HANDLE_STANDARD_ARGS(OpenCL DEFAULT_MSG OPENCL_LIBRARIES OPENCL_INCLUDE_DIRS)
|
||||
|
||||
IF(_OPENCL_CPP_INCLUDE_DIRS)
|
||||
SET( OPENCL_HAS_CPP_BINDINGS TRUE )
|
||||
LIST( APPEND OPENCL_INCLUDE_DIRS ${_OPENCL_CPP_INCLUDE_DIRS} )
|
||||
# This is often the same, so clean up
|
||||
LIST( REMOVE_DUPLICATES OPENCL_INCLUDE_DIRS )
|
||||
ENDIF(_OPENCL_CPP_INCLUDE_DIRS)
|
||||
|
||||
MARK_AS_ADVANCED( OPENCL_INCLUDE_DIRS )
|
||||
|
||||
@@ -0,0 +1,84 @@
|
||||
# - Try to find OpenCL
|
||||
# This module tries to find an OpenCL implementation on your system. It supports
|
||||
# AMD / ATI, Apple and NVIDIA implementations.
|
||||
#
|
||||
# To set the paths manually, define these environment variables:
|
||||
# OpenCL_INCPATH - Include path (e.g. OpenCL_INCPATH=/opt/cuda/4.0/cuda/include)
|
||||
# OpenCL_LIBPATH - Library path (e.h. OpenCL_LIBPATH=/usr/lib64/nvidia)
|
||||
#
|
||||
# Once done this will define
|
||||
# OpenCL_FOUND - system has OpenCL
|
||||
# OpenCL_INCLUDE_DIRS - the OpenCL include directory
|
||||
# OpenCL_LIBRARIES - link these to use OpenCL
|
||||
|
||||
FIND_PACKAGE(PackageHandleStandardArgs)
|
||||
|
||||
SET (OpenCL_VERSION_STRING "0.1.0")
|
||||
SET (OpenCL_VERSION_MAJOR 0)
|
||||
SET (OpenCL_VERSION_MINOR 1)
|
||||
SET (OpenCL_VERSION_PATCH 0)
|
||||
|
||||
IF (APPLE)
|
||||
|
||||
FIND_LIBRARY(OpenCL_LIBRARIES OpenCL DOC "OpenCL lib for OSX")
|
||||
FIND_PATH(OpenCL_INCLUDE_DIRS OpenCL/cl.h DOC "Include for OpenCL on OSX")
|
||||
FIND_PATH(_OpenCL_CPP_INCLUDE_DIRS OpenCL/cl.hpp DOC "Include for OpenCL CPP bindings on OSX")
|
||||
|
||||
ELSE (APPLE)
|
||||
|
||||
IF (WIN32)
|
||||
# The AMD SDK currently installs both x86 and x86_64 libraries
|
||||
# This is only a hack to find out architecture
|
||||
IF( CMAKE_SIZEOF_VOID_P EQUAL 8 )
|
||||
SET(OpenCL_LIB_DIR "$ENV{AMDAPPSDKROOT}/lib/x86_64")
|
||||
ELSE( CMAKE_SIZEOF_VOID_P EQUAL 8 )
|
||||
SET(OpenCL_LIB_DIR "$ENV{AMDAPPSDKROOT}/lib/x86")
|
||||
ENDIF( CMAKE_SIZEOF_VOID_P EQUAL 8 )
|
||||
|
||||
FIND_LIBRARY(OpenCL_LIBRARIES OpenCL.lib PATHS
|
||||
${OpenCL_LIB_DIR} $ENV{OpenCL_LIBPATH} $ENV{CUDA_LIB_PATH})
|
||||
|
||||
GET_FILENAME_COMPONENT(_OpenCL_INC_CAND ${OpenCL_LIB_DIR}/../../include ABSOLUTE)
|
||||
|
||||
# On Win32 search relative to the library
|
||||
FIND_PATH(OpenCL_INCLUDE_DIRS CL/cl.h PATHS
|
||||
${_OpenCL_INC_CAND} $ENV{OpenCL_INCPATH} $ENV{CUDA_INC_PATH})
|
||||
FIND_PATH(_OpenCL_CPP_INCLUDE_DIRS CL/cl.hpp PATHS
|
||||
${_OpenCL_INC_CAND} $ENV{OpenCL_INCPATH} $ENV{CUDA_INC_PATH})
|
||||
|
||||
ELSE (WIN32)
|
||||
|
||||
# Unix style platforms
|
||||
FIND_LIBRARY(OpenCL_LIBRARIES OpenCL
|
||||
PATHS ENV LD_LIBRARY_PATH ENV OpenCL_LIBPATH
|
||||
)
|
||||
|
||||
GET_FILENAME_COMPONENT(OpenCL_LIB_DIR ${OpenCL_LIBRARIES} PATH)
|
||||
GET_FILENAME_COMPONENT(_OpenCL_INC_CAND ${OpenCL_LIB_DIR}/../../include ABSOLUTE)
|
||||
|
||||
# The AMD SDK currently does not place its headers
|
||||
# in /usr/include, therefore also search relative
|
||||
# to the library
|
||||
FIND_PATH(OpenCL_INCLUDE_DIRS CL/cl.h PATHS "$ENV{CUDADIR}/include" ${_OpenCL_INC_CAND} "/usr/local/cuda/include" "/opt/cuda/include" "/opt/AMDAPP/include" ENV OpenCL_INCPATH)
|
||||
FIND_PATH(_OpenCL_CPP_INCLUDE_DIRS CL/cl.hpp PATHS "$ENV{CUDADIR}/include" ${_OpenCL_INC_CAND} "/usr/local/cuda/include" "/opt/cuda/include" "/opt/AMDAPP/include" ENV OpenCL_INCPATH)
|
||||
# for Mali GPUs, libmali must be linked
|
||||
FIND_LIBRARY(OpenCL_LIBRARIES_MALI mali
|
||||
PATHS ENV LD_LIBRARY_PATH ENV OpenCL_LIBPATH "/usr/lib64" "$ENV{CUDADIR}/lib64"
|
||||
)
|
||||
IF (OpenCL_LIBRARIES_MALI)
|
||||
SET(OpenCL_LIBRARIES ${OpenCL_LIBRARIES} ${OpenCL_LIBRARIES_MALI})
|
||||
ENDIF (OpenCL_LIBRARIES_MALI)
|
||||
ENDIF (WIN32)
|
||||
|
||||
ENDIF (APPLE)
|
||||
|
||||
FIND_PACKAGE_HANDLE_STANDARD_ARGS(OpenCL DEFAULT_MSG OpenCL_LIBRARIES OpenCL_INCLUDE_DIRS)
|
||||
|
||||
IF(_OpenCL_CPP_INCLUDE_DIRS)
|
||||
SET( OpenCL_HAS_CPP_BINDINGS TRUE )
|
||||
LIST( APPEND OpenCL_INCLUDE_DIRS ${_OpenCL_CPP_INCLUDE_DIRS} )
|
||||
# This is often the same, so clean up
|
||||
LIST( REMOVE_DUPLICATES OpenCL_INCLUDE_DIRS )
|
||||
ENDIF(_OpenCL_CPP_INCLUDE_DIRS)
|
||||
|
||||
MARK_AS_ADVANCED( OpenCL_INCLUDE_DIRS )
|
||||
+10
-10
@@ -1,6 +1,6 @@
|
||||
# ---------------------------------------------------------------------------
|
||||
# Copyright (c) 2013-2014 Kyle Lutz <kyle.r.lutz@gmail.com>
|
||||
#
|
||||
#
|
||||
# Distributed under the Boost Software License, Version 1.0
|
||||
# See accompanying file LICENSE_1_0.txt or copy at
|
||||
# http://www.boost.org/LICENSE_1_0.txt
|
||||
@@ -49,7 +49,7 @@ include_directories(SYSTEM ${Boost_INCLUDE_DIRS})
|
||||
|
||||
foreach(EXAMPLE ${EXAMPLES})
|
||||
add_executable(${EXAMPLE} ${EXAMPLE}.cpp)
|
||||
target_link_libraries(${EXAMPLE} ${OPENCL_LIBRARIES} ${Boost_LIBRARIES})
|
||||
target_link_libraries(${EXAMPLE} ${OpenCL_LIBRARIES} ${Boost_LIBRARIES})
|
||||
|
||||
# add example program to list of tests (if testing is enabled)
|
||||
if(${BOOST_COMPUTE_BUILD_TESTS})
|
||||
@@ -59,14 +59,14 @@ endforeach()
|
||||
|
||||
# opencl test example
|
||||
add_executable(opencl_test opencl_test.cpp)
|
||||
target_link_libraries(opencl_test ${OPENCL_LIBRARIES})
|
||||
target_link_libraries(opencl_test ${OpenCL_LIBRARIES})
|
||||
|
||||
# eigen examples
|
||||
if(${BOOST_COMPUTE_HAVE_EIGEN})
|
||||
find_package(Eigen REQUIRED)
|
||||
include_directories(SYSTEM ${EIGEN_INCLUDE_DIRS})
|
||||
add_executable(batched_determinant batched_determinant.cpp)
|
||||
target_link_libraries(batched_determinant ${OPENCL_LIBRARIES} ${Boost_LIBRARIES})
|
||||
target_link_libraries(batched_determinant ${OpenCL_LIBRARIES} ${Boost_LIBRARIES})
|
||||
endif()
|
||||
|
||||
# opencv examples
|
||||
@@ -78,7 +78,7 @@ if(${BOOST_COMPUTE_HAVE_OPENCV})
|
||||
k_means
|
||||
opencv_flip
|
||||
random_walk
|
||||
opencv_optical_flow
|
||||
opencv_optical_flow
|
||||
opencv_convolution
|
||||
opencv_sobel_filter
|
||||
opencv_histogram
|
||||
@@ -86,7 +86,7 @@ if(${BOOST_COMPUTE_HAVE_OPENCV})
|
||||
|
||||
foreach(EXAMPLE ${OPENCV_EXAMPLES})
|
||||
add_executable(${EXAMPLE} ${EXAMPLE}.cpp)
|
||||
target_link_libraries(${EXAMPLE} ${OPENCL_LIBRARIES} ${Boost_LIBRARIES} ${OpenCV_LIBS})
|
||||
target_link_libraries(${EXAMPLE} ${OpenCL_LIBRARIES} ${Boost_LIBRARIES} ${OpenCV_LIBS})
|
||||
endforeach()
|
||||
endif()
|
||||
|
||||
@@ -95,7 +95,7 @@ if(${BOOST_COMPUTE_HAVE_VTK})
|
||||
find_package(VTK REQUIRED)
|
||||
include(${VTK_USE_FILE})
|
||||
add_executable(opengl_sphere opengl_sphere.cpp)
|
||||
target_link_libraries(opengl_sphere ${OPENCL_LIBRARIES} ${Boost_LIBRARIES} ${VTK_LIBRARIES})
|
||||
target_link_libraries(opengl_sphere ${OpenCL_LIBRARIES} ${Boost_LIBRARIES} ${VTK_LIBRARIES})
|
||||
if(APPLE)
|
||||
target_link_libraries(opengl_sphere "-framework OpenGL")
|
||||
elseif(UNIX)
|
||||
@@ -118,7 +118,7 @@ if(${BOOST_COMPUTE_HAVE_QT})
|
||||
|
||||
# look for Qt5
|
||||
find_package(Qt5Widgets QUIET)
|
||||
|
||||
|
||||
if(${Qt5Widgets_FOUND})
|
||||
# build with Qt5
|
||||
find_package(Qt5Core REQUIRED)
|
||||
@@ -139,7 +139,7 @@ if(${BOOST_COMPUTE_HAVE_QT})
|
||||
|
||||
# add examples
|
||||
add_executable(qimage_blur qimage_blur.cpp)
|
||||
target_link_libraries(qimage_blur ${OPENCL_LIBRARIES} ${Boost_LIBRARIES} ${QT_LIBRARIES})
|
||||
target_link_libraries(qimage_blur ${OpenCL_LIBRARIES} ${Boost_LIBRARIES} ${QT_LIBRARIES})
|
||||
|
||||
set(QT_OPENGL_EXAMPLES
|
||||
mandelbrot
|
||||
@@ -148,7 +148,7 @@ if(${BOOST_COMPUTE_HAVE_QT})
|
||||
)
|
||||
foreach(EXAMPLE ${QT_OPENGL_EXAMPLES})
|
||||
add_executable(${EXAMPLE} ${EXAMPLE}.cpp)
|
||||
target_link_libraries(${EXAMPLE} ${OPENCL_LIBRARIES} ${Boost_LIBRARIES} ${QT_LIBRARIES})
|
||||
target_link_libraries(${EXAMPLE} ${OpenCL_LIBRARIES} ${Boost_LIBRARIES} ${QT_LIBRARIES})
|
||||
if(APPLE)
|
||||
target_link_libraries(${EXAMPLE} "-framework OpenGL")
|
||||
elseif(UNIX)
|
||||
|
||||
+5
-5
@@ -1,6 +1,6 @@
|
||||
# ---------------------------------------------------------------------------
|
||||
# Copyright (c) 2013 Kyle Lutz <kyle.r.lutz@gmail.com>
|
||||
#
|
||||
#
|
||||
# Distributed under the Boost Software License, Version 1.0
|
||||
# See accompanying file LICENSE_1_0.txt or copy at
|
||||
# http://www.boost.org/LICENSE_1_0.txt
|
||||
@@ -18,11 +18,11 @@ endif()
|
||||
if(${BOOST_COMPUTE_THREAD_SAFE} AND NOT ${BOOST_COMPUTE_USE_CPP11})
|
||||
set(PERF_BOOST_COMPONENTS ${PERF_BOOST_COMPONENTS} thread)
|
||||
elseif(${BOOST_COMPUTE_HAVE_BOLT} AND ${BOOST_COMPUTE_USE_CPP11})
|
||||
set(PERF_BOOST_COMPONENTS ${PERF_BOOST_COMPONENTS} thread)
|
||||
set(PERF_BOOST_COMPONENTS ${PERF_BOOST_COMPONENTS} thread)
|
||||
endif()
|
||||
|
||||
if(${BOOST_COMPUTE_HAVE_BOLT} AND ${BOOST_COMPUTE_USE_CPP11})
|
||||
set(PERF_BOOST_COMPONENTS ${PERF_BOOST_COMPONENTS} date_time)
|
||||
set(PERF_BOOST_COMPONENTS ${PERF_BOOST_COMPONENTS} date_time)
|
||||
endif()
|
||||
|
||||
find_package(Boost 1.48 REQUIRED COMPONENTS ${PERF_BOOST_COMPONENTS})
|
||||
@@ -80,7 +80,7 @@ set(BENCHMARKS
|
||||
foreach(BENCHMARK ${BENCHMARKS})
|
||||
set(PERF_TARGET perf_${BENCHMARK})
|
||||
add_executable(${PERF_TARGET} perf_${BENCHMARK}.cpp)
|
||||
target_link_libraries(${PERF_TARGET} ${OPENCL_LIBRARIES} ${Boost_LIBRARIES})
|
||||
target_link_libraries(${PERF_TARGET} ${OpenCL_LIBRARIES} ${Boost_LIBRARIES})
|
||||
endforeach()
|
||||
|
||||
# stl benchmarks (for comparison)
|
||||
@@ -199,7 +199,7 @@ if(${BOOST_COMPUTE_HAVE_BOLT} AND ${BOOST_COMPUTE_USE_CPP11})
|
||||
foreach(BENCHMARK ${BOLT_BENCHMARKS})
|
||||
set(PERF_TARGET perf_${BENCHMARK})
|
||||
add_executable(${PERF_TARGET} perf_${BENCHMARK}.cpp)
|
||||
target_link_libraries(${PERF_TARGET} ${OPENCL_LIBRARIES} ${BOLT_LIBRARIES} ${Boost_LIBRARIES})
|
||||
target_link_libraries(${PERF_TARGET} ${OpenCL_LIBRARIES} ${BOLT_LIBRARIES} ${Boost_LIBRARIES})
|
||||
endforeach()
|
||||
elseif(${BOOST_COMPUTE_HAVE_BOLT} AND NOT ${BOOST_COMPUTE_USE_CPP11})
|
||||
message(WARNING "BOOST_COMPUTE_USE_CPP11 must be ON for building Bolt C++ Template Library performance tests.")
|
||||
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
# ---------------------------------------------------------------------------
|
||||
# Copyright (c) 2013 Kyle Lutz <kyle.r.lutz@gmail.com>
|
||||
#
|
||||
#
|
||||
# Distributed under the Boost Software License, Version 1.0
|
||||
# See accompanying file LICENSE_1_0.txt or copy at
|
||||
# http://www.boost.org/LICENSE_1_0.txt
|
||||
@@ -40,7 +40,7 @@ function(add_compute_test TEST_NAME TEST_SOURCE)
|
||||
get_filename_component(TEST_TARGET ${TEST_SOURCE} NAME_WE)
|
||||
add_executable(${TEST_TARGET} ${TEST_SOURCE})
|
||||
target_link_libraries(${TEST_TARGET}
|
||||
${OPENCL_LIBRARIES}
|
||||
${OpenCL_LIBRARIES}
|
||||
${Boost_LIBRARIES}
|
||||
)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user