Skip to content

Commit f09d19f

Browse files
Add support for fri3d-2024 building
1 parent 996c57f commit f09d19f

File tree

1 file changed

+16
-7
lines changed

1 file changed

+16
-7
lines changed

scripts/build_lvgl_micropython.sh

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,15 @@
11

22
target="$1"
33
buildtype="$2"
4-
4+
subtarget="$3"
55

66
if [ -z "$target" -o -z "$buildtype" ]; then
7-
echo "Usage: $0 <esp32 or unix or macos> <dev or prod>"
7+
echo "Usage: $0 target buildtype [optional subtarget]"
8+
echo "Usage: $0 <esp32 or unix or macos> <dev or prod> [<waveshare-esp32-s3-touch-lcd-2 or fri3d-2024>]"
89
echo "Example: $0 unix dev"
9-
echo "Example: $0 esp32 prod"
10+
echo "Example: $0 esp32 prod # defaults to waveshare-esp32-s3-touch-lcd-2"
11+
echo "Example: $0 esp32 prod waveshare-esp32-s3-touch-lcd-2"
12+
echo "Example: $0 esp32 prod fri3d-2024"
1013
echo
1114
echo "A 'dev' build is without any preinstalled files or builtin/ filsystem, so it will just start with a black screen and you'll have to do: ./scripts/install.sh to install the User Interface."
1215
echo "A 'prod' build has the files from manifest*.py frozen in. Don't forget to run: ./scripts/freezefs_mount_builtin.sh !"
@@ -17,13 +20,16 @@ if [ "$buildtype" == "prod" ]; then
1720
./scripts/freezefs_mount_builtin.sh
1821
fi
1922

20-
pushd ~/projects/MicroPythonOS/lvgl_micropython
21-
2223
manifest=""
2324

2425
if [ "$target" == "esp32" ]; then
2526
if [ "$buildtype" == "prod" ]; then
26-
manifest="FROZEN_MANIFEST=/home/user/projects/MicroPythonOS/MicroPythonOS/manifest.py"
27+
if [ "$subtarget" == "fri3d-2024" ]; then
28+
cp internal_filesystem/boot_fri3d-2024.py /tmp/boot.py # dirty hack to have it included as boot.py by the manifest
29+
manifest="FROZEN_MANIFEST=/home/user/projects/MicroPythonOS/MicroPythonOS/manifest_fri3d-2024.py"
30+
else
31+
manifest="FROZEN_MANIFEST=/home/user/projects/MicroPythonOS/MicroPythonOS/manifest.py"
32+
fi
2733
else
2834
echo "Note that you can also prevent the builtin filesystem from being mounted by umounting it and creating a builtin/ folder."
2935
fi
@@ -40,7 +46,9 @@ if [ "$target" == "esp32" ]; then
4046
# CONFIG_FREERTOS_USE_TRACE_FACILITY=y
4147
# CONFIG_FREERTOS_VTASKLIST_INCLUDE_COREID=y
4248
# CONFIG_FREERTOS_GENERATE_RUN_TIME_STATS=y
49+
pushd ~/projects/MicroPythonOS/lvgl_micropython
4350
python3 make.py --ota --partition-size=4194304 --flash-size=16 esp32 BOARD=ESP32_GENERIC_S3 BOARD_VARIANT=SPIRAM_OCT DISPLAY=st7789 INDEV=cst816s USER_C_MODULE=/home/user/projects/MicroPythonOS/micropython-camera-API/src/micropython.cmake USER_C_MODULE=/home/user/projects/MicroPythonOS/secp256k1-embedded-ecdh/micropython.cmake USER_C_MODULE=/home/user/projects/MicroPythonOS/MicroPythonOS/c_mpos/micropython.cmake CONFIG_FREERTOS_USE_TRACE_FACILITY=y CONFIG_FREERTOS_VTASKLIST_INCLUDE_COREID=y CONFIG_FREERTOS_GENERATE_RUN_TIME_STATS=y "$manifest"
51+
popd
4452
elif [ "$target" == "unix" -o "$target" == "macos" ]; then
4553
if [ "$buildtype" == "prod" ]; then
4654
manifest="FROZEN_MANIFEST=/home/user/projects/MicroPythonOS/MicroPythonOS/manifest_unix.py"
@@ -49,9 +57,10 @@ elif [ "$target" == "unix" -o "$target" == "macos" ]; then
4957
#python3 make.py "$target" DISPLAY=sdl_display INDEV=sdl_pointer INDEV=sdl_keyboard "$manifest"
5058
# LV_CFLAGS are passed to USER_C_MODULES
5159
# STRIP= makes it so that debug symbols are kept
60+
pushd ~/projects/MicroPythonOS/lvgl_micropython
5261
python3 make.py "$target" LV_CFLAGS="-g -O0 -ggdb -ljpeg" STRIP= DISPLAY=sdl_display INDEV=sdl_pointer INDEV=sdl_keyboard "$manifest"
62+
popd
5363
else
5464
echo "invalid target $target"
5565
fi
5666

57-
popd

0 commit comments

Comments
 (0)