build_overlays.sh 796 B

12345678910111213141516171819202122232425262728
  1. #!/bin/bash
  2. set -e
  3. GARCH=$1
  4. GOUT=$2
  5. SCRIPT_DIR=$(dirname "$0")
  6. cd "$SCRIPT_DIR"
  7. OVERLAYS=$(for dir in $(ls -d */); do echo ${dir%%/}; done)
  8. croot 2>/dev/null || cd ../../../
  9. source build/envsetup.sh
  10. breakfast gapps_$GARCH
  11. m installclean
  12. mkdir -p $OUT # $OUT may not exist yet, but we need to start creating the log file now
  13. m $OVERLAYS | tee $OUT/.log
  14. RELOUT=$(echo $OUT | sed "s#^${ANDROID_BUILD_TOP}/##")
  15. LOC="$(cat $OUT/.log | sed -r -e 's/\x1B\[([0-9]{1,2}(;[0-9]{1,2})?)?[m|K]//g' -e 's/^\[ {0,2}[0-9]{1,3}% [0-9]{1,6}\/[0-9]{1,6}\] +//' \
  16. | grep '^Install: ' | grep "$RELOUT" | cut -d ':' -f 2)"
  17. FILES=$(echo $LOC | tr " " "\n" | sed "s#.*${RELOUT}##" | sort | uniq)
  18. for TARGET in $FILES; do
  19. mkdir -p $(dirname $GOUT/$TARGET) && cp $OUT/$TARGET $GOUT/$TARGET
  20. done