cmake: использовать PROJECT_SOURCE_DIR вместо CMAKE_SOURCE_DIR
build / cmake build (CUDA 12.4, Ubuntu 22.04) (pull_request) Failing after 5m19s
build / ffmpeg filter patch (out-of-tree) (pull_request) Has been skipped
build / cmake build (CUDA 12.4, Ubuntu 22.04) (push) Failing after 4m14s
build / ffmpeg filter patch (out-of-tree) (push) Has been skipped
build / cmake build (CUDA 12.4, Ubuntu 22.04) (pull_request) Failing after 5m19s
build / ffmpeg filter patch (out-of-tree) (pull_request) Has been skipped
build / cmake build (CUDA 12.4, Ubuntu 22.04) (push) Failing after 4m14s
build / ffmpeg filter patch (out-of-tree) (push) Has been skipped
При сборке cuframes как подпроекта родительского CMake-проекта (add_subdirectory) CMAKE_SOURCE_DIR указывает на корень родителя, а не cuframes. Из-за этого target_include_directories cuframes получал неверный путь и компиляция падала с fatal error: cuframes/cuframes.h: No such file or directory PROJECT_SOURCE_DIR резолвится в каталог project(), то есть всегда указывает на корень cuframes независимо от способа подключения. Standalone-сборка ведёт себя как раньше — оба пути одинаковы.
This commit was merged in pull request #5.
This commit is contained in:
@@ -19,7 +19,7 @@ add_library(cuframes_static STATIC ${CUFRAMES_SOURCES})
|
|||||||
foreach(target cuframes cuframes_static)
|
foreach(target cuframes cuframes_static)
|
||||||
target_include_directories(${target}
|
target_include_directories(${target}
|
||||||
PUBLIC
|
PUBLIC
|
||||||
$<BUILD_INTERFACE:${CMAKE_SOURCE_DIR}/include>
|
$<BUILD_INTERFACE:${PROJECT_SOURCE_DIR}/include>
|
||||||
$<INSTALL_INTERFACE:include>
|
$<INSTALL_INTERFACE:include>
|
||||||
PRIVATE
|
PRIVATE
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/src
|
${CMAKE_CURRENT_SOURCE_DIR}/src
|
||||||
|
|||||||
Reference in New Issue
Block a user