1# Copyright (C) 2013-2015 The Android Open Source Project
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7#      http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14#
15
16LOCAL_DIR := $(GET_LOCAL_DIR)
17
18TARGET := vexpress-a15
19
20KERNEL_32BIT := true
21
22#
23# GLOBAL definitions
24#
25
26# requires linker GC
27WITH_LINKER_GC := 1
28
29# force enums to be 4bytes
30ARCH_arm_COMPILEFLAGS := -mabi=aapcs-linux
31
32# Need support for Non-secure memory mapping
33WITH_NS_MAPPING := true
34
35# This project requires trusty IPC
36WITH_TRUSTY_IPC := true
37
38# do not relocate kernel in physical memory
39GLOBAL_DEFINES += WITH_NO_PHYS_RELOCATION=1
40
41# limit heap grows
42GLOBAL_DEFINES += HEAP_GROW_SIZE=65536
43
44GLOBAL_DEFINES += \
45	WITH_LIB_SM_MONITOR=1
46
47#
48# Modules to be compiled into lk.bin
49#
50MODULES += \
51	trusty/kernel/lib/sm \
52	trusty/kernel/lib/trusty \
53
54TRUSTY_USER_ARCH := arm
55
56#
57# user tasks to be compiled into lk.bin
58#
59
60# prebuilt
61TRUSTY_PREBUILT_USER_TASKS :=
62
63# compiled from source
64TRUSTY_ALL_USER_TASKS := \
65	trusty/user/app/sample/skel \
66	trusty/user/app/sample/skel2\
67	trusty/user/app/sample/timer\
68
69EXTRA_BUILDRULES += trusty/kernel/app/trusty/user-tasks.mk
70