| // |
| // Copyright (C) 2021 The Android Open Source Project |
| // |
| // Licensed under the Apache License, Version 2.0 (the "License"); |
| // you may not use this file except in compliance with the License. |
| // You may obtain a copy of the License at |
| // |
| // http://www.apache.org/licenses/LICENSE-2.0 |
| // |
| // Unless required by applicable law or agreed to in writing, software |
| // distributed under the License is distributed on an "AS IS" BASIS, |
| // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| // See the License for the specific language governing permissions and |
| // limitations under the License. |
| // |
| |
| package { |
| // See: http://go/android-license-faq |
| default_applicable_licenses: ["Android-Apache-2.0"], |
| } |
| |
| framework_remoteauth_srcs = [":framework-remoteauth-java-sources"] |
| framework_remoteauth_api_srcs = [] |
| |
| java_defaults { |
| name: "enable-remoteauth-targets", |
| enabled: true, |
| } |
| |
| // Include build rules from Sources.bp |
| build = ["Sources.bp"] |
| |
| java_defaults { |
| name: "enable-framework-connectivity-t-targets", |
| enabled: true, |
| } |
| // The above defaults can be used to disable framework-connectivity t |
| // targets while minimizing merge conflicts in the build rules. |
| |
| // SDK library for connectivity bootclasspath classes that were part of the non-updatable API before |
| // T, and were moved to the module in T. Other bootclasspath classes in connectivity should go to |
| // framework-connectivity. |
| java_defaults { |
| name: "framework-connectivity-t-defaults", |
| sdk_version: "module_current", |
| min_sdk_version: "Tiramisu", |
| defaults: [ |
| "framework-module-defaults", |
| ], |
| srcs: [ |
| ":framework-connectivity-tiramisu-updatable-sources", |
| ":framework-nearby-java-sources", |
| ":framework-thread-sources", |
| ], |
| libs: [ |
| "unsupportedappusage", |
| "app-compat-annotations", |
| "androidx.annotation_annotation", |
| ], |
| impl_only_libs: [ |
| // The build system will use framework-bluetooth module_current stubs, because |
| // of sdk_version: "module_current" above. |
| "framework-bluetooth", |
| "framework-wifi", |
| // Compile against the entire implementation of framework-connectivity, |
| // including hidden methods. This is safe because if framework-connectivity-t is |
| // on the bootclasspath (i.e., T), then framework-connectivity is also on the |
| // bootclasspath (because it shipped in S). |
| // |
| // This compiles against the pre-jarjar target so that this code can use |
| // non-jarjard names of widely-used packages such as com.android.net.module.util. |
| "framework-connectivity-pre-jarjar", |
| ], |
| aidl: { |
| generate_get_transaction_name: true, |
| include_dirs: [ |
| // For connectivity-framework classes such as Network.aidl, |
| // and connectivity-framework-t classes such as |
| // NetworkStateSnapshot.aidl |
| "packages/modules/Connectivity/framework/aidl-export", |
| ], |
| }, |
| apex_available: [ |
| "com.android.tethering", |
| ], |
| } |
| |
| filegroup { |
| name: "connectivity-t-hiddenapi-files", |
| srcs: ["hiddenapi/*.txt"], |
| visibility: ["//packages/modules/Connectivity:__subpackages__"], |
| } |
| |
| // The filegroup lists files that are necessary for verifying building mdns as a standalone, |
| // for use with service-connectivity-mdns-standalone-build-test |
| // This filegroup should never be included in anywhere in the module build. It is only used for |
| // building service-connectivity-mdns-standalone-build-test target. The files will be renamed by |
| // copybara to prevent them from being shadowed by the bootclasspath copies. |
| filegroup { |
| name: "framework-connectivity-t-mdns-standalone-build-sources", |
| srcs: [ |
| "src/android/net/nsd/OffloadEngine.java", |
| "src/android/net/nsd/OffloadServiceInfo.java", |
| ], |
| visibility: ["//packages/modules/Connectivity:__subpackages__"], |
| } |
| |
| java_library { |
| name: "framework-connectivity-t-pre-jarjar", |
| defaults: ["framework-connectivity-t-defaults"], |
| libs: [ |
| "framework-bluetooth", |
| "framework-wifi", |
| "framework-connectivity-pre-jarjar", |
| ], |
| visibility: ["//packages/modules/Connectivity:__subpackages__"], |
| } |
| |
| // SDK library for connectivity bootclasspath classes that were part of the non-updatable API before |
| // T, and were moved to the module in T. Other bootclasspath classes in connectivity should go to |
| // framework-connectivity. |
| java_sdk_library { |
| name: "framework-connectivity-t", |
| defaults: [ |
| "framework-connectivity-t-defaults", |
| "enable-framework-connectivity-t-targets", |
| ], |
| // Do not add static_libs to this library: put them in framework-connectivity instead. |
| // The jarjar rules are only so that references to jarjared utils in |
| // framework-connectivity-pre-jarjar match at runtime. |
| jarjar_rules: ":framework-connectivity-jarjar-rules", |
| stub_only_libs: [ |
| // Use prebuilt framework-connectivity stubs to avoid circular dependencies |
| "sdk_module-lib_current_framework-connectivity", |
| ], |
| libs: [ |
| "sdk_module-lib_current_framework-connectivity", |
| ], |
| permitted_packages: [ |
| "android.app.usage", |
| "android.net", |
| "android.net.nsd", |
| "android.nearby", |
| "com.android.connectivity", |
| "com.android.nearby", |
| ], |
| |
| hidden_api: { |
| max_target_o_low_priority: [ |
| "hiddenapi/hiddenapi-max-target-o-low-priority-tiramisu.txt", |
| ], |
| max_target_r_low_priority: [ |
| "hiddenapi/hiddenapi-max-target-r-loprio.txt", |
| ], |
| unsupported: [ |
| "hiddenapi/hiddenapi-unsupported-tiramisu.txt", |
| ], |
| }, |
| |
| impl_library_visibility: [ |
| "//packages/modules/Connectivity/Tethering/apex", |
| // In preparation for future move |
| "//packages/modules/Connectivity/apex", |
| "//packages/modules/Connectivity/service", // For R8 only |
| "//packages/modules/Connectivity/service-t", |
| "//packages/modules/Connectivity/nearby:__subpackages__", |
| "//packages/modules/Connectivity/remoteauth:__subpackages__", |
| "//frameworks/base", |
| |
| // Tests using hidden APIs |
| "//cts/tests/netlegacy22.api", |
| "//cts/tests/tests/app.usage", // NetworkUsageStatsTest |
| "//external/sl4a:__subpackages__", |
| "//frameworks/base/core/tests/bandwidthtests", |
| "//frameworks/base/core/tests/benchmarks", |
| "//frameworks/base/core/tests/utillib", |
| "//frameworks/base/tests/vcn", |
| "//frameworks/opt/net/ethernet/tests:__subpackages__", |
| "//frameworks/opt/telephony/tests/telephonytests", |
| "//packages/modules/CaptivePortalLogin/tests", |
| "//packages/modules/Connectivity/staticlibs/testutils", |
| "//packages/modules/Connectivity/staticlibs/tests:__subpackages__", |
| "//packages/modules/Connectivity/Tethering/tests:__subpackages__", |
| "//packages/modules/Connectivity/tests:__subpackages__", |
| "//packages/modules/IPsec/tests/iketests", |
| "//packages/modules/NetworkStack/tests:__subpackages__", |
| "//packages/modules/Wifi/service/tests/wifitests", |
| ], |
| } |
| |
| // This rule is not used anymore(b/268440216). |
| platform_compat_config { |
| name: "connectivity-t-platform-compat-config", |
| src: ":framework-connectivity-t", |
| } |