Fixed sdk from local file installation
[src/xds/xds-server.git] / scripts / sdks / agl / get-sdk-info
index 19bf685..485d5fe 100755 (executable)
@@ -27,6 +27,7 @@ usage() {
 SDK_FILE=""
 MD5VAL=""
 URL=""
+UUID=""
 
 while [ $# -ne 0 ]; do
     case $1 in
@@ -45,6 +46,10 @@ while [ $# -ne 0 ]; do
             shift
             URL=$1
             ;;
+        --uuid)
+            shift
+            UUID=$1
+            ;;
         *)
             echo "Invalid argument: $1"
             usage
@@ -119,8 +124,24 @@ installPath=${SDK_ROOT_DIR}/${profile}/${version}/${arch}
 [ "${version}" = "" ] && { echo "version not set"; exit 8; }
 [ "${arch}" = "" ] && { echo " arch not set"; exit 9; }
 
+# Define a unique ID to be able to distinguish for example corei7-64 from qemux86-64
+if [ "${UUID}" = "" ]; then
+    curInstDir=$(ls -d "${installPath}/*" 2> /dev/null)
+    if [ -d "${curInstDir}" ]; then
+        UUID="basename ${curInstDir}"
+    elif [ "$URL" != "" ]; then
+        UUID=$(echo "$URL" | md5sum |cut -d' ' -f1)
+    elif [ "$filename" != "" ]; then
+        UUID=$(echo $(basename $filename) | md5sum |cut -d' ' -f1)
+    else
+        echo "UUID value must be specify using --uuid option."
+        exit 1
+    fi
+fi
+installPath="${installPath}/${UUID}"
+
 status="Not Installed"
-if [ -d ${installPath} ]; then
+if [ -d "${installPath}" ]; then
     envFile=$(find "${installPath}" -maxdepth 1 -name "${SDK_ENV_SETUP_FILENAME}")
     [ "${envFile}" != "" ] && status="Installed"
 fi
@@ -128,6 +149,7 @@ fi
 read -r -d '' res <<- EndOfMessage
 {
     "name":         "${profile}_${arch}_${version}",
+    "uuid":         "${UUID}",
     "description":  "AGL SDK ${arch} (version ${version})",
     "profile":      "${profile}",
     "version":      "${version}",