diff --git a/examples/rules.mk b/examples/rules.mk index 4af2f2be4..861973284 100644 --- a/examples/rules.mk +++ b/examples/rules.mk @@ -169,6 +169,7 @@ flash-stlink: $(BUILD)/$(PROJECT).elf STM32_Programmer_CLI --connect port=swd --write $< --go # flash with pyocd +PYOCD_OPTION ?= flash-pyocd: $(BUILD)/$(PROJECT).hex pyocd flash -t $(PYOCD_TARGET) $(PYOCD_OPTION) $< pyocd reset -t $(PYOCD_TARGET) diff --git a/hw/bsp/samd21/boards/curiosity_nano/.skip.device.net_lwip_webserver b/hw/bsp/samd21/boards/curiosity_nano/.skip.device.net_lwip_webserver new file mode 100644 index 000000000..e69de29bb diff --git a/hw/bsp/samd21/boards/curiosity_nano/board.mk b/hw/bsp/samd21/boards/curiosity_nano/board.mk index 767788b86..ec3217f89 100644 --- a/hw/bsp/samd21/boards/curiosity_nano/board.mk +++ b/hw/bsp/samd21/boards/curiosity_nano/board.mk @@ -1,4 +1,4 @@ -CFLAGS += -D__SAMD21G17A__ +CFLAGS += -D__SAMD21G17A__ -DCFG_EXAMPLE_MSC_READONLY # All source paths should be relative to the top level. LD_FILE = $(BOARD_PATH)/samd21g17a_flash.ld diff --git a/tools/build_family.py b/tools/build_family.py index c46781904..4195c259b 100644 --- a/tools/build_family.py +++ b/tools/build_family.py @@ -98,21 +98,28 @@ def build_size(example, board): def skip_example(example, board): ex_dir = 'examples/' + example + # Check if example is skipped by family or board directory + skip_file = ".skip." + example.replace('/', '.'); + if os.path.isfile("hw/bsp/{}/{}".format(family, skip_file)) or os.path.isfile("hw/bsp/{}/boards/{}/{}".format(family, board, skip_file)): + return 1 + + # Otherwise check if mcu is excluded by example directory + # family CMake - board_mk = 'hw/bsp/{}/family.cmake'.format(family) + family_mk = 'hw/bsp/{}/family.cmake'.format(family) # family.mk - if not os.path.exists(board_mk): - board_mk = 'hw/bsp/{}/family.mk'.format(family) + if not os.path.exists(family_mk): + family_mk = 'hw/bsp/{}/family.mk'.format(family) - with open(board_mk) as mk: + with open(family_mk) as mk: mk_contents = mk.read() # Skip all OPT_MCU_NONE these are WIP port if 'CFG_TUSB_MCU=OPT_MCU_NONE' in mk_contents: return 1 - # Skip if CFG_TUSB_MCU in board.mk to match skip file + # Skip if CFG_TUSB_MCU in family.mk to match skip file for skip_file in glob.iglob(ex_dir + '/.skip.MCU_*'): mcu_cflag = 'CFG_TUSB_MCU=OPT_' + os.path.basename(skip_file).split('.')[2] if mcu_cflag in mk_contents: