mirror of
https://github.com/openstenoproject/qmk
synced 2024-11-09 18:19:08 +00:00
Misc size regression script improvements. (#16268)
* Misc size regression script improvements. - Sets environment variable SIZE_REGRESSION_EXECUTING during execution so hook scripts like `post-checkout` may skip processing. - Forces checkout of the target branch, including removal of all temporary object files in the process. - Prints out a warning on exit stating that the git repository is in an indeterminate state, and the user needs to swap back to whatever intended branch they were working with originally. * Remove `git clean`
This commit is contained in:
parent
87e6c2b06b
commit
a239051c4a
1 changed files with 20 additions and 2 deletions
|
@ -11,6 +11,8 @@ dest_ref="develop"
|
|||
ignore_ref="master"
|
||||
unset skip_zero
|
||||
|
||||
export SIZE_REGRESSION_EXECUTING=1
|
||||
|
||||
function usage() {
|
||||
echo "Usage: $(basename "$0") [-h] [-j <jobs>] [-s <source>] [-d <dest>] [-n] planck/rev6:default"
|
||||
echo " -h : Shows this usage page."
|
||||
|
@ -23,9 +25,24 @@ function usage() {
|
|||
}
|
||||
|
||||
if [[ ${#} -eq 0 ]]; then
|
||||
usage
|
||||
usage
|
||||
exit 0
|
||||
fi
|
||||
|
||||
unset cleanup_completed
|
||||
_internal_cleanup() {
|
||||
if [[ -z "${cleanup_completed:-}" ]] ; then
|
||||
echo
|
||||
echo
|
||||
echo 'Your git repository is in an indeterminate state!' >&2
|
||||
echo 'Make sure you swap to your intended branch.' >&2
|
||||
echo
|
||||
unset SIZE_REGRESSION_EXECUTING
|
||||
fi
|
||||
cleanup_completed=1
|
||||
}
|
||||
trap _internal_cleanup EXIT HUP INT
|
||||
|
||||
while getopts "hj:s:d:i:n" opt "$@" ; do
|
||||
case "$opt" in
|
||||
h) usage; exit 0;;
|
||||
|
@ -49,7 +66,8 @@ function build_executor() {
|
|||
revision=$(echo $line | cut -d' ' -f1)
|
||||
|
||||
make distclean >/dev/null 2>&1
|
||||
git checkout $revision >/dev/null 2>&1 || { echo "Failed to check out revision ${revision}" >&2 ; exit 1 ; }
|
||||
|
||||
git checkout -f $revision >/dev/null 2>&1 || { echo "Failed to check out revision ${revision}" >&2 ; exit 1 ; }
|
||||
make -j${job_count} $keyboard_target >/dev/null 2>&1 || true
|
||||
file_size=$(arm-none-eabi-size .build/*.elf 2>/dev/null | awk '/elf/ {print $1}' 2>/dev/null || true)
|
||||
|
||||
|
|
Loading…
Reference in a new issue