SWDEV-314946 - Windows: adding properties to hip tests exe (#2620)
Change-Id: I3bac668345e3168f8a2b2772bf8ca422430803d8
[ROCm/hip commit: 7b8ac4cc7a]
This commit is contained in:
committed by
GitHub
parent
c516229ee0
commit
9fe86a1f3b
@@ -1,2 +1,2 @@
|
||||
set HIPCC="%~dp0/hipcc"
|
||||
@set HIPCC="%~dp0/hipcc"
|
||||
@perl %HIPCC% %*
|
||||
|
||||
@@ -1,2 +1,2 @@
|
||||
set HIPCONFIG="%~dp0/hipconfig"
|
||||
@set HIPCONFIG="%~dp0/hipconfig"
|
||||
@perl %HIPCONFIG% %*
|
||||
|
||||
@@ -6,6 +6,7 @@ set(CMAKE_CXX_COMPILER_WORKS 1)
|
||||
|
||||
project(hiptests)
|
||||
|
||||
|
||||
# Check if platform and compiler are set
|
||||
if(HIP_PLATFORM STREQUAL "amd")
|
||||
if(HIP_COMPILER STREQUAL "nvcc")
|
||||
@@ -32,14 +33,28 @@ message(STATUS "HIP Path: ${HIP_PATH}")
|
||||
if(UNIX)
|
||||
set(CMAKE_CXX_COMPILER "${HIP_PATH}/bin/hipcc")
|
||||
set(CMAKE_C_COMPILER "${HIP_PATH}/bin/hipcc")
|
||||
set(HIPCONFIG_EXECUTABLE "${HIP_PATH}/bin/hipconfig")
|
||||
execute_process(COMMAND perl ${HIPCONFIG_EXECUTABLE} --version
|
||||
OUTPUT_VARIABLE HIP_VERSION
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
else()
|
||||
# using cmake_path as it handles path correctly.
|
||||
# Set both compilers else windows cmake complains of mismatch
|
||||
cmake_path(SET CMAKE_CXX_COMPILER "${HIP_PATH}/bin/hipcc.bat")
|
||||
cmake_path(SET CMAKE_C_COMPILER "${HIP_PATH}/bin/hipcc.bat")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --rocm-path=${ROCM_PATH}")
|
||||
set(HIPCONFIG_EXECUTABLE "${HIP_PATH}/bin/hipconfig.bat")
|
||||
execute_process(COMMAND ${HIPCONFIG_EXECUTABLE} --version
|
||||
OUTPUT_VARIABLE HIP_VERSION
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
endif()
|
||||
|
||||
string(REPLACE "." ";" VERSION_LIST ${HIP_VERSION})
|
||||
list(GET VERSION_LIST 0 HIP_VERSION_MAJOR)
|
||||
list(GET VERSION_LIST 1 HIP_VERSION_MINOR)
|
||||
list(GET VERSION_LIST 2 HIP_VERSION_PATCH_GITHASH)
|
||||
string(REPLACE "-" ";" VERSION_LIST ${HIP_VERSION_PATCH_GITHASH})
|
||||
list(GET VERSION_LIST 0 HIP_VERSION_PATCH)
|
||||
|
||||
if(NOT DEFINED CATCH2_PATH)
|
||||
if(DEFINED ENV{CATCH2_PATH})
|
||||
@@ -83,6 +98,17 @@ file(COPY ./hipTestMain/config DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/hipTestMa
|
||||
file(COPY ./external/Catch2/cmake/Catch2/CatchAddTests.cmake DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/script)
|
||||
set(ADD_SCRIPT_PATH ${CMAKE_CURRENT_BINARY_DIR}/script/CatchAddTests.cmake)
|
||||
|
||||
if (WIN32)
|
||||
configure_file(catchProp_in_rc.in ${CMAKE_CURRENT_BINARY_DIR}/catchProp.rc @ONLY)
|
||||
cmake_path(SET LLVM_RC_PATH "${HIP_PATH}/../lc/bin/llvm-rc.exe")
|
||||
cmake_path(SET LLVM_RC_PATH NORMALIZE "${LLVM_RC_PATH}")
|
||||
|
||||
# generates the .res files to be used by executables to populate the properties
|
||||
# expects LC folder with clang, llvm-rc to be present one level up of HIP
|
||||
execute_process(COMMAND ${LLVM_RC_PATH} ${CMAKE_CURRENT_BINARY_DIR}/catchProp.rc
|
||||
OUTPUT_VARIABLE RC_OUTPUT)
|
||||
set(PROP_RC ${CMAKE_CURRENT_BINARY_DIR})
|
||||
endif()
|
||||
|
||||
if(HIP_PLATFORM MATCHES "amd" AND HIP_COMPILER MATCHES "clang")
|
||||
add_compile_options(-Wall -Wextra -pedantic -Werror -Wno-deprecated)
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
#include <windows.h>
|
||||
|
||||
#define HIP_VERSION "@HIP_VERSION@"
|
||||
#define HIP_VERSION_MAJOR @HIP_VERSION_MAJOR@
|
||||
#define HIP_VERSION_MINOR @HIP_VERSION_MINOR@
|
||||
#define HIP_VERSION_PATCH @HIP_VERSION_PATCH@
|
||||
|
||||
VS_VERSION_INFO VERSIONINFO
|
||||
FILEVERSION HIP_VERSION_MAJOR, HIP_VERSION_MINOR , HIP_VERSION_PATCH
|
||||
PRODUCTVERSION 10,1
|
||||
FILEFLAGSMASK 0x3fL
|
||||
#ifdef _DEBUG
|
||||
FILEFLAGS VS_FF_DEBUG
|
||||
#else
|
||||
FILEFLAGS 0x0L
|
||||
#endif
|
||||
FILEOS VOS_NT_WINDOWS32
|
||||
FILETYPE VFT_APP
|
||||
FILESUBTYPE VFT2_UNKNOWN
|
||||
BEGIN
|
||||
BLOCK "StringFileInfo"
|
||||
BEGIN
|
||||
BLOCK "040904b0"
|
||||
BEGIN
|
||||
VALUE "CompanyName", "Advanced Micro Devices Inc.\0"
|
||||
VALUE "FileDescription", "HIP unit tests"
|
||||
VALUE "FileVersion", "amdhip64.dll" HIP_VERSION
|
||||
VALUE "LegalCopyright", "Copyright (C) 2022 Advanced Micro Devices Inc.\0"
|
||||
VALUE "ProductName", "HIP unit tests"
|
||||
VALUE "ProductVersion", HIP_VERSION
|
||||
VALUE "Comments", "\0"
|
||||
VALUE "InternalName", "HIP unit tests"
|
||||
END
|
||||
END
|
||||
BLOCK "VarFileInfo"
|
||||
BEGIN
|
||||
VALUE "Translation", 0x0409, 1200
|
||||
END
|
||||
END
|
||||
/* End of Version info */
|
||||
@@ -207,7 +207,15 @@ function(hip_add_exe_to_target)
|
||||
catch_discover_tests(${_NAME} PROPERTIES SKIP_REGULAR_EXPRESSION "HIP_SKIP_THIS_TEST")
|
||||
if(UNIX)
|
||||
set(_LINKER_LIBS ${_LINKER_LIBS} stdc++fs)
|
||||
else()
|
||||
# res files are built resource files using rc files.
|
||||
# use llvm-rc exe to build the res files
|
||||
# Thes are used to populate the properties of the built executables
|
||||
if(EXISTS "${PROP_RC}/catchProp.res")
|
||||
set(_LINKER_LIBS ${_LINKER_LIBS} "${PROP_RC}/catchProp.res")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(DEFINED _LINKER_LIBS)
|
||||
target_link_libraries(${_NAME} ${_LINKER_LIBS})
|
||||
endif()
|
||||
|
||||
Reference in New Issue
Block a user