1 //---------------------------------------------------------------------------//
2 // Copyright (c) 2013 Kyle Lutz <kyle.r.lutz@gmail.com>
4 // Distributed under the Boost Software License, Version 1.0
5 // See accompanying file LICENSE_1_0.txt or copy at
6 // http://www.boost.org/LICENSE_1_0.txt
8 // See http://boostorg.github.com/compute for more information.
9 //---------------------------------------------------------------------------//
11 #ifndef BOOST_COMPUTE_CL_HPP
12 #define BOOST_COMPUTE_CL_HPP
14 #if defined(BOOST_COMPUTE_MAX_CL_VERSION)
15 # if !defined(CL_USE_DEPRECATED_OPENCL_2_1_APIS) && BOOST_COMPUTE_MAX_CL_VERSION < 202
16 # define CL_USE_DEPRECATED_OPENCL_2_1_APIS
18 # if !defined(CL_USE_DEPRECATED_OPENCL_2_0_APIS) && BOOST_COMPUTE_MAX_CL_VERSION < 201
19 # define CL_USE_DEPRECATED_OPENCL_2_0_APIS
21 # if !defined(CL_USE_DEPRECATED_OPENCL_1_2_APIS) && BOOST_COMPUTE_MAX_CL_VERSION < 200
22 # define CL_USE_DEPRECATED_OPENCL_1_2_APIS
24 # if !defined(CL_USE_DEPRECATED_OPENCL_1_1_APIS) && BOOST_COMPUTE_MAX_CL_VERSION < 102
25 # define CL_USE_DEPRECATED_OPENCL_1_1_APIS
27 # if !defined(CL_USE_DEPRECATED_OPENCL_1_0_APIS) && BOOST_COMPUTE_MAX_CL_VERSION < 101
28 # define CL_USE_DEPRECATED_OPENCL_1_0_APIS
32 #if defined(__APPLE__)
33 #include <OpenCL/cl.h>
38 // select what OpenCL core API versions to use
39 #if defined(CL_VERSION_1_0)
40 # define BOOST_COMPUTE_CL_VERSION_1_0
42 #if defined(CL_VERSION_1_1)
43 # if !defined(BOOST_COMPUTE_MAX_CL_VERSION) || BOOST_COMPUTE_MAX_CL_VERSION >= 101
44 # define BOOST_COMPUTE_CL_VERSION_1_1
47 #if defined(CL_VERSION_1_2)
48 # if !defined(BOOST_COMPUTE_MAX_CL_VERSION) || BOOST_COMPUTE_MAX_CL_VERSION >= 102
49 # define BOOST_COMPUTE_CL_VERSION_1_2
52 #if defined(CL_VERSION_2_0)
53 # if !defined(BOOST_COMPUTE_MAX_CL_VERSION) || BOOST_COMPUTE_MAX_CL_VERSION >= 200
54 # define BOOST_COMPUTE_CL_VERSION_2_0
57 #if defined(CL_VERSION_2_1)
58 # if !defined(BOOST_COMPUTE_MAX_CL_VERSION) || BOOST_COMPUTE_MAX_CL_VERSION >= 201
59 # define BOOST_COMPUTE_CL_VERSION_2_1
62 #if defined(CL_VERSION_2_2)
63 # if !defined(BOOST_COMPUTE_MAX_CL_VERSION) || BOOST_COMPUTE_MAX_CL_VERSION >= 202
64 # define BOOST_COMPUTE_CL_VERSION_2_2
68 #endif // BOOST_COMPUTE_CL_HPP