1 //---------------------------------------------------------------------------//
2 // Copyright (c) 2013 Kyle Lutz <kyle.r.lutz@gmail.com>
3 //
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
7 //
8 // See http://boostorg.github.com/compute for more information.
9 //---------------------------------------------------------------------------//
10 
11 #ifndef BOOST_COMPUTE_CL_HPP
12 #define BOOST_COMPUTE_CL_HPP
13 
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
17 #  endif
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
20 #  endif
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
23 #  endif
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
26 #  endif
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
29 #  endif
30 #endif
31 
32 #if defined(__APPLE__)
33 #include <OpenCL/cl.h>
34 #else
35 #include <CL/cl.h>
36 #endif
37 
38 // select what OpenCL core API versions to use
39 #if defined(CL_VERSION_1_0)
40 #  define BOOST_COMPUTE_CL_VERSION_1_0
41 #endif
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
45 #  endif
46 #endif
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
50 #  endif
51 #endif
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
55 #  endif
56 #endif
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
60 #  endif
61 #endif
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
65 #  endif
66 #endif
67 
68 #endif // BOOST_COMPUTE_CL_HPP
69