#########################################
# Vault Keeper TA library
# Revision
# - V1.0 : First draft (12/27/2019)
#########################################
VERSION_LIB=1.0

### Do not edit here
##################################################################
OUTPUT_DIR = $(COMP_PATH_SECAPP)/vkmanager/lib
OUTPUT_LIB = vkmanager_teegris_$(MODEL)_v$(VERSION_LIB)_x$(ARCH).a
##################################################################

$(info Toolchain path : $(TEEGRIS_SDK_PATH)/toolchains)
ifeq ($(ARCH), 64)
CC = $(TEEGRIS_SDK_PATH)/toolchains/aarch64-secureos-gnueabi-gcc_6_3-linux-x86/bin/aarch64-secureos-gnueabi-gcc
AR = $(TEEGRIS_SDK_PATH)/toolchains/aarch64-secureos-gnueabi-gcc_6_3-linux-x86/bin/aarch64-secureos-gnueabi-gcc-ar
else
ifeq ($(ARCH), 32)
CC = $(TEEGRIS_SDK_PATH)/toolchains/arm-secureos-gnueabi-gcc_6_3-linux-x86/bin/arm-secureos-gnueabi-gcc
AR = $(TEEGRIS_SDK_PATH)/toolchains/arm-secureos-gnueabi-gcc_6_3-linux-x86/bin/arm-secureos-gnueabi-gcc-ar
endif
endif

CFLAGS += \
	-DVK_SWD_TEEGRIS \
	-Wall \
	-Wextra \
	-Werror \
	-Wno-unused \
	-O3 \
	-fpie \
	-fstack-protector-all \
$(INCLUDES)

LDFLAGS = -init main -march aarch64 -z now -static -no-undefined -Bsymbolic -Bdynamic -gc-sections -std=c99

LIB_STATIC = $(OUTPUT_LIB)

OBJECTS = $(SOURCES:.c=.o)

all: $(LIB_STATIC)

ifeq ($(TEEGRIS_SDK_VER), V3) 
INCLUDES = \
-I$(TEEGRIS_SDK_PATH)/platforms/TEEGRIS-3.0/swd/arch-arm/usr/include
endif
ifeq ($(TEEGRIS_SDK_VER), V4)
INCLUDES = \
-I$(TEEGRIS_SDK_PATH)/platforms/TEEGRIS-4.1/swd/arch-arm/usr/include
endif

INCLUDES = \
-I../inc/ \
-I../vkmanager \
-I../../../../app/include \

SOURCES = \
VaultKeeperAPI.c \

$(LIB_STATIC): $(OBJECTS)
	$(AR) r $@ $(OBJECTS)

%.o:%.c
	$(COMPILE.c) $< -o $@

clean:
	rm -f *.o *.a
