summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan Halbert <halbert@adafruit.com>2020-04-24 10:07:15 -0400
committerGitHub <noreply@github.com>2020-04-24 10:07:15 -0400
commit5a22a5d0161513e1d2a80fb8fac1d10fd9914101 (patch)
tree385ec30305973f93e91420e38ddb192915da73ea
parent982a755eae66d0fa78834aaf259b0525f7afd49a (diff)
parentbd0df9e3bcd8179ac35ac7b3b3bc6bbc26e2a7ab (diff)
Merge pull request #2598 from hierophect/stm32-docfix
Add stm to docs matrix
-rw-r--r--docs/porting.rst42
-rw-r--r--docs/shared_bindings_matrix.py19
-rw-r--r--ports/atmel-samd/Makefile4
-rw-r--r--ports/atmel-samd/boards/8086_commander/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/arduino_mkr1300/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/arduino_mkrzero/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/arduino_nano_33_iot/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/arduino_zero/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/bast_pro_mini_m0/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/catwan_usbstick/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/datum_distance/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/datum_imu/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/datum_light/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/datum_weather/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/escornabot_makech/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/feather_m0_adalogger/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/feather_m0_basic/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/feather_m0_rfm69/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/feather_m0_rfm9x/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/gemma_m0/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/meowmeow/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/ndgarage_ndbit6/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/nfc_copy_cat/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/pewpew10/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/pewpew_m4/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/pirkey_m0/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/pyruler/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/seeeduino_xiao/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/shirtty/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/sparkfun_qwiic_micro_no_flash/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/sparkfun_qwiic_micro_with_flash/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/sparkfun_samd21_dev/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/sparkfun_samd21_mini/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/trinket_m0/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/uchip/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/xinabox_cc03/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/boards/xinabox_cs11/mpconfigboard.mk2
-rw-r--r--ports/atmel-samd/mpconfigport.mk14
-rw-r--r--ports/stm/mpconfigport.mk140
-rw-r--r--py/circuitpy_mpconfig.h13
-rw-r--r--py/circuitpy_mpconfig.mk86
41 files changed, 160 insertions, 226 deletions
diff --git a/docs/porting.rst b/docs/porting.rst
index 6bb514458..d28f56f47 100644
--- a/docs/porting.rst
+++ b/docs/porting.rst
@@ -1,5 +1,5 @@
We love CircuitPython and would love to see it come to more microcontroller
-platforms. With 3.0 we've reworked CircuitPython to make it easier than ever to
+platforms. Since 3.0 we've reworked CircuitPython to make it easier than ever to
add support. While there are some major differences between ports, this page
covers the similarities that make CircuitPython what it is and how that core
fits into a variety of microcontrollers.
@@ -19,7 +19,7 @@ prepping file systems and automatically running user code on boot. In
CircuitPython we've dubbed this component the supervisor because it monitors
and facilitates the VMs which run user Python code. Porting involves the
supervisor because many of the tasks it does while interfacing with the
-hardware. Once its going though, the REPL works and debugging can migrate to a
+hardware. Once complete, the REPL works and debugging can migrate to a
Python based approach rather than C.
The third core piece is the plethora of low level APIs that CircuitPython
@@ -42,6 +42,44 @@ to the port's directory (in the top level until the ``ports`` directory is
present). This includes the Makefile and any C library resources. Make sure
these resources are compatible with the MIT License of the rest of the code!
+Circuitpython has a number of modules enabled by default in
+``py/circuitpy_mpconfig.mk``. Most of these modules will need to be disabled in
+``mpconfigboard.mk`` during the early stages of a port in order for it to
+compile. As the port progresses in module support, this list can be pruned down
+as a natural "TODO" list. An example minimal build list is shown below:
+
+.. code-block:: makefile
+
+ # These modules are implemented in ports/<port>/common-hal:
+ CIRCUITPY_MICROCONTROLLER = 0 # Typically the first module to create
+ CIRCUITPY_DIGITALIO = 0 # Typically the second module to create
+ CIRCUITPY_ANALOGIO = 0
+ CIRCUITPY_BUSIO = 0
+ CIRCUITPY_NEOPIXEL_WRITE = 0
+ CIRCUITPY_PULSEIO = 0
+ CIRCUITPY_OS = 0
+ CIRCUITPY_NVM = 0
+ CIRCUITPY_AUDIOBUSIO = 0
+ CIRCUITPY_AUDIOIO = 0
+ CIRCUITPY_ROTARYIO = 0
+ CIRCUITPY_RTC = 0
+ CIRCUITPY_FREQUENCYIO = 0
+ CIRCUITPY_I2CSLAVE = 0
+ CIRCUITPY_DISPLAYIO = 0 # Requires SPI, PulseIO (stub ok)
+
+ # These modules are implemented in shared-module/ - they can be included in
+ # any port once their prerequisites in common-hal are complete.
+ CIRCUITPY_BITBANGIO = 0 # Requires DigitalIO
+ CIRCUITPY_GAMEPAD = 0 # Requires DigitalIO
+ CIRCUITPY_PIXELBUF = 0 # Requires neopixel_write or SPI (dotstar)
+ CIRCUITPY_RANDOM = 0 # Requires OS
+ CIRCUITPY_STORAGE = 0 # Requires OS, filesystem
+ CIRCUITPY_TOUCHIO = 0 # Requires Microcontroller
+ CIRCUITPY_USB_HID = 0 # Requires USB
+ CIRCUITPY_USB_MIDI = 0 # Requires USB
+ CIRCUITPY_REQUIRE_I2C_PULLUPS = 0 # Does nothing without I2C
+ CIRCUITPY_ULAB = 0 # No requirements, but takes extra flash
+
Step 2: Init
--------------
Once your build is setup, the next step should be to get your clocks going as
diff --git a/docs/shared_bindings_matrix.py b/docs/shared_bindings_matrix.py
index e327d6ec6..d5f838f75 100644
--- a/docs/shared_bindings_matrix.py
+++ b/docs/shared_bindings_matrix.py
@@ -26,7 +26,7 @@ import os
import re
-SUPPORTED_PORTS = ["atmel-samd", "nrf", "mimxrt10xx"]
+SUPPORTED_PORTS = ["atmel-samd", "nrf", "stm", "mimxrt10xx"]
def parse_port_config(contents, chip_keyword=None):
@@ -139,7 +139,10 @@ def get_excluded_boards(base):
re_board_chip = re.compile("CHIP_FAMILY\s=\s(\w+)")
chip_keyword = "CHIP_FAMILY"
elif port in ["nrf"]:
- re_board_chip = re.compile("MCU_VARIANT\s=\s(\w+)")
+ re_board_chip = re.compile(r"MCU_VARIANT\s=\s(\w+)")
+ elif port in ["stm"]:
+ re_board_chip = re.compile(r"MCU_SERIES\s*=\s*(\w+)")
+ chip_keyword = "MCU_SERIES"
port_dir = "ports/{}".format(port)
@@ -158,10 +161,10 @@ def get_excluded_boards(base):
contents = board.read()
board_chip = re_board_chip.search(contents)
- #print(entry.name, board_chip.group(1))
if not board_chip:
board_chip = "Unknown Chip"
else:
+ #print(entry.name, board_chip.group(1))
board_chip = board_chip.group(1)
# add port_config results to contents
@@ -172,18 +175,12 @@ def get_excluded_boards(base):
check_dependent_modules = dict()
for module in modules:
board_is_excluded = False
- # check if board uses `SMALL_BUILD`. if yes, and current
+ # check if board turns off `FULL_BUILD`. if yes, and current
# module is marked as `FULL_BUILD`, board is excluded
- small_build = re.search("CIRCUITPY_SMALL_BUILD = 1", contents)
+ small_build = re.search("CIRCUITPY_FULL_BUILD = 0", contents)
if small_build and base[module]["full_build"] == "1":
board_is_excluded = True
- # check if board uses `MINIMAL_BUILD`. if yes, and current
- # module is marked as `DEFAULT_BUILD`, board is excluded
- min_build = re.search("CIRCUITPY_MINIMAL_BUILD = 1", contents)
- if min_build and base[module]["default_value"] == "CIRCUITPY_DEFAULT_BUILD":
- board_is_excluded = True
-
# check if module is specifically disabled for this board
re_pattern = r"CIRCUITPY_{}\s=\s(\w)".format(module.upper())
find_module = re.search(re_pattern, contents)
diff --git a/ports/atmel-samd/Makefile b/ports/atmel-samd/Makefile
index f4886f96e..7a626dff7 100644
--- a/ports/atmel-samd/Makefile
+++ b/ports/atmel-samd/Makefile
@@ -114,7 +114,7 @@ else
# Do a default shrink for small builds.
ifndef CFLAGS_INLINE_LIMIT
- ifeq ($(CIRCUITPY_SMALL_BUILD),1)
+ ifeq ($(CIRCUITPY_FULL_BUILD),0)
CFLAGS_INLINE_LIMIT = 50
endif
endif
@@ -125,7 +125,7 @@ else
CFLAGS += -flto -flto-partition=none
- ifeq ($(CIRCUITPY_SMALL_BUILD),1)
+ ifeq ($(CIRCUITPY_FULL_BUILD),0)
CFLAGS += --param inline-unit-growth=15 --param max-inline-insns-auto=20
endif
diff --git a/ports/atmel-samd/boards/8086_commander/mpconfigboard.mk b/ports/atmel-samd/boards/8086_commander/mpconfigboard.mk
index 3e865657a..dcc62fc9b 100644
--- a/ports/atmel-samd/boards/8086_commander/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/8086_commander/mpconfigboard.mk
@@ -13,7 +13,7 @@ EXTERNAL_FLASH_DEVICE_COUNT = 1
EXTERNAL_FLASH_DEVICES = "W25Q128JV_SQ"
LONGINT_IMPL = NONE
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
SUPEROPT_GC = 0
diff --git a/ports/atmel-samd/boards/arduino_mkr1300/mpconfigboard.mk b/ports/atmel-samd/boards/arduino_mkr1300/mpconfigboard.mk
index bd682ade0..d31d1f54a 100644
--- a/ports/atmel-samd/boards/arduino_mkr1300/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/arduino_mkr1300/mpconfigboard.mk
@@ -8,5 +8,5 @@ CHIP_FAMILY = samd21
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
SUPEROPT_GC = 0
diff --git a/ports/atmel-samd/boards/arduino_mkrzero/mpconfigboard.mk b/ports/atmel-samd/boards/arduino_mkrzero/mpconfigboard.mk
index 894b9b011..7eb83a123 100644
--- a/ports/atmel-samd/boards/arduino_mkrzero/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/arduino_mkrzero/mpconfigboard.mk
@@ -8,6 +8,6 @@ CHIP_FAMILY = samd21
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
SUPEROPT_GC = 0
diff --git a/ports/atmel-samd/boards/arduino_nano_33_iot/mpconfigboard.mk b/ports/atmel-samd/boards/arduino_nano_33_iot/mpconfigboard.mk
index 8a29b0ace..fd24edafa 100644
--- a/ports/atmel-samd/boards/arduino_nano_33_iot/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/arduino_nano_33_iot/mpconfigboard.mk
@@ -8,6 +8,6 @@ CHIP_FAMILY = samd21
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
SUPEROPT_GC = 0
diff --git a/ports/atmel-samd/boards/arduino_zero/mpconfigboard.mk b/ports/atmel-samd/boards/arduino_zero/mpconfigboard.mk
index f94ec13b7..a5722c9ad 100644
--- a/ports/atmel-samd/boards/arduino_zero/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/arduino_zero/mpconfigboard.mk
@@ -8,6 +8,6 @@ CHIP_FAMILY = samd21
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
SUPEROPT_GC = 0
diff --git a/ports/atmel-samd/boards/bast_pro_mini_m0/mpconfigboard.mk b/ports/atmel-samd/boards/bast_pro_mini_m0/mpconfigboard.mk
index c3f0750a9..055e6b19e 100644
--- a/ports/atmel-samd/boards/bast_pro_mini_m0/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/bast_pro_mini_m0/mpconfigboard.mk
@@ -8,4 +8,4 @@ CHIP_FAMILY = samd21
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
diff --git a/ports/atmel-samd/boards/catwan_usbstick/mpconfigboard.mk b/ports/atmel-samd/boards/catwan_usbstick/mpconfigboard.mk
index adae4beb2..8724e0d4b 100644
--- a/ports/atmel-samd/boards/catwan_usbstick/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/catwan_usbstick/mpconfigboard.mk
@@ -8,4 +8,4 @@ CHIP_FAMILY = samd21
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
diff --git a/ports/atmel-samd/boards/datum_distance/mpconfigboard.mk b/ports/atmel-samd/boards/datum_distance/mpconfigboard.mk
index 4f6c7ab82..ae05d32f2 100644
--- a/ports/atmel-samd/boards/datum_distance/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/datum_distance/mpconfigboard.mk
@@ -8,6 +8,6 @@ CHIP_FAMILY = samd21
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
SUPEROPT_GC = 0
diff --git a/ports/atmel-samd/boards/datum_imu/mpconfigboard.mk b/ports/atmel-samd/boards/datum_imu/mpconfigboard.mk
index 336a1b832..6fd05f403 100644
--- a/ports/atmel-samd/boards/datum_imu/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/datum_imu/mpconfigboard.mk
@@ -8,6 +8,6 @@ CHIP_FAMILY = samd21
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
SUPEROPT_GC = 0
diff --git a/ports/atmel-samd/boards/datum_light/mpconfigboard.mk b/ports/atmel-samd/boards/datum_light/mpconfigboard.mk
index 7ec2efcf9..d42a7869d 100644
--- a/ports/atmel-samd/boards/datum_light/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/datum_light/mpconfigboard.mk
@@ -8,6 +8,6 @@ CHIP_FAMILY = samd21
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
SUPEROPT_GC = 0
diff --git a/ports/atmel-samd/boards/datum_weather/mpconfigboard.mk b/ports/atmel-samd/boards/datum_weather/mpconfigboard.mk
index d3ec1b0fd..d92cbc71b 100644
--- a/ports/atmel-samd/boards/datum_weather/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/datum_weather/mpconfigboard.mk
@@ -8,6 +8,6 @@ CHIP_FAMILY = samd21
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
SUPEROPT_GC = 0
diff --git a/ports/atmel-samd/boards/escornabot_makech/mpconfigboard.mk b/ports/atmel-samd/boards/escornabot_makech/mpconfigboard.mk
index dedd49ff7..93f6b1c90 100644
--- a/ports/atmel-samd/boards/escornabot_makech/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/escornabot_makech/mpconfigboard.mk
@@ -8,6 +8,6 @@ CHIP_FAMILY = samd21
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
SUPEROPT_GC = 0
diff --git a/ports/atmel-samd/boards/feather_m0_adalogger/mpconfigboard.mk b/ports/atmel-samd/boards/feather_m0_adalogger/mpconfigboard.mk
index 134abf723..54c5bff6a 100644
--- a/ports/atmel-samd/boards/feather_m0_adalogger/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/feather_m0_adalogger/mpconfigboard.mk
@@ -8,6 +8,6 @@ CHIP_FAMILY = samd21
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
SUPEROPT_GC = 0
diff --git a/ports/atmel-samd/boards/feather_m0_basic/mpconfigboard.mk b/ports/atmel-samd/boards/feather_m0_basic/mpconfigboard.mk
index 364374350..69ebdfc23 100644
--- a/ports/atmel-samd/boards/feather_m0_basic/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/feather_m0_basic/mpconfigboard.mk
@@ -8,6 +8,6 @@ CHIP_FAMILY = samd21
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
SUPEROPT_GC = 0
diff --git a/ports/atmel-samd/boards/feather_m0_rfm69/mpconfigboard.mk b/ports/atmel-samd/boards/feather_m0_rfm69/mpconfigboard.mk
index 40a461b27..7556b9517 100644
--- a/ports/atmel-samd/boards/feather_m0_rfm69/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/feather_m0_rfm69/mpconfigboard.mk
@@ -8,6 +8,6 @@ CHIP_FAMILY = samd21
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
SUPEROPT_GC = 0
diff --git a/ports/atmel-samd/boards/feather_m0_rfm9x/mpconfigboard.mk b/ports/atmel-samd/boards/feather_m0_rfm9x/mpconfigboard.mk
index 736161047..de79638bd 100644
--- a/ports/atmel-samd/boards/feather_m0_rfm9x/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/feather_m0_rfm9x/mpconfigboard.mk
@@ -8,6 +8,6 @@ CHIP_FAMILY = samd21
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
SUPEROPT_GC = 0
diff --git a/ports/atmel-samd/boards/gemma_m0/mpconfigboard.mk b/ports/atmel-samd/boards/gemma_m0/mpconfigboard.mk
index d64938632..ca3eccbe4 100644
--- a/ports/atmel-samd/boards/gemma_m0/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/gemma_m0/mpconfigboard.mk
@@ -8,6 +8,6 @@ CHIP_FAMILY = samd21
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
SUPEROPT_GC = 0
diff --git a/ports/atmel-samd/boards/meowmeow/mpconfigboard.mk b/ports/atmel-samd/boards/meowmeow/mpconfigboard.mk
index 4b452ecbf..bd0afb60e 100644
--- a/ports/atmel-samd/boards/meowmeow/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/meowmeow/mpconfigboard.mk
@@ -8,6 +8,6 @@ CHIP_FAMILY = samd21
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
SUPEROPT_GC = 0
diff --git a/ports/atmel-samd/boards/ndgarage_ndbit6/mpconfigboard.mk b/ports/atmel-samd/boards/ndgarage_ndbit6/mpconfigboard.mk
index b73f0951e..5e5f0ff5f 100644
--- a/ports/atmel-samd/boards/ndgarage_ndbit6/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/ndgarage_ndbit6/mpconfigboard.mk
@@ -9,7 +9,7 @@ CHIP_FAMILY = samd21
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
SUPEROPT_GC = 0
diff --git a/ports/atmel-samd/boards/nfc_copy_cat/mpconfigboard.mk b/ports/atmel-samd/boards/nfc_copy_cat/mpconfigboard.mk
index 4f6d1e70d..1b4a16a08 100644
--- a/ports/atmel-samd/boards/nfc_copy_cat/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/nfc_copy_cat/mpconfigboard.mk
@@ -11,4 +11,4 @@ EXTERNAL_FLASH_DEVICE_COUNT = 1
EXTERNAL_FLASH_DEVICES = "GD25Q16C"
LONGINT_IMPL = NONE
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
diff --git a/ports/atmel-samd/boards/pewpew10/mpconfigboard.mk b/ports/atmel-samd/boards/pewpew10/mpconfigboard.mk
index b3271d062..7305abf73 100644
--- a/ports/atmel-samd/boards/pewpew10/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/pewpew10/mpconfigboard.mk
@@ -8,7 +8,7 @@ CHIP_FAMILY = samd21
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
CIRCUITPY_PEW = 1
CIRCUITPY_ANALOGIO = 1
diff --git a/ports/atmel-samd/boards/pewpew_m4/mpconfigboard.mk b/ports/atmel-samd/boards/pewpew_m4/mpconfigboard.mk
index 51b4fc993..f5b6ca389 100644
--- a/ports/atmel-samd/boards/pewpew_m4/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/pewpew_m4/mpconfigboard.mk
@@ -9,7 +9,7 @@ CHIP_FAMILY = samd51
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
# TODO: Turn off analogio for now for space reasons, but restore it
# when frozen module gets smaller.
CIRCUITPY_ANALOGIO = 0
diff --git a/ports/atmel-samd/boards/pirkey_m0/mpconfigboard.mk b/ports/atmel-samd/boards/pirkey_m0/mpconfigboard.mk
index e6c227b13..8b7066ac7 100644
--- a/ports/atmel-samd/boards/pirkey_m0/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/pirkey_m0/mpconfigboard.mk
@@ -20,7 +20,7 @@ CIRCUITPY_RTC = 0
CIRCUITPY_SAMD = 0
CIRCUITPY_USB_MIDI = 1
CIRCUITPY_TOUCHIO = 0
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
# Make more room.
SUPEROPT_GC = 0
diff --git a/ports/atmel-samd/boards/pyruler/mpconfigboard.mk b/ports/atmel-samd/boards/pyruler/mpconfigboard.mk
index ca7ed4bdc..b79940673 100644
--- a/ports/atmel-samd/boards/pyruler/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/pyruler/mpconfigboard.mk
@@ -8,7 +8,7 @@ CHIP_FAMILY = samd21
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
SUPEROPT_GC = 0
diff --git a/ports/atmel-samd/boards/seeeduino_xiao/mpconfigboard.mk b/ports/atmel-samd/boards/seeeduino_xiao/mpconfigboard.mk
index 2741454ce..bedec87f4 100644
--- a/ports/atmel-samd/boards/seeeduino_xiao/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/seeeduino_xiao/mpconfigboard.mk
@@ -8,6 +8,6 @@ CHIP_FAMILY = samd21
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
SUPEROPT_GC = 0
diff --git a/ports/atmel-samd/boards/shirtty/mpconfigboard.mk b/ports/atmel-samd/boards/shirtty/mpconfigboard.mk
index bc37b5943..295ba4bce 100644
--- a/ports/atmel-samd/boards/shirtty/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/shirtty/mpconfigboard.mk
@@ -8,7 +8,7 @@ CHIP_FAMILY = samd21
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
CIRCUITPY_I2CSLAVE = 1
CIRCUITPY_TOUCHIO = 0
diff --git a/ports/atmel-samd/boards/sparkfun_qwiic_micro_no_flash/mpconfigboard.mk b/ports/atmel-samd/boards/sparkfun_qwiic_micro_no_flash/mpconfigboard.mk
index 632cd095c..22e2059a9 100644
--- a/ports/atmel-samd/boards/sparkfun_qwiic_micro_no_flash/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/sparkfun_qwiic_micro_no_flash/mpconfigboard.mk
@@ -9,5 +9,5 @@ CHIP_FAMILY = samd21
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
SUPEROPT_GC = 0
diff --git a/ports/atmel-samd/boards/sparkfun_qwiic_micro_with_flash/mpconfigboard.mk b/ports/atmel-samd/boards/sparkfun_qwiic_micro_with_flash/mpconfigboard.mk
index ccf5a4149..dd01c9985 100644
--- a/ports/atmel-samd/boards/sparkfun_qwiic_micro_with_flash/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/sparkfun_qwiic_micro_with_flash/mpconfigboard.mk
@@ -11,5 +11,5 @@ EXTERNAL_FLASH_DEVICE_COUNT = 1
EXTERNAL_FLASH_DEVICES = "W25Q32FV"
LONGINT_IMPL = MPZ
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
SUPEROPT_GC = 0
diff --git a/ports/atmel-samd/boards/sparkfun_samd21_dev/mpconfigboard.mk b/ports/atmel-samd/boards/sparkfun_samd21_dev/mpconfigboard.mk
index 0c33ef960..a2bd577cd 100644
--- a/ports/atmel-samd/boards/sparkfun_samd21_dev/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/sparkfun_samd21_dev/mpconfigboard.mk
@@ -8,6 +8,6 @@ CHIP_FAMILY = samd21
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
SUPEROPT_GC = 0
diff --git a/ports/atmel-samd/boards/sparkfun_samd21_mini/mpconfigboard.mk b/ports/atmel-samd/boards/sparkfun_samd21_mini/mpconfigboard.mk
index d09785fb8..9460d0009 100644
--- a/ports/atmel-samd/boards/sparkfun_samd21_mini/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/sparkfun_samd21_mini/mpconfigboard.mk
@@ -8,6 +8,6 @@ CHIP_FAMILY = samd21
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
SUPEROPT_GC = 0
diff --git a/ports/atmel-samd/boards/trinket_m0/mpconfigboard.mk b/ports/atmel-samd/boards/trinket_m0/mpconfigboard.mk
index 5c942901a..aab5efd5d 100644
--- a/ports/atmel-samd/boards/trinket_m0/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/trinket_m0/mpconfigboard.mk
@@ -8,7 +8,7 @@ CHIP_FAMILY = samd21
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
SUPEROPT_GC = 0
diff --git a/ports/atmel-samd/boards/uchip/mpconfigboard.mk b/ports/atmel-samd/boards/uchip/mpconfigboard.mk
index 950910e48..90b5600dc 100644
--- a/ports/atmel-samd/boards/uchip/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/uchip/mpconfigboard.mk
@@ -8,4 +8,4 @@ CHIP_FAMILY = samd21
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = NONE
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
diff --git a/ports/atmel-samd/boards/xinabox_cc03/mpconfigboard.mk b/ports/atmel-samd/boards/xinabox_cc03/mpconfigboard.mk
index 941d88b45..fdcde4a07 100644
--- a/ports/atmel-samd/boards/xinabox_cc03/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/xinabox_cc03/mpconfigboard.mk
@@ -9,7 +9,7 @@ CHIP_FAMILY = samd21
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = MPZ
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
SUPEROPT_GC = 0
diff --git a/ports/atmel-samd/boards/xinabox_cs11/mpconfigboard.mk b/ports/atmel-samd/boards/xinabox_cs11/mpconfigboard.mk
index 5c418d312..c1dbf514d 100644
--- a/ports/atmel-samd/boards/xinabox_cs11/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/xinabox_cs11/mpconfigboard.mk
@@ -9,7 +9,7 @@ CHIP_FAMILY = samd21
INTERNAL_FLASH_FILESYSTEM = 1
LONGINT_IMPL = MPZ
-CIRCUITPY_SMALL_BUILD = 1
+CIRCUITPY_FULL_BUILD = 0
SUPEROPT_GC = 0
diff --git a/ports/atmel-samd/mpconfigport.mk b/ports/atmel-samd/mpconfigport.mk
index 039263be7..92d47b186 100644
--- a/ports/atmel-samd/mpconfigport.mk
+++ b/ports/atmel-samd/mpconfigport.mk
@@ -64,22 +64,12 @@ ifndef CIRCUITPY_SAMD
CIRCUITPY_SAMD = 1
endif
-ifndef CIRCUITPY_ULAB
-ifneq ($(CIRCUITPY_SMALL_BUILD),1)
-CIRCUITPY_ULAB = 1
-endif
-endif
-
ifndef CIRCUITPY_RGBMATRIX
-ifneq ($(CIRCUITPY_SMALL_BUILD),1)
-CIRCUITPY_RGBMATRIX = 1
-endif
+CIRCUITPY_RGBMATRIX = $(CIRCUITPY_FULL_BUILD)
endif
ifndef CIRCUITPY_FRAMEBUFFERIO
-ifneq ($(CIRCUITPY_SMALL_BUILD),1)
-CIRCUITPY_FRAMEBUFFERIO = 1
-endif
+CIRCUITPY_FRAMEBUFFERIO = $(CIRCUITPY_FULL_BUILD)
endif
endif # samd51
diff --git a/ports/stm/mpconfigport.mk b/ports/stm/mpconfigport.mk
index 323fd7646..7ed2aa49a 100644
--- a/ports/stm/mpconfigport.mk
+++ b/ports/stm/mpconfigport.mk
@@ -1,106 +1,56 @@
-# Define an equivalent for MICROPY_LONGINT_IMPL, to pass to $(MPY-TOOL) in py/mkrules.mk
-# $(MPY-TOOL) needs to know what kind of longint to use (if any) to freeze long integers.
-# This should correspond to the MICROPY_LONGINT_IMPL definition in mpconfigport.h.
MPY_TOOL_LONGINT_IMPL = -mlongint-impl=mpz
-
-# Internal math library is substantially smaller than toolchain one
+LONGINT_IMPL = MPZ
INTERNAL_LIBM = 1
-
-# Chip supplied serial number, in bytes
USB_SERIAL_NUMBER_LENGTH = 24
-# Longints can be implemented as mpz, as longlong, or not
-LONGINT_IMPL = MPZ
-
-# Reduced feature set for early port
-CIRCUITPY_MINIMAL_BUILD = 1
-
-# The ifndef's allow overriding in mpconfigboard.mk.
-
-ifndef CIRCUITPY_BOARD
-CIRCUITPY_BOARD = 1
-endif
-
-ifndef CIRCUITPY_DIGITALIO
-CIRCUITPY_DIGITALIO = 1
-endif
-
-ifndef CIRCUITPY_ANALOGIO
-CIRCUITPY_ANALOGIO = 1
-endif
-
-ifndef CIRCUITPY_MICROCONTROLLER
-CIRCUITPY_MICROCONTROLLER = 1
-endif
-
-ifndef CIRCUITPY_BUSIO
-CIRCUITPY_BUSIO = 1
-endif
-
-ifndef CIRCUITPY_PULSEIO
-CIRCUITPY_PULSEIO = 1
-endif
-
-ifndef CIRCUITPY_OS
-CIRCUITPY_OS = 1
-endif
-
-ifndef CIRCUITPY_STORAGE
-CIRCUITPY_STORAGE = 1
-endif
-
-ifndef CIRCUITPY_RANDOM
-CIRCUITPY_RANDOM = 1
-endif
-
-ifndef CRICUITPY_USB_HID
-CIRCUITPY_USB_HID = 1
-endif
-
-ifndef CIRCUITPY_USB_MIDI
-CIRCUITPY_USB_MIDI = 1
-endif
-
-ifndef CIRCUITPY_NEOPIXEL_WRITE
-CIRCUITPY_NEOPIXEL_WRITE = 1
-endif
-
-ifndef CIRCUITPY_DISPLAYIO
-CIRCUITPY_DISPLAYIO = 1
-endif
-
-CFLAGS += -DMICROPY_CPYTHON_COMPAT=1
-
-CIRCUITPY_ULAB = 1
-
-ifeq ($(MCU_SERIES), H7)
- CIRCUITPY_BOARD = 1
- CIRCUITPY_DIGITALIO = 1
+ifeq ($(MCU_SERIES),F4)
+ # Not yet implemented common-hal modules:
+ CIRCUITPY_AUDIOBUSIO = 0
+ CIRCUITPY_AUDIOIO = 0
+ CIRCUITPY_ROTARYIO = 0
+ CIRCUITPY_RTC = 0
+ CIRCUITPY_FREQUENCYIO = 0
+ CIRCUITPY_I2CSLAVE = 0
+ # Can be overridden on board level
+ ifndef CIRCUITPY_NVM
+ CIRCUITPY_NVM = 0
+ endif
+endif
+
+ifeq ($(MCU_SERIES),H7)
+ # Not yet implemented common-hal modules:
CIRCUITPY_ANALOGIO = 0
- CIRCUITPY_MICROCONTROLLER = 1
- CIRCUITPY_BUSIO = 1
+ CIRCUITPY_NEOPIXEL_WRITE = 0
CIRCUITPY_PULSEIO = 0
CIRCUITPY_OS = 0
- CIRCUITPY_STORAGE = 0
- CIRCUITPY_RANDOM = 0
- CIRCUITPY_USB_HID = 0
- CIRCUITPY_USB_MIDI = 0
- CIRCUITPY_NEOPIXEL_WRITE = 0
- CIRCUITPY_DISPLAYIO = 0
-endif
-
-ifeq ($(MCU_SERIES), F7)
- CIRCUITPY_BOARD = 1
- CIRCUITPY_DIGITALIO = 1
+ CIRCUITPY_NVM = 0
+ CIRCUITPY_AUDIOBUSIO = 0
+ CIRCUITPY_AUDIOIO = 0
+ CIRCUITPY_ROTARYIO = 0
+ CIRCUITPY_RTC = 0
+ CIRCUITPY_FREQUENCYIO = 0
+ CIRCUITPY_I2CSLAVE = 0
+ # shared-module modules that still need prerequisites filled
+ CIRCUITPY_DISPLAYIO = 0 # Requires SPI, PulseIO, and common-hal module (stub ok)
+ CIRCUITPY_RANDOM = 0 # Requires OS
+ CIRCUITPY_STORAGE = 0 # Requires OS, filesystem
+endif
+
+ifeq ($(MCU_SERIES),F7)
+ # Not yet implemented common-hal modules:
CIRCUITPY_ANALOGIO = 0
- CIRCUITPY_MICROCONTROLLER = 1
- CIRCUITPY_BUSIO = 1
+ CIRCUITPY_NEOPIXEL_WRITE = 0
CIRCUITPY_PULSEIO = 0
CIRCUITPY_OS = 0
- CIRCUITPY_STORAGE = 0
- CIRCUITPY_RANDOM = 0
- CIRCUITPY_USB_HID = 0
- CIRCUITPY_USB_MIDI = 0
- CIRCUITPY_NEOPIXEL_WRITE = 0
- CIRCUITPY_DISPLAYIO = 0
+ CIRCUITPY_NVM = 0
+ CIRCUITPY_AUDIOBUSIO = 0
+ CIRCUITPY_AUDIOIO = 0
+ CIRCUITPY_ROTARYIO = 0
+ CIRCUITPY_RTC = 0
+ CIRCUITPY_FREQUENCYIO = 0
+ CIRCUITPY_I2CSLAVE = 0
+ # shared-module modules that still need prerequisites filled
+ CIRCUITPY_DISPLAYIO = 0 # Requires SPI, PulseIO, and common-hal module (stub ok)
+ CIRCUITPY_RANDOM = 0 # Requires OS
+ CIRCUITPY_STORAGE = 0 # Requires OS, filesystem
endif
diff --git a/py/circuitpy_mpconfig.h b/py/circuitpy_mpconfig.h
index 497fd9523..29a4d524c 100644
--- a/py/circuitpy_mpconfig.h
+++ b/py/circuitpy_mpconfig.h
@@ -179,17 +179,10 @@ typedef long mp_off_t;
// board-specific definitions, which control and may override definitions below.
#include "mpconfigboard.h"
-// CIRCUITPY_FULL_BUILD is defined in a *.mk file.
-
-// Remove some lesser-used functionality to make small builds fit.
+// Turning off FULL_BUILD removes some functionality to reduce flash size on tiny SAMD21s
#define MICROPY_BUILTIN_METHOD_CHECK_SELF_ARG (CIRCUITPY_FULL_BUILD)
-//TODO: replace this with a rework of the FULL_BUILD system
-#if !defined(MICROPY_CPYTHON_COMPAT)
- #define MICROPY_CPYTHON_COMPAT (CIRCUITPY_FULL_BUILD)
-#endif
-#if !defined(MICROPY_COMP_FSTRING_LITERAL)
+#define MICROPY_CPYTHON_COMPAT (CIRCUITPY_FULL_BUILD)
#define MICROPY_COMP_FSTRING_LITERAL (MICROPY_CPYTHON_COMPAT)
-#endif
#define MICROPY_MODULE_WEAK_LINKS (CIRCUITPY_FULL_BUILD)
#define MICROPY_PY_ALL_SPECIAL_METHODS (CIRCUITPY_FULL_BUILD)
#define MICROPY_PY_BUILTINS_COMPLEX (CIRCUITPY_FULL_BUILD)
@@ -223,7 +216,7 @@ typedef long mp_off_t;
#define MP_SSIZE_MAX (0x7fffffff)
#endif
-#if INTERNAL_FLASH_FILESYSTEM == 0 && QSPI_FLASH_FILESYSTEM == 0 && SPI_FLASH_FILESYSTEM == 0 && !CIRCUITPY_MINIMAL_BUILD
+#if INTERNAL_FLASH_FILESYSTEM == 0 && QSPI_FLASH_FILESYSTEM == 0 && SPI_FLASH_FILESYSTEM == 0 && !DISABLE_FILESYSTEM
#error No *_FLASH_FILESYSTEM set!
#endif
diff --git a/py/circuitpy_mpconfig.mk b/py/circuitpy_mpconfig.mk
index 601f1c4e4..30ab720d7 100644
--- a/py/circuitpy_mpconfig.mk
+++ b/py/circuitpy_mpconfig.mk
@@ -23,54 +23,20 @@
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
# THE SOFTWARE.
-# mpconfigboard.mk files can specify:
-# CIRCUITPY_FULL_BUILD = 1 (which is the default)
-# or
-# CIRCUITPY_SMALL_BUILD = 1
-# which is the same as:
-# CIRCUITPY_FULL_BUILD = 0
+# Boards default to all modules enabled (with exceptions)
+# Manually disable by overriding in #mpconfigboard.mk
+# Smaller builds can be forced for resource constrained chips (typically SAMD21s
+# without external flash) by setting CIRCUITPY_FULL_BUILD=0. Avoid using this
+# for merely incomplete ports, as it changes settings in other files.
ifndef CIRCUITPY_FULL_BUILD
- ifeq ($(CIRCUITPY_SMALL_BUILD),1)
- CIRCUITPY_FULL_BUILD = 0
- else
CIRCUITPY_FULL_BUILD = 1
- endif
endif
CFLAGS += -DCIRCUITPY_FULL_BUILD=$(CIRCUITPY_FULL_BUILD)
-# Setting CIRCUITPY_MINIMAL_BUILD = 1 will disable all features
-# Use for for early stage or highly restricted ports
-ifndef CIRCUITPY_MINIMAL_BUILD
-CIRCUITPY_MINIMAL_BUILD = 0
-endif
-CFLAGS += -DCIRCUITPY_MINIMAL_BUILD=$(CIRCUITPY_MINIMAL_BUILD)
-
-ifndef CIRCUITPY_DEFAULT_BUILD
- ifeq ($(CIRCUITPY_MINIMAL_BUILD),1)
- CIRCUITPY_FULL_BUILD = 0
- CIRCUITPY_DEFAULT_BUILD = 0
- else
- CIRCUITPY_DEFAULT_BUILD = 1
- endif
-endif
-CFLAGS += -DCIRCUITPY_DEFAULT_BUILD=$(CIRCUITPY_DEFAULT_BUILD)
-
-# Some features have no unique HAL component, and thus there's never
-# a reason to not include them.
-ifndef CIRCUITPY_ALWAYS_BUILD
- CIRCUITPY_ALWAYS_BUILD = 1
-endif
-CFLAGS += -DCIRCUITPY_ALWAYS_BUILD=$(CIRCUITPY_ALWAYS_BUILD)
-
-
-# All builtin modules are listed below, with default values (0 for off, 1 for on)
-# Some are always on, some are always off, and some depend on CIRCUITPY_FULL_BUILD.
-#
-# *** You can override any of the defaults by defining them in your mpconfigboard.mk.
ifndef CIRCUITPY_ANALOGIO
-CIRCUITPY_ANALOGIO = $(CIRCUITPY_DEFAULT_BUILD)
+CIRCUITPY_ANALOGIO = 1
endif
CFLAGS += -DCIRCUITPY_ANALOGIO=$(CIRCUITPY_ANALOGIO)
@@ -89,7 +55,6 @@ CIRCUITPY_AUDIOIO_COMPAT = $(CIRCUITPY_AUDIOIO)
endif
CFLAGS += -DCIRCUITPY_AUDIOIO_COMPAT=$(CIRCUITPY_AUDIOIO_COMPAT)
-
ifndef CIRCUITPY_AUDIOPWMIO
CIRCUITPY_AUDIOPWMIO = 0
endif
@@ -130,17 +95,17 @@ endif
CFLAGS += -DCIRCUITPY_BLEIO=$(CIRCUITPY_BLEIO)
ifndef CIRCUITPY_BOARD
-CIRCUITPY_BOARD = $(CIRCUITPY_DEFAULT_BUILD)
+CIRCUITPY_BOARD = 1
endif
CFLAGS += -DCIRCUITPY_BOARD=$(CIRCUITPY_BOARD)
ifndef CIRCUITPY_BUSIO
-CIRCUITPY_BUSIO = $(CIRCUITPY_DEFAULT_BUILD)
+CIRCUITPY_BUSIO = 1
endif
CFLAGS += -DCIRCUITPY_BUSIO=$(CIRCUITPY_BUSIO)
ifndef CIRCUITPY_DIGITALIO
-CIRCUITPY_DIGITALIO = $(CIRCUITPY_DEFAULT_BUILD)
+CIRCUITPY_DIGITALIO = 1
endif
CFLAGS += -DCIRCUITPY_DIGITALIO=$(CIRCUITPY_DIGITALIO)
@@ -175,7 +140,7 @@ endif
CFLAGS += -DCIRCUITPY_I2CSLAVE=$(CIRCUITPY_I2CSLAVE)
ifndef CIRCUITPY_MATH
-CIRCUITPY_MATH = $(CIRCUITPY_ALWAYS_BUILD)
+CIRCUITPY_MATH = 1
endif
CFLAGS += -DCIRCUITPY_MATH=$(CIRCUITPY_MATH)
@@ -185,12 +150,12 @@ endif
CFLAGS += -DCIRCUITPY__EVE=$(CIRCUITPY__EVE)
ifndef CIRCUITPY_MICROCONTROLLER
-CIRCUITPY_MICROCONTROLLER = $(CIRCUITPY_DEFAULT_BUILD)
+CIRCUITPY_MICROCONTROLLER = 1
endif
CFLAGS += -DCIRCUITPY_MICROCONTROLLER=$(CIRCUITPY_MICROCONTROLLER)
ifndef CIRCUITPY_NEOPIXEL_WRITE
-CIRCUITPY_NEOPIXEL_WRITE = $(CIRCUITPY_DEFAULT_BUILD)
+CIRCUITPY_NEOPIXEL_WRITE = 1
endif
CFLAGS += -DCIRCUITPY_NEOPIXEL_WRITE=$(CIRCUITPY_NEOPIXEL_WRITE)
@@ -201,12 +166,12 @@ endif
CFLAGS += -DCIRCUITPY_NETWORK=$(CIRCUITPY_NETWORK)
ifndef CIRCUITPY_NVM
-CIRCUITPY_NVM = $(CIRCUITPY_DEFAULT_BUILD)
+CIRCUITPY_NVM = 1
endif
CFLAGS += -DCIRCUITPY_NVM=$(CIRCUITPY_NVM)
ifndef CIRCUITPY_OS
-CIRCUITPY_OS = $(CIRCUITPY_DEFAULT_BUILD)
+CIRCUITPY_OS = 1
endif
CFLAGS += -DCIRCUITPY_OS=$(CIRCUITPY_OS)
@@ -222,7 +187,7 @@ endif
CFLAGS += -DCIRCUITPY_RGBMATRIX=$(CIRCUITPY_RGBMATRIX)
ifndef CIRCUITPY_PULSEIO
-CIRCUITPY_PULSEIO = $(CIRCUITPY_DEFAULT_BUILD)
+CIRCUITPY_PULSEIO = 1
endif
CFLAGS += -DCIRCUITPY_PULSEIO=$(CIRCUITPY_PULSEIO)
@@ -233,17 +198,17 @@ endif
CFLAGS += -DCIRCUITPY_PS2IO=$(CIRCUITPY_PS2IO)
ifndef CIRCUITPY_RANDOM
-CIRCUITPY_RANDOM = $(CIRCUITPY_DEFAULT_BUILD)
+CIRCUITPY_RANDOM = 1
endif
CFLAGS += -DCIRCUITPY_RANDOM=$(CIRCUITPY_RANDOM)
ifndef CIRCUITPY_ROTARYIO
-CIRCUITPY_ROTARYIO = $(CIRCUITPY_DEFAULT_BUILD)
+CIRCUITPY_ROTARYIO = 1
endif
CFLAGS += -DCIRCUITPY_ROTARYIO=$(CIRCUITPY_ROTARYIO)
ifndef CIRCUITPY_RTC
-CIRCUITPY_RTC = $(CIRCUITPY_DEFAULT_BUILD)
+CIRCUITPY_RTC = 1
endif
CFLAGS += -DCIRCUITPY_RTC=$(CIRCUITPY_RTC)
@@ -262,22 +227,22 @@ endif
CFLAGS += -DCIRCUITPY_STAGE=$(CIRCUITPY_STAGE)
ifndef CIRCUITPY_STORAGE
-CIRCUITPY_STORAGE = $(CIRCUITPY_DEFAULT_BUILD)
+CIRCUITPY_STORAGE = 1
endif
CFLAGS += -DCIRCUITPY_STORAGE=$(CIRCUITPY_STORAGE)
ifndef CIRCUITPY_STRUCT
-CIRCUITPY_STRUCT = $(CIRCUITPY_ALWAYS_BUILD)
+CIRCUITPY_STRUCT = 1
endif
CFLAGS += -DCIRCUITPY_STRUCT=$(CIRCUITPY_STRUCT)
ifndef CIRCUITPY_SUPERVISOR
-CIRCUITPY_SUPERVISOR = $(CIRCUITPY_ALWAYS_BUILD)
+CIRCUITPY_SUPERVISOR = 1
endif
CFLAGS += -DCIRCUITPY_SUPERVISOR=$(CIRCUITPY_SUPERVISOR)
ifndef CIRCUITPY_TIME
-CIRCUITPY_TIME = $(CIRCUITPY_ALWAYS_BUILD)
+CIRCUITPY_TIME = 1
endif
CFLAGS += -DCIRCUITPY_TIME=$(CIRCUITPY_TIME)
@@ -288,7 +253,7 @@ endif
CFLAGS += -DCIRCUITPY_TOUCHIO_USE_NATIVE=$(CIRCUITPY_TOUCHIO_USE_NATIVE)
ifndef CIRCUITPY_TOUCHIO
-CIRCUITPY_TOUCHIO = $(CIRCUITPY_DEFAULT_BUILD)
+CIRCUITPY_TOUCHIO = 1
endif
CFLAGS += -DCIRCUITPY_TOUCHIO=$(CIRCUITPY_TOUCHIO)
@@ -299,12 +264,12 @@ endif
CFLAGS += -DCIRCUITPY_UHEAP=$(CIRCUITPY_UHEAP)
ifndef CIRCUITPY_USB_HID
-CIRCUITPY_USB_HID = $(CIRCUITPY_DEFAULT_BUILD)
+CIRCUITPY_USB_HID = 1
endif
CFLAGS += -DCIRCUITPY_USB_HID=$(CIRCUITPY_USB_HID)
ifndef CIRCUITPY_USB_MIDI
-CIRCUITPY_USB_MIDI = $(CIRCUITPY_DEFAULT_BUILD)
+CIRCUITPY_USB_MIDI = 1
endif
CFLAGS += -DCIRCUITPY_USB_MIDI=$(CIRCUITPY_USB_MIDI)
@@ -354,6 +319,7 @@ CFLAGS += -DCIRCUITPY_SERIAL_UART=$(CIRCUITPY_SERIAL_UART)
ifndef CIRCUITPY_ULAB
CIRCUITPY_ULAB = $(CIRCUITPY_FULL_BUILD)
endif
+CFLAGS += -DCIRCUITPY_ULAB=$(CIRCUITPY_ULAB)
# Enabled micropython.native decorator (experimental)
ifndef CIRCUITPY_ENABLE_MPY_NATIVE