Updates to HIP version string format

HIP patch version is now a monotonically increasing number

Change-Id: Ia6e35794b702bbd2018c502564d0a65997819687


[ROCm/clr commit: 346ae7bc42]
This commit is contained in:
Maneesh Gupta
2016-08-12 23:21:37 +05:30
parent 07262c48ba
commit dbf39d1c5b
2 changed files with 54 additions and 21 deletions
+25 -10
View File
@@ -1,19 +1,27 @@
cmake_minimum_required(VERSION 2.8.3)
project(hip)
#############################
# Setup version information
#############################
# define HCC version information
set(HIP_VERSION_MAJOR "0")
set(HIP_VERSION_MINOR "92")
# get date information based on UTC
# use the last two digits of year + week number + day in the week as HIP_VERSION_PATCH
# use the commit date, instead of build date
# add xargs to remove strange trailing newline character
execute_process(COMMAND git show -s --format=@%ct
COMMAND xargs
COMMAND date -f - --utc +%y%W%w
WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}
OUTPUT_VARIABLE HIP_VERSION_PATCH
OUTPUT_STRIP_TRAILING_WHITESPACE)
#############################
# Configure variables
#############################
# Determine HIP_VERSION
execute_process(COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/bin/hipconfig --version
OUTPUT_VARIABLE HIP_VERSION
OUTPUT_STRIP_TRAILING_WHITESPACE)
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)
# Determine HIP_PLATFORM
if(NOT DEFINED HIP_PLATFORM)
if(NOT DEFINED ENV{HIP_PLATFORM})
@@ -115,6 +123,10 @@ if(BUILD_CLANG_HIPIFY)
add_subdirectory(clang-hipify)
endif()
# Generate hip version information
string(TIMESTAMP _timestamp)
file(WRITE "${PROJECT_BINARY_DIR}/.version" "# Auto-generated by cmake on ${_timestamp} local time\nHIP_VERSION_MAJOR=${HIP_VERSION_MAJOR}\nHIP_VERSION_MINOR=${HIP_VERSION_MINOR}\nHIP_VERSION_PATCH=${HIP_VERSION_PATCH}\n")
# Build hip_hcc if platform is hcc
if(HIP_PLATFORM STREQUAL "hcc")
include_directories(${PROJECT_SOURCE_DIR}/include)
@@ -176,6 +188,9 @@ if(HIP_PLATFORM STREQUAL "hcc")
install(FILES ${PROJECT_BINARY_DIR}/.hipconfig DESTINATION lib)
endif()
# Install .version
install(FILES ${PROJECT_BINARY_DIR}/.version DESTINATION bin)
# Install src, bin, include if necessary
execute_process(COMMAND test ${CMAKE_INSTALL_PREFIX} -ef ${CMAKE_CURRENT_SOURCE_DIR}
RESULT_VARIABLE INSTALL_SOURCE)
+29 -11
View File
@@ -1,9 +1,5 @@
#!/usr/bin/perl -w
$HIP_VERSION_MAJOR = "0";
$HIP_VERSION_MINOR = "92";
$HIP_VERSION_PATCH = "0";
use Getopt::Long;
use Cwd;
@@ -39,8 +35,6 @@ if ($p_help) {
exit();
}
$HIP_VERSION="$HIP_VERSION_MAJOR.$HIP_VERSION_MINOR.$HIP_VERSION_PATCH";
$CUDA_PATH=$ENV{'CUDA_PATH'};
$CUDA_PATH='/usr/local/cuda' unless defined $CUDA_PATH;
@@ -55,7 +49,7 @@ $HSA_PATH='/opt/rocm/hsa' unless defined $HSA_PATH;
$HIP_PLATFORM=$ENV{'HIP_PLATFORM'};
if (not defined $HIP_PLATFORM) {
$NAMDGPUNODES=`cat /sys/class/kfd/kfd/topology/nodes/*/properties 2>/dev/null | grep -c 'simd_count [1-9]'`;
if ($NAMDGPUNODES > 0) {
$HIP_PLATFORM = "hcc"
} else {
@@ -74,11 +68,35 @@ if ($HIP_PLATFORM eq "nvcc") {
$CPP_CONFIG = " -D__HIP_PLATFORM_NVCC__= -I$HIP_PATH/include -I$CUDA_PATH/include";
};
#---
# Read .version
my %hipVersion = ();
$hipVersion{'VALID'}=0;
if (open (CONFIG, "$HIP_PATH/bin/.version")) {
while (<CONFIG>) {
my $config_line=$_;
chop ($config_line);
$config_line =~ s/^\s*//;
$config_line =~ s/\s*$//;
if (($config_line !~ /^#/) && ($config_line ne "")) {
my ($name, $value) = split (/=/, $config_line);
$hipVersion{$name} = $value;
$hipVersion{'VALID'}=1;
}
}
close(CONFIG);
}
$HIP_VERSION_MAJOR = $hipVersion{'HIP_VERSION_MAJOR'};
$HIP_VERSION_MINOR = $hipVersion{'HIP_VERSION_MINOR'};
$HIP_VERSION_PATCH = $hipVersion{'HIP_VERSION_PATCH'};
$HIP_VERSION="$HIP_VERSION_MAJOR.$HIP_VERSION_MINOR.$HIP_VERSION_PATCH";
if ($p_path) {
print "$HIP_PATH";
$printed = 1;
}
if ($p_cpp_config) {
print $CPP_CONFIG;
@@ -102,16 +120,16 @@ if (!$printed or $p_full) {
print "HIP_PATH : ", $HIP_PATH, "\n";
print "HIP_PLATFORM : ", $HIP_PLATFORM, "\n";
print "CPP_CONFIG : ", $CPP_CONFIG, "\n";
if ($HIP_PLATFORM eq "hcc")
if ($HIP_PLATFORM eq "hcc")
{
print "\n" ;
print "== hcc\n";
print ("HSA_PATH : $HSA_PATH\n");
print ("HCC_HOME : $HCC_HOME\n");
system("$HCC_HOME/bin/hcc --version");
print ("HCC-cxxflags : ");
print ("HCC-cxxflags : ");
system("$HCC_HOME/bin/hcc-config --cxxflags");
print ("HCC-ldflags : ");
print ("HCC-ldflags : ");
system("$HCC_HOME/bin/hcc-config --ldflags");
printf("\n");
}