71 lines
1.5 KiB
Makefile
Raw Normal View History

2016-07-23 07:59:54 +02:00
.PHONY: clean distclean doc
ROOT_DIR := $(shell pwd | sed "s/\/source//g")
ifeq ($(BOARD), stm32f4-discovery)
include $(ROOT_DIR)/config/make/stm32f4xx.mk
endif
2016-07-28 17:01:49 +02:00
INCLUDES += $(SRC_DIR)/os/$(DBG_REL_DIR)/include
LIB_DIR += $(SRC_DIR)/os/$(DBG_REL_DIR)
2016-07-29 08:51:56 +02:00
OS_LIB = kosmos-$(ARCH)-$(BOARD)$(DBG_EXT)
LIBS += $(OS_LIB)
2016-07-28 17:01:49 +02:00
2016-07-23 07:59:54 +02:00
CFLAGS += \
-O$(OPTIM) \
$(addprefix -I, $(INCLUDES)) \
-Wall
2016-07-26 22:35:17 +02:00
CPPCHECK_FLAGS += \
2016-07-23 11:19:32 +02:00
--template=gcc \
--error-exitcode=1 \
--enable=warning,performance,information,style \
2016-07-26 22:35:17 +02:00
--inline-suppr \
$(addprefix -I, $(INCLUDES))
2016-07-23 10:33:26 +02:00
2016-07-23 07:59:54 +02:00
include $(ROOT_DIR)/config/make/tools.mk
SRC_DIR = $(ROOT_DIR)/source
2016-07-29 08:51:56 +02:00
DBG_REL_DIR = release
2016-07-23 07:59:54 +02:00
ifeq ($(DEBUG),y)
2016-07-28 17:01:49 +02:00
DBG_REL_DIR = debug
2016-07-23 07:59:54 +02:00
endif
2016-07-28 17:01:49 +02:00
OBJ_DIR = $(ROOT_DIR)/release/object/$(ARCH)/$(DBG_REL_DIR)
EXE_DIR = $(ROOT_DIR)/release/execute/$(ARCH)/$(DBG_REL_DIR)
MAP_DIR = $(ROOT_DIR)/release/map/$(ARCH)/$(DBG_REL_DIR)
SIZE_DIR = $(ROOT_DIR)/release/size/$(ARCH)/$(DBG_REL_DIR)
2016-07-23 07:59:54 +02:00
DOC_DIR = $(ROOT_DIR)/doc/$(ARCH)
TEST_OBJ_DIR = $(ROOT_DIR)/test/object
TEST_EXE_DIR = $(ROOT_DIR)/test/execute/
DOC_SRC :=
ELF_EXT = .elf
BIN_EXT = .bin
HEX_EXT = .hex
2016-07-29 08:51:56 +02:00
LIB_EXT = .a
2016-07-23 07:59:54 +02:00
SIZE_EXT = .size
TEST_EXT =
DOXYFILE=$(ROOT_DIR)/config/doxygen/Doxyfile
define makedep
$(CC) -MM \
-MF $3 \
-MP \
-MT $2 \
$(CFLAGS) \
$1
endef
define maketestdep
$(NATIVE_CC) -MM \
-MF $3 \
-MP \
-MT $2 \
$(TEST_CFLAGS) \
$1
endef