Skip to content

Commit f402680

Browse files
committed
[UR] Fix install & copy to build after umfd changes
1 parent 384a390 commit f402680

File tree

3 files changed

+42
-37
lines changed

3 files changed

+42
-37
lines changed

sycl/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -402,7 +402,7 @@ add_custom_target( sycl-toolchain ALL
402402
)
403403

404404
if (WIN32)
405-
add_dependencies(sycl-toolchain ur_win_proxy_loader unified-runtimed)
405+
add_dependencies(sycl-toolchain ur_win_proxy_loader unified-runtimed-build)
406406
endif()
407407

408408
if("cuda" IN_LIST SYCL_ENABLE_BACKENDS)

sycl/cmake/modules/FetchUnifiedRuntime.cmake

Lines changed: 36 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -332,7 +332,7 @@ if(CMAKE_SYSTEM_NAME STREQUAL Windows)
332332
BINARY_DIR ${URD_BINARY_DIR}
333333
INSTALL_DIR ${URD_INSTALL_DIR}
334334
INSTALL_COMMAND ${CMAKE_COMMAND}
335-
--build <BINARY_DIR>
335+
--build <BINARY_DIR> --config Debug
336336
--target install-unified-runtime-libraries
337337
CMAKE_CACHE_ARGS
338338
-DCMAKE_BUILD_TYPE:STRING=Debug
@@ -355,69 +355,73 @@ if(CMAKE_SYSTEM_NAME STREQUAL Windows)
355355
-DUR_BUILD_ADAPTER_HIP:BOOL=${UR_BUILD_ADAPTER_HIP}
356356
-DUR_BUILD_ADAPTER_NATIVE_CPU:BOOL=${UR_BUILD_ADAPTER_NATIVE_CPU}
357357
-DUMF_BUILD_EXAMPLES:BOOL=${UMF_BUILD_EXAMPLES}
358-
-DUMF_BUILD_SAHRED_LIBRARY:BOOL=${UMF_BUILD_SHARED_LIBRARY}
358+
-DUMF_BUILD_SHARED_LIBRARY:BOOL=${UMF_BUILD_SHARED_LIBRARY}
359359
-DUMF_LINK_HWLOC_STATICALLY:BOOL=${UMF_LINK_HWLOC_STATICALLY}
360360
-DUMF_DISABLE_HWLOC:BOOL=${UMF_DISABLE_HWLOC}
361-
# TODO: Enable d suffix in UMF
362-
# -DUMF_USE_DEBUG_POSTFIX=ON
361+
# Enable d suffix in UMF
362+
-DUMF_USE_DEBUG_POSTFIX:BOOL=ON
363363
)
364364

365365
# Copy the debug UR runtime libraries to <build>/bin & <build>/lib for use in
366366
# the parent build, e.g. integration testing.
367367
set(URD_COPY_FILES)
368-
macro(urd_copy_library_to_build library)
368+
macro(urd_copy_library_to_build library shared)
369+
if(${shared})
370+
list(APPEND URD_COPY_FILES
371+
${LLVM_BINARY_DIR}/bin/${library}.dll
372+
)
373+
add_custom_command(
374+
OUTPUT
375+
${LLVM_BINARY_DIR}/bin/${library}.dll
376+
COMMAND ${CMAKE_COMMAND} -E copy
377+
${URD_INSTALL_DIR}/bin/${library}.dll
378+
${LLVM_BINARY_DIR}/bin/${library}.dll
379+
)
380+
endif()
381+
369382
list(APPEND URD_COPY_FILES
370-
${LLVM_BINARY_DIR}/bin/${library}.dll
371383
${LLVM_BINARY_DIR}/lib/${library}.lib
372384
)
373385
add_custom_command(
374386
OUTPUT
375-
${LLVM_BINARY_DIR}/bin/${library}.dll
376387
${LLVM_BINARY_DIR}/lib/${library}.lib
377-
COMMAND ${CMAKE_COMMAND} -E copy
378-
${URD_INSTALL_DIR}/bin/${library}.dll
379-
${LLVM_BINARY_DIR}/bin/${library}.dll
380388
COMMAND ${CMAKE_COMMAND} -E copy
381389
${URD_INSTALL_DIR}/lib/${library}.lib
382390
${LLVM_BINARY_DIR}/lib/${library}.lib
383391
)
384392
endmacro()
385393

386-
urd_copy_library_to_build(ur_loaderd)
387-
foreach(adapter ${SYCL_ENABLE_BACKENDS})
388-
urd_copy_library_to_build(ur_adapter_${adapter}d)
394+
urd_copy_library_to_build(ur_loaderd "NOT;${UR_STATIC_LOADER}")
395+
foreach(adatper ${SYCL_ENABLE_BACKENDS})
396+
if(adapter MATCHES "level_zero")
397+
set(shared "NOT;${UR_STATIC_ADAPTER_L0}")
398+
else()
399+
set(shared TRUE)
400+
endif()
401+
urd_copy_library_to_build(ur_adapter_${adatper}d "${shared}")
389402
endforeach()
390-
# TODO: Also copy umfd.dll/umfd.lib
391-
# urd_copy_library_to_build(umfd)
403+
# Also copy umfd.dll/umfd.lib
404+
urd_copy_library_to_build(umfd ${UMF_BUILD_SHARED_LIBRARY})
392405

393-
add_custom_target(unified-runtimed-copy-to-build DEPENDS ${URD_COPY_FILES})
394-
add_dependencies(unified-runtimed-copy-to-build unified-runtimed)
406+
add_custom_target(unified-runtimed-build ALL DEPENDS ${URD_COPY_FILES})
407+
add_dependencies(unified-runtimed-build unified-runtimed)
395408

396409
# Add the debug UR runtime libraries to the parent install.
397410
install(
398411
FILES ${URD_INSTALL_DIR}/bin/ur_loaderd.dll
399412
DESTINATION "bin" COMPONENT unified-runtime-loader)
400-
install(
401-
FILES ${URD_INSTALL_DIR}/lib/ur_loaderd.lib
402-
DESTINATION "lib${LLVM_LIBDIR_SUFFIX}" COMPONENT unified-runtime-loader)
403-
404413
foreach(adapter ${SYCL_ENABLE_BACKENDS})
405414
install(
406415
FILES ${URD_INSTALL_DIR}/bin/ur_adapter_${adapter}d.dll
407416
DESTINATION "bin" COMPONENT ur_adapter_${adapter})
408-
install(
409-
FILES ${URD_INSTALL_DIR}/lib/ur_adapter_${adapter}d.lib
410-
DESTINATION "lib${LLVM_LIBDIR_SUFFIX}" COMPONENT ur_adapter_${adapter})
411417
add_dependencies(install-sycl-ur-adapter-${adapter} unified-runtimed)
412418
endforeach()
413-
414-
# TODO: Also install umfd.dll/umfd.lib
415-
# install(
416-
# FILES ${URD_INSTALL_DIR}/bin/umfd.dll
417-
# DESTINATION "bin" COMPONENT unified-memory-framework)
418-
# install(
419-
# FILES ${URD_INSTALL_DIR}/lib/umfd.lib
420-
# DESTINATION "lib${LLVM_LIBDIR_SUFFIX}" COMPONENT unified-memory-framework)
419+
if(UMF_BUILD_SHARED_LIBRARY)
420+
# Also install umfd.dll
421+
install(
422+
FILES ${URD_INSTALL_DIR}/bin/umfd.dll
423+
DESTINATION "bin" COMPONENT unified-memory-framework)
424+
endif()
421425
endif()
422426

423427
install(TARGETS umf

unified-runtime/cmake/helpers.cmake

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -220,14 +220,15 @@ function(install_ur_library name)
220220
)
221221
endfunction()
222222

223-
if(NOT TARGET install-unified-runtime-libraries)
223+
if(UR_USE_DEBUG_POSTFIX AND NOT TARGET install-unified-runtime-libraries)
224224
add_custom_target(install-unified-runtime-libraries
225225
COMMAND ${CMAKE_COMMAND}
226226
-DCOMPONENT=unified-runtime
227227
-P ${CMAKE_BINARY_DIR}/cmake_install.cmake
228-
# TODO: Also install debug UMF runtime libraries component
229-
DEPENDS unified-runtime-libraries
230-
# TODO: Add dependency on building debug UMF libraries
228+
COMMAND ${CMAKE_COMMAND}
229+
-DCOMPONENT=umfd
230+
-P ${CMAKE_BINARY_DIR}/cmake_install.cmake
231+
DEPENDS unified-runtime-libraries build_umfd
231232
)
232233
endif()
233234

0 commit comments

Comments
 (0)