diff options
Diffstat (limited to 'Android.bp')
| -rw-r--r-- | Android.bp | 635 |
1 files changed, 624 insertions, 11 deletions
diff --git a/Android.bp b/Android.bp index 22fe23dc85ee..e71c6c79d08d 100644 --- a/Android.bp +++ b/Android.bp @@ -27,6 +27,7 @@ java_library { name: "framework", + installable: true, srcs: [ // From build/make/core/pathmap.mk FRAMEWORK_BASE_SUBDIRS @@ -100,8 +101,10 @@ java_library { "core/java/android/app/backup/ISelectBackupTransportCallback.aidl", "core/java/android/app/slice/ISliceManager.aidl", "core/java/android/app/slice/ISliceListener.aidl", + "core/java/android/app/timedetector/ITimeDetectorService.aidl", "core/java/android/app/timezone/ICallback.aidl", "core/java/android/app/timezone/IRulesManager.aidl", + "core/java/android/app/timezonedetector/ITimeZoneDetectorService.aidl", "core/java/android/app/usage/ICacheQuotaService.aidl", "core/java/android/app/usage/IStorageStatsManager.aidl", "core/java/android/app/usage/IUsageStatsManager.aidl", @@ -215,7 +218,6 @@ java_library { "core/java/android/se/omapi/ISecureElementChannel.aidl", "core/java/android/se/omapi/ISecureElementReader.aidl", "core/java/android/se/omapi/ISecureElementSession.aidl", - "core/java/android/os/IBatteryPropertiesListener.aidl", "core/java/android/os/IBatteryPropertiesRegistrar.aidl", "core/java/android/os/ICancellationSignal.aidl", "core/java/android/os/IDeviceIdentifiersPolicyService.aidl", @@ -646,6 +648,8 @@ java_library { "system/bt/binder", "system/security/keystore/binder", ], + + generate_get_transaction_name: true }, exclude_srcs: [ @@ -702,6 +706,7 @@ java_library { // specified on the build command line. java_library { name: "framework-oahl-backward-compatibility", + installable: true, srcs: [ "core/java/android/content/pm/OrgApacheHttpLegacyUpdater.java", ], @@ -730,22 +735,24 @@ gensrcs { name: "framework-javastream-protos", depfile: true, + tool_files: [ "tools/genprotos.sh", ], tools: [ "aprotoc", "protoc-gen-javastream", "soong_zip", ], - cmd: "mkdir -p $(genDir)/$(in) " + - "&& $(location aprotoc) " + - " --plugin=$(location protoc-gen-javastream) " + - " --dependency_out=$(depfile) " + - " --javastream_out=$(genDir)/$(in) " + - " -Iexternal/protobuf/src " + - " -I . " + - " $(in) " + - "&& $(location soong_zip) -jar -o $(out) -C $(genDir)/$(in) -D $(genDir)/$(in)", - + // TODO This should not be needed. If you set a custom OUT_DIR or OUT_DIR_COMMON_BASE you can + // end up with a command that is extremely long, potentially going passed MAX_ARG_STRLEN due to + // the way sbox rewrites the command. See b/70221552. + cmd: "$(location tools/genprotos.sh) " + + " $(location aprotoc) " + + " $(location protoc-gen-javastream) " + + " $(location soong_zip) " + + " $(genDir) " + + " $(depfile) " + + " $(in) " + + " $(out)", srcs: [ "core/proto/**/*.proto", "libs/incident/**/*.proto", @@ -757,6 +764,7 @@ gensrcs { // ============================================================ java_library { name: "ext", + installable: true, no_framework_libs: true, static_libs: [ "libphonenumber-platform", @@ -767,6 +775,24 @@ java_library { dxflags: ["--core-library"], } +// ==== java proto host library ============================== +java_library_host { + name: "platformprotos", + srcs: [ + "cmds/am/proto/instrumentation_data.proto", + "core/proto/**/*.proto", + "libs/incident/proto/**/*.proto", + "cmds/statsd/src/**/*.proto", + ], + proto: { + include_dirs: ["external/protobuf/src"], + type: "full", + }, + errorprone: { + javacflags: ["-Xep:MissingOverride:OFF"], // b/72714520 + }, +} + // ==== c++ proto device library ============================== cc_library { name: "libplatformprotos", @@ -854,6 +880,8 @@ optional_subdirs = [ "core/tests/utiltests/jni", ] +// TODO(b/77285514): remove this once the last few hidl interfaces have been +// updated to use hwbinder.stubs. java_library { name: "hwbinder", no_framework_libs: true, @@ -870,6 +898,7 @@ java_library { "core/java/android/os/IHwInterface.java", "core/java/android/os/DeadObjectException.java", "core/java/android/os/DeadSystemException.java", + "core/java/android/os/NativeHandle.java", "core/java/android/os/RemoteException.java", "core/java/android/util/AndroidException.java", ], @@ -903,3 +932,587 @@ python_binary_host { "fontTools", ], } + +// TODO: Don't rely on this list once droiddoc can take a list of packages to document +frameworks_base_subdirs = [ + "core/java", + "graphics/java", + "location/java", + "media/java", + "media/mca/effect/java", + "media/mca/filterfw/java", + "media/mca/filterpacks/java", + "drm/java", + "opengl/java", + "sax/java", + "telecomm/java", + "telephony/java", + "wifi/java", + "lowpan/java", + "keystore/java", + "rs/java", +] + +packages_to_document = [ + "android", + "javax/microedition/khronos", + "org/apache/http/conn", + "org/apache/http/params", +] + +// The since flag (-since N.xml API_LEVEL) is used to add API Level information +// to the reference documentation. Must be in order of oldest to newest. +// +// Conscrypt (com.android.org.conscrypt) is an implementation detail and should +// not be referenced in the documentation. +framework_docs_args = "-android -manifest $(location core/res/AndroidManifest.xml) " + + "-hidePackage com.android.internal " + + "-hidePackage com.android.internal.util " + + "-hidePackage com.android.okhttp " + + "-hidePackage com.android.org.conscrypt " + + "-hidePackage com.android.server " + + "-since $(location 1/public/api/android.xml) 1 " + + "-since $(location 2/public/api/android.xml) 2 " + + "-since $(location 3/public/api/android.xml) 3 " + + "-since $(location 4/public/api/android.xml) 4 " + + "-since $(location 5/public/api/android.xml) 5 " + + "-since $(location 6/public/api/android.xml) 6 " + + "-since $(location 7/public/api/android.xml) 7 " + + "-since $(location 8/public/api/android.xml) 8 " + + "-since $(location 9/public/api/android.xml) 9 " + + "-since $(location 10/public/api/android.xml) 10 " + + "-since $(location 11/public/api/android.xml) 11 " + + "-since $(location 12/public/api/android.xml) 12 " + + "-since $(location 13/public/api/android.xml) 13 " + + "-since $(location 14/public/api/android.txt) 14 " + + "-since $(location 15/public/api/android.txt) 15 " + + "-since $(location 16/public/api/android.txt) 16 " + + "-since $(location 17/public/api/android.txt) 17 " + + "-since $(location 18/public/api/android.txt) 18 " + + "-since $(location 19/public/api/android.txt) 19 " + + "-since $(location 20/public/api/android.txt) 20 " + + "-since $(location 21/public/api/android.txt) 21 " + + "-since $(location 22/public/api/android.txt) 22 " + + "-since $(location 23/public/api/android.txt) 23 " + + "-since $(location 24/public/api/android.txt) 24 " + + "-since $(location 25/public/api/android.txt) 25 " + + "-since $(location 26/public/api/android.txt) 26 " + + "-since $(location 27/public/api/android.txt) 27 " + + "-since $(location 28/public/api/android.txt) 28 " + + "-since $(location api/current.txt) Q " + + "-werror -lerror -hide 111 -hide 113 -hide 125 -hide 126 -hide 127 -hide 128 " + + "-overview $(location core/java/overview.html) " + + // Federate Support Library references against local API file. + "-federate SupportLib https://developer.android.com " + + "-federationapi SupportLib $(location current/support-api.txt) " + +doc_defaults { + name: "api-stubs-default", + srcs: [ + ":opt-telephony-srcs", + ":opt-net-voip-srcs", + ":openjdk_javadoc_files", + ":non_openjdk_javadoc_files", + ":android_icu4j_src_files_for_docs", + ":gen-ojluni-jaif-annotated-srcs", + ], + exclude_srcs: [ + ":annotated_ojluni_files", + ], + srcs_lib: "framework", + srcs_lib_whitelist_dirs: frameworks_base_subdirs, + srcs_lib_whitelist_pkgs: packages_to_document, + libs: [ + "core-oj", + "core-libart", + "conscrypt", + "bouncycastle", + "okhttp", + "ext", + "framework", + "voip-common", + "android.test.mock", + ], + local_sourcepaths: frameworks_base_subdirs, + html_dirs: [ + "docs/html", + ], + knowntags: [ + "docs/knowntags.txt", + ":known-oj-tags", + ], + custom_template: "droiddoc-templates-sdk", + hdf: [ + "dac true", + "sdk.codename O", + "sdk.preview.version 1", + "sdk.version 7.0", + "sdk.rel.id 1", + "sdk.preview 0", + ], + resourcesdir: "docs/html/reference/images", + resourcesoutdir: "reference/android/images", + installable: false, +} + +doc_defaults { + name: "framework-docs-default", + srcs: [ + "test-base/src/**/*.java", + ":opt-telephony-srcs", + ":opt-net-voip-srcs", + ":openjdk_javadoc_files", + ":non_openjdk_javadoc_files", + ":android_icu4j_src_files_for_docs", + ":gen-ojluni-jaif-annotated-srcs", + "test-mock/src/**/*.java", + "test-runner/src/**/*.java", + ], + exclude_srcs: [ + ":annotated_ojluni_files", + ], + srcs_lib: "framework", + srcs_lib_whitelist_dirs: frameworks_base_subdirs, + srcs_lib_whitelist_pkgs: packages_to_document, + libs: [ + "conscrypt", + "bouncycastle", + "voip-common", + "android.test.mock", + "android-support-annotations", + "android-support-compat", + "android-support-core-ui", + "android-support-core-utils", + "android-support-customtabs", + "android-support-design", + "android-support-dynamic-animation", + "android-support-exifinterface", + "android-support-fragment", + "android-support-media-compat", + "android-support-percent", + "android-support-recommendation", + "android-support-transition", + "android-support-tv-provider", + "android-support-v7-cardview", + "android-support-v7-gridlayout", + "android-support-v7-mediarouter", + "android-support-v7-palette", + "android-support-v7-preference", + "android-support-v13", + "android-support-v14-preference", + "android-support-v17-leanback", + "android-support-v17-preference-leanback", + "android-support-wear", + "android-support-vectordrawable", + "android-support-animatedvectordrawable", + "android-support-v7-appcompat", + "android-support-v7-recyclerview", + "android-support-emoji", + "android-support-emoji-appcompat", + "android-support-emoji-bundled", + "android-support-v8-renderscript", + "android-support-multidex", + "android-support-multidex-instrumentation", + ], + local_sourcepaths: frameworks_base_subdirs, + html_dirs: [ + "docs/html", + ], + knowntags: [ + "docs/knowntags.txt", + ":known-oj-tags", + ], + custom_template: "droiddoc-templates-sdk", + resourcesdir: "docs/html/reference/images/", + resourcesoutdir: "reference/android/images/", + hdf: [ + "dac true", + "sdk.codename O", + "sdk.preview.version 1", + "sdk.version 7.0", + "sdk.rel.id 1", + "sdk.preview 0", + ], + arg_files: [ + "core/res/AndroidManifest.xml", + ":api-version-xml", + "core/java/overview.html", + ":current-support-api", + "api/current.txt", + ], + create_stubs: false, +} + +droiddoc { + name: "doc-comment-check-docs", + defaults: ["framework-docs-default"], + args: framework_docs_args + " -referenceonly -parsecomments", + installable: false, +} + +droiddoc { + name: "offline-sdk-docs", + defaults: ["framework-docs-default"], + hdf: [ + "android.whichdoc offline", + ], + proofread_file: "offline-sdk-docs-proofrerad.txt", + args: framework_docs_args + " -offlinemode -title \"Android SDK\"", + write_sdk_values: true, + static_doc_index_redirect: "docs/docs-preview-index.html", +} + +droiddoc { + name: "offline-sdk-referenceonly-docs", + defaults: ["framework-docs-default"], + hdf: [ + "android.whichdoc offline", + ], + proofread_file: "offline-sdk-referenceonly-docs-proofrerad.txt", + args: framework_docs_args + " -offlinemode -title \"Android SDK\" -referenceonly", + write_sdk_values: true, + static_doc_index_redirect: "docs/docs-documentation-redirect.html", + static_doc_properties: "docs/source.properties", +} + +droiddoc { + name: "offline-system-sdk-referenceonly-docs", + defaults: ["framework-docs-default"], + hdf: [ + "android.whichdoc offline", + ], + proofread_file: "offline-system-sdk-referenceonly-docs-proofrerad.txt", + args: framework_docs_args + " -hide 101 -hide 104 -hide 108" + + " -showAnnotation android.annotation.SystemApi " + + " -offlinemode -title \"Android System SDK\" -referenceonly", + write_sdk_values: true, + static_doc_index_redirect: "docs/docs-documentation-redirect.html", + static_doc_properties: "docs/source.properties", +} + +droiddoc { + name: "online-sdk-docs", + defaults: ["framework-docs-default"], + hdf: [ + "android.whichdoc online", + "android.hasSamples true", + ], + proofread_file: "online-sdk-docs-proofrerad.txt", + args: framework_docs_args + + " -toroot / -samplegroup Admin " + + " -samplegroup Background " + + " -samplegroup Connectivity " + + " -samplegroup Content " + + " -samplegroup Input " + + " -samplegroup Media " + + " -samplegroup Notification " + + " -samplegroup RenderScript " + + " -samplegroup Security " + + " -samplegroup Sensors " + + " -samplegroup System " + + " -samplegroup Testing " + + " -samplegroup UI " + + " -samplegroup Views " + + " -samplegroup Wearable -samplesdir development/samples/browseable ", +} + +droiddoc { + name: "online-system-api-sdk-docs", + defaults: ["framework-docs-default"], + hdf: [ + "android.whichdoc online", + "android.hasSamples true", + ], + proofread_file: "online-system-api-sdk-docs-proofrerad.txt", + args: framework_docs_args + + " -referenceonly " + + " -showAnnotation android.annotation.SystemApi " + + " -title \"Android SDK - Including system APIs.\" " + + " -hide 101 " + + " -hide 104 " + + " -hide 108 " + + " -toroot / -samplegroup Admin " + + " -samplegroup Background " + + " -samplegroup Connectivity " + + " -samplegroup Content " + + " -samplegroup Input " + + " -samplegroup Media " + + " -samplegroup Notification " + + " -samplegroup RenderScript " + + " -samplegroup Security " + + " -samplegroup Sensors " + + " -samplegroup System " + + " -samplegroup Testing " + + " -samplegroup UI " + + " -samplegroup Views " + + " -samplegroup Wearable -samplesdir development/samples/browseable ", + installable: false, +} + +droiddoc { + name: "ds-docs", + defaults: ["framework-docs-default"], + hdf: [ + "android.whichdoc online", + "android.hasSamples true", + ], + proofread_file: "ds-docs-proofrerad.txt", + args: framework_docs_args + + " -toroot / -samplegroup Admin " + + " -samplegroup Background " + + " -samplegroup Connectivity " + + " -samplegroup Content " + + " -samplegroup Input " + + " -samplegroup Media " + + " -samplegroup Notification " + + " -samplegroup RenderScript " + + " -samplegroup Security " + + " -samplegroup Sensors " + + " -samplegroup System " + + " -samplegroup Testing " + + " -samplegroup UI " + + " -samplegroup Views " + + " -samplegroup Wearable -devsite -samplesdir development/samples/browseable ", +} + +droiddoc { + name: "ds-static-docs", + defaults: ["framework-docs-default"], + hdf: [ + "android.whichdoc online", + ], + proofread_file: "ds-static-docs-proofrerad.txt", + args: framework_docs_args + + " -staticonly " + + " -toroot / " + + " -devsite " + + " -ignoreJdLinks ", +} + +droiddoc { + name: "ds-ref-navtree-docs", + defaults: ["framework-docs-default"], + hdf: [ + "android.whichdoc online", + ], + proofread_file: "ds-ref-navtree-docs-proofrerad.txt", + args: framework_docs_args + + " -toroot / " + + " -atLinksNavtree " + + " -navtreeonly ", +} + +droiddoc { + name: "online-sdk-dev-docs", + defaults: ["framework-docs-default"], + hdf: [ + "android.whichdoc online", + "android.hasSamples true", + ], + proofread_file: "online-sdk-dev-docs-proofrerad.txt", + args: framework_docs_args + + " -toroot / -samplegroup Admin " + + " -samplegroup Background " + + " -samplegroup Connectivity " + + " -samplegroup Content " + + " -samplegroup Input " + + " -samplegroup Media " + + " -samplegroup Notification " + + " -samplegroup RenderScript " + + " -samplegroup Security " + + " -samplegroup Sensors " + + " -samplegroup System " + + " -samplegroup Testing " + + " -samplegroup UI " + + " -samplegroup Views " + + " -samplegroup Wearable -samplesdir development/samples/browseable ", +} + +droiddoc { + name: "hidden-docs", + defaults: ["framework-docs-default"], + proofread_file: "hidden-docs-proofrerad.txt", + args: framework_docs_args + + " -referenceonly " + + " -title \"Android SDK - Including hidden APIs.\"", +} + +droiddoc { + name: "hwbinder-stubs-docs", + srcs: [ + "core/java/android/os/HidlSupport.java", + "core/java/android/annotation/IntDef.java", + "core/java/android/annotation/NonNull.java", + "core/java/android/annotation/SystemApi.java", + "core/java/android/os/HwBinder.java", + "core/java/android/os/HwBlob.java", + "core/java/android/os/HwParcel.java", + "core/java/android/os/IHwBinder.java", + "core/java/android/os/IHwInterface.java", + "core/java/android/os/DeadObjectException.java", + "core/java/android/os/DeadSystemException.java", + "core/java/android/os/NativeHandle.java", + "core/java/android/os/RemoteException.java", + "core/java/android/util/AndroidException.java", + ], + custom_template: "droiddoc-templates-sdk", + installable: false, + no_framework_libs: true, + args: "-showAnnotation android.annotation.SystemApi -nodocs -stubsourceonly", +} + +java_library_static { + name: "hwbinder.stubs", + sdk_version: "core_current", + srcs: [ + ":hwbinder-stubs-docs", + ], +} + +droiddoc { + name: "hiddenapi-lists", + defaults: ["api-stubs-default"], + arg_files: [ + "core/res/AndroidManifest.xml", + ":api-version-xml", + "core/java/overview.html", + ":current-support-api", + "api/current.txt", + ], + dex_api_filename: "public-dex.txt", + private_dex_api_filename: "private-dex.txt", + removed_dex_api_filename: "removed-dex.txt", + args: framework_docs_args + + " -referenceonly" + + " -nodocs" + + " -showUnannotated" + + " -showAnnotation android.annotation.SystemApi" + + " -showAnnotation android.annotation.TestApi", +} + +droiddoc { + name: "hiddenapi-mappings", + defaults: ["api-stubs-default"], + arg_files: [ + "core/res/AndroidManifest.xml", + ":api-version-xml", + "core/java/overview.html", + ":current-support-api", + "api/current.txt", + ], + dex_mapping_filename: "dex-mapping.txt", + args: framework_docs_args + + " -referenceonly" + + " -nodocs" + + " -showUnannotated" + + " -showAnnotation android.annotation.SystemApi" + + " -showAnnotation android.annotation.TestApi", +} + +filegroup { + name: "apache-http-stubs-sources", + srcs: [ + "core/java/org/apache/http/conn/ConnectTimeoutException.java", + "core/java/org/apache/http/conn/scheme/HostNameResolver.java", + "core/java/org/apache/http/conn/scheme/LayeredSocketFactory.java", + "core/java/org/apache/http/conn/scheme/SocketFactory.java", + "core/java/org/apache/http/conn/ssl/AbstractVerifier.java", + "core/java/org/apache/http/conn/ssl/AllowAllHostnameVerifier.java", + "core/java/org/apache/http/conn/ssl/AndroidDistinguishedNameParser.java", + "core/java/org/apache/http/conn/ssl/BrowserCompatHostnameVerifier.java", + "core/java/org/apache/http/conn/ssl/SSLSocketFactory.java", + "core/java/org/apache/http/conn/ssl/StrictHostnameVerifier.java", + "core/java/org/apache/http/conn/ssl/X509HostnameVerifier.java", + "core/java/org/apache/http/params/CoreConnectionPNames.java", + "core/java/org/apache/http/params/HttpConnectionParams.java", + "core/java/org/apache/http/params/HttpParams.java", + "core/java/android/net/http/HttpResponseCache.java", + "core/java/android/net/http/SslCertificate.java", + "core/java/android/net/http/SslError.java", + "core/java/com/android/internal/util/HexDump.java", + ], +} + +metalava_framework_docs_args = "--manifest $(location core/res/AndroidManifest.xml) " + + "--hide-package com.android.okhttp " + + "--hide-package com.android.org.conscrypt --hide-package com.android.server " + + "--hide RequiresPermission " + + "--hide MissingPermission --hide BroadcastBehavior " + + "--hide HiddenSuperclass --hide DeprecationMismatch --hide UnavailableSymbol " + + "--hide SdkConstant --hide HiddenTypeParameter --hide Todo --hide Typo" + +doc_defaults { + name: "metalava-api-stubs-default", + srcs: [ + ":opt-telephony-srcs", + ":opt-net-voip-srcs", + ":openjdk_javadoc_files", + ":non_openjdk_javadoc_files", + ":android_icu4j_src_files_for_docs", + ":gen-ojluni-jaif-annotated-srcs", + ], + exclude_srcs: [ + ":annotated_ojluni_files", + ], + srcs_lib: "framework", + srcs_lib_whitelist_dirs: frameworks_base_subdirs, + srcs_lib_whitelist_pkgs: packages_to_document, + libs: [ + "core-oj", + "core-libart", + "conscrypt", + "bouncycastle", + "okhttp", + "ext", + "framework", + "voip-common", + "android.test.mock", + ], + local_sourcepaths: frameworks_base_subdirs, + installable: false, + metalava_enabled: true, + metalava_annotations_enabled: true, + metalava_previous_api: ":last-released-public-api", + metalava_merge_annotations_dirs: [ + "metalava-manual", + "ojluni-annotated-stubs", + ], +} + +droiddoc { + name: "api-stubs-docs", + defaults: ["metalava-api-stubs-default"], + api_filename: "public_api.txt", + private_api_filename: "private.txt", + removed_api_filename: "removed.txt", + arg_files: [ + "core/res/AndroidManifest.xml", + ], + args: metalava_framework_docs_args, +} + +droiddoc { + name: "system-api-stubs-docs", + defaults: ["metalava-api-stubs-default"], + api_tag_name: "SYSTEM", + api_filename: "system-api.txt", + private_api_filename: "system-private.txt", + private_dex_api_filename: "system-private-dex.txt", + removed_api_filename: "system-removed.txt", + arg_files: [ + "core/res/AndroidManifest.xml", + ], + args: metalava_framework_docs_args + " --show-annotation android.annotation.SystemApi", +} + +droiddoc { + name: "test-api-stubs-docs", + defaults: ["metalava-api-stubs-default"], + api_tag_name: "TEST", + api_filename: "test-api.txt", + removed_api_filename: "test-removed.txt", + arg_files: [ + "core/res/AndroidManifest.xml", + ], + args: metalava_framework_docs_args + " --show-annotation android.annotation.TestApi", +} |