Revision 5690d84c
setup.sh | ||
---|---|---|
332 | 332 |
# Error: Unexpected user input. |
333 | 333 |
# |
334 | 334 |
function stm32flashSetup { |
335 |
local stm32flashdir=$(dirname $(realpath ${BASH_SOURCE[0]}))/Host/Source/stm32flash/ |
|
335 |
local amirobltdir=$(dirname $(realpath ${BASH_SOURCE[0]})) |
|
336 |
local stm32flashdir=${amirobltdir}/Host/Source/stm32flash/ |
|
336 | 337 |
local userdir=$(pwd) |
337 | 338 |
|
338 | 339 |
# if the stm32flash folder is not empty |
... | ... | |
344 | 345 |
Y|y) |
345 | 346 |
printInfo "wiping ${stm32flashdir}...\n" |
346 | 347 |
# checkout base commit and delete all local branches |
348 |
cd $amirobltdir |
|
347 | 349 |
git submodule update --force --checkout $stm32flashdir | tee -a $LOG_FILE |
348 | 350 |
cd $stm32flashdir |
349 | 351 |
local git_branches=($(git for-each-ref --format="%(refname)")) |
... | ... | |
352 | 354 |
git branch -D ${branch##*/} | tee -a $LOG_FILE |
353 | 355 |
fi |
354 | 356 |
done |
355 |
cd $userdir
|
|
357 |
cd $amirobltdir
|
|
356 | 358 |
# deinit stm32flash submodule and delete any remaining files |
357 | 359 |
git submodule deinit -f $stm32flashdir 2>&1 | tee -a $LOG_FILE |
358 | 360 |
rm -rf $stm32flashdir/* |
361 |
cd $userdir |
|
359 | 362 |
;; |
360 | 363 |
N|n) |
361 | 364 |
printWarning "stm32flash setup aborted by user\n" |
... | ... | |
370 | 373 |
|
371 | 374 |
# initialize submodule |
372 | 375 |
printInfo "initializing stm32flash submodule...\n" |
376 |
cd $amirobltdir |
|
373 | 377 |
git submodule update --init $stm32flashdir 2>&1 | tee -a $LOG_FILE |
374 | 378 |
while [ ${PIPESTATUS[0]} -ne 0 ]; do |
375 | 379 |
printWarning "initialitaion failed. Retry? [y/n]\n" |
... | ... | |
380 | 384 |
git submodule update --init $stm32flashdir 2>&1 | tee -a $LOG_FILE;; |
381 | 385 |
N|n) |
382 | 386 |
printWarning "stm32flash initialization aborted by user\n" |
387 |
cd $userdir |
|
383 | 388 |
return 1 |
384 | 389 |
;; |
385 | 390 |
*) # sanity check (return error) |
386 | 391 |
printError "unexpected input: $userinput\n"; return -1;; |
387 | 392 |
esac |
388 | 393 |
done |
394 |
cd $userdir |
|
389 | 395 |
|
390 | 396 |
# build the stm32flash tool |
391 | 397 |
printInfo "compiling stm32flash\n" |
... | ... | |
490 | 496 |
# No error or warning occurred. |
491 | 497 |
# |
492 | 498 |
function main { |
493 |
local userdir=$(pwd) |
|
494 |
cd $(realpath $(dirname ${BASH_SOURCE[0]})) |
|
495 |
|
|
496 | 499 |
# print welcome/info text if not suppressed |
497 | 500 |
if [[ $@ != *"--noinfo"* ]]; then |
498 | 501 |
printWelcomeText |
... | ... | |
505 | 508 |
if [[ $@ == *"--help"* || $@ == *"-h"* ]]; then |
506 | 509 |
printHelp |
507 | 510 |
printf "\n" |
508 |
cd $userdir |
|
509 | 511 |
quitScript |
510 | 512 |
fi |
511 | 513 |
|
... | ... | |
551 | 553 |
-c|--compiler) |
552 | 554 |
compilerSetup; printf "\n"; shift 1;; |
553 | 555 |
-q|--quit) |
554 |
cd $userdir; quitScript; shift 1;;
|
|
556 |
quitScript; shift 1;; |
|
555 | 557 |
--log=*|--LOG=*) # already handled; ignore |
556 | 558 |
shift 1;; |
557 | 559 |
--log|--LOG) # already handled; ignore |
... | ... | |
592 | 594 |
C|c) |
593 | 595 |
compilerSetup; printf "\n";; |
594 | 596 |
Q|q) |
595 |
cd $userdir; quitScript;;
|
|
597 |
quitScript;; |
|
596 | 598 |
*) # sanity check (exit with error) |
597 | 599 |
printError "unexpected argument: $userinput\n";; |
598 | 600 |
esac |
599 | 601 |
done |
600 | 602 |
|
601 |
cd $USER_DIR |
|
602 | 603 |
exit 0 |
603 | 604 |
} |
604 | 605 |
|
Also available in: Unified diff