From 9a7687fd6c7c28ae57d711dbebf3c6bcae0dd720 Mon Sep 17 00:00:00 2001 From: Phil Howard Date: Wed, 20 Jan 2021 15:19:38 +0000 Subject: [PATCH 1/2] Add usermod.cmake files for building against upstream usermod micropython usermod branch Only *one* usermod directory can be specified, so the build command becomes something like: make USER_C_MODULES=/path/to/pimoroni-pico/micropython/modules/ The `usermod.cmake` in the "modules" dir will then include all of the modules. Comment lines our here to disable them. No need to configure anythign in `mpconfigport.h` since the defines are set by the `usermod.cmake` files. --- .../modules/pico_rgb_keypad/usermod.cmake | 17 +++++++++++++++++ micropython/modules/pico_scroll/usermod.cmake | 17 +++++++++++++++++ .../modules/pico_unicorn/usermod.cmake | 19 +++++++++++++++++++ micropython/modules/usermod.cmake | 3 +++ 4 files changed, 56 insertions(+) create mode 100644 micropython/modules/pico_rgb_keypad/usermod.cmake create mode 100644 micropython/modules/pico_scroll/usermod.cmake create mode 100644 micropython/modules/pico_unicorn/usermod.cmake create mode 100644 micropython/modules/usermod.cmake diff --git a/micropython/modules/pico_rgb_keypad/usermod.cmake b/micropython/modules/pico_rgb_keypad/usermod.cmake new file mode 100644 index 00000000..4d961684 --- /dev/null +++ b/micropython/modules/pico_rgb_keypad/usermod.cmake @@ -0,0 +1,17 @@ +add_library(usermod_pico_rgb_keypad INTERFACE) + +target_sources(usermod_pico_rgb_keypad INTERFACE + ${CMAKE_CURRENT_LIST_DIR}/pico_rgb_keypad.c + ${CMAKE_CURRENT_LIST_DIR}/pico_rgb_keypad.cpp + ${CMAKE_CURRENT_LIST_DIR}/../../../libraries/pico_rgb_keypad/pico_rgb_keypad.cpp +) + +target_include_directories(usermod_pico_rgb_keypad INTERFACE + ${CMAKE_CURRENT_LIST_DIR} +) + +target_compile_definitions(usermod_pico_rgb_keypad INTERFACE + -DMODULE_PICOKEYPAD_ENABLED=1 +) + +target_link_libraries(usermod INTERFACE usermod_pico_rgb_keypad) \ No newline at end of file diff --git a/micropython/modules/pico_scroll/usermod.cmake b/micropython/modules/pico_scroll/usermod.cmake new file mode 100644 index 00000000..2a79f81c --- /dev/null +++ b/micropython/modules/pico_scroll/usermod.cmake @@ -0,0 +1,17 @@ +add_library(usermod_pico_scroll INTERFACE) + +target_sources(usermod_pico_scroll INTERFACE + ${CMAKE_CURRENT_LIST_DIR}/pico_scroll.c + ${CMAKE_CURRENT_LIST_DIR}/pico_scroll.cpp + ${CMAKE_CURRENT_LIST_DIR}/../../../libraries/pico_scroll/pico_scroll.cpp +) + +target_include_directories(usermod_pico_scroll INTERFACE + ${CMAKE_CURRENT_LIST_DIR} +) + +target_compile_definitions(usermod_pico_scroll INTERFACE + -DMODULE_PICOSCROLL_ENABLED=1 +) + +target_link_libraries(usermod INTERFACE usermod_pico_scroll) \ No newline at end of file diff --git a/micropython/modules/pico_unicorn/usermod.cmake b/micropython/modules/pico_unicorn/usermod.cmake new file mode 100644 index 00000000..3b59b135 --- /dev/null +++ b/micropython/modules/pico_unicorn/usermod.cmake @@ -0,0 +1,19 @@ +add_library(usermod_pico_unicorn INTERFACE) + +target_sources(usermod_pico_unicorn INTERFACE + ${CMAKE_CURRENT_LIST_DIR}/pico_unicorn.c + ${CMAKE_CURRENT_LIST_DIR}/pico_unicorn.cpp + ${CMAKE_CURRENT_LIST_DIR}/../../../libraries/pico_unicorn/pico_unicorn.cpp +) + +pico_generate_pio_header(usermod_pico_unicorn ${CMAKE_CURRENT_LIST_DIR}/../../../libraries/pico_unicorn/pico_unicorn.pio) + +target_include_directories(usermod_pico_unicorn INTERFACE + ${CMAKE_CURRENT_LIST_DIR} +) + +target_compile_definitions(usermod_pico_unicorn INTERFACE + -DMODULE_PICOUNICORN_ENABLED=1 +) + +target_link_libraries(usermod INTERFACE usermod_pico_unicorn) \ No newline at end of file diff --git a/micropython/modules/usermod.cmake b/micropython/modules/usermod.cmake new file mode 100644 index 00000000..0183744c --- /dev/null +++ b/micropython/modules/usermod.cmake @@ -0,0 +1,3 @@ +include(${CMAKE_CURRENT_LIST_DIR}/pico_scroll/usermod.cmake) +include(${CMAKE_CURRENT_LIST_DIR}/pico_rgb_keypad/usermod.cmake) +include(${CMAKE_CURRENT_LIST_DIR}/pico_unicorn/usermod.cmake) \ No newline at end of file From 2030ff54a90a3aa645f2638f4263cbb1cefa78c3 Mon Sep 17 00:00:00 2001 From: Phil Howard Date: Wed, 20 Jan 2021 18:18:14 +0000 Subject: [PATCH 2/2] Add usermod.cmake for pico_display --- .../modules/pico_display/usermod.cmake | 21 +++++++++++++++++++ micropython/modules/usermod.cmake | 3 ++- 2 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 micropython/modules/pico_display/usermod.cmake diff --git a/micropython/modules/pico_display/usermod.cmake b/micropython/modules/pico_display/usermod.cmake new file mode 100644 index 00000000..f3e7d813 --- /dev/null +++ b/micropython/modules/pico_display/usermod.cmake @@ -0,0 +1,21 @@ +add_library(usermod_pico_display INTERFACE) + +target_sources(usermod_pico_display INTERFACE + ${CMAKE_CURRENT_LIST_DIR}/pico_display.c + ${CMAKE_CURRENT_LIST_DIR}/pico_display.cpp + ${CMAKE_CURRENT_LIST_DIR}/../../../libraries/pico_display/pico_display.cpp + ${CMAKE_CURRENT_LIST_DIR}/../../../drivers/st7789/st7789.cpp + ${CMAKE_CURRENT_LIST_DIR}/../../../libraries/pico_graphics/pico_graphics.cpp + ${CMAKE_CURRENT_LIST_DIR}/../../../libraries/pico_graphics/types.cpp + ${CMAKE_CURRENT_LIST_DIR}/../../../libraries/pico_graphics/font_data.cpp +) + +target_include_directories(usermod_pico_display INTERFACE + ${CMAKE_CURRENT_LIST_DIR} +) + +target_compile_definitions(usermod_pico_display INTERFACE + -DMODULE_PICODISPLAY_ENABLED=1 +) + +target_link_libraries(usermod INTERFACE usermod_pico_display) \ No newline at end of file diff --git a/micropython/modules/usermod.cmake b/micropython/modules/usermod.cmake index 0183744c..44191c83 100644 --- a/micropython/modules/usermod.cmake +++ b/micropython/modules/usermod.cmake @@ -1,3 +1,4 @@ include(${CMAKE_CURRENT_LIST_DIR}/pico_scroll/usermod.cmake) include(${CMAKE_CURRENT_LIST_DIR}/pico_rgb_keypad/usermod.cmake) -include(${CMAKE_CURRENT_LIST_DIR}/pico_unicorn/usermod.cmake) \ No newline at end of file +include(${CMAKE_CURRENT_LIST_DIR}/pico_unicorn/usermod.cmake) +include(${CMAKE_CURRENT_LIST_DIR}/pico_display/usermod.cmake) \ No newline at end of file