list extensions instead of macros names ("bin,uf2" not BIN_UF2)
the modules_support_matrix usees a dictionnary per board instead of a list optionally include the frozen modules URLs in it
This commit is contained in:
parent
d021d9ae4a
commit
eabe8b971a
4
conf.py
4
conf.py
|
@ -52,8 +52,8 @@ subprocess.check_output(["make", "stubs"])
|
||||||
#modules_support_matrix = shared_bindings_matrix.support_matrix_excluded_boards()
|
#modules_support_matrix = shared_bindings_matrix.support_matrix_excluded_boards()
|
||||||
modules_support_matrix = shared_bindings_matrix.support_matrix_by_board()
|
modules_support_matrix = shared_bindings_matrix.support_matrix_by_board()
|
||||||
modules_support_matrix_reverse = defaultdict(list)
|
modules_support_matrix_reverse = defaultdict(list)
|
||||||
for board, modules in modules_support_matrix.items():
|
for board, matrix_info in modules_support_matrix.items():
|
||||||
for module in modules[0]:
|
for module in matrix_info["modules"]:
|
||||||
modules_support_matrix_reverse[module].append(board)
|
modules_support_matrix_reverse[module].append(board)
|
||||||
|
|
||||||
modules_support_matrix_reverse = dict(
|
modules_support_matrix_reverse = dict(
|
||||||
|
|
|
@ -204,7 +204,7 @@ def get_repository_url(directory):
|
||||||
repository_urls[directory] = path
|
repository_urls[directory] = path
|
||||||
return path
|
return path
|
||||||
|
|
||||||
def frozen_modules_from_dirs(frozen_mpy_dirs):
|
def frozen_modules_from_dirs(frozen_mpy_dirs, withurl):
|
||||||
"""
|
"""
|
||||||
Go through the list of frozen directories and extract the python modules.
|
Go through the list of frozen directories and extract the python modules.
|
||||||
Paths are of the type:
|
Paths are of the type:
|
||||||
|
@ -221,10 +221,16 @@ def frozen_modules_from_dirs(frozen_mpy_dirs):
|
||||||
if sub.name in frozen_excludes:
|
if sub.name in frozen_excludes:
|
||||||
continue
|
continue
|
||||||
if sub.name.endswith(".py"):
|
if sub.name.endswith(".py"):
|
||||||
|
if withurl:
|
||||||
frozen_modules.append((sub.name[:-3], url_repository))
|
frozen_modules.append((sub.name[:-3], url_repository))
|
||||||
|
else:
|
||||||
|
frozen_modules.append(sub.name[:-3])
|
||||||
continue
|
continue
|
||||||
if next(sub.glob("**/*.py"), None): # tests if not empty
|
if next(sub.glob("**/*.py"), None): # tests if not empty
|
||||||
|
if withurl:
|
||||||
frozen_modules.append((sub.name, url_repository))
|
frozen_modules.append((sub.name, url_repository))
|
||||||
|
else:
|
||||||
|
frozen_modules.append(sub.name)
|
||||||
return frozen_modules
|
return frozen_modules
|
||||||
|
|
||||||
def lookup_setting(settings, key, default=''):
|
def lookup_setting(settings, key, default=''):
|
||||||
|
@ -244,7 +250,7 @@ def all_ports_all_boards(ports=SUPPORTED_PORTS):
|
||||||
continue
|
continue
|
||||||
yield (port, entry)
|
yield (port, entry)
|
||||||
|
|
||||||
def support_matrix_by_board(use_branded_name=True):
|
def support_matrix_by_board(use_branded_name=True, withurl=True):
|
||||||
""" Compiles a list of the available core modules available for each
|
""" Compiles a list of the available core modules available for each
|
||||||
board.
|
board.
|
||||||
"""
|
"""
|
||||||
|
@ -275,17 +281,21 @@ def support_matrix_by_board(use_branded_name=True):
|
||||||
if "CIRCUITPY_BUILD_EXTENSIONS" in settings:
|
if "CIRCUITPY_BUILD_EXTENSIONS" in settings:
|
||||||
board_extensions = settings["CIRCUITPY_BUILD_EXTENSIONS"]
|
board_extensions = settings["CIRCUITPY_BUILD_EXTENSIONS"]
|
||||||
else:
|
else:
|
||||||
raise "Board extensions undefined."
|
raise OSError(f"Board extensions undefined: {board_name}.")
|
||||||
|
|
||||||
frozen_modules = []
|
frozen_modules = []
|
||||||
if "FROZEN_MPY_DIRS" in settings:
|
if "FROZEN_MPY_DIRS" in settings:
|
||||||
frozen_modules = frozen_modules_from_dirs(settings["FROZEN_MPY_DIRS"])
|
frozen_modules = frozen_modules_from_dirs(settings["FROZEN_MPY_DIRS"], withurl)
|
||||||
if frozen_modules:
|
if frozen_modules:
|
||||||
frozen_modules.sort()
|
frozen_modules.sort()
|
||||||
|
|
||||||
# generate alias boards too
|
# generate alias boards too
|
||||||
board_matrix = [(
|
board_matrix = [(
|
||||||
board_name, (board_modules, frozen_modules, board_extensions)
|
board_name, {
|
||||||
|
"modules": board_modules,
|
||||||
|
"frozen_libraries": frozen_modules,
|
||||||
|
"extensions": board_extensions,
|
||||||
|
}
|
||||||
)]
|
)]
|
||||||
if entry.name in aliases_by_board:
|
if entry.name in aliases_by_board:
|
||||||
for alias in aliases_by_board[entry.name]:
|
for alias in aliases_by_board[entry.name]:
|
||||||
|
@ -295,7 +305,11 @@ def support_matrix_by_board(use_branded_name=True):
|
||||||
else:
|
else:
|
||||||
alias = alias.replace("_"," ").title()
|
alias = alias.replace("_"," ").title()
|
||||||
board_matrix.append((
|
board_matrix.append((
|
||||||
alias, (board_modules, frozen_modules, board_extensions),
|
alias, {
|
||||||
|
"modules": board_modules,
|
||||||
|
"frozen_libraries": frozen_modules,
|
||||||
|
"extensions": board_extensions,
|
||||||
|
},
|
||||||
))
|
))
|
||||||
|
|
||||||
return board_matrix # this is now a list of (board,modules)
|
return board_matrix # this is now a list of (board,modules)
|
||||||
|
@ -303,7 +317,7 @@ def support_matrix_by_board(use_branded_name=True):
|
||||||
executor = ThreadPoolExecutor(max_workers=os.cpu_count())
|
executor = ThreadPoolExecutor(max_workers=os.cpu_count())
|
||||||
mapped_exec = executor.map(support_matrix, all_ports_all_boards())
|
mapped_exec = executor.map(support_matrix, all_ports_all_boards())
|
||||||
# flatmap with comprehensions
|
# flatmap with comprehensions
|
||||||
boards = dict(sorted([board for matrix in mapped_exec for board in matrix]))
|
boards = dict(sorted([board for matrix in mapped_exec for board in matrix], key=lambda x: x[0]))
|
||||||
|
|
||||||
return boards
|
return boards
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,7 @@ USB_MANUFACTURER = "Arduino"
|
||||||
CHIP_VARIANT = SAMD21G18A
|
CHIP_VARIANT = SAMD21G18A
|
||||||
CHIP_FAMILY = samd21
|
CHIP_FAMILY = samd21
|
||||||
|
|
||||||
CIRCUITPY_BUILD_EXTENSIONS = BIN_UF2
|
CIRCUITPY_BUILD_EXTENSIONS = bin,uf2
|
||||||
|
|
||||||
INTERNAL_FLASH_FILESYSTEM = 1
|
INTERNAL_FLASH_FILESYSTEM = 1
|
||||||
LONGINT_IMPL = NONE
|
LONGINT_IMPL = NONE
|
||||||
|
|
|
@ -6,7 +6,7 @@ USB_MANUFACTURER = "Arduino"
|
||||||
CHIP_VARIANT = SAMD21G18A
|
CHIP_VARIANT = SAMD21G18A
|
||||||
CHIP_FAMILY = samd21
|
CHIP_FAMILY = samd21
|
||||||
|
|
||||||
CIRCUITPY_BUILD_EXTENSIONS = BIN_UF2
|
CIRCUITPY_BUILD_EXTENSIONS = bin,uf2
|
||||||
|
|
||||||
INTERNAL_FLASH_FILESYSTEM = 1
|
INTERNAL_FLASH_FILESYSTEM = 1
|
||||||
LONGINT_IMPL = NONE
|
LONGINT_IMPL = NONE
|
||||||
|
|
|
@ -6,7 +6,7 @@ USB_MANUFACTURER = "Arduino"
|
||||||
CHIP_VARIANT = SAMD21G18A
|
CHIP_VARIANT = SAMD21G18A
|
||||||
CHIP_FAMILY = samd21
|
CHIP_FAMILY = samd21
|
||||||
|
|
||||||
CIRCUITPY_BUILD_EXTENSIONS = BIN_UF2
|
CIRCUITPY_BUILD_EXTENSIONS = bin,uf2
|
||||||
|
|
||||||
INTERNAL_FLASH_FILESYSTEM = 1
|
INTERNAL_FLASH_FILESYSTEM = 1
|
||||||
LONGINT_IMPL = NONE
|
LONGINT_IMPL = NONE
|
||||||
|
|
|
@ -6,7 +6,7 @@ USB_MANUFACTURER = "Arduino"
|
||||||
CHIP_VARIANT = SAMD21G18A
|
CHIP_VARIANT = SAMD21G18A
|
||||||
CHIP_FAMILY = samd21
|
CHIP_FAMILY = samd21
|
||||||
|
|
||||||
CIRCUITPY_BUILD_EXTENSIONS = BIN_UF2
|
CIRCUITPY_BUILD_EXTENSIONS = bin,uf2
|
||||||
|
|
||||||
INTERNAL_FLASH_FILESYSTEM = 1
|
INTERNAL_FLASH_FILESYSTEM = 1
|
||||||
LONGINT_IMPL = NONE
|
LONGINT_IMPL = NONE
|
||||||
|
|
|
@ -6,7 +6,7 @@ USB_MANUFACTURER = "Adafruit Industries LLC"
|
||||||
CHIP_VARIANT = SAMD21G18A
|
CHIP_VARIANT = SAMD21G18A
|
||||||
CHIP_FAMILY = samd21
|
CHIP_FAMILY = samd21
|
||||||
|
|
||||||
CIRCUITPY_BUILD_EXTENSIONS = BIN_UF2
|
CIRCUITPY_BUILD_EXTENSIONS = bin,uf2
|
||||||
|
|
||||||
INTERNAL_FLASH_FILESYSTEM = 1
|
INTERNAL_FLASH_FILESYSTEM = 1
|
||||||
LONGINT_IMPL = NONE
|
LONGINT_IMPL = NONE
|
||||||
|
|
|
@ -6,7 +6,7 @@ USB_MANUFACTURER = "Adafruit Industries LLC"
|
||||||
CHIP_VARIANT = SAMD21G18A
|
CHIP_VARIANT = SAMD21G18A
|
||||||
CHIP_FAMILY = samd21
|
CHIP_FAMILY = samd21
|
||||||
|
|
||||||
CIRCUITPY_BUILD_EXTENSIONS = BIN_UF2
|
CIRCUITPY_BUILD_EXTENSIONS = bin,uf2
|
||||||
|
|
||||||
INTERNAL_FLASH_FILESYSTEM = 1
|
INTERNAL_FLASH_FILESYSTEM = 1
|
||||||
LONGINT_IMPL = NONE
|
LONGINT_IMPL = NONE
|
||||||
|
|
|
@ -6,7 +6,7 @@ USB_MANUFACTURER = "Adafruit Industries LLC"
|
||||||
CHIP_VARIANT = SAMD21G18A
|
CHIP_VARIANT = SAMD21G18A
|
||||||
CHIP_FAMILY = samd21
|
CHIP_FAMILY = samd21
|
||||||
|
|
||||||
CIRCUITPY_BUILD_EXTENSIONS = BIN_UF2
|
CIRCUITPY_BUILD_EXTENSIONS = bin,uf2
|
||||||
|
|
||||||
INTERNAL_FLASH_FILESYSTEM = 1
|
INTERNAL_FLASH_FILESYSTEM = 1
|
||||||
LONGINT_IMPL = NONE
|
LONGINT_IMPL = NONE
|
||||||
|
|
|
@ -6,7 +6,7 @@ USB_MANUFACTURER = "Adafruit Industries LLC"
|
||||||
CHIP_VARIANT = SAMD21G18A
|
CHIP_VARIANT = SAMD21G18A
|
||||||
CHIP_FAMILY = samd21
|
CHIP_FAMILY = samd21
|
||||||
|
|
||||||
CIRCUITPY_BUILD_EXTENSIONS = BIN_UF2
|
CIRCUITPY_BUILD_EXTENSIONS = bin,uf2
|
||||||
|
|
||||||
INTERNAL_FLASH_FILESYSTEM = 1
|
INTERNAL_FLASH_FILESYSTEM = 1
|
||||||
LONGINT_IMPL = NONE
|
LONGINT_IMPL = NONE
|
||||||
|
|
|
@ -6,7 +6,7 @@ USB_MANUFACTURER = "Itaca Innovation"
|
||||||
CHIP_VARIANT = SAMD21E18A
|
CHIP_VARIANT = SAMD21E18A
|
||||||
CHIP_FAMILY = samd21
|
CHIP_FAMILY = samd21
|
||||||
|
|
||||||
CIRCUITPY_BUILD_EXTENSIONS = BIN_UF2
|
CIRCUITPY_BUILD_EXTENSIONS = bin,uf2
|
||||||
|
|
||||||
INTERNAL_FLASH_FILESYSTEM = 1
|
INTERNAL_FLASH_FILESYSTEM = 1
|
||||||
LONGINT_IMPL = NONE
|
LONGINT_IMPL = NONE
|
||||||
|
|
|
@ -134,4 +134,4 @@ CIRCUITPY_RGBMATRIX ?= $(CIRCUITPY_FRAMEBUFFERIO)
|
||||||
endif # same51
|
endif # same51
|
||||||
######################################################################
|
######################################################################
|
||||||
|
|
||||||
CIRCUITPY_BUILD_EXTENSIONS ?= BIN_UF2
|
CIRCUITPY_BUILD_EXTENSIONS ?= bin,uf2
|
||||||
|
|
|
@ -5,4 +5,4 @@ USB_MANUFACTURER = "Raspberry Pi"
|
||||||
|
|
||||||
CHIP_VARIANT = "bcm2835"
|
CHIP_VARIANT = "bcm2835"
|
||||||
|
|
||||||
CIRCUITPY_BUILD_EXTENSIONS = KERNEL_IMG
|
CIRCUITPY_BUILD_EXTENSIONS = disk.img.zip,kernel.img
|
||||||
|
|
|
@ -5,4 +5,4 @@ USB_MANUFACTURER = "Raspberry Pi"
|
||||||
|
|
||||||
CHIP_VARIANT = "bcm2835"
|
CHIP_VARIANT = "bcm2835"
|
||||||
|
|
||||||
CIRCUITPY_BUILD_EXTENSIONS = KERNEL_IMG
|
CIRCUITPY_BUILD_EXTENSIONS = disk.img.zip,kernel.img
|
||||||
|
|
|
@ -25,4 +25,4 @@ INTERNAL_FLASH_FILESYSTEM = 1
|
||||||
USB_NUM_ENDPOINT_PAIRS = 8
|
USB_NUM_ENDPOINT_PAIRS = 8
|
||||||
USB_HIGHSPEED = 1
|
USB_HIGHSPEED = 1
|
||||||
|
|
||||||
CIRCUITPY_BUILD_EXTENSIONS ?= KERNEL8_IMG
|
CIRCUITPY_BUILD_EXTENSIONS ?= disk.img.zip,kernel8.img
|
||||||
|
|
|
@ -26,4 +26,4 @@ CIRCUITPY_USB_HID = 0
|
||||||
CIRCUITPY_USB_MIDI = 0
|
CIRCUITPY_USB_MIDI = 0
|
||||||
INTERNAL_LIBM = 1
|
INTERNAL_LIBM = 1
|
||||||
|
|
||||||
CIRCUITPY_BUILD_EXTENSIONS ?= SPK
|
CIRCUITPY_BUILD_EXTENSIONS ?= spk
|
||||||
|
|
|
@ -40,7 +40,7 @@ CIRCUITPY_PARALLELDISPLAY = 0
|
||||||
# Protomatter needs to support ESP32.
|
# Protomatter needs to support ESP32.
|
||||||
CIRCUITPY_RGBMATRIX = 0
|
CIRCUITPY_RGBMATRIX = 0
|
||||||
CIRCUITPY_USB = 0
|
CIRCUITPY_USB = 0
|
||||||
CIRCUITPY_BUILD_EXTENSIONS ?= BIN
|
CIRCUITPY_BUILD_EXTENSIONS ?= bin
|
||||||
|
|
||||||
else ifeq ($(IDF_TARGET),esp32c3)
|
else ifeq ($(IDF_TARGET),esp32c3)
|
||||||
CIRCUITPY_AESIO = 0
|
CIRCUITPY_AESIO = 0
|
||||||
|
@ -58,7 +58,7 @@ CIRCUITPY_ROTARYIO = 0
|
||||||
CIRCUITPY_TOUCHIO ?= 1
|
CIRCUITPY_TOUCHIO ?= 1
|
||||||
CIRCUITPY_TOUCHIO_USE_NATIVE = 0
|
CIRCUITPY_TOUCHIO_USE_NATIVE = 0
|
||||||
CIRCUITPY_USB = 0
|
CIRCUITPY_USB = 0
|
||||||
CIRCUITPY_BUILD_EXTENSIONS ?= BIN
|
CIRCUITPY_BUILD_EXTENSIONS ?= bin
|
||||||
|
|
||||||
else ifeq ($(IDF_TARGET),esp32s3)
|
else ifeq ($(IDF_TARGET),esp32s3)
|
||||||
CIRCUITPY_BLEIO = 1
|
CIRCUITPY_BLEIO = 1
|
||||||
|
@ -72,7 +72,7 @@ CIRCUITPY_BLEIO = 0
|
||||||
CIRCUITPY_BLEIO_HCI = 0
|
CIRCUITPY_BLEIO_HCI = 0
|
||||||
endif
|
endif
|
||||||
|
|
||||||
CIRCUITPY_BUILD_EXTENSIONS ?= BIN_UF2
|
CIRCUITPY_BUILD_EXTENSIONS ?= bin,uf2
|
||||||
|
|
||||||
# From ESP32-S2/S3 Technical Reference Manual:
|
# From ESP32-S2/S3 Technical Reference Manual:
|
||||||
#
|
#
|
||||||
|
|
|
@ -30,4 +30,4 @@ CIRCUITPY_SDCARDIO = 0
|
||||||
CIRCUITPY_USB_HID = 1
|
CIRCUITPY_USB_HID = 1
|
||||||
CIRCUITPY_USB_MIDI = 1
|
CIRCUITPY_USB_MIDI = 1
|
||||||
|
|
||||||
CIRCUITPY_BUILD_EXTENSIONS ?= DFU
|
CIRCUITPY_BUILD_EXTENSIONS ?= dfu
|
||||||
|
|
|
@ -22,4 +22,4 @@ CIRCUITPY_ROTARYIO = 0
|
||||||
CIRCUITPY_USB_MIDI = 1
|
CIRCUITPY_USB_MIDI = 1
|
||||||
LONGINT_IMPL = MPZ
|
LONGINT_IMPL = MPZ
|
||||||
|
|
||||||
CIRCUITPY_BUILD_EXTENSIONS ?= HEX_UF2
|
CIRCUITPY_BUILD_EXTENSIONS ?= hex,uf2
|
||||||
|
|
|
@ -5,7 +5,7 @@ USB_MANUFACTURER = "Electronut Labs"
|
||||||
|
|
||||||
MCU_CHIP = nrf52840
|
MCU_CHIP = nrf52840
|
||||||
|
|
||||||
CIRCUITPY_BUILD_EXTENSIONS = HEX
|
CIRCUITPY_BUILD_EXTENSIONS = hex
|
||||||
|
|
||||||
INTERNAL_FLASH_FILESYSTEM = 1
|
INTERNAL_FLASH_FILESYSTEM = 1
|
||||||
CIRCUITPY_AUDIOIO = 0
|
CIRCUITPY_AUDIOIO = 0
|
||||||
|
|
|
@ -5,7 +5,7 @@ USB_MANUFACTURER = "makerdiary"
|
||||||
|
|
||||||
MCU_CHIP = nrf52840
|
MCU_CHIP = nrf52840
|
||||||
|
|
||||||
CIRCUITPY_BUILD_EXTENSIONS = HEX
|
CIRCUITPY_BUILD_EXTENSIONS = hex
|
||||||
|
|
||||||
QSPI_FLASH_FILESYSTEM = 1
|
QSPI_FLASH_FILESYSTEM = 1
|
||||||
EXTERNAL_FLASH_DEVICES = "MX25R6435F"
|
EXTERNAL_FLASH_DEVICES = "MX25R6435F"
|
||||||
|
|
|
@ -5,6 +5,6 @@ USB_MANUFACTURER = "makerdiary"
|
||||||
|
|
||||||
MCU_CHIP = nrf52840
|
MCU_CHIP = nrf52840
|
||||||
|
|
||||||
CIRCUITPY_BUILD_EXTENSIONS = HEX_UF2
|
CIRCUITPY_BUILD_EXTENSIONS = hex,uf2
|
||||||
|
|
||||||
INTERNAL_FLASH_FILESYSTEM = 1
|
INTERNAL_FLASH_FILESYSTEM = 1
|
||||||
|
|
|
@ -3,7 +3,7 @@ CIRCUITPY_CREATION_ID = 0x80D8
|
||||||
|
|
||||||
MCU_CHIP = nrf52833
|
MCU_CHIP = nrf52833
|
||||||
|
|
||||||
CIRCUITPY_BUILD_EXTENSIONS = COMBINED_HEX
|
CIRCUITPY_BUILD_EXTENSIONS = combined.hex
|
||||||
|
|
||||||
INTERNAL_FLASH_FILESYSTEM = 1
|
INTERNAL_FLASH_FILESYSTEM = 1
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,7 @@ USB_MANUFACTURER = "Nordic Semiconductor"
|
||||||
|
|
||||||
MCU_CHIP = nrf52840
|
MCU_CHIP = nrf52840
|
||||||
|
|
||||||
CIRCUITPY_BUILD_EXTENSIONS = BIN_UF2
|
CIRCUITPY_BUILD_EXTENSIONS = bin,uf2
|
||||||
|
|
||||||
QSPI_FLASH_FILESYSTEM = 1
|
QSPI_FLASH_FILESYSTEM = 1
|
||||||
EXTERNAL_FLASH_DEVICES = "MX25R6435F"
|
EXTERNAL_FLASH_DEVICES = "MX25R6435F"
|
||||||
|
|
|
@ -5,6 +5,6 @@ USB_MANUFACTURER = "Nordic Semiconductor"
|
||||||
|
|
||||||
MCU_CHIP = nrf52840
|
MCU_CHIP = nrf52840
|
||||||
|
|
||||||
CIRCUITPY_BUILD_EXTENSIONS = BIN_UF2
|
CIRCUITPY_BUILD_EXTENSIONS = bin,uf2
|
||||||
|
|
||||||
INTERNAL_FLASH_FILESYSTEM = 1
|
INTERNAL_FLASH_FILESYSTEM = 1
|
||||||
|
|
|
@ -4,7 +4,7 @@ LD_TEMPLATE_FILE = boards/common.template.ld
|
||||||
|
|
||||||
INTERNAL_LIBM = 1
|
INTERNAL_LIBM = 1
|
||||||
|
|
||||||
CIRCUITPY_BUILD_EXTENSIONS ?= UF2
|
CIRCUITPY_BUILD_EXTENSIONS ?= uf2
|
||||||
|
|
||||||
# Number of USB endpoint pairs.
|
# Number of USB endpoint pairs.
|
||||||
USB_NUM_ENDPOINT_PAIRS = 8
|
USB_NUM_ENDPOINT_PAIRS = 8
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
# All raspberrypi ports have longints.
|
# All raspberrypi ports have longints.
|
||||||
LONGINT_IMPL = MPZ
|
LONGINT_IMPL = MPZ
|
||||||
CIRCUITPY_BUILD_EXTENSIONS ?= UF2
|
CIRCUITPY_BUILD_EXTENSIONS ?= uf2
|
||||||
CIRCUITPY_OPTIMIZE_PROPERTY_FLASH_SIZE ?= 1
|
CIRCUITPY_OPTIMIZE_PROPERTY_FLASH_SIZE ?= 1
|
||||||
|
|
||||||
CIRCUITPY_OPTIMIZE_PROPERTY_FLASH_SIZE ?= 1
|
CIRCUITPY_OPTIMIZE_PROPERTY_FLASH_SIZE ?= 1
|
||||||
|
|
|
@ -13,7 +13,7 @@ MCU_SERIES = F4
|
||||||
MCU_VARIANT = STM32F401xE
|
MCU_VARIANT = STM32F401xE
|
||||||
MCU_PACKAGE = LQFP64
|
MCU_PACKAGE = LQFP64
|
||||||
|
|
||||||
CIRCUITPY_BUILD_EXTENSIONS = UF2
|
CIRCUITPY_BUILD_EXTENSIONS = uf2
|
||||||
|
|
||||||
OPTIMIZATION_FLAGS = -Os
|
OPTIMIZATION_FLAGS = -Os
|
||||||
|
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
LONGINT_IMPL ?= MPZ
|
LONGINT_IMPL ?= MPZ
|
||||||
INTERNAL_LIBM ?= 1
|
INTERNAL_LIBM ?= 1
|
||||||
|
|
||||||
CIRCUITPY_BUILD_EXTENSIONS ?= BIN
|
CIRCUITPY_BUILD_EXTENSIONS ?= bin
|
||||||
|
|
||||||
ifeq ($(MCU_VARIANT),$(filter $(MCU_VARIANT),STM32F405xx STM32F407xx))
|
ifeq ($(MCU_VARIANT),$(filter $(MCU_VARIANT),STM32F405xx STM32F407xx))
|
||||||
CIRCUITPY_ALARM = 1
|
CIRCUITPY_ALARM = 1
|
||||||
|
|
|
@ -21,9 +21,9 @@ capable board, as well as each :term:`frozen module` included on it.
|
||||||
{% for key, value in support_matrix|dictsort %}
|
{% for key, value in support_matrix|dictsort %}
|
||||||
{{ '.. _' ~ key|replace(" ", "-") ~ ':' }}
|
{{ '.. _' ~ key|replace(" ", "-") ~ ':' }}
|
||||||
* - {{ key }}
|
* - {{ key }}
|
||||||
- {{ ':py:mod:`' ~ value[0]|join("`, :py:mod:`") ~ '`' }}
|
- {{ ':py:mod:`' ~ value.modules|join("`, :py:mod:`") ~ '`' }}
|
||||||
|
|
||||||
{% for module in value[1] %}\
|
{% for module in value.frozen_libraries %}\
|
||||||
{% if loop.index == 1 %}**Frozen Modules:** {% endif %}\
|
{% if loop.index == 1 %}**Frozen Modules:** {% endif %}\
|
||||||
{% if loop.index > 1 %}, {% endif %}\
|
{% if loop.index > 1 %}, {% endif %}\
|
||||||
{% if module[1] %}{{ '`' ~ module[0] ~ ' <' ~ module[1] ~ '>`__' }}\
|
{% if module[1] %}{{ '`' ~ module[0] ~ ' <' ~ module[1] ~ '>`__' }}\
|
||||||
|
|
|
@ -23,20 +23,6 @@ from shared_bindings_matrix import (
|
||||||
support_matrix_by_board,
|
support_matrix_by_board,
|
||||||
)
|
)
|
||||||
|
|
||||||
extensions_by_macro = {
|
|
||||||
"BIN": ("bin",),
|
|
||||||
"UF2": ("uf2",),
|
|
||||||
"BIN_UF2": ("bin", "uf2"),
|
|
||||||
"HEX": ("hex",),
|
|
||||||
"HEX_UF2": ("hex", "uf2"),
|
|
||||||
"SPK": ("spk",),
|
|
||||||
"DFU": ("dfu",),
|
|
||||||
"BIN_DFU": ("bin", "dfu"),
|
|
||||||
"COMBINED_HEX": ("combined.hex",),
|
|
||||||
"KERNEL8_IMG": ("disk.img.zip", "kernel8.img"),
|
|
||||||
"KERNEL_IMG": ("disk.img.zip", "kernel.img"),
|
|
||||||
}
|
|
||||||
|
|
||||||
language_allow_list = set(
|
language_allow_list = set(
|
||||||
[
|
[
|
||||||
"ID",
|
"ID",
|
||||||
|
@ -228,7 +214,7 @@ def generate_download_info():
|
||||||
|
|
||||||
languages = get_languages()
|
languages = get_languages()
|
||||||
|
|
||||||
support_matrix = support_matrix_by_board(use_branded_name=False)
|
support_matrix = support_matrix_by_board(use_branded_name=False, withurl=False)
|
||||||
|
|
||||||
new_stable = "-" not in new_tag
|
new_stable = "-" not in new_tag
|
||||||
|
|
||||||
|
@ -257,19 +243,17 @@ def generate_download_info():
|
||||||
board_info = board_mapping[board_id]
|
board_info = board_mapping[board_id]
|
||||||
for alias in [board_id] + board_info["aliases"]:
|
for alias in [board_id] + board_info["aliases"]:
|
||||||
alias_info = board_mapping[alias]
|
alias_info = board_mapping[alias]
|
||||||
modules_list = support_matrix[alias][0]
|
|
||||||
frozen_libraries = [frozen[0] for frozen in support_matrix[alias][1]]
|
|
||||||
extensions = support_matrix[alias][2]
|
|
||||||
if alias not in current_info:
|
if alias not in current_info:
|
||||||
changes["new_boards"].append(alias)
|
changes["new_boards"].append(alias)
|
||||||
current_info[alias] = {"downloads": 0, "versions": []}
|
current_info[alias] = {"downloads": 0, "versions": []}
|
||||||
new_version = {
|
new_version = {
|
||||||
"stable": new_stable,
|
"stable": new_stable,
|
||||||
"version": new_tag,
|
"version": new_tag,
|
||||||
"modules": support_matrix[alias][0],
|
|
||||||
"languages": languages,
|
"languages": languages,
|
||||||
"extensions": extensions,
|
# add modules, extensions, frozen_libraries explicitly
|
||||||
"frozen_libraries": frozen_libraries,
|
"modules": support_matrix[alias]["modules"],
|
||||||
|
"extensions": support_matrix[alias]["extensions"],
|
||||||
|
"frozen_libraries": support_matrix[alias]["frozen_libraries"],
|
||||||
}
|
}
|
||||||
current_info[alias]["downloads"] = alias_info["download_count"]
|
current_info[alias]["downloads"] = alias_info["download_count"]
|
||||||
current_info[alias]["versions"].append(new_version)
|
current_info[alias]["versions"].append(new_version)
|
||||||
|
@ -279,9 +263,10 @@ def generate_download_info():
|
||||||
if changes["new_release"] and user:
|
if changes["new_release"] and user:
|
||||||
create_pr(changes, current_info, git_info, user)
|
create_pr(changes, current_info, git_info, user)
|
||||||
else:
|
else:
|
||||||
print("No new release to update")
|
|
||||||
if "DEBUG" in os.environ:
|
if "DEBUG" in os.environ:
|
||||||
print(create_json(current_info).decode("utf8"))
|
print(create_json(current_info).decode("utf8"))
|
||||||
|
else:
|
||||||
|
print("No new release to update")
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
|
|
|
@ -86,8 +86,10 @@ for board in build_boards:
|
||||||
success = "\033[31mfailed\033[0m"
|
success = "\033[31mfailed\033[0m"
|
||||||
|
|
||||||
other_output = ""
|
other_output = ""
|
||||||
extensions_id = board_settings["CIRCUITPY_BUILD_EXTENSIONS"]
|
extensions = [
|
||||||
extensions = build_info.extensions_by_macro[extensions_id]
|
extension.strip()
|
||||||
|
for extension in board_settings["CIRCUITPY_BUILD_EXTENSIONS"].split(",")
|
||||||
|
]
|
||||||
|
|
||||||
for extension in extensions:
|
for extension in extensions:
|
||||||
temp_filename = "../ports/{port}/{build}/firmware.{extension}".format(
|
temp_filename = "../ports/{port}/{build}/firmware.{extension}".format(
|
||||||
|
|
Loading…
Reference in New Issue