${CMAKE_CURRENT_LIST_DIR} 和 . (相对目录)?
What is the difference between ${CMAKE_CURRENT_LIST_DIR} and . (relative directory)?
我明白${CMAKE_CURRENT_LIST_DIR}
和${CMAKE_CURRENT_SOURCE_DIR}
的区别,但我不明白前者和简单的.
有什么区别?
比如有没有什么场景
target_include_directories(foo PRIVATE ${CMAKE_CURRENT_SOURCE_DIR})
的行为不同于
target_include_directories(imgwarp PRIVATE .)
?
简单的反例:
add_custom_command
允许您指定自定义 WORKING_DIRECTORY
。将相对文件名传递给这样的命令将是相对于工作目录的。用 CMAKE_CURRENT_SOURCE_DIR
明确地使它们成为绝对解决这个问题。
我明白${CMAKE_CURRENT_LIST_DIR}
和${CMAKE_CURRENT_SOURCE_DIR}
的区别,但我不明白前者和简单的.
有什么区别?
比如有没有什么场景
target_include_directories(foo PRIVATE ${CMAKE_CURRENT_SOURCE_DIR})
的行为不同于
target_include_directories(imgwarp PRIVATE .)
?
简单的反例:
add_custom_command
允许您指定自定义 WORKING_DIRECTORY
。将相对文件名传递给这样的命令将是相对于工作目录的。用 CMAKE_CURRENT_SOURCE_DIR
明确地使它们成为绝对解决这个问题。