#
# Auto generated makefile - DO NOT MODIFY
#

export MCU_PLUS_SDK_PATH?=$(abspath ../..)
include $(MCU_PLUS_SDK_PATH)/imports.mak

CG_TOOL_ROOT=$(CGT_GCC_ARMV7_PATH)

CC=$(CGT_GCC_ARMV7_PATH)/bin/arm-none-eabi-gcc
AR=$(CGT_GCC_ARMV7_PATH)/bin/arm-none-eabi-gcc-ar

PROFILE?=release
ConfigName:=$(PROFILE)

LIBNAME:=drivers.am263x.r5f.gcc-armv7.$(PROFILE).lib

FILES_common := \
    adc.c \
    bootloader.c \
    bootloader_flash.c \
    bootloader_mem.c \
    bootloader_soc.c \
    bootloader_xmodem.c \
    bootloader_uniflash.c \
    bootloader_profile.c \
    xmodem.c \
    crc16.c \
    cmpss.c \
    dac.c \
    ecap.c \
    edma.c \
    eqep.c \
    etpwm.c \
    fsi_rx.c \
    fsi_tx.c \
    gpio.c \
    i2c_v1.c \
    ipc_notify_v1.c \
    ipc_notify_v1_cfg.c \
    ipc_rpmsg.c \
    ipc_rpmsg_vring.c \
    mcan.c \
    mcspi_v0.c \
    mcspi_dma.c \
    mcspi_dma_edma.c \
    mdio_v0.c \
    mpu_firewall.c \
    mpu_firewall_v0_cfg.c \
    pinmux.c \
    pruicss_m_v0.c \
    pruicss_m_v0_cfg.c \
    qspi.c \
    qspi_edma.c \
    sdfm.c \
    spinlock.c \
    soc.c \
    soc_rcm.c \
    uart_v2.c \
    watchdog_rti.c \
    watchdog_soc.c \

FILES_PATH_common = \
    adc/v1 \
    bootloader \
    bootloader/soc/am263x \
    cmpss/v0 \
    dac/v0 \
    ecap/v1 \
    edma/v0 \
    eqep/v1 \
    epwm/v1 \
    fsi/v1 \
    gpio/v0 \
    hsmclient \
    i2c/v1 \
    ipc_notify/v1 \
    ipc_notify/v1/soc/am263x \
    ipc_rpmsg/ \
    mcan/v0 \
    mcspi/v0 \
    mcspi/v0/dma \
    mcspi/v0/dma/edma \
    mdio/v0 \
    mpu_firewall/v0 \
    mpu_firewall/v0/soc/am263x \
    pinmux/am263x \
    pruicss/m_v0 \
    pruicss/soc/am263x \
    qspi/v0 \
    qspi/v0/edma \
    spinlock/v0 \
    sdfm/v0 \
    soc/am263x \
    uart/v2 \
    watchdog/v0 \
    watchdog/v0/soc/am263x \

INCLUDES_common := \
    -I${MCU_PLUS_SDK_PATH}/source \

DEFINES_common := \
    -DSOC_AM263X \

CFLAGS_common := \
    -Wcoverage-mismatch \
    -mcpu=cortex-r5 \
    -mfloat-abi=hard \
    -mfpu=vfpv3-d16 \
    -marm \
    -Wall \
    -Werror \
    -g \
    -Wno-gnu-variable-sized-type-not-at-end \
    -Wno-unused-function \
    -Wno-int-to-pointer-cast \
    -Wno-pointer-to-int-cast \
    -Wno-unused-but-set-variable \
    -fdata-sections \
    -ffunction-sections \
    -fprofile-arcs \
    -ftest-coverage \

CFLAGS_debug := \
    -D_DEBUG_=1 \

CFLAGS_release := \
    -O2 \

ARFLAGS_common := \
    cr \

FILES := $(FILES_common) $(FILES_$(PROFILE))
ASMFILES := $(ASMFILES_common) $(ASMFILES_$(PROFILE))
FILES_PATH := $(FILES_PATH_common) $(FILES_PATH_$(PROFILE))
CFLAGS := $(CFLAGS_common) $(CFLAGS_$(PROFILE))
DEFINES := $(DEFINES_common) $(DEFINES_$(PROFILE))
INCLUDES := $(INCLUDES_common) $(INCLUDE_$(PROFILE))
ARFLAGS := $(ARFLAGS_common) $(ARFLAGS_$(PROFILE))

LIBDIR := lib
OBJDIR := obj/am263x/gcc-armv7/$(PROFILE)/r5f/drivers/
OBJS := $(FILES:%.c=%.obj)
OBJS += $(ASMFILES:%.S=%.obj)
DEPS := $(FILES:%.c=%.d)

vpath %.obj $(OBJDIR)
vpath %.c $(FILES_PATH)
vpath %.S $(FILES_PATH)

$(OBJDIR)/%.obj %.obj: %.c
	@echo  Compiling: $(LIBNAME): $<
	$(CC) -c $(CFLAGS) $(INCLUDES) $(DEFINES) -MMD -o $(OBJDIR)/$@ $<

$(OBJDIR)/%.obj %.obj: %.S
	@echo  Compiling: $(LIBNAME): $<
	$(CC) -c $(CFLAGS) -o $(OBJDIR)/$@ $<

all: $(LIBDIR)/$(LIBNAME)

$(LIBDIR)/$(LIBNAME): $(OBJS) | $(LIBDIR)
	@echo  .
	@echo  Archiving: $(LIBNAME) to $@ ...
	$(AR) $(ARFLAGS) $@ $(addprefix $(OBJDIR), $(OBJS))
	@echo  Archiving: $(LIBNAME) Done !!!
	@echo  .

clean:
	@echo  Cleaning: $(LIBNAME) ...
	$(RMDIR) $(OBJDIR)
	$(RM) $(LIBDIR)/$(LIBNAME)

scrub:
	@echo  Scrubing: $(LIBNAME) ...
	-$(RMDIR) obj/
	-$(RMDIR) lib/

$(OBJS): | $(OBJDIR)

$(LIBDIR) $(OBJDIR):
	$(MKDIR) $@

-include $(addprefix $(OBJDIR)/, $(DEPS))