Maybe you could take a look at the cl.hpp from the Khronos Group.
Link to the header only library: http://www.khronos.org/registry/cl/
Link to an short example: http://www.thebigblob.com/using-the-cpp-bindings-for-opencl/
This is a C++ OpenCL wrapper which delivers you OpenCL 1.0, 1.1 or 1.2 support depending on the OpenCL header versions in your system path. I think you could go a way like this to reach that at compile time.
If you have newer headers, but you want to restrict the version you can take a look at this thread: Cannot compile OpenCL application using 1.2 headers in 1.1 version
Or do you want to choose the appropriate OpenCL functions at runtime?