1*48a54d36SAndroid Build Coastguard Workerpackage { 2*48a54d36SAndroid Build Coastguard Worker default_applicable_licenses: ["external_mdnsresponder_license"], 3*48a54d36SAndroid Build Coastguard Worker} 4*48a54d36SAndroid Build Coastguard Worker 5*48a54d36SAndroid Build Coastguard Worker// Added automatically by a large-scale-change that took the approach of 6*48a54d36SAndroid Build Coastguard Worker// 'apply every license found to every target'. While this makes sure we respect 7*48a54d36SAndroid Build Coastguard Worker// every license restriction, it may not be entirely correct. 8*48a54d36SAndroid Build Coastguard Worker// 9*48a54d36SAndroid Build Coastguard Worker// e.g. GPL in an MIT project might only apply to the contrib/ directory. 10*48a54d36SAndroid Build Coastguard Worker// 11*48a54d36SAndroid Build Coastguard Worker// Please consider splitting the single license below into multiple licenses, 12*48a54d36SAndroid Build Coastguard Worker// taking care not to lose any license_kind information, and overriding the 13*48a54d36SAndroid Build Coastguard Worker// default license using the 'licenses: [...]' property on targets as needed. 14*48a54d36SAndroid Build Coastguard Worker// 15*48a54d36SAndroid Build Coastguard Worker// For unused files, consider creating a 'fileGroup' with "//visibility:private" 16*48a54d36SAndroid Build Coastguard Worker// to attach the license to, and including a comment whether the files may be 17*48a54d36SAndroid Build Coastguard Worker// used in the current project. 18*48a54d36SAndroid Build Coastguard Worker// See: http://go/android-license-faq 19*48a54d36SAndroid Build Coastguard Workerlicense { 20*48a54d36SAndroid Build Coastguard Worker name: "external_mdnsresponder_license", 21*48a54d36SAndroid Build Coastguard Worker visibility: [":__subpackages__"], 22*48a54d36SAndroid Build Coastguard Worker license_kinds: [ 23*48a54d36SAndroid Build Coastguard Worker "SPDX-license-identifier-Apache-2.0", 24*48a54d36SAndroid Build Coastguard Worker "SPDX-license-identifier-BSD", 25*48a54d36SAndroid Build Coastguard Worker "SPDX-license-identifier-NCSA", 26*48a54d36SAndroid Build Coastguard Worker "SPDX-license-identifier-OpenSSL", 27*48a54d36SAndroid Build Coastguard Worker "legacy_notice", 28*48a54d36SAndroid Build Coastguard Worker ], 29*48a54d36SAndroid Build Coastguard Worker license_text: [ 30*48a54d36SAndroid Build Coastguard Worker "LICENSE", 31*48a54d36SAndroid Build Coastguard Worker ], 32*48a54d36SAndroid Build Coastguard Worker} 33*48a54d36SAndroid Build Coastguard Worker 34*48a54d36SAndroid Build Coastguard Workercc_defaults { 35*48a54d36SAndroid Build Coastguard Worker name: "mdnsresponder_default_cflags", 36*48a54d36SAndroid Build Coastguard Worker 37*48a54d36SAndroid Build Coastguard Worker // This code has a variety of C23 issues, 38*48a54d36SAndroid Build Coastguard Worker // and is likely to be removed soon anyway. 39*48a54d36SAndroid Build Coastguard Worker c_std: "gnu17", 40*48a54d36SAndroid Build Coastguard Worker cflags: [ 41*48a54d36SAndroid Build Coastguard Worker "-O2", 42*48a54d36SAndroid Build Coastguard Worker "-g", 43*48a54d36SAndroid Build Coastguard Worker "-fno-strict-aliasing", 44*48a54d36SAndroid Build Coastguard Worker "-fwrapv", 45*48a54d36SAndroid Build Coastguard Worker "-D_GNU_SOURCE", 46*48a54d36SAndroid Build Coastguard Worker "-DHAVE_IPV6", 47*48a54d36SAndroid Build Coastguard Worker "-DNOT_HAVE_SA_LEN", 48*48a54d36SAndroid Build Coastguard Worker "-DPLATFORM_NO_RLIMIT", 49*48a54d36SAndroid Build Coastguard Worker "-DMDNS_DEBUGMSGS=0", 50*48a54d36SAndroid Build Coastguard Worker "-DMDNS_UDS_SERVERPATH=\"/dev/socket/mdnsd\"", 51*48a54d36SAndroid Build Coastguard Worker "-DMDNS_USERNAME=\"mdnsr\"", 52*48a54d36SAndroid Build Coastguard Worker "-W", 53*48a54d36SAndroid Build Coastguard Worker "-Wall", 54*48a54d36SAndroid Build Coastguard Worker "-Wextra", 55*48a54d36SAndroid Build Coastguard Worker "-Wno-address-of-packed-member", 56*48a54d36SAndroid Build Coastguard Worker "-Wno-array-bounds", 57*48a54d36SAndroid Build Coastguard Worker "-Wno-pointer-sign", 58*48a54d36SAndroid Build Coastguard Worker "-Wno-unused", 59*48a54d36SAndroid Build Coastguard Worker "-Wno-unused-but-set-variable", 60*48a54d36SAndroid Build Coastguard Worker "-Wno-unused-parameter", 61*48a54d36SAndroid Build Coastguard Worker "-Werror=implicit-function-declaration", 62*48a54d36SAndroid Build Coastguard Worker ], 63*48a54d36SAndroid Build Coastguard Worker target: { 64*48a54d36SAndroid Build Coastguard Worker linux: { 65*48a54d36SAndroid Build Coastguard Worker cflags: [ 66*48a54d36SAndroid Build Coastguard Worker "-DTARGET_OS_LINUX", 67*48a54d36SAndroid Build Coastguard Worker "-DHAVE_LINUX", 68*48a54d36SAndroid Build Coastguard Worker "-DUSES_NETLINK", 69*48a54d36SAndroid Build Coastguard Worker "-Werror", 70*48a54d36SAndroid Build Coastguard Worker ], 71*48a54d36SAndroid Build Coastguard Worker }, 72*48a54d36SAndroid Build Coastguard Worker darwin: { 73*48a54d36SAndroid Build Coastguard Worker cflags: [ 74*48a54d36SAndroid Build Coastguard Worker "-DTARGET_OS_MAC", 75*48a54d36SAndroid Build Coastguard Worker "-DMDNS_UDS_SERVERPATH=\"/var/run/mDNSResponder\"", 76*48a54d36SAndroid Build Coastguard Worker "-Wno-error", 77*48a54d36SAndroid Build Coastguard Worker ], 78*48a54d36SAndroid Build Coastguard Worker }, 79*48a54d36SAndroid Build Coastguard Worker windows: { 80*48a54d36SAndroid Build Coastguard Worker enabled: true, 81*48a54d36SAndroid Build Coastguard Worker cflags: [ 82*48a54d36SAndroid Build Coastguard Worker "-DTARGET_OS_WINDOWS", 83*48a54d36SAndroid Build Coastguard Worker "-DWIN32", 84*48a54d36SAndroid Build Coastguard Worker "-DNDEBUG", 85*48a54d36SAndroid Build Coastguard Worker "-D_WIN32_LEAN_AND_MEAN", 86*48a54d36SAndroid Build Coastguard Worker "-DUSE_TCP_LOOPBACK", 87*48a54d36SAndroid Build Coastguard Worker "-D_CRT_SECURE_NO_DEPRECATE", 88*48a54d36SAndroid Build Coastguard Worker "-D_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES=1", 89*48a54d36SAndroid Build Coastguard Worker "-Wno-error", 90*48a54d36SAndroid Build Coastguard Worker "-Wno-sign-compare", 91*48a54d36SAndroid Build Coastguard Worker "-include stdint.h", 92*48a54d36SAndroid Build Coastguard Worker "-include winsock2.h", 93*48a54d36SAndroid Build Coastguard Worker "-include ws2ipdef.h", 94*48a54d36SAndroid Build Coastguard Worker "-include wincrypt.h", 95*48a54d36SAndroid Build Coastguard Worker "-include netioapi.h", 96*48a54d36SAndroid Build Coastguard Worker ], 97*48a54d36SAndroid Build Coastguard Worker local_include_dirs: [ 98*48a54d36SAndroid Build Coastguard Worker "mDNSWindows", 99*48a54d36SAndroid Build Coastguard Worker "android/caseMapping", 100*48a54d36SAndroid Build Coastguard Worker ], 101*48a54d36SAndroid Build Coastguard Worker }, 102*48a54d36SAndroid Build Coastguard Worker }, 103*48a54d36SAndroid Build Coastguard Worker} 104*48a54d36SAndroid Build Coastguard Worker 105*48a54d36SAndroid Build Coastguard Workercc_binary { 106*48a54d36SAndroid Build Coastguard Worker name: "mdnsd", 107*48a54d36SAndroid Build Coastguard Worker defaults: ["mdnsresponder_default_cflags"], 108*48a54d36SAndroid Build Coastguard Worker srcs: [ 109*48a54d36SAndroid Build Coastguard Worker "mDNSCore/DNSCommon.c", 110*48a54d36SAndroid Build Coastguard Worker "mDNSCore/DNSDigest.c", 111*48a54d36SAndroid Build Coastguard Worker "mDNSCore/mDNS.c", 112*48a54d36SAndroid Build Coastguard Worker "mDNSCore/uDNS.c", 113*48a54d36SAndroid Build Coastguard Worker "mDNSPosix/mDNSPosix.c", 114*48a54d36SAndroid Build Coastguard Worker "mDNSPosix/mDNSUNP.c", 115*48a54d36SAndroid Build Coastguard Worker "mDNSPosix/PosixDaemon.c", 116*48a54d36SAndroid Build Coastguard Worker "mDNSShared/dnssd_ipc.c", 117*48a54d36SAndroid Build Coastguard Worker "mDNSShared/GenLinkedList.c", 118*48a54d36SAndroid Build Coastguard Worker "mDNSShared/mDNSDebug.c", 119*48a54d36SAndroid Build Coastguard Worker "mDNSShared/PlatformCommon.c", 120*48a54d36SAndroid Build Coastguard Worker "mDNSShared/uds_daemon.c", 121*48a54d36SAndroid Build Coastguard Worker ], 122*48a54d36SAndroid Build Coastguard Worker 123*48a54d36SAndroid Build Coastguard Worker local_include_dirs: [ 124*48a54d36SAndroid Build Coastguard Worker "mDNSCore", 125*48a54d36SAndroid Build Coastguard Worker "mDNSPosix", 126*48a54d36SAndroid Build Coastguard Worker "mDNSShared", 127*48a54d36SAndroid Build Coastguard Worker ], 128*48a54d36SAndroid Build Coastguard Worker init_rc: ["mdnsd.rc"], 129*48a54d36SAndroid Build Coastguard Worker 130*48a54d36SAndroid Build Coastguard Worker cflags: ["-DMDNS_VERSIONSTR_NODTS=1"], 131*48a54d36SAndroid Build Coastguard Worker 132*48a54d36SAndroid Build Coastguard Worker shared_libs: [ 133*48a54d36SAndroid Build Coastguard Worker "libcutils", 134*48a54d36SAndroid Build Coastguard Worker "liblog", 135*48a54d36SAndroid Build Coastguard Worker ], 136*48a54d36SAndroid Build Coastguard Worker} 137*48a54d36SAndroid Build Coastguard Worker 138*48a54d36SAndroid Build Coastguard Worker//######################### 139*48a54d36SAndroid Build Coastguard Worker 140*48a54d36SAndroid Build Coastguard Workercc_library { 141*48a54d36SAndroid Build Coastguard Worker name: "libmdnssd", 142*48a54d36SAndroid Build Coastguard Worker defaults: ["mdnsresponder_default_cflags"], 143*48a54d36SAndroid Build Coastguard Worker host_supported: true, 144*48a54d36SAndroid Build Coastguard Worker recovery_available: true, 145*48a54d36SAndroid Build Coastguard Worker srcs: [ 146*48a54d36SAndroid Build Coastguard Worker "mDNSShared/dnssd_clientlib.c", 147*48a54d36SAndroid Build Coastguard Worker "mDNSShared/dnssd_clientstub.c", 148*48a54d36SAndroid Build Coastguard Worker "mDNSShared/dnssd_ipc.c", 149*48a54d36SAndroid Build Coastguard Worker ], 150*48a54d36SAndroid Build Coastguard Worker 151*48a54d36SAndroid Build Coastguard Worker target: { 152*48a54d36SAndroid Build Coastguard Worker host: { 153*48a54d36SAndroid Build Coastguard Worker shared: { 154*48a54d36SAndroid Build Coastguard Worker enabled: false, 155*48a54d36SAndroid Build Coastguard Worker }, 156*48a54d36SAndroid Build Coastguard Worker }, 157*48a54d36SAndroid Build Coastguard Worker windows: { 158*48a54d36SAndroid Build Coastguard Worker srcs: ["mDNSWindows/DLL/dllmain.c"], 159*48a54d36SAndroid Build Coastguard Worker 160*48a54d36SAndroid Build Coastguard Worker cflags: [ 161*48a54d36SAndroid Build Coastguard Worker "-D_WINDOWS", 162*48a54d36SAndroid Build Coastguard Worker "-D_USERDLL", 163*48a54d36SAndroid Build Coastguard Worker "-D_MDNS_DEBUGMSGS=0", 164*48a54d36SAndroid Build Coastguard Worker "-D_SSIZE_T", 165*48a54d36SAndroid Build Coastguard Worker "-DNOT_HAVE_SA_LENGTH", 166*48a54d36SAndroid Build Coastguard Worker "-Wno-unknown-pragmas", 167*48a54d36SAndroid Build Coastguard Worker "-Wno-overflow", 168*48a54d36SAndroid Build Coastguard Worker "-Wno-pragma-pack", 169*48a54d36SAndroid Build Coastguard Worker "-include iphlpapi.h", 170*48a54d36SAndroid Build Coastguard Worker "-include stdlib.h", 171*48a54d36SAndroid Build Coastguard Worker "-include stdio.h", 172*48a54d36SAndroid Build Coastguard Worker ], 173*48a54d36SAndroid Build Coastguard Worker }, 174*48a54d36SAndroid Build Coastguard Worker }, 175*48a54d36SAndroid Build Coastguard Worker 176*48a54d36SAndroid Build Coastguard Worker export_include_dirs: ["mDNSShared"], 177*48a54d36SAndroid Build Coastguard Worker 178*48a54d36SAndroid Build Coastguard Worker static_libs: ["libcutils"], 179*48a54d36SAndroid Build Coastguard Worker shared_libs: ["liblog"], 180*48a54d36SAndroid Build Coastguard Worker 181*48a54d36SAndroid Build Coastguard Worker min_sdk_version: "apex_inherit", 182*48a54d36SAndroid Build Coastguard Worker apex_available: [ 183*48a54d36SAndroid Build Coastguard Worker "//apex_available:platform", 184*48a54d36SAndroid Build Coastguard Worker "com.android.adbd", 185*48a54d36SAndroid Build Coastguard Worker ], 186*48a54d36SAndroid Build Coastguard Worker visibility: [ 187*48a54d36SAndroid Build Coastguard Worker "//bootable/recovery/minadbd:__subpackages__", 188*48a54d36SAndroid Build Coastguard Worker "//packages/modules/adb:__subpackages__", 189*48a54d36SAndroid Build Coastguard Worker ], 190*48a54d36SAndroid Build Coastguard Worker} 191