BUILD = ../target/micropython
include micropython/py/mkenv.mk
QSTR_DEFS = src/qstrdefsport.h
include $(TOP)/py/py.mk
ifeq ($(TARGET), thumbv7m-linux-eabi)
CROSS_COMPILE = arm-none-eabi-
endif
ifeq ($(TARGET), thumbv7m-none-eabi)
CROSS_COMPILE = arm-none-eabi-
endif
ifeq ($(TARGET), thumbv7em-none-eabi)
CROSS_COMPILE = arm-none-eabi-
endif
ifeq ($(TARGET), thumbv7em-none-eabihf)
CROSS_COMPILE = arm-none-eabi-
endif
INC += -Isrc
INC += -I$(TOP)
INC += -I$(BUILD)
ifeq ($(TARGET), thumbv7m-linux-eabi)
CFLAGS_TARGET = -nostdlib -mthumb -march=armv7-m -mabi=aapcs-linux \
-fsingle-precision-constant -Wdouble-promotion
endif
ifeq ($(TARGET), thumbv7m-none-eabi)
CFLAGS_TARGET = -nostdlib -mthumb -march=armv7-m -mabi=aapcs-linux \
-fsingle-precision-constant -Wdouble-promotion
endif
ifeq ($(TARGET), thumbv7em-none-eabi)
CFLAGS_TARGET = -nostdlib -mthumb -march=armv7e-m -mabi=aapcs-linux \
-fsingle-precision-constant -Wdouble-promotion
endif
ifeq ($(TARGET), thumbv7em-none-eabihf)
CFLAGS_TARGET = -nostdlib -mthumb -march=armv7e-m -mfpu=fpv4-sp-d16 \
-mfloat-abi=hard -mabi=aapcs-linux -fsingle-precision-constant \
-Wdouble-promotion
endif
ifeq ($(TARGET), i686-unknown-linux-musl)
CFLAGS_TARGET = -m32
endif
CFLAGS = $(INC) -Wall -Werror -std=c99 $(CFLAGS_TARGET) $(COPT)
ifeq ($(DEBUG), 1)
CFLAGS += -O0 -ggdb
else
CFLAGS += -Os -DNDEBUG
endif
ifeq ($(CARGO_FEATURE_IO), 1)
CFLAGS += -DMICROPY_PY_IO=1
else
CFLAGS += -DMICROPY_PY_IO=0
endif
ifeq ($(CARGO_FEATURE_FILEIO), 1)
CFLAGS += -DMICROPY_PY_IO_FILEIO=1
else
CFLAGS += -DMICROPY_PY_IO_FILEIO=0
endif
SRC_C = \
src/main.c \
src/io.c \
OBJ = $(PY_O) $(addprefix $(BUILD)/, $(SRC_C:.c=.o))
SRC_QSTR += $(SRC_C)
mpconfigport.h: src/mpconfigport.h
include $(TOP)/py/mkrules.mk
LIBMICROPYTHON = $(BUILD)/libmicropython.a