70 lines
1.9 KiB
PHP
70 lines
1.9 KiB
PHP
|
|
||
|
FREERTOS_DIR := $(TOP)/PLAT/os/freertos
|
||
|
|
||
|
|
||
|
CFLAGS_INC += -I$(TOP)/PLAT/os/freertos/inc \
|
||
|
-I$(TOP)/PLAT/os/freertos/CMSIS/common/inc \
|
||
|
-I$(TOP)/PLAT/os/freertos/CMSIS/$(CORE)/inc \
|
||
|
-I$(TOP)/PLAT/os/freertos/portable/mem/tlsf
|
||
|
|
||
|
ifeq ($(BUILD_OS),y)
|
||
|
FREERTOS_SRC_DIRS += $(FREERTOS_DIR)/src \
|
||
|
$(FREERTOS_DIR)/CMSIS/common/src \
|
||
|
$(FREERTOS_DIR)/CMSIS/$(CORE)/src
|
||
|
|
||
|
CFLAGS_DEFS += -DFEATURE_OS_ENABLE
|
||
|
CFLAGS_DEFS += -DFEATURE_FREERTOS_ENABLE
|
||
|
|
||
|
ifeq ($(TOOLCHAIN),ARMCC)
|
||
|
FREERTOS_SRC_DIRS += $(FREERTOS_DIR)/portable/keil \
|
||
|
$(FREERTOS_DIR)/portable/mem/tlsf
|
||
|
endif
|
||
|
|
||
|
ifeq ($(TOOLCHAIN),GCC)
|
||
|
FREERTOS_SRC_DIRS += $(FREERTOS_DIR)/portable/gcc \
|
||
|
$(FREERTOS_DIR)/portable/mem/tlsf
|
||
|
CFLAGS += -DconfigUSE_NEWLIB_REENTRANT=1
|
||
|
LDFLAGS += -Wl,--wrap=_malloc_r -Wl,--wrap=_free_r -Wl,--wrap=_realloc_r
|
||
|
endif
|
||
|
|
||
|
FREERTOS_CSRC = $(foreach dir, $(FREERTOS_SRC_DIRS), $(wildcard $(dir)/*.c))
|
||
|
FREERTOS_CFILES = $(filter-out $(FREERTOS_EXCLUDE_FILES), $(FREERTOS_CSRC))
|
||
|
FREERTOS_COBJSTEMP := $(patsubst %.c, %.o, $(FREERTOS_CFILES))
|
||
|
FREERTOS_COBJSTEMP :=$(subst $(FREERTOS_DIR),PLAT/os/freertos,$(FREERTOS_COBJSTEMP))
|
||
|
FREERTOS_COBJS := $(addprefix $(BUILDDIR)/, $(FREERTOS_COBJSTEMP))
|
||
|
FREERTOS_PPFILES := $(patsubst %.o, %.pp, $(FREERTOS_COBJS))
|
||
|
PPFILES += $(FREERTOS_PPFILES)
|
||
|
|
||
|
ifneq ($(MAKECMDGOALS), unilog)
|
||
|
-include $(FREERTOS_COBJS:.o=.d)
|
||
|
endif
|
||
|
-include $(FREERTOS_COBJS:.o=.dd)
|
||
|
|
||
|
|
||
|
ifeq ($(TOOLCHAIN),GCC)
|
||
|
|
||
|
CFLAGS_INC += -I $(TOP)/PLAT/os/freertos/portable/gcc
|
||
|
|
||
|
|
||
|
lib-y += libfreertos.a
|
||
|
|
||
|
$(BUILDDIR)/lib/libfreertos.a: $(FREERTOS_COBJS)
|
||
|
@mkdir -p $(dir $@)
|
||
|
$(ECHO) AR $@
|
||
|
$(Q)$(AR) -cr $@ $^
|
||
|
|
||
|
endif
|
||
|
|
||
|
ifeq ($(TOOLCHAIN),ARMCC)
|
||
|
|
||
|
CFLAGS_INC += -I $(TOP)/PLAT/os/freertos/portable/keil
|
||
|
|
||
|
lib-y += libfreertos.lib
|
||
|
|
||
|
$(BUILDDIR)/lib/libfreertos.lib: $(FREERTOS_COBJS)
|
||
|
@mkdir -p $(dir $@)
|
||
|
$(ECHO) AR $@
|
||
|
$(Q)$(AR) $(ARFLAGS) $@ $^
|
||
|
|
||
|
endif
|
||
|
endif
|