| // | |
| // Copyright (c) 2022 Google LLC. | |
| // All rights reserved. | |
| // | |
| // This document is the property of Google LLC, Inc. It is | |
| // considered proprietary and confidential information. | |
| // | |
| // This document may not be reproduced or transmitted in any form, | |
| // in whole or in part, without the express written permission of | |
| // Google LLC. | |
| cc_binary { | |
| name: "android.hardware.threadnetwork-service", | |
| vendor: true, | |
| relative_install_path: "hw", | |
| defaults: ["android.hardware.threadnetwork-service.defaults"], | |
| shared_libs: [ | |
| "libbinder_ndk", | |
| "liblog", | |
| ], | |
| static_libs: [ | |
| "android.hardware.threadnetwork-V1-ndk", | |
| "libbase", | |
| "libcutils", | |
| "libutils", | |
| "openthread-common", | |
| "openthread-hdlc", | |
| "openthread-platform", | |
| "openthread-posix", | |
| "openthread-spi", | |
| "openthread-url", | |
| ], | |
| stl: "c++_static", | |
| srcs: [ | |
| "main.cpp", | |
| "service.cpp", | |
| "socket_interface.cpp", | |
| "thread_chip.cpp", | |
| "utils.cpp", | |
| ], | |
| } | |
| cc_defaults { | |
| name: "android.hardware.threadnetwork-service.defaults", | |
| product_variables: { | |
| debuggable: { | |
| cppflags: [ | |
| "-DDEV_BUILD", | |
| ], | |
| }, | |
| }, | |
| } | |
| cc_fuzz { | |
| name: "android.hardware.threadnetwork-service.fuzzer", | |
| defaults: ["service_fuzzer_defaults"], | |
| shared_libs: [ | |
| "libbinder_ndk", | |
| ], | |
| static_libs: [ | |
| "android.hardware.threadnetwork-V1-ndk", | |
| "libbase", | |
| "liblog", | |
| "openthread-common", | |
| "openthread-hdlc", | |
| "openthread-platform", | |
| "openthread-posix", | |
| "openthread-spi", | |
| "openthread-url", | |
| ], | |
| srcs: [ | |
| "socket_interface.cpp", | |
| "thread_chip.cpp", | |
| "utils.cpp", | |
| "fuzzer.cpp", | |
| ], | |
| fuzz_config: { | |
| cc: [ | |
| "zhanglongxia@google.com", | |
| ], | |
| }, | |
| } | |
| prebuilt_etc { | |
| name: "threadnetwork-default.xml", | |
| src: "threadnetwork-default.xml", | |
| sub_dir: "vintf", | |
| installable: false, | |
| } | |
| prebuilt_etc { | |
| name: "threadnetwork-service.rc", | |
| src: "threadnetwork-service.rc", | |
| installable: false, | |
| } | |
| filegroup { | |
| name: "com.android.hardware.threadnetwork_manifest", | |
| srcs: ["manifest.json"], | |
| } | |
| filegroup { | |
| name: "com.android.hardware.threadnetwork_file_contexts", | |
| srcs: ["file_contexts"], | |
| } | |
| apex { | |
| name: "com.android.hardware.threadnetwork", | |
| manifest: ":com.android.hardware.threadnetwork_manifest", | |
| file_contexts: ":com.android.hardware.threadnetwork_file_contexts", | |
| key: "com.android.hardware.key", | |
| certificate: ":com.android.hardware.certificate", | |
| updatable: false, | |
| vendor: true, | |
| binaries: [ | |
| "android.hardware.threadnetwork-service", | |
| "ot-rcp", | |
| ], | |
| prebuilts: [ | |
| "threadnetwork-default.xml", // vintf_fragment | |
| "threadnetwork-service.rc", // init_rc | |
| "android.hardware.thread_network.prebuilt.xml", // permission | |
| ], | |
| } | |
| prebuilt_etc { | |
| name: "threadnetwork-service-simulation-rcp.rc", | |
| src: "threadnetwork-service-simulation-rcp.rc", | |
| installable: false, | |
| } | |
| // Thread HAL service which uses a simulation RCP (i.e. ot-rcp), | |
| // typically used in emulator devices. | |
| override_apex { | |
| name: "com.android.hardware.threadnetwork-simulation-rcp", | |
| base: "com.android.hardware.threadnetwork", | |
| prebuilts: [ | |
| "threadnetwork-service-simulation-rcp.rc", | |
| "threadnetwork-default.xml", | |
| "android.hardware.thread_network.prebuilt.xml", | |
| ], | |
| } |