gen_plats.sh 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. ##
  2. ## Copyright (c) 2016 Minoca Corp. All Rights Reserved.
  3. ##
  4. ## Script Name:
  5. ##
  6. ## gen_plats.sh
  7. ##
  8. ## Abstract:
  9. ##
  10. ## This script generates the platform zip files.
  11. ##
  12. ## Author:
  13. ##
  14. ## Evan Green 9-Sep-2014
  15. ##
  16. ## Environment:
  17. ##
  18. ## Build
  19. ##
  20. set -e
  21. if test -z "$SRCROOT"; then
  22. echo "Error: SRCROOT must be set."
  23. exit 1
  24. fi
  25. if test -z "$ARCH"; then
  26. echo "Error: ARCH must be set."
  27. exit 1
  28. fi
  29. BINROOT=$SRCROOT/${ARCH}${VARIANT}chk/bin
  30. if ! test -d $BINROOT; then
  31. echo "Error: BINROOT '$BINROOT' does not exist."
  32. exit 1
  33. fi
  34. if ! test -f $BINROOT/build-revision; then
  35. echo "Error: '$BINROOT/build-revision' is missing."
  36. exit 1
  37. fi
  38. REVISION=`cat $BINROOT/build-revision`
  39. if test -z "$REVISION"; then
  40. echo "Error: $BINROOT/build-revision is empty."
  41. exit 1
  42. fi
  43. cd $BINROOT
  44. REVISION=`cat $BINROOT/build-revision`
  45. if test -z "$REVISION"; then
  46. echo "Error: $BINROOT/build-revision is empty."
  47. exit 1
  48. fi
  49. cd $BINROOT/distribute
  50. if [ "$ARCH" = "x86" ] ; then
  51. if [ "x$VARIANT" = "xq" ] ; then
  52. IMAGES="galileo"
  53. else
  54. IMAGES="pc pcefi"
  55. fi
  56. elif [ "$ARCH" = "armv7" ] ; then
  57. IMAGES="bbone panda rpi2 veyron"
  58. elif [ "$ARCH" = "armv6" ] ; then
  59. IMAGES="rpi"
  60. else
  61. echo "Error: Unknown architecture $ARCH."
  62. exit 1
  63. fi
  64. for image in $IMAGES; do
  65. ARCHIVE="Minoca-$image-$REVISION.zip"
  66. 7za a -tzip -mmt -mx9 -mtc "$ARCHIVE" "${image}.img"
  67. FILE_SIZE=`ls -l $ARCHIVE | \
  68. sed -n 's/[^ ]* *[^ ]* *[^ ]* *[^ ]* *\([0123456789]*\).*/\1/p'`
  69. if test -n "$MBUILD_STEP_ID"; then
  70. python $SRCROOT/client.py --result "$image Size" integer "$FILE_SIZE"
  71. python $SRCROOT/client.py --upload schedule $ARCHIVE $ARCHIVE
  72. echo Uploaded file $ARCHIVE, size $FILE_SIZE
  73. fi
  74. done
  75. echo "Done generating platform archives."