2016-03-29 10:41:06 +00:00
|
|
|
#!/bin/bash
|
2016-06-12 23:24:47 +00:00
|
|
|
|
2016-11-16 22:45:56 +00:00
|
|
|
source emu.config 2>/dev/null
|
|
|
|
|
2017-08-07 14:56:41 +00:00
|
|
|
EXE=build/unix/micropython
|
2018-05-22 14:36:24 +00:00
|
|
|
PYOPT="${PYOPT:-1}"
|
2018-10-09 12:35:52 +00:00
|
|
|
MAIN="${MAIN:-${PWD}/src/main.py}"
|
|
|
|
HEAPSIZE="${HEAPSIZE:-50M}"
|
2018-09-20 12:47:05 +00:00
|
|
|
SOURCE_PY_DIR="${SOURCE_PY_DIR:-src}"
|
2016-06-12 23:24:47 +00:00
|
|
|
|
2018-05-22 14:36:24 +00:00
|
|
|
ARGS="-O${PYOPT} -X heapsize=${HEAPSIZE}"
|
2016-11-16 22:45:56 +00:00
|
|
|
|
2018-09-20 12:47:05 +00:00
|
|
|
cd `dirname $0`/$SOURCE_PY_DIR
|
2016-06-12 23:24:47 +00:00
|
|
|
|
|
|
|
case "$1" in
|
|
|
|
"-d")
|
|
|
|
shift
|
2018-10-09 12:35:52 +00:00
|
|
|
OPERATING_SYSTEM=$(uname)
|
|
|
|
if [ $OPERATING_SYSTEM == "Darwin" ]; then
|
|
|
|
PATH=/usr/bin /usr/bin/lldb -f ../$EXE -- $ARGS $* $MAIN
|
|
|
|
else
|
|
|
|
gdb --args ../$EXE $ARGS $* $MAIN
|
|
|
|
fi
|
2016-06-12 23:24:47 +00:00
|
|
|
;;
|
2016-11-17 12:08:49 +00:00
|
|
|
"-r")
|
|
|
|
shift
|
|
|
|
while true; do
|
2017-04-19 19:39:44 +00:00
|
|
|
../$EXE $ARGS $* $MAIN &
|
2016-11-17 12:08:49 +00:00
|
|
|
UPY_PID=$!
|
|
|
|
find -name '*.py' | inotifywait -q -e close_write --fromfile -
|
|
|
|
echo Restarting ...
|
|
|
|
kill $UPY_PID
|
|
|
|
done
|
|
|
|
;;
|
2016-06-12 23:24:47 +00:00
|
|
|
*)
|
2017-04-19 19:39:44 +00:00
|
|
|
../$EXE $ARGS $* $MAIN
|
2016-06-12 23:24:47 +00:00
|
|
|
esac
|