annotate Lib/CMake/sizeCalculator @ 401:99f93dec8fea

Start removing select Linux-isms bash might not be in /bin. Don't expect it there.
author Dan McGregor <dan.mcgregor@usask.ca>
date Mon, 10 Aug 2015 14:49:46 -0600
parents 6ac92b8614c0
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
401
99f93dec8fea Start removing select Linux-isms
Dan McGregor <dan.mcgregor@usask.ca>
parents: 192
diff changeset
1 #!/usr/bin/env bash
148
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
2 #| Jacob Alexander 2014
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
3 #| Arg List
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
4 #| 1 - size binary (e.g. avr-size)
192
6ac92b8614c0 Fixing RAM calculator and reduced actual SRAM usage
Jacob Alexander <haata@kiibohd.com>
parents: 148
diff changeset
5 #| 2 - measurement type (flash or ram)
148
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
6 #| 3 - binary file (e.g. kiibohd.hex)
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
7 #| 4 - total available (flash/ram) in bytes
192
6ac92b8614c0 Fixing RAM calculator and reduced actual SRAM usage
Jacob Alexander <haata@kiibohd.com>
parents: 148
diff changeset
8 #| 5 - flash/ram text
148
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
9
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
10
192
6ac92b8614c0 Fixing RAM calculator and reduced actual SRAM usage
Jacob Alexander <haata@kiibohd.com>
parents: 148
diff changeset
11 case "$2" in
6ac92b8614c0 Fixing RAM calculator and reduced actual SRAM usage
Jacob Alexander <haata@kiibohd.com>
parents: 148
diff changeset
12 "flash")
6ac92b8614c0 Fixing RAM calculator and reduced actual SRAM usage
Jacob Alexander <haata@kiibohd.com>
parents: 148
diff changeset
13 USED=$("$1" "$3" | tail -n-1 | awk '{ print $1+$2 }')
6ac92b8614c0 Fixing RAM calculator and reduced actual SRAM usage
Jacob Alexander <haata@kiibohd.com>
parents: 148
diff changeset
14 ;;
6ac92b8614c0 Fixing RAM calculator and reduced actual SRAM usage
Jacob Alexander <haata@kiibohd.com>
parents: 148
diff changeset
15 "ram")
6ac92b8614c0 Fixing RAM calculator and reduced actual SRAM usage
Jacob Alexander <haata@kiibohd.com>
parents: 148
diff changeset
16 USED=$("$1" "$3" | tail -n-1 | awk '{ print $2+$3 }')
6ac92b8614c0 Fixing RAM calculator and reduced actual SRAM usage
Jacob Alexander <haata@kiibohd.com>
parents: 148
diff changeset
17 ;;
6ac92b8614c0 Fixing RAM calculator and reduced actual SRAM usage
Jacob Alexander <haata@kiibohd.com>
parents: 148
diff changeset
18 *)
6ac92b8614c0 Fixing RAM calculator and reduced actual SRAM usage
Jacob Alexander <haata@kiibohd.com>
parents: 148
diff changeset
19 echo "INVALID Measurement type: $2"
6ac92b8614c0 Fixing RAM calculator and reduced actual SRAM usage
Jacob Alexander <haata@kiibohd.com>
parents: 148
diff changeset
20 exit 1
6ac92b8614c0 Fixing RAM calculator and reduced actual SRAM usage
Jacob Alexander <haata@kiibohd.com>
parents: 148
diff changeset
21 esac
6ac92b8614c0 Fixing RAM calculator and reduced actual SRAM usage
Jacob Alexander <haata@kiibohd.com>
parents: 148
diff changeset
22
148
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
23
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
24 # Calculates the total flash/ram used
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
25 TOTAL="$4"
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
26 PERCENTAGE=$((USED * 100 / TOTAL))
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
27
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
28 # Size Colours
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
29 # Red/Flashing - Almost full
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
30 if (( PERCENTAGE > 95 )); then
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
31 COLOR="\t\033[1;5;31m"
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
32 # Red - Getting full
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
33 elif (( PERCENTAGE > 90 )); then
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
34 COLOR="\t\033[1;31m"
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
35
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
36 # Yellow - Starting to fill up
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
37 elif (( PERCENTAGE > 50 )); then
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
38 COLOR="\t\033[1;33m"
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
39
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
40 # Green - Lots of room
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
41 else
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
42 COLOR="\t\033[1;32m"
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
43 fi
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
44
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
45 # Displays Results
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
46 NAME="$5"
192
6ac92b8614c0 Fixing RAM calculator and reduced actual SRAM usage
Jacob Alexander <haata@kiibohd.com>
parents: 148
diff changeset
47 echo -e "\t\033[1m${NAME}\033[m: ${COLOR}${PERCENTAGE}%\033[m \t${USED}/${TOTAL}\tbytes"
148
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
48
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
49 exit 0
15814bf7b0cc Adding chip usage display after build completion.
Jacob Alexander <haata@kiibohd.com>
parents:
diff changeset
50