Generate a makefile for apk list

BUG: 17445025

We don't rely on PRODUCT_COPY_FILES for prebuilt apk.

Change-Id: Idf3fc90dd71dd5a3d2a84d7faf0a7e780f251b03
diff --git a/generate-packages.sh b/generate-packages.sh
index 070dfd0..4857dea 100755
--- a/generate-packages.sh
+++ b/generate-packages.sh
@@ -43,6 +43,14 @@
 
   TO_EXTRACT=`sed -n -e '/'"  $COMPANY"'/,/;;/ p' $EXTRACT_LIST_FILENAME | tail -n+3 | head -n-2 | sed -e 's/\\\//g'`
 
+  # Check if TO_EXTRACT list has any APK files
+  if [[ ${TO_EXTRACT} == *.apk* ]]
+  then
+    APK_MAKEFILE=${FILEDIR}/Android.mk
+    echo "LOCAL_PATH := \$(call my-dir)" > ${APK_MAKEFILE}
+    echo "" >> ${APK_MAKEFILE}
+  fi
+
   echo \ \ Extracting files from OTA package
   for ONE_FILE in $TO_EXTRACT
   do
@@ -58,6 +66,25 @@
       FILEDIR_NEW=$FILEDIR
     fi
 
+    # apk makefile
+    if [[ ${ONE_FILE} == *.apk ]]
+    then
+      TMP_ONE_FILE_NAME=$(basename ${ONE_FILE} | sed 's/.apk//g')
+
+      echo "include \$(CLEAR_VARS)" >> ${APK_MAKEFILE}
+
+      echo "LOCAL_MODULE_SUFFIX := \$(COMMON_ANDROID_PACKAGE_SUFFIX)" >> ${APK_MAKEFILE}
+      echo "LOCAL_MODULE := ${TMP_ONE_FILE_NAME}" >> ${APK_MAKEFILE}
+      echo "LOCAL_MODULE_TAGS := optional" >> ${APK_MAKEFILE}
+      echo "LOCAL_BUILT_MODULE_STEM := package.apk" >> ${APK_MAKEFILE}
+      echo "LOCAL_MODULE_OWNER := ${COMPANY}" >> ${APK_MAKEFILE}
+      echo "LOCAL_MODULE_CLASS := APPS" >> ${APK_MAKEFILE}
+      echo "LOCAL_SRC_FILES := \$(LOCAL_MODULE).apk" >> ${APK_MAKEFILE}
+      echo "LOCAL_CERTIFICATE := PRESIGNED" >> ${APK_MAKEFILE}
+      echo "include \$(BUILD_PREBUILT)" >> ${APK_MAKEFILE}
+      echo "" >> ${APK_MAKEFILE}
+    fi
+
     echo \ \ \ \ Extracting $ONE_FILE
     unzip -j -o $ZIP $ONE_FILE -d $FILEDIR_NEW> /dev/null || echo \ \ \ \ Error extracting $ONE_FILE
     if test ${ONE_FILE,,} = system/vendor/bin/gpsd -o ${ONE_FILE,,} = system/vendor/bin/pvrsrvinit -o ${ONE_FILE,,} = system/bin/fRom