[FOSS_TLK]platform: tegra: use DT to enable rollback
[3rdparty/ote_partner/tlk.git] / makefile
index 5969644..14aca4f 100644 (file)
--- a/makefile
+++ b/makefile
@@ -1,4 +1,12 @@
-PREFIX ?= .
+PREFIX ?= ..
+
+ifeq ($(TARGET_ARCH),arm64)
+TOOLCHAIN_PREFIX ?= ../tools/aarch64-linux-android-4.8/bin/aarch64-linux-android-
+TOOLCHAIN_PREFIX64 ?= ../tools/aarch64-linux-android-4.8/bin/aarch64-linux-android-
+else
+TOOLCHAIN_PREFIX ?= ../tools/arm-eabi-4.7/bin/arm-eabi-
+TOOLCHAIN_PREFIX64 ?= ../tools/aarch64-linux-android-4.8/bin/aarch64-linux-android-
+endif
 
 ifeq ($(MAKECMDGOALS),spotless)
 spotless:
@@ -31,7 +39,7 @@ endif
 
 DEBUG ?= 2
 
-BUILDDIR := $(PREFIX)/build-$(PROJECT)
+BUILDDIR := $(PREFIX)/build-$(TARGET)
 OUTBIN := $(BUILDDIR)/lk.bin
 OUTELF := $(BUILDDIR)/lk
 OUTSYS := $(BUILDDIR)/lk.sys
@@ -39,10 +47,14 @@ OUTTASK := $(BUILDDIR)/lk.task
 CONFIGHEADER := $(BUILDDIR)/config.h
 IMGBIN := $(BUILDDIR)/img.bin
 LK_IMAGE ?= $(BUILDDIR)/tos.img
+MONLIB := $(BUILDDIR)/secure_monitor/libmonitor.a
 
-# conditionally built monitor files
-MONELF :=
-MONBIN :=
+ifneq ($(TARGET),t124)
+DEFINES += \
+       WITH_MONITOR_BIN=1
+MONLIB :=
+MONBIN := $(BUILDDIR)/secure_monitor/monitor.bin
+endif
 
 INCLUDES := -I$(BUILDDIR) -Iinclude -I../lib/include
 GLOBAL_OPTFLAGS ?= -Os
@@ -58,7 +70,7 @@ GLOBAL_COMPILEFLAGS += -ffunction-sections -fdata-sections
 GLOBAL_LDFLAGS += -gc-sections
 
 # top level rule
-all:: $(LK_IMAGE) $(OUTTASK) $(OUTELF).lst $(OUTELF).debug.lst $(OUTELF).sym $(OUTELF).size
+all:: $(TOSIMAGE) $(OUTTASK) $(OUTELF).lst $(OUTELF).debug.lst $(OUTELF).sym $(OUTELF).size
 
 # master module object list
 ALLOBJS_MODULE :=
@@ -74,7 +86,7 @@ MON_LINKER_SCRIPT :=
 GENERATED := $(CONFIGHEADER)
 
 # anything added to DEFINES will be put into $(BUILDDIR)/config.h
-DEFINES := LK=1
+DEFINES += LK=1
 
 # Anything added to SRCDEPS will become a dependency of every source file in the system.
 # Useful for header files that may be included by one or more source files.
@@ -103,6 +115,8 @@ include platform/$(PLATFORM)/rules.mk
 $(info PROJECT = $(PROJECT))
 $(info PLATFORM = $(PLATFORM))
 $(info TARGET = $(TARGET))
+$(info MONLIB = $(MONLIB))
+$(info TARGET_ARCH = $(TARGET_ARCH))
 
 include arch/$(ARCH)/rules.mk
 include platform/rules.mk
@@ -110,7 +124,7 @@ include target/rules.mk
 include kernel/rules.mk
 include dev/rules.mk
 include app/rules.mk
-include task/rules.mk
+#include task/rules.mk
 
 # recursively include any modules in the MODULE variable, leaving a trail of included
 # modules in the ALLMODULES list
@@ -184,6 +198,8 @@ $(warning CPPFLAGS=$(CPPFLAGS))
 $(error CPPFLAGS is not empty, please use GLOBAL_CPPFLAGS or MODULE_CPPFLAGS)
 endif
 
+include lib/version/version.mk
+
 # the logic to compile and link stuff is in here
 include make/build.mk