报告find_package(Foo)找到FindFoo.cmake的位置

时间:2019-04-02 07:18:31

标签: cmake

首先,有this answer描述了如何摆弄FindCUDA.cmake,以便我们可以正确地链接到CUDA 9.0+重命名的NPP库,但是Ubuntu 16.04中的默认CMake 3.5.1需要此代码将手动添加。

但是,如果有人忘记应用该更改,或者搜索路径使得选择了较旧的FindCUDA.cmake,我想报告一个错误。这段代码几乎可以做到:

find_package(CUDA)
if (CUDA_VERSION VERSION_GREATER_EQUAL "9.0")
    if (NOT CUDA_nppial_LIBRARY)
        message(FATAL_ERROR "CUDA 9.0+ libraries not set in file at ${FINDCUDA_FILE}")
    endif()
    target_link_libraries(foo ${CUDA_nppial_LIBRARY})
endif()

除了我不知道在${FINDCUDA_FILE}中使用什么,而且搜索代码并没有给我任何线索。有没有这样的变量或其他方式可以找到该文件?

0 个答案:

没有答案