SoC common : scripts :make version refer to xml if it is in product. [1/1]

PD#SWPL-181959

Problem:
The bin size is different between aocpu and all platform.

Solution:
Generate version info refer to manifest.xml if there is in product.

Verify:
N/A

Change-Id: I09a95c7e691d366ef2028eb78c15cfa745737940
Signed-off-by: xiaohu.huang <xiaohu.huang@amlogic.com>
diff --git a/gen_version.sh b/gen_version.sh
index 301e442..9080985 100755
--- a/gen_version.sh
+++ b/gen_version.sh
@@ -7,7 +7,7 @@
 
 RTOS_SDK_VERSION_FILE=$1
 RTOS_SDK_MANIFEST_FILE=$2
-RTOS_SDK_MANIFEST_OLD_FILE=$3
+RTOS_SDK_MANIFEST_REF_FILE=$3
 
 echo "#ifndef __SDK_VER_H__" > $RTOS_SDK_VERSION_FILE
 echo "#define __SDK_VER_H__" >> $RTOS_SDK_VERSION_FILE
@@ -32,6 +32,14 @@
 echo "#define CONFIG_VERSION_STRING \"$SDK_VERSION\"" >> $RTOS_SDK_VERSION_FILE
 echo "" >> $RTOS_SDK_VERSION_FILE
 
+if [ -n "$RTOS_SDK_MANIFEST_REF_FILE" ] && [ -f "$RTOS_SDK_MANIFEST_REF_FILE" ]; then
+	is_need_filter=1
+	ref_list=`awk '/path=/ && /name=/ {for (i=1; i<=NF; i++) if ($i ~ /^name=/) \
+		{split($i, a, "="); print a[2]}}' $RTOS_SDK_MANIFEST_REF_FILE`
+else
+	is_need_filter=0
+fi
+
 echo "const char* version_map[] = {" >> $RTOS_SDK_VERSION_FILE
 printf "	\"[%-7s %-12s %-12s]\",\n" "cm_hash" "remote_name" "branch" \
 	>> $RTOS_SDK_VERSION_FILE
@@ -43,6 +51,11 @@
 		GIT_REMOTE_NAME="$(cd $PRODUCT_PATH && git remote -v 2>/dev/null \
 			| head -n 1 | cut -d " " -f 1)"
 		GIT_NAME=${GIT_REMOTE_NAME##*rtos_sdk/}
+		if [ $is_need_filter -eq 1 ]; then
+			if ! echo "$ref_list" | grep -q "\"rtos_sdk/$GIT_NAME\""; then
+				continue;
+			fi
+		fi
 		GIT_1ST_NAME="$(echo ${GIT_NAME} | cut -d / -f 1)"
 		GIT_2ND_NAME=${GIT_REMOTE_NAME##*/}
 		COMMIT_HASH="$(cd $PRODUCT_PATH && git log --oneline -1 2>/dev/null \
diff --git a/setup.sh b/setup.sh
index b418e9d..325003b 100755
--- a/setup.sh
+++ b/setup.sh
@@ -66,8 +66,12 @@
 fi
 
 # Get SDK_VERSION
-source scripts/gen_version.sh $RTOS_SDK_VERSION_FILE \
-	$RTOS_SDK_MANIFEST_FILE $RTOS_SDK_MANIFEST_OLD_FILE
+if [ -s $DEFAULT_RTOS_SDK_MANIFEST ]; then
+	source scripts/gen_version.sh $RTOS_SDK_VERSION_FILE \
+	$RTOS_SDK_MANIFEST_FILE $DEFAULT_RTOS_SDK_MANIFEST
+else
+	source scripts/gen_version.sh $RTOS_SDK_VERSION_FILE $RTOS_SDK_MANIFEST_FILE
+fi
 
 if [ -s $RTOS_SDK_MANIFEST_OLD_FILE ] && [ -s $kconfig_file ] && [ $kconfig_file -ot $STAMP ]; then
 	is_update=`comm -3 <(sort $RTOS_SDK_MANIFEST_FILE) <(sort $RTOS_SDK_MANIFEST_OLD_FILE)`