1*4d7e907cSAndroid Build Coastguard Worker// 2*4d7e907cSAndroid Build Coastguard Worker// Copyright (c) 2022 Google LLC. 3*4d7e907cSAndroid Build Coastguard Worker// All rights reserved. 4*4d7e907cSAndroid Build Coastguard Worker// 5*4d7e907cSAndroid Build Coastguard Worker// This document is the property of Google LLC, Inc. It is 6*4d7e907cSAndroid Build Coastguard Worker// considered proprietary and confidential information. 7*4d7e907cSAndroid Build Coastguard Worker// 8*4d7e907cSAndroid Build Coastguard Worker// This document may not be reproduced or transmitted in any form, 9*4d7e907cSAndroid Build Coastguard Worker// in whole or in part, without the express written permission of 10*4d7e907cSAndroid Build Coastguard Worker// Google LLC. 11*4d7e907cSAndroid Build Coastguard Worker 12*4d7e907cSAndroid Build Coastguard Workercc_binary { 13*4d7e907cSAndroid Build Coastguard Worker name: "android.hardware.threadnetwork-service", 14*4d7e907cSAndroid Build Coastguard Worker vendor: true, 15*4d7e907cSAndroid Build Coastguard Worker relative_install_path: "hw", 16*4d7e907cSAndroid Build Coastguard Worker 17*4d7e907cSAndroid Build Coastguard Worker defaults: ["android.hardware.threadnetwork-service.defaults"], 18*4d7e907cSAndroid Build Coastguard Worker 19*4d7e907cSAndroid Build Coastguard Worker shared_libs: [ 20*4d7e907cSAndroid Build Coastguard Worker "libbinder_ndk", 21*4d7e907cSAndroid Build Coastguard Worker "liblog", 22*4d7e907cSAndroid Build Coastguard Worker ], 23*4d7e907cSAndroid Build Coastguard Worker 24*4d7e907cSAndroid Build Coastguard Worker static_libs: [ 25*4d7e907cSAndroid Build Coastguard Worker "android.hardware.threadnetwork-V1-ndk", 26*4d7e907cSAndroid Build Coastguard Worker "libbase", 27*4d7e907cSAndroid Build Coastguard Worker "libcutils", 28*4d7e907cSAndroid Build Coastguard Worker "libutils", 29*4d7e907cSAndroid Build Coastguard Worker "openthread-common", 30*4d7e907cSAndroid Build Coastguard Worker "openthread-hdlc", 31*4d7e907cSAndroid Build Coastguard Worker "openthread-platform", 32*4d7e907cSAndroid Build Coastguard Worker "openthread-posix", 33*4d7e907cSAndroid Build Coastguard Worker "openthread-spi", 34*4d7e907cSAndroid Build Coastguard Worker "openthread-url", 35*4d7e907cSAndroid Build Coastguard Worker ], 36*4d7e907cSAndroid Build Coastguard Worker 37*4d7e907cSAndroid Build Coastguard Worker stl: "c++_static", 38*4d7e907cSAndroid Build Coastguard Worker 39*4d7e907cSAndroid Build Coastguard Worker srcs: [ 40*4d7e907cSAndroid Build Coastguard Worker "main.cpp", 41*4d7e907cSAndroid Build Coastguard Worker "service.cpp", 42*4d7e907cSAndroid Build Coastguard Worker "socket_interface.cpp", 43*4d7e907cSAndroid Build Coastguard Worker "thread_chip.cpp", 44*4d7e907cSAndroid Build Coastguard Worker "utils.cpp", 45*4d7e907cSAndroid Build Coastguard Worker ], 46*4d7e907cSAndroid Build Coastguard Worker} 47*4d7e907cSAndroid Build Coastguard Worker 48*4d7e907cSAndroid Build Coastguard Workercc_defaults { 49*4d7e907cSAndroid Build Coastguard Worker name: "android.hardware.threadnetwork-service.defaults", 50*4d7e907cSAndroid Build Coastguard Worker product_variables: { 51*4d7e907cSAndroid Build Coastguard Worker debuggable: { 52*4d7e907cSAndroid Build Coastguard Worker cppflags: [ 53*4d7e907cSAndroid Build Coastguard Worker "-DDEV_BUILD", 54*4d7e907cSAndroid Build Coastguard Worker ], 55*4d7e907cSAndroid Build Coastguard Worker }, 56*4d7e907cSAndroid Build Coastguard Worker }, 57*4d7e907cSAndroid Build Coastguard Worker} 58*4d7e907cSAndroid Build Coastguard Worker 59*4d7e907cSAndroid Build Coastguard Workercc_fuzz { 60*4d7e907cSAndroid Build Coastguard Worker name: "android.hardware.threadnetwork-service.fuzzer", 61*4d7e907cSAndroid Build Coastguard Worker 62*4d7e907cSAndroid Build Coastguard Worker defaults: ["service_fuzzer_defaults"], 63*4d7e907cSAndroid Build Coastguard Worker shared_libs: [ 64*4d7e907cSAndroid Build Coastguard Worker "libbinder_ndk", 65*4d7e907cSAndroid Build Coastguard Worker ], 66*4d7e907cSAndroid Build Coastguard Worker 67*4d7e907cSAndroid Build Coastguard Worker static_libs: [ 68*4d7e907cSAndroid Build Coastguard Worker "android.hardware.threadnetwork-V1-ndk", 69*4d7e907cSAndroid Build Coastguard Worker "libbase", 70*4d7e907cSAndroid Build Coastguard Worker "liblog", 71*4d7e907cSAndroid Build Coastguard Worker "openthread-common", 72*4d7e907cSAndroid Build Coastguard Worker "openthread-hdlc", 73*4d7e907cSAndroid Build Coastguard Worker "openthread-platform", 74*4d7e907cSAndroid Build Coastguard Worker "openthread-posix", 75*4d7e907cSAndroid Build Coastguard Worker "openthread-spi", 76*4d7e907cSAndroid Build Coastguard Worker "openthread-url", 77*4d7e907cSAndroid Build Coastguard Worker ], 78*4d7e907cSAndroid Build Coastguard Worker 79*4d7e907cSAndroid Build Coastguard Worker srcs: [ 80*4d7e907cSAndroid Build Coastguard Worker "socket_interface.cpp", 81*4d7e907cSAndroid Build Coastguard Worker "thread_chip.cpp", 82*4d7e907cSAndroid Build Coastguard Worker "utils.cpp", 83*4d7e907cSAndroid Build Coastguard Worker "fuzzer.cpp", 84*4d7e907cSAndroid Build Coastguard Worker ], 85*4d7e907cSAndroid Build Coastguard Worker 86*4d7e907cSAndroid Build Coastguard Worker fuzz_config: { 87*4d7e907cSAndroid Build Coastguard Worker cc: [ 88*4d7e907cSAndroid Build Coastguard Worker "[email protected]", 89*4d7e907cSAndroid Build Coastguard Worker ], 90*4d7e907cSAndroid Build Coastguard Worker }, 91*4d7e907cSAndroid Build Coastguard Worker} 92*4d7e907cSAndroid Build Coastguard Worker 93*4d7e907cSAndroid Build Coastguard Workerprebuilt_etc { 94*4d7e907cSAndroid Build Coastguard Worker name: "threadnetwork-default.xml", 95*4d7e907cSAndroid Build Coastguard Worker src: "threadnetwork-default.xml", 96*4d7e907cSAndroid Build Coastguard Worker sub_dir: "vintf", 97*4d7e907cSAndroid Build Coastguard Worker installable: false, 98*4d7e907cSAndroid Build Coastguard Worker} 99*4d7e907cSAndroid Build Coastguard Worker 100*4d7e907cSAndroid Build Coastguard Workerprebuilt_etc { 101*4d7e907cSAndroid Build Coastguard Worker name: "threadnetwork-service.rc", 102*4d7e907cSAndroid Build Coastguard Worker src: "threadnetwork-service.rc", 103*4d7e907cSAndroid Build Coastguard Worker installable: false, 104*4d7e907cSAndroid Build Coastguard Worker} 105*4d7e907cSAndroid Build Coastguard Worker 106*4d7e907cSAndroid Build Coastguard Workerfilegroup { 107*4d7e907cSAndroid Build Coastguard Worker name: "com.android.hardware.threadnetwork_manifest", 108*4d7e907cSAndroid Build Coastguard Worker srcs: ["manifest.json"], 109*4d7e907cSAndroid Build Coastguard Worker} 110*4d7e907cSAndroid Build Coastguard Worker 111*4d7e907cSAndroid Build Coastguard Workerfilegroup { 112*4d7e907cSAndroid Build Coastguard Worker name: "com.android.hardware.threadnetwork_file_contexts", 113*4d7e907cSAndroid Build Coastguard Worker srcs: ["file_contexts"], 114*4d7e907cSAndroid Build Coastguard Worker} 115*4d7e907cSAndroid Build Coastguard Worker 116*4d7e907cSAndroid Build Coastguard Workerapex { 117*4d7e907cSAndroid Build Coastguard Worker name: "com.android.hardware.threadnetwork", 118*4d7e907cSAndroid Build Coastguard Worker manifest: ":com.android.hardware.threadnetwork_manifest", 119*4d7e907cSAndroid Build Coastguard Worker file_contexts: ":com.android.hardware.threadnetwork_file_contexts", 120*4d7e907cSAndroid Build Coastguard Worker key: "com.android.hardware.key", 121*4d7e907cSAndroid Build Coastguard Worker certificate: ":com.android.hardware.certificate", 122*4d7e907cSAndroid Build Coastguard Worker updatable: false, 123*4d7e907cSAndroid Build Coastguard Worker vendor: true, 124*4d7e907cSAndroid Build Coastguard Worker 125*4d7e907cSAndroid Build Coastguard Worker binaries: [ 126*4d7e907cSAndroid Build Coastguard Worker "android.hardware.threadnetwork-service", 127*4d7e907cSAndroid Build Coastguard Worker "ot-rcp", 128*4d7e907cSAndroid Build Coastguard Worker ], 129*4d7e907cSAndroid Build Coastguard Worker 130*4d7e907cSAndroid Build Coastguard Worker prebuilts: [ 131*4d7e907cSAndroid Build Coastguard Worker "threadnetwork-default.xml", // vintf_fragment 132*4d7e907cSAndroid Build Coastguard Worker "threadnetwork-service.rc", // init_rc 133*4d7e907cSAndroid Build Coastguard Worker "android.hardware.thread_network.prebuilt.xml", // permission 134*4d7e907cSAndroid Build Coastguard Worker ], 135*4d7e907cSAndroid Build Coastguard Worker} 136*4d7e907cSAndroid Build Coastguard Worker 137*4d7e907cSAndroid Build Coastguard Workerprebuilt_etc { 138*4d7e907cSAndroid Build Coastguard Worker name: "threadnetwork-service-simulation-rcp.rc", 139*4d7e907cSAndroid Build Coastguard Worker src: "threadnetwork-service-simulation-rcp.rc", 140*4d7e907cSAndroid Build Coastguard Worker installable: false, 141*4d7e907cSAndroid Build Coastguard Worker} 142*4d7e907cSAndroid Build Coastguard Worker 143*4d7e907cSAndroid Build Coastguard Worker// Thread HAL service which uses a simulation RCP (i.e. ot-rcp), 144*4d7e907cSAndroid Build Coastguard Worker// typically used in emulator devices. 145*4d7e907cSAndroid Build Coastguard Workeroverride_apex { 146*4d7e907cSAndroid Build Coastguard Worker name: "com.android.hardware.threadnetwork-simulation-rcp", 147*4d7e907cSAndroid Build Coastguard Worker base: "com.android.hardware.threadnetwork", 148*4d7e907cSAndroid Build Coastguard Worker prebuilts: [ 149*4d7e907cSAndroid Build Coastguard Worker "threadnetwork-service-simulation-rcp.rc", 150*4d7e907cSAndroid Build Coastguard Worker "threadnetwork-default.xml", 151*4d7e907cSAndroid Build Coastguard Worker "android.hardware.thread_network.prebuilt.xml", 152*4d7e907cSAndroid Build Coastguard Worker ], 153*4d7e907cSAndroid Build Coastguard Worker} 154