From b46875e5888e015c06bbf65c6256980332914a2c Mon Sep 17 00:00:00 2001 From: Satyanvesh Dittakavi Date: Wed, 8 Jun 2022 10:56:44 +0000 Subject: [PATCH] SWDEV-336448 - hiprtc dll versioning on windows Change-Id: I6ab6f975bcd7cd2fb27d59d0860a6dbe8434970e [ROCm/clr commit: 9299d5febb2344718ac22664991044ceb86c274a] --- projects/clr/hipamd/src/hiprtc/CMakeLists.txt | 20 ++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/projects/clr/hipamd/src/hiprtc/CMakeLists.txt b/projects/clr/hipamd/src/hiprtc/CMakeLists.txt index c37f6127cc..0f994e9b01 100644 --- a/projects/clr/hipamd/src/hiprtc/CMakeLists.txt +++ b/projects/clr/hipamd/src/hiprtc/CMakeLists.txt @@ -47,8 +47,21 @@ set_target_properties(hiprtc PROPERTIES LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib) -if(NOT WIN32) - if(BUILD_SHARED_LIBS) +if(WIN32) + if(${HIP_LIB_VERSION_MAJOR} VERSION_GREATER 9) + set(HIP_MAJOR_VERSION "${HIP_LIB_VERSION_MAJOR}") + else() + set(HIP_MAJOR_VERSION "0${HIP_LIB_VERSION_MAJOR}") + endif() + set(HIP_MINOR_VERSION "0${HIP_LIB_VERSION_MINOR}") +endif() + +if(BUILD_SHARED_LIBS) + if(WIN32) + set_target_properties(hiprtc PROPERTIES + OUTPUT_NAME "hiprtc${HIP_MAJOR_VERSION}${HIP_MINOR_VERSION}" + ARCHIVE_OUTPUT_NAME "hiprtc") + else() set_target_properties(hiprtc PROPERTIES VERSION ${HIP_LIB_VERSION_STRING} SOVERSION ${HIP_LIB_VERSION_MAJOR}) @@ -151,7 +164,8 @@ if(WIN32) # Windows uses DEF file to determine which symbols to expose. target_sources(hiprtc-builtins PRIVATE hiprtc-builtins.def) set_target_properties(hiprtc-builtins PROPERTIES - OUTPUT_NAME "hiprtc-builtins64_${HIP_LIB_VERSION_MAJOR}${HIP_LIB_VERSION_MINOR}") + OUTPUT_NAME "hiprtc-builtins${HIP_MAJOR_VERSION}${HIP_MINOR_VERSION}" + ARCHIVE_OUTPUT_NAME "hiprtc-builtins") # Since ${HIPRTC_GEN_OBJ} was manually generated with llvm-mc, /MT did not embed # libcmt.lib inside of the obj. So we need to manually set it as defaultlib. target_link_options(hiprtc-builtins PRIVATE "LINKER:/DEFAULTLIB:libcmt")