Mercurial > louis > kiibohd-controller
changeset 281:71882cd1c362
Check for needed programs
Check for dfu-util and screen before using them. Also aborts if
teensy_loader_cli compilation fails.
Uses the type builtin to determine if a command exists. See here:
https://gist.github.com/sdelmas/7377271
author | Rowan Decker <Smasher816@gmail.com> |
---|---|
date | Thu, 12 Feb 2015 19:42:01 -0800 |
parents | 18b61e53753c |
children | a133945a31a8 f9c406854bc2 48454987f96a |
files | LoadFile/load.dfu LoadFile/load.teensy LoadFile/winload.teensy |
diffstat | 3 files changed, 23 insertions(+), 8 deletions(-) [+] |
line wrap: on
line diff
--- a/LoadFile/load.dfu Thu Feb 12 19:37:19 2015 -0800 +++ b/LoadFile/load.dfu Thu Feb 12 19:42:01 2015 -0800 @@ -54,13 +54,23 @@ # Load via dfu-util # Used for McHCK based uCs -dfu-util -D @TARGET_BIN@ -EXIT_STATUS=$? +if type dfu-util &>/dev/null; then + dfu-util -D @TARGET_BIN@ + EXIT_STATUS=$? +else + echo "dfu-util is required to reprogram the device" + exit 3 +fi # Load Screen Session if specified if (( "$EXIT_STATUS" == "0" )) && [[ "$AUTO_SCREEN_SESSION" != "" ]]; then - sleep 0.1 - screen $AUTO_SCREEN_SESSION + if type screen &>/dev/null; then + sleep 0.1 + screen $AUTO_SCREEN_SESSION + else + echo "screen is not installed" + exit 3 + fi fi exit $EXIT_STATUS
--- a/LoadFile/load.teensy Thu Feb 12 19:37:19 2015 -0800 +++ b/LoadFile/load.teensy Thu Feb 12 19:42:01 2015 -0800 @@ -50,7 +50,7 @@ mkdir -p teensy-loader-cli cd teensy-loader-cli cmake -G "Unix Makefiles" @CMAKE_SOURCE_DIR@/LoadFile - make + make || exit 3 cd - fi @@ -68,8 +68,13 @@ # Load Screen Session if specified if (( "$EXIT_STATUS" == "0" )) && [[ "$AUTO_SCREEN_SESSION" != "" ]]; then - sleep 0.1 - screen $AUTO_SCREEN_SESSION + if type screen &>/dev/null; then + sleep 0.1 + screen $AUTO_SCREEN_SESSION + else + echo "screen is not installed" + exit 3 + fi fi exit $EXIT_STATUS