blob: 51e5c25eec02f47d2f9eb4f6dbc2a2c66f14fa4d [file] [log] [blame]
Zhanglong Xia24e52742023-06-14 05:25:55 +00001//
2// Copyright (c) 2022 Google LLC.
3// All rights reserved.
4//
5// This document is the property of Google LLC, Inc. It is
6// considered proprietary and confidential information.
7//
8// This document may not be reproduced or transmitted in any form,
9// in whole or in part, without the express written permission of
10// Google LLC.
11
Jooyung Hanf8bd1f02023-08-24 16:50:34 +090012cc_binary {
13 name: "android.hardware.threadnetwork-service",
Zhanglong Xia24e52742023-06-14 05:25:55 +000014 vendor: true,
15 relative_install_path: "hw",
16
17 shared_libs: [
Zhanglong Xia24e52742023-06-14 05:25:55 +000018 "libbinder_ndk",
Zhanglong Xia24e52742023-06-14 05:25:55 +000019 "liblog",
Zhanglong Xia24e52742023-06-14 05:25:55 +000020 ],
21
Zhanglong Xia24e52742023-06-14 05:25:55 +000022 static_libs: [
Jooyung Hanf8bd1f02023-08-24 16:50:34 +090023 "android.hardware.threadnetwork-V1-ndk",
24 "libbase",
25 "libcutils",
26 "libutils",
Zhanglong Xia24e52742023-06-14 05:25:55 +000027 "openthread-common",
28 "openthread-hdlc",
29 "openthread-platform",
30 "openthread-posix",
Zhanglong Xia7ae6d6f2023-07-03 10:52:45 +080031 "openthread-spi",
Zhanglong Xia24e52742023-06-14 05:25:55 +000032 "openthread-url",
33 ],
34
Jooyung Hanf8bd1f02023-08-24 16:50:34 +090035 stl: "c++_static",
36
Zhanglong Xia24e52742023-06-14 05:25:55 +000037 srcs: [
38 "main.cpp",
39 "service.cpp",
shihchienc429bf4a2024-01-24 08:58:39 +000040 "socket_interface.cpp",
Zhanglong Xia24e52742023-06-14 05:25:55 +000041 "thread_chip.cpp",
42 "utils.cpp",
43 ],
44}
45
Zhanglong Xia5c027012023-06-15 10:15:59 +080046cc_fuzz {
47 name: "android.hardware.threadnetwork-service.fuzzer",
48
Jooyung Hanf8bd1f02023-08-24 16:50:34 +090049 defaults: ["service_fuzzer_defaults"],
Zhanglong Xia5c027012023-06-15 10:15:59 +080050 shared_libs: [
51 "libbinder_ndk",
52 ],
53
54 static_libs: [
55 "android.hardware.threadnetwork-V1-ndk",
56 "libbase",
57 "liblog",
58 "openthread-common",
59 "openthread-hdlc",
60 "openthread-platform",
61 "openthread-posix",
Zhanglong Xia7ae6d6f2023-07-03 10:52:45 +080062 "openthread-spi",
Zhanglong Xia5c027012023-06-15 10:15:59 +080063 "openthread-url",
64 ],
65
66 srcs: [
shihchienc429bf4a2024-01-24 08:58:39 +000067 "socket_interface.cpp",
Zhanglong Xia5c027012023-06-15 10:15:59 +080068 "thread_chip.cpp",
69 "utils.cpp",
70 "fuzzer.cpp",
71 ],
72
Zhanglong Xia5c027012023-06-15 10:15:59 +080073 fuzz_config: {
74 cc: [
75 "zhanglongxia@google.com",
76 ],
77 },
78}
Jooyung Hanf8bd1f02023-08-24 16:50:34 +090079
80prebuilt_etc {
81 name: "threadnetwork-default.xml",
82 src: "threadnetwork-default.xml",
83 sub_dir: "vintf",
84 installable: false,
85}
86
87prebuilt_etc {
Zhanglong Xiac1c88362023-08-31 16:56:39 +080088 name: "threadnetwork-service.rc",
89 src: "threadnetwork-service.rc",
Jooyung Hanf8bd1f02023-08-24 16:50:34 +090090 installable: false,
91}
92
Kangping Dong2bc926e2024-07-29 22:56:07 +080093filegroup {
94 name: "com.android.hardware.threadnetwork_manifest",
95 srcs: ["manifest.json"],
96}
97
98filegroup {
99 name: "com.android.hardware.threadnetwork_file_contexts",
100 srcs: ["file_contexts"],
101}
102
Jooyung Hanf8bd1f02023-08-24 16:50:34 +0900103apex {
104 name: "com.android.hardware.threadnetwork",
Kangping Dong2bc926e2024-07-29 22:56:07 +0800105 manifest: ":com.android.hardware.threadnetwork_manifest",
106 file_contexts: ":com.android.hardware.threadnetwork_file_contexts",
Jooyung Hanf8bd1f02023-08-24 16:50:34 +0900107 key: "com.android.hardware.key",
108 certificate: ":com.android.hardware.certificate",
109 updatable: false,
110 vendor: true,
111
112 binaries: [
113 "android.hardware.threadnetwork-service",
114 "ot-rcp",
115 ],
Zhanglong Xiac1c88362023-08-31 16:56:39 +0800116
Jooyung Hanf8bd1f02023-08-24 16:50:34 +0900117 prebuilts: [
118 "threadnetwork-default.xml", // vintf_fragment
Zhanglong Xiac1c88362023-08-31 16:56:39 +0800119 "threadnetwork-service.rc", // init_rc
Jooyung Hanf8bd1f02023-08-24 16:50:34 +0900120 "android.hardware.thread_network.prebuilt.xml", // permission
121 ],
122}
Kangping Dong2bc926e2024-07-29 22:56:07 +0800123
124prebuilt_etc {
125 name: "threadnetwork-service-simulation-rcp.rc",
126 src: "threadnetwork-service-simulation-rcp.rc",
127 installable: false,
128}
129
130// Thread HAL service which uses a simulation RCP (i.e. ot-rcp),
131// typically used in emulator devices.
132override_apex {
133 name: "com.android.hardware.threadnetwork-simulation-rcp",
134 base: "com.android.hardware.threadnetwork",
135 prebuilts: [
136 "threadnetwork-service-simulation-rcp.rc",
137 "threadnetwork-default.xml",
138 "android.hardware.thread_network.prebuilt.xml",
139 ],
140}