1# Copyright (C) 2019 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
16include trusty/user/app/sample/stats-test/usertests-inc.mk
17
18TRUSTY_USER_TESTS += \
19	trusty/user/app/sample/app-mgmt-test/client\
20	trusty/user/app/sample/binder-test/client \
21	trusty/user/app/sample/binder-test/service \
22	trusty/user/app/sample/hwcrypto-unittest \
23	trusty/user/app/sample/hwrng-unittest \
24	trusty/user/app/sample/manifest-test \
25	trusty/user/app/sample/memref-test \
26	trusty/user/app/sample/memref-test/lender \
27	trusty/user/app/sample/memref-test/receiver \
28	trusty/user/app/sample/timer \
29	trusty/user/app/sample/spi/swspi-srv \
30	trusty/user/app/sample/spi/swspi-test \
31	trusty/user/app/sample/skel_rust \
32	trusty/user/app/sample/skel2 \
33	trusty/user/app/sample/rust_no_std \
34
35ifneq (true,$(call TOBOOL,$(UNITTEST_COVERAGE_ENABLED)))
36TRUSTY_USER_TESTS += \
37	trusty/user/app/sample/hwrng-bench
38endif
39
40TRUSTY_RUST_USER_TESTS += \
41	trusty/user/app/sample/hwcryptohal/common \
42	trusty/user/app/sample/hwcryptohal/server \
43	trusty/user/app/sample/hwcryptokey-test \
44	trusty/user/app/sample/memref-test/rust \
45	trusty/user/app/sample/rust-hello-world \
46
47ifeq (true,$(call TOBOOL,$(USER_SCS_ENABLED)))
48TRUSTY_USER_TESTS += \
49	trusty/user/app/sample/userscs-test/default \
50	trusty/user/app/sample/userscs-test/custom \
51
52# TODO: We cannot robustly support trusty apps that opt out of shadow call
53# stacks until support for library variants is added to the SDK. Blocked on
54# https://android-review.googlesource.com/c/trusty/lib/+/1706286
55# USER_COVERAGE_ENABLED is set for fuzzing builds and causes apps to be
56# instrumented to track coverage. When user shadow call stacks are enabled
57# system wide, even apps that opt out are linked against the sanitizer
58# coverage runtime that uses shadow call stacks which causes crashes.
59ifeq (false,$(call TOBOOL,$(USER_COVERAGE_ENABLED)))
60# TODO: This app requires a libc without shadow call stacks which we cannot
61# currently provide for the reasons stated in the comment above.
62# TRUSTY_USER_TESTS += \
63# 	trusty/user/app/sample/userscs-test/disabled \
64
65endif
66endif # USER_SCS_ENABLED
67
68ifneq (,$(findstring arm,$(TRUSTY_USER_ARCH)))
69TRUSTY_USER_TESTS += \
70	trusty/user/app/sample/prebuilts-test \
71
72endif
73
74TRUSTY_LOADABLE_USER_TASKS += \
75	trusty/user/app/sample/app-mgmt-test/boot-start-srv \
76	trusty/user/app/sample/app-mgmt-test/dev-only-srv \
77	trusty/user/app/sample/app-mgmt-test/never-start-srv \
78	trusty/user/app/sample/app-mgmt-test/port-start-srv \
79	trusty/user/app/sample/app-mgmt-test/port-start-fail-srv \
80	trusty/user/app/sample/app-mgmt-test/restart-srv \
81	trusty/user/app/sample/app-mgmt-test/port-waiter-srv \
82	trusty/user/app/sample/storage-test \
83