filegroup { name: "services-main-sources", srcs: ["java/**/*.java"], path: "java", visibility: ["//visibility:private"], } filegroup { name: "services-sources", srcs: [ ":services.core-sources", ":services.accessibility-sources", ":services.appprediction-sources", ":services.appwidget-sources", ":services.autofill-sources", ":services.backup-sources", ":services.companion-sources", ":services.contentcapture-sources", ":services.contentsuggestions-sources", ":services.coverage-sources", ":services.devicepolicy-sources", ":services.midi-sources", ":services.net-sources", ":services.print-sources", ":services.restrictions-sources", ":services.startop.iorap-sources", ":services.systemcaptions-sources", ":services.usage-sources", ":services.usb-sources", ":services.voiceinteraction-sources", ], visibility: ["//visibility:private"], } // merge all required services into one jar // ============================================================ java_library { name: "services", installable: true, dex_preopt: { app_image: true, profile: "art-profile", }, srcs: [":services-main-sources"], // The convention is to name each service module 'services.$(module_name)' static_libs: [ "services.core", "services.accessibility", "services.appprediction", "services.appwidget", "services.autofill", "services.backup", "services.companion", "services.contentcapture", "services.contentsuggestions", "services.coverage", "services.devicepolicy", "services.midi", "services.net", "services.print", "services.restrictions", "services.startop", "services.systemcaptions", "services.usage", "services.usb", "services.voiceinteraction", "android.hidl.base-V1.0-java", ], libs: [ "android.hidl.manager-V1.0-java", "framework-tethering" ], plugins: [ "compat-changeid-annotation-processor", ], // Uncomment to enable output of certain warnings (deprecated, unchecked) //javacflags: ["-Xlint"], } // native library // ============================================================= cc_library_shared { name: "libandroid_servers", defaults: ["libservices.core-libs"], whole_static_libs: ["libservices.core"], } platform_compat_config { name: "services-platform-compat-config", src: ":services", } filegroup { name: "art-profile", srcs: ["art-profile"], } // API stub // ============================================================= droidstubs { name: "services-stubs.sources", srcs: [":services-sources"], installable: false, // TODO: remove the --hide options below args: " --show-single-annotation android.annotation.SystemApi\\(client=android.annotation.SystemApi.Client.MODULE_LIBRARIES,process=android.annotation.SystemApi.Process.SYSTEM_SERVER\\)" + " --hide-annotation android.annotation.Hide" + " --hide-package com.google.android.startop.iorap" + " --hide ReferencesHidden" + " --hide DeprecationMismatch" + " --hide HiddenTypedefConstant", libs: [ "framework-all", ], visibility: ["//visibility:private"], check_api: { current: { api_file: "api/current.txt", removed_api_file: "api/removed.txt", }, }, } java_library { name: "services-stubs", srcs: [":services-stubs.sources"], installable: false, }