summaryrefslogtreecommitdiffstats
path: root/cmake/SlangTarget.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'cmake/SlangTarget.cmake')
-rw-r--r--cmake/SlangTarget.cmake9
1 files changed, 5 insertions, 4 deletions
diff --git a/cmake/SlangTarget.cmake b/cmake/SlangTarget.cmake
index 882e86f71..6e2fc97b1 100644
--- a/cmake/SlangTarget.cmake
+++ b/cmake/SlangTarget.cmake
@@ -420,10 +420,11 @@ function(slang_add_target dir type)
PRIVATE $<BUILD_LOCAL_INTERFACE:${ARG_LINK_WITH_PRIVATE}>
)
else()
- target_link_libraries(
- ${target}
- PRIVATE $<BUILD_INTERFACE:${ARG_LINK_WITH_PRIVATE}>
- )
+ # Expand the list manually to work around a bug in cmake 3.22.1
+ # See: https://github.com/shader-slang/slang/issues/8335
+ foreach(lib IN LISTS ARG_LINK_WITH_PRIVATE)
+ target_link_libraries(${target} PRIVATE $<BUILD_INTERFACE:${lib}>)
+ endforeach()
endif()
target_link_libraries(${target} PUBLIC ${ARG_LINK_WITH_PUBLIC})