blob: a840fa320794436f7dd39cde3eeff14ebacd2e5a [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
Vick Wanga34d5292024-08-29 16:41:43 +080017 defaults: ["android.hardware.threadnetwork-service.defaults"],
18
Zhanglong Xia24e52742023-06-14 05:25:55 +000019 shared_libs: [
Zhanglong Xia24e52742023-06-14 05:25:55 +000020 "libbinder_ndk",
Zhanglong Xia24e52742023-06-14 05:25:55 +000021 "liblog",
Zhanglong Xia24e52742023-06-14 05:25:55 +000022 ],
23
Zhanglong Xia24e52742023-06-14 05:25:55 +000024 static_libs: [
Jooyung Hanf8bd1f02023-08-24 16:50:34 +090025 "android.hardware.threadnetwork-V1-ndk",
26 "libbase",
27 "libcutils",
28 "libutils",
Zhanglong Xia24e52742023-06-14 05:25:55 +000029 "openthread-common",
30 "openthread-hdlc",
31 "openthread-platform",
32 "openthread-posix",
Zhanglong Xia7ae6d6f2023-07-03 10:52:45 +080033 "openthread-spi",
Zhanglong Xia24e52742023-06-14 05:25:55 +000034 "openthread-url",
35 ],
36
Jooyung Hanf8bd1f02023-08-24 16:50:34 +090037 stl: "c++_static",
38
Zhanglong Xia24e52742023-06-14 05:25:55 +000039 srcs: [
40 "main.cpp",
41 "service.cpp",
shihchienc429bf4a2024-01-24 08:58:39 +000042 "socket_interface.cpp",
Zhanglong Xia24e52742023-06-14 05:25:55 +000043 "thread_chip.cpp",
44 "utils.cpp",
45 ],
46}
47
Vick Wanga34d5292024-08-29 16:41:43 +080048cc_defaults {
49 name: "android.hardware.threadnetwork-service.defaults",
50 product_variables: {
51 debuggable: {
52 cppflags: [
53 "-DDEV_BUILD",
54 ],
55 },
56 },
57}
58
Zhanglong Xia5c027012023-06-15 10:15:59 +080059cc_fuzz {
60 name: "android.hardware.threadnetwork-service.fuzzer",
61
Jooyung Hanf8bd1f02023-08-24 16:50:34 +090062 defaults: ["service_fuzzer_defaults"],
Zhanglong Xia5c027012023-06-15 10:15:59 +080063 shared_libs: [
64 "libbinder_ndk",
65 ],
66
67 static_libs: [
68 "android.hardware.threadnetwork-V1-ndk",
69 "libbase",
70 "liblog",
71 "openthread-common",
72 "openthread-hdlc",
73 "openthread-platform",
74 "openthread-posix",
Zhanglong Xia7ae6d6f2023-07-03 10:52:45 +080075 "openthread-spi",
Zhanglong Xia5c027012023-06-15 10:15:59 +080076 "openthread-url",
77 ],
78
79 srcs: [
shihchienc429bf4a2024-01-24 08:58:39 +000080 "socket_interface.cpp",
Zhanglong Xia5c027012023-06-15 10:15:59 +080081 "thread_chip.cpp",
82 "utils.cpp",
83 "fuzzer.cpp",
84 ],
85
Zhanglong Xia5c027012023-06-15 10:15:59 +080086 fuzz_config: {
87 cc: [
88 "zhanglongxia@google.com",
89 ],
90 },
91}
Jooyung Hanf8bd1f02023-08-24 16:50:34 +090092
93prebuilt_etc {
94 name: "threadnetwork-default.xml",
95 src: "threadnetwork-default.xml",
96 sub_dir: "vintf",
97 installable: false,
98}
99
100prebuilt_etc {
Zhanglong Xiac1c88362023-08-31 16:56:39 +0800101 name: "threadnetwork-service.rc",
102 src: "threadnetwork-service.rc",
Jooyung Hanf8bd1f02023-08-24 16:50:34 +0900103 installable: false,
104}
105
Kangping Dong2bc926e2024-07-29 22:56:07 +0800106filegroup {
107 name: "com.android.hardware.threadnetwork_manifest",
108 srcs: ["manifest.json"],
109}
110
111filegroup {
112 name: "com.android.hardware.threadnetwork_file_contexts",
113 srcs: ["file_contexts"],
114}
115
Jooyung Hanf8bd1f02023-08-24 16:50:34 +0900116apex {
117 name: "com.android.hardware.threadnetwork",
Kangping Dong2bc926e2024-07-29 22:56:07 +0800118 manifest: ":com.android.hardware.threadnetwork_manifest",
119 file_contexts: ":com.android.hardware.threadnetwork_file_contexts",
Jooyung Hanf8bd1f02023-08-24 16:50:34 +0900120 key: "com.android.hardware.key",
121 certificate: ":com.android.hardware.certificate",
122 updatable: false,
123 vendor: true,
124
125 binaries: [
126 "android.hardware.threadnetwork-service",
127 "ot-rcp",
128 ],
Zhanglong Xiac1c88362023-08-31 16:56:39 +0800129
Jooyung Hanf8bd1f02023-08-24 16:50:34 +0900130 prebuilts: [
131 "threadnetwork-default.xml", // vintf_fragment
Zhanglong Xiac1c88362023-08-31 16:56:39 +0800132 "threadnetwork-service.rc", // init_rc
Jooyung Hanf8bd1f02023-08-24 16:50:34 +0900133 "android.hardware.thread_network.prebuilt.xml", // permission
134 ],
135}
Kangping Dong2bc926e2024-07-29 22:56:07 +0800136
137prebuilt_etc {
138 name: "threadnetwork-service-simulation-rcp.rc",
139 src: "threadnetwork-service-simulation-rcp.rc",
140 installable: false,
141}
142
143// Thread HAL service which uses a simulation RCP (i.e. ot-rcp),
144// typically used in emulator devices.
145override_apex {
146 name: "com.android.hardware.threadnetwork-simulation-rcp",
147 base: "com.android.hardware.threadnetwork",
148 prebuilts: [
149 "threadnetwork-service-simulation-rcp.rc",
150 "threadnetwork-default.xml",
151 "android.hardware.thread_network.prebuilt.xml",
152 ],
153}