71 lines
1.6 KiB
Makefile
Executable File
71 lines
1.6 KiB
Makefile
Executable File
.PHONY: clean distclean doc test
|
|
|
|
ROOT_DIR := $(shell pwd | sed "s/\/source//g")
|
|
|
|
ifeq ($(BOARD), stm32f4-discovery)
|
|
include $(ROOT_DIR)/config/make/stm32f4xx.mk
|
|
endif
|
|
|
|
OS_LIB = kosmos-$(ARCH)-$(BOARD)$(DBG_EXT)
|
|
LIBS += $(OS_LIB)
|
|
|
|
CFLAGS += \
|
|
-Wno-unused-function \
|
|
-O$(OPTIM) \
|
|
$(addprefix -I, $(INCLUDES)) \
|
|
-Wall
|
|
|
|
CPPCHECK_FLAGS += \
|
|
--template=gcc \
|
|
--error-exitcode=1 \
|
|
--enable=warning,performance,information,style \
|
|
--inline-suppr \
|
|
$(addprefix -I, $(INCLUDES))
|
|
|
|
include $(ROOT_DIR)/config/make/tools.mk
|
|
|
|
SRC_DIR = $(ROOT_DIR)/source
|
|
ifeq ($(DEBUG),y)
|
|
OBJ_DIR = $(ROOT_DIR)/release/object/$(ARCH)/debug
|
|
EXE_DIR = $(ROOT_DIR)/release/execute/$(ARCH)/debug
|
|
MAP_DIR = $(ROOT_DIR)/release/map/$(ARCH)/debug
|
|
SIZE_DIR = $(ROOT_DIR)/release/size/$(ARCH)/debug
|
|
else
|
|
OBJ_DIR = $(ROOT_DIR)/release/object/$(ARCH)/release
|
|
EXE_DIR = $(ROOT_DIR)/release/execute/$(ARCH)/release
|
|
MAP_DIR = $(ROOT_DIR)/release/map/$(ARCH)/release
|
|
SIZE_DIR = $(ROOT_DIR)/release/size/$(ARCH)/release
|
|
endif
|
|
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
|
|
LIB_EXT = .a
|
|
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
|