SDK_FILE=""
MD5VAL=""
URL=""
+UUID=""
while [ $# -ne 0 ]; do
case $1 in
shift
URL=$1
;;
+ --uuid)
+ shift
+ UUID=$1
+ ;;
*)
echo "Invalid argument: $1"
usage
filename=$(basename "${SDK_FILE}")
sdkUrl=file://${SDK_FILE}
+ imageUrl=""
sdkDate=$(stat -c %y "${SDK_FILE}")
sdkSize=$(/bin/ls -sh "${SDK_FILE}" |cut -d' ' -f1)
filename=$(basename "${URL}")
sdkUrl=${URL}
+ imageUrl=""
sdkDate=""
sdkSize=""
profile=$(echo "${filename}" | sed -r 's/(.*)-glibc.*/\1/')
version=$(echo "${filename}" | sed -r 's/.*toolchain-(.*).sh/\1/')
arch=$(echo "${filename}" | sed -r 's/.*crosssdk-(.*)-toolchain.*/\1/')
+installPath=${SDK_ROOT_DIR}/${profile}/${version}/${arch}
[ "${profile}" = "" ] && { echo "profile not set"; exit 7; }
[ "${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
-uuid=$(echo "${sdkUrl}" | md5sum |cut -d' ' -f1)
+sdkName=${profile}_${arch}_${version}
-installPath=${SDK_ROOT_DIR}/${profile}/${version}/${arch}/${uuid}
+# 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
[ "${envFile}" != "" ] && status="Installed"
fi
+sdkDef=""
+if [ "${UUID}" != "" ]; then
+ sdkDef=$($(dirname "$0")/db-dump | jq '.[] | select(.uuid=="'${UUID}'")')
+elif [ "${URL}" != "" ]; then
+ sdkDef=$($(dirname "$0")/db-dump | jq '.[] | select(.url=="'${URL}'")')
+fi
+
+if [ "${sdkDef}" != "" ]; then
+ sdkName=$(echo "$sdkDef" | jq -r .name)
+ [ "$UUID" = "" ] && UUID=$(echo "$sdkDef" | jq -r .uuid)
+ [ "$sdkUrl" = "" ] && sdkUrl=$(echo "$sdkDef" | jq -r .url)
+ [ "$imageUrl" = "" ] && imageUrl=$(echo "$sdkDef" | jq -r .image_url)
+ [ "$sdkDate" = "" ] && sdkDate=$(echo "$sdkDef" | jq -r .date)
+ [ "$sdkSize" = "" ] && sdkSize=$(echo "$sdkDef" | jq -r .size)
+ [ "$MD5VAL" = "" ] && MD5VAL=$(echo "$sdkDef" | jq -r .md5sum)
+fi
+
read -r -d '' res <<- EndOfMessage
{
- "name": "${profile}_${arch}_${version}",
+ "name": "${sdkName}",
+ "uuid": "${UUID}",
"description": "AGL SDK ${arch} (version ${version})",
"profile": "${profile}",
"version": "${version}",
"arch": "${arch}",
"path": "${installPath}",
"url": "${sdkUrl}",
+ "image_url": "${imageUrl}",
"status": "${status}",
"date": "${sdkDate}",
"size": "${sdkSize}",