it uses HAVE_CUDA, HAVE_NVCUVID, etc. macroses
in order to make CMake scripts work properly
header only library for CUDA programming