1*38e8c45fSAndroid Build Coastguard Workerpackage { 2*38e8c45fSAndroid Build Coastguard Worker // See: http://go/android-license-faq 3*38e8c45fSAndroid Build Coastguard Worker // A large-scale-change added 'default_applicable_licenses' to import 4*38e8c45fSAndroid Build Coastguard Worker // all of the 'license_kinds' from "frameworks_native_license" 5*38e8c45fSAndroid Build Coastguard Worker // to get the below license kinds: 6*38e8c45fSAndroid Build Coastguard Worker // SPDX-license-identifier-Apache-2.0 7*38e8c45fSAndroid Build Coastguard Worker default_applicable_licenses: ["frameworks_native_license"], 8*38e8c45fSAndroid Build Coastguard Worker} 9*38e8c45fSAndroid Build Coastguard Worker 10*38e8c45fSAndroid Build Coastguard Workercc_defaults { 11*38e8c45fSAndroid Build Coastguard Worker name: "servicemanager_defaults", 12*38e8c45fSAndroid Build Coastguard Worker 13*38e8c45fSAndroid Build Coastguard Worker cflags: [ 14*38e8c45fSAndroid Build Coastguard Worker "-Wall", 15*38e8c45fSAndroid Build Coastguard Worker "-Wextra", 16*38e8c45fSAndroid Build Coastguard Worker "-Werror", 17*38e8c45fSAndroid Build Coastguard Worker "-DANDROID_UTILS_REF_BASE_DISABLE_IMPLICIT_CONSTRUCTION", 18*38e8c45fSAndroid Build Coastguard Worker ], 19*38e8c45fSAndroid Build Coastguard Worker 20*38e8c45fSAndroid Build Coastguard Worker srcs: [ 21*38e8c45fSAndroid Build Coastguard Worker "Access.cpp", 22*38e8c45fSAndroid Build Coastguard Worker "ServiceManager.cpp", 23*38e8c45fSAndroid Build Coastguard Worker ], 24*38e8c45fSAndroid Build Coastguard Worker 25*38e8c45fSAndroid Build Coastguard Worker shared_libs: [ 26*38e8c45fSAndroid Build Coastguard Worker "libbase", 27*38e8c45fSAndroid Build Coastguard Worker "libvintf", 28*38e8c45fSAndroid Build Coastguard Worker "libcutils", 29*38e8c45fSAndroid Build Coastguard Worker "liblog", 30*38e8c45fSAndroid Build Coastguard Worker "libutils", 31*38e8c45fSAndroid Build Coastguard Worker "libselinux", 32*38e8c45fSAndroid Build Coastguard Worker "libperfetto_c", 33*38e8c45fSAndroid Build Coastguard Worker ], 34*38e8c45fSAndroid Build Coastguard Worker 35*38e8c45fSAndroid Build Coastguard Worker target: { 36*38e8c45fSAndroid Build Coastguard Worker android: { 37*38e8c45fSAndroid Build Coastguard Worker shared_libs: [ 38*38e8c45fSAndroid Build Coastguard Worker "libbinder", 39*38e8c45fSAndroid Build Coastguard Worker "libutils", 40*38e8c45fSAndroid Build Coastguard Worker ], 41*38e8c45fSAndroid Build Coastguard Worker }, 42*38e8c45fSAndroid Build Coastguard Worker host: { 43*38e8c45fSAndroid Build Coastguard Worker static_libs: [ 44*38e8c45fSAndroid Build Coastguard Worker "libbinder", 45*38e8c45fSAndroid Build Coastguard Worker "libutils", 46*38e8c45fSAndroid Build Coastguard Worker ], 47*38e8c45fSAndroid Build Coastguard Worker }, 48*38e8c45fSAndroid Build Coastguard Worker darwin: { 49*38e8c45fSAndroid Build Coastguard Worker enabled: false, 50*38e8c45fSAndroid Build Coastguard Worker }, 51*38e8c45fSAndroid Build Coastguard Worker vendor: { 52*38e8c45fSAndroid Build Coastguard Worker exclude_shared_libs: [ 53*38e8c45fSAndroid Build Coastguard Worker "libvintf", 54*38e8c45fSAndroid Build Coastguard Worker "libperfetto_c", 55*38e8c45fSAndroid Build Coastguard Worker ], 56*38e8c45fSAndroid Build Coastguard Worker }, 57*38e8c45fSAndroid Build Coastguard Worker recovery: { 58*38e8c45fSAndroid Build Coastguard Worker exclude_shared_libs: ["libperfetto_c"], 59*38e8c45fSAndroid Build Coastguard Worker }, 60*38e8c45fSAndroid Build Coastguard Worker }, 61*38e8c45fSAndroid Build Coastguard Worker} 62*38e8c45fSAndroid Build Coastguard Worker 63*38e8c45fSAndroid Build Coastguard Workercc_binary { 64*38e8c45fSAndroid Build Coastguard Worker name: "servicemanager", 65*38e8c45fSAndroid Build Coastguard Worker defaults: ["servicemanager_defaults"], 66*38e8c45fSAndroid Build Coastguard Worker init_rc: ["servicemanager.rc"], 67*38e8c45fSAndroid Build Coastguard Worker srcs: ["main.cpp"], 68*38e8c45fSAndroid Build Coastguard Worker bootstrap: true, 69*38e8c45fSAndroid Build Coastguard Worker} 70*38e8c45fSAndroid Build Coastguard Worker 71*38e8c45fSAndroid Build Coastguard Workercc_binary { 72*38e8c45fSAndroid Build Coastguard Worker name: "servicemanager.recovery", 73*38e8c45fSAndroid Build Coastguard Worker stem: "servicemanager", 74*38e8c45fSAndroid Build Coastguard Worker recovery: true, 75*38e8c45fSAndroid Build Coastguard Worker defaults: ["servicemanager_defaults"], 76*38e8c45fSAndroid Build Coastguard Worker init_rc: ["servicemanager.recovery.rc"], 77*38e8c45fSAndroid Build Coastguard Worker srcs: ["main.cpp"], 78*38e8c45fSAndroid Build Coastguard Worker} 79*38e8c45fSAndroid Build Coastguard Worker 80*38e8c45fSAndroid Build Coastguard Workercc_binary { 81*38e8c45fSAndroid Build Coastguard Worker name: "vndservicemanager", 82*38e8c45fSAndroid Build Coastguard Worker defaults: ["servicemanager_defaults"], 83*38e8c45fSAndroid Build Coastguard Worker init_rc: ["vndservicemanager.rc"], 84*38e8c45fSAndroid Build Coastguard Worker vendor: true, 85*38e8c45fSAndroid Build Coastguard Worker cflags: [ 86*38e8c45fSAndroid Build Coastguard Worker "-DVENDORSERVICEMANAGER=1", 87*38e8c45fSAndroid Build Coastguard Worker ], 88*38e8c45fSAndroid Build Coastguard Worker required: [ 89*38e8c45fSAndroid Build Coastguard Worker "vndservice", 90*38e8c45fSAndroid Build Coastguard Worker ], 91*38e8c45fSAndroid Build Coastguard Worker srcs: ["main.cpp"], 92*38e8c45fSAndroid Build Coastguard Worker} 93*38e8c45fSAndroid Build Coastguard Worker 94*38e8c45fSAndroid Build Coastguard Workercc_test { 95*38e8c45fSAndroid Build Coastguard Worker name: "servicemanager_test", 96*38e8c45fSAndroid Build Coastguard Worker host_supported: true, 97*38e8c45fSAndroid Build Coastguard Worker test_suites: ["device-tests"], 98*38e8c45fSAndroid Build Coastguard Worker defaults: ["servicemanager_defaults"], 99*38e8c45fSAndroid Build Coastguard Worker srcs: [ 100*38e8c45fSAndroid Build Coastguard Worker "test_sm.cpp", 101*38e8c45fSAndroid Build Coastguard Worker ], 102*38e8c45fSAndroid Build Coastguard Worker static_libs: ["libgmock"], 103*38e8c45fSAndroid Build Coastguard Worker} 104*38e8c45fSAndroid Build Coastguard Worker 105*38e8c45fSAndroid Build Coastguard Workercc_test_host { 106*38e8c45fSAndroid Build Coastguard Worker name: "servicemanager_unittest", 107*38e8c45fSAndroid Build Coastguard Worker test_suites: ["general-tests"], 108*38e8c45fSAndroid Build Coastguard Worker defaults: ["servicemanager_defaults"], 109*38e8c45fSAndroid Build Coastguard Worker srcs: [ 110*38e8c45fSAndroid Build Coastguard Worker "ServiceManagerUnittest.cpp", 111*38e8c45fSAndroid Build Coastguard Worker ], 112*38e8c45fSAndroid Build Coastguard Worker static_libs: ["libgmock"], 113*38e8c45fSAndroid Build Coastguard Worker} 114*38e8c45fSAndroid Build Coastguard Worker 115*38e8c45fSAndroid Build Coastguard Workercc_fuzz { 116*38e8c45fSAndroid Build Coastguard Worker name: "servicemanager_fuzzer", 117*38e8c45fSAndroid Build Coastguard Worker defaults: [ 118*38e8c45fSAndroid Build Coastguard Worker "servicemanager_defaults", 119*38e8c45fSAndroid Build Coastguard Worker "service_fuzzer_defaults", 120*38e8c45fSAndroid Build Coastguard Worker ], 121*38e8c45fSAndroid Build Coastguard Worker host_supported: true, 122*38e8c45fSAndroid Build Coastguard Worker srcs: ["ServiceManagerFuzzer.cpp"], 123*38e8c45fSAndroid Build Coastguard Worker fuzz_config: { 124*38e8c45fSAndroid Build Coastguard Worker libfuzzer_options: [ 125*38e8c45fSAndroid Build Coastguard Worker "max_len=50000", 126*38e8c45fSAndroid Build Coastguard Worker ], 127*38e8c45fSAndroid Build Coastguard Worker cc: [ 128*38e8c45fSAndroid Build Coastguard Worker "[email protected]", 129*38e8c45fSAndroid Build Coastguard Worker "[email protected]", 130*38e8c45fSAndroid Build Coastguard Worker ], 131*38e8c45fSAndroid Build Coastguard Worker }, 132*38e8c45fSAndroid Build Coastguard Worker} 133