Skip to content
Snippets Groups Projects
Select Git revision
  • db63660c19c9080d040ad48a5fb2a2ab233b7ede
  • wip-bootstrap default
  • dualcore
  • ch3/leds
  • ch3/time
  • master
6 results

Makefile

Blame
  • Makefile 2.51 KiB
    include ../py/mkenv.mk
    -include mpconfigport.mk
    
    # define main target
    PROG = micropython
    
    # qstr definitions (must come before including py.mk)
    QSTR_DEFS = qstrdefsport.h
    
    # OS name, for simple autoconfig
    UNAME_S := $(shell uname -s)
    
    # include py core make definitions
    include ../py/py.mk
    
    INC =  -I.
    INC += -I$(PY_SRC)
    INC += -I$(BUILD)
    
    # compiler settings
    CWARN = -Wall -Werror -Wno-error=cpp
    CFLAGS = $(INC) $(CWARN) -ansi -std=gnu99 -DUNIX $(CFLAGS_MOD) $(COPT) $(CFLAGS_EXTRA)
    
    # Debugging/Optimization
    ifdef DEBUG
    CFLAGS += -g
    COPT = -O0
    else
    COPT = -Os #-DNDEBUG
    endif
    
    LDFLAGS = $(LDFLAGS_MOD) -lm -Wl,-Map=$@.map,--cref $(LDFLAGS_EXTRA)
    
    ifeq ($(MICROPY_FORCE_32BIT),1)
    CFLAGS += -m32
    LDFLAGS += -m32
    ifeq ($(MICROPY_PY_FFI),1)
    ifeq ($(UNAME_S),Linux)
    CFLAGS_MOD += -I/usr/include/i686-linux-gnu
    endif
    endif
    endif
    
    ifeq ($(MICROPY_USE_READLINE),1)
    CFLAGS_MOD += -DMICROPY_USE_READLINE=1
    LDFLAGS_MOD += -lreadline
    # the following is needed for BSD
    #LDFLAGS_MOD += -ltermcap
    endif
    ifeq ($(MICROPY_PY_TIME),1)
    CFLAGS_MOD += -DMICROPY_PY_TIME=1
    SRC_MOD += modtime.c
    endif
    ifeq ($(MICROPY_PY_TERMIOS),1)
    CFLAGS_MOD += -DMICROPY_PY_TERMIOS=1
    SRC_MOD += modtermios.c
    endif
    ifeq ($(MICROPY_PY_FFI),1)
    LIBFFI_LDFLAGS_MOD := $(shell pkg-config --libs libffi)
    LIBFFI_CFLAGS_MOD := $(shell pkg-config --cflags libffi)
    CFLAGS_MOD += $(LIBFFI_CFLAGS_MOD) -DMICROPY_PY_FFI=1
    ifeq ($(UNAME_S),Linux)
    LDFLAGS_MOD += -ldl
    endif
    LDFLAGS_MOD += $(LIBFFI_LDFLAGS_MOD)
    SRC_MOD += modffi.c
    endif
    
    
    # source files