File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -279,6 +279,28 @@ $(BUILD)/frozen-files.c: $(shell find $(FROZEN_DIR) -type f)
279279 $(Q )$(PYTHON ) $(MAKE_FROZEN ) $(FROZEN_DIR ) > $@
280280endif
281281
282+ ifneq ($(FROZEN_MPY_DIR ) ,)
283+ # To use frozen bytecode, put your .py files in a subdirectory (eg frozen/) and
284+ # then invoke make with FROZEN_MPY_DIR=frozen (be sure to build from scratch).
285+ FROZEN_MPY_FILES := $(wildcard $(FROZEN_MPY_DIR ) /* .py)
286+ CFLAGS += -DMICROPY_QSTR_EXTRA_POOL=mp_qstr_frozen_const_pool
287+ CFLAGS += -DMICROPY_MODULE_FROZEN_MPY
288+ OBJ += $(BUILD ) /$(FROZEN_MPY_DIR ) /frozen_mpy.o
289+ MPY_CROSS = ../mpy-cross/mpy-cross
290+ MPY_TOOL = ../tools/mpy-tool.py
291+
292+ $(BUILD ) /$(FROZEN_MPY_DIR ) /% .mpy : $(FROZEN_MPY_DIR ) /% .py
293+ @$(ECHO ) " MPY $<"
294+ $(Q )$(MPY_CROSS ) -o $@ $^
295+
296+ $(BUILD ) /$(FROZEN_MPY_DIR ) /frozen_mpy.c : $(addprefix $(BUILD ) /,$(FROZEN_MPY_FILES:.py=.mpy ) )
297+ @$(ECHO ) " Creating $@ "
298+ $(Q )$(PYTHON ) $(MPY_TOOL ) -f -q $(BUILD ) /genhdr/qstrdefs.preprocessed.h $^ > $@
299+
300+ $(BUILD ) /$(FROZEN_MPY_DIR ) /frozen_mpy.o : $(BUILD ) /$(FROZEN_MPY_DIR ) /frozen_mpy.c
301+ $(call compile_c)
302+ endif
303+
282304.PHONY : deploy
283305
284306deploy : $(BUILD ) /firmware.dfu
You can’t perform that action at this time.
0 commit comments