#------------------------------------------------
# Настройки проекта
#------------------------------------------------
PROJECT_NAME    := wdg
PROJECT_VERSION := 1.0.0

# Указываем используемый микроконтроллер
# at32f403, gd32f450
LMCAL_CPU    := gd32f450
# Указываем port для платформы (плата или микроконтроллер), который реализован в библиотеке
# at32f403_eval_brd, gd32f450_eval_v1_2
LMCAL_PORT   := gd32f450_eval_v1_2
# Указываем конкретную плату
# at32f403_eval_brd, gd32f450_eval_v1_2
TARGET_CFG   := gd32f450_eval_v1_2
DEBUG        := 1


#------------------------------------------------
# Пути
#------------------------------------------------
PROJECT_SOURCE_DIR = $(abspath $(dir $(firstword $(MAKEFILE_LIST))))
ROOT_DIR   := $(PROJECT_SOURCE_DIR)/../../..
BUILD_DIR  := $(ROOT_DIR)/build
CONFIG_DIR := $(PROJECT_SOURCE_DIR)/../../configs
PORTS_DIR  := $(PROJECT_SOURCE_DIR)/../../ports
PRJ_DIR    := $(PROJECT_SOURCE_DIR)/..
# Путь до lmcal
LMCAL_DIR := $(ROOT_DIR)
LMCAL_PORT_DIR := $(PORTS_DIR)/$(LMCAL_PORT)

#------------------------------------------------
# Исходные файлы
#------------------------------------------------

LMCAL_BUILD_ALL := 0
LMCAL_CPU_ON    := 1
LMCAL_GPIO_ON   := 1
LMCAL_PTIM_ON   := 1
LMCAL_WDG_ON    := 1

include $(LMCAL_DIR)/lmcal.mk
include $(LMCAL_PORT_DIR)/lmcal_port.mk


C_SOURCES := $(LMCAL_SRC) \
             $(LMCAL_PORT_SRC) \
             $(PROJECT_SOURCE_DIR)/main.c 
        
C_INCLUDES := $(LMCAL_INC_DIRS) \
              $(LMCAL_PORT_INC_DIR) \
              $(PROJECT_SOURCE_DIR) \
              $(CONFIG_DIR)/$(TARGET_CFG) \
              $(PRJ_DIR)
       
ASM_SOURCES := $(LMCAL_SRC_ASM)


ASM_INCLUDES := 


#------------------------------------------------
# Сборка
#------------------------------------------------
LDSCRIPT := $(CONFIG_DIR)/$(TARGET_CFG)/linker_cfg.ld

C_DEFS += \
        -DPROJECT_VERSION=\"$(PROJECT_VERSION)\" \
        $(LMCAL_DEFS) \
        $(LMCAL_PORT_DEFS)

# Сборка. Проверьте наличие требуемых переменных!
include ./../build_target.mk


#------------------------------------------------
# Пост-билд операции
#------------------------------------------------

.PHONY: clean clean_tmp

# Удаление артефактов сборки
clean_tmp:
	-rm -v -fR $(BUILD_DIR)/*.d
	-rm -v -fR $(BUILD_DIR)/*.lst
	-rm -v -fR $(BUILD_DIR)/*.o

clean:
	-rm -fR $(BUILD_DIR)


#****************************************** end of file *******************************************
