For me it seems that the packaging is wrong. While trying to install the opencl packages I noticed that the nvidia packages just remove all packages which provide opencl. The reason might be that ocl-icd-libopencl1 conflicts on itself, but with a different packagename libopencl1. When trying to install the nvidia packages it provides libopencl1 and thus ocl-icd-libopencl1 gets removed.
For me it seems that the packaging is wrong. While trying to install the opencl packages I noticed that the nvidia packages just remove all packages which provide opencl. The reason might be that ocl-icd-libopencl1 conflicts on itself, but with a different packagename libopencl1. When trying to install the nvidia packages it provides libopencl1 and thus ocl-icd-libopencl1 gets removed.
I already reported this problem at launchpad.net, but it didn't get much attention there: https://bugs.launchpad.net/ubuntu/+source/nvidia-graphics-drivers-340/+bug/1499996