ChibiOS/os/lib/lib.mk

46 lines
1.4 KiB
Makefile

# List of all the ChibiOS/LIB files, there is no need to remove the files
# from this list, you can disable parts of the kernel by editing chlibconf.h.
ifeq ($(USE_SMART_BUILD),yes)
# Configuration files directory
ifeq ($(CONFDIR),)
CONFDIR = .
endif
CHLIBCONF := $(strip $(shell cat $(CONFDIR)/chconf.h | egrep -e "\#define"))
LIBSRC :=
ifneq ($(findstring CH_CFG_USE_MAILBOXES TRUE,$(CHLIBCONF)),)
LIBSRC += $(CHIBIOS)/os/lib/src/chmboxes.c
endif
ifneq ($(findstring CH_CFG_USE_MEMCORE TRUE,$(CHLIBCONF)),)
LIBSRC += $(CHIBIOS)/os/lib/src/chmemcore.c
endif
ifneq ($(findstring CH_CFG_USE_HEAP TRUE,$(CHLIBCONF)),)
LIBSRC += $(CHIBIOS)/os/lib/src/chmemheaps.c
endif
ifneq ($(findstring CH_CFG_USE_MEMPOOLS TRUE,$(CHLIBCONF)),)
LIBSRC += $(CHIBIOS)/os/lib/src/chmempools.c
endif
ifneq ($(findstring CH_CFG_USE_PIPES TRUE,$(CHLIBCONF)),)
LIBSRC += $(CHIBIOS)/os/lib/src/chpipes.c
endif
ifneq ($(findstring CH_CFG_USE_FACTORY TRUE,$(CHLIBCONF)),)
LIBSRC += $(CHIBIOS)/os/lib/src/chfactory.c
endif
else
LIBSRC := $(CHIBIOS)/os/lib/src/chmboxes.c \
$(CHIBIOS)/os/lib/src/chmemcore.c \
$(CHIBIOS)/os/lib/src/chmemheaps.c \
$(CHIBIOS)/os/lib/src/chmempools.c \
$(CHIBIOS)/os/lib/src/chmpipes.c \
$(CHIBIOS)/os/lib/src/chfactory.c
endif
# Required include directories
LIBINC := $(CHIBIOS)/os/lib/include
# Shared variables
ALLCSRC += $(LIBSRC)
ALLINC += $(LIBINC)