diff options
author | David Su <dysu@google.com> | 2019-09-04 14:31:58 -0700 |
---|---|---|
committer | David Su <dysu@google.com> | 2019-12-16 17:16:07 -0800 |
commit | 754fcc20c5b631bd5818e6c9fe3cc83dda2fd1b9 (patch) | |
tree | 6df64c355d3073d5fdb1f25ff1d4326585d13d9c | |
parent | 960a8cf90a091f37007f691a15a2ddead46a12ae (diff) |
Split framework-wifi.jar out of framework.jar
Build framework-wifi against framework-minus-apex.
Build framework-minus-apex against "framework-wifi-stubs".
Build framework.jar against framework-wifi since a few
bundled apps/tests still use @hide Wifi APIs.
framework-minus-apex now only has @SystemApi dependencies
on framework-wifi.
Bug: 140299412
Test: atest FrameworksWifiTest FrameworksWifiApiTests
Change-Id: I3ada1dc7e8186c566cfbf7ad3d3b49878ae9860d
-rw-r--r-- | Android.bp | 30 | ||||
-rw-r--r-- | wifi/Android.bp | 97 |
2 files changed, 101 insertions, 26 deletions
diff --git a/Android.bp b/Android.bp index a26135e8b950..5952ab11db2b 100644 --- a/Android.bp +++ b/Android.bp @@ -200,30 +200,6 @@ filegroup { } filegroup { - name: "framework-wifi-sources", - srcs: [ - "wifi/java/**/*.java", - "wifi/java/**/*.aidl", - ], - exclude_srcs: [ - ":framework-wifi-non-updatable-sources" - ], - path: "wifi/java", -} - -filegroup { - name: "framework-wifi-non-updatable-sources", - srcs: [ - // TODO(b/146011398) package android.net.wifi is now split amongst 2 jars: framework.jar and - // framework-wifi.jar. This is not a good idea, should move WifiNetworkScoreCache - // to a separate package. - "wifi/java/android/net/wifi/WifiNetworkScoreCache.java", - "wifi/java/android/net/wifi/WifiCondManager.java", - "wifi/java/android/net/wifi/wificond/*.java", - ], -} - -filegroup { name: "framework-non-updatable-sources", srcs: [ // Java/AIDL sources under frameworks/base @@ -247,9 +223,7 @@ filegroup { ":framework-telecomm-sources", ":framework-telephony-common-sources", ":framework-telephony-sources", - ":framework-wifi-sources", ":framework-wifi-non-updatable-sources", - ":libwificond_ipc_aidl", ":PacProcessor-aidl-sources", ":ProxyHandler-aidl-sources", @@ -290,6 +264,7 @@ filegroup { ":framework-sdkext-sources", ":framework-statsd-sources", ":updatable-media-srcs", + ":framework-wifi-updatable-sources", ] } @@ -453,6 +428,7 @@ java_library { libs: [ // TODO(b/146167933): Use framework-statsd-stubs "framework-statsd", + "framework-wifi-stubs", ], installable: true, javac_shard_size: 150, @@ -492,6 +468,8 @@ java_library { "framework-sdkext-stubs-systemapi", // TODO(b/146167933): Use framework-statsd-stubs instead. "framework-statsd", + // TODO(b/140299412): should be framework-wifi-stubs + "framework-wifi", // TODO(jiyong): add more stubs for APEXes here ], sdk_version: "core_platform", diff --git a/wifi/Android.bp b/wifi/Android.bp new file mode 100644 index 000000000000..e0b9ff336093 --- /dev/null +++ b/wifi/Android.bp @@ -0,0 +1,97 @@ +// Copyright (C) 2019 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. + + +filegroup { + name: "framework-wifi-updatable-sources", + srcs: [ + "java/**/*.java", + "java/**/*.aidl", + ], + exclude_srcs: [ + ":framework-wifi-non-updatable-sources" + ], + path: "java", +} + +filegroup { + name: "framework-wifi-non-updatable-sources", + srcs: [ + // TODO(b/146011398) package android.net.wifi is now split amongst 2 jars: framework.jar and + // framework-wifi.jar. This is not a good idea, should move WifiNetworkScoreCache + // to a separate package. + "java/android/net/wifi/WifiNetworkScoreCache.java", + "java/android/net/wifi/WifiCondManager.java", + "java/android/net/wifi/wificond/*.java", + ":libwificond_ipc_aidl", + ], +} + +java_library { + name: "framework-wifi", + sdk_version: "core_platform", // TODO(b/140299412) should be core_current + libs: [ + "framework-minus-apex", // TODO(b/140299412) should be framework-system-stubs + ], + srcs: [ + ":framework-wifi-updatable-sources", + ], + installable: true, + optimize: { + enabled: false + } +} + +metalava_wifi_docs_args = + "--hide-package com.android.server " + + "--error UnhiddenSystemApi " + + "--hide RequiresPermission " + + "--hide MissingPermission " + + "--hide BroadcastBehavior " + + "--hide HiddenSuperclass " + + "--hide DeprecationMismatch " + + "--hide UnavailableSymbol " + + "--hide SdkConstant " + + "--hide HiddenTypeParameter " + + "--hide Todo --hide Typo " + + "--hide HiddenTypedefConstant " + + "--show-annotation android.annotation.SystemApi " + +droidstubs { + name: "framework-wifi-stubs-srcs", + srcs: [ + ":framework-annotations", + ":framework-wifi-updatable-sources", + ], + aidl: { + include_dirs: ["frameworks/base/core/java"], + }, + args: metalava_wifi_docs_args, + sdk_version: "core_current", + libs: ["android_system_stubs_current"], +} + +java_library { + name: "framework-wifi-stubs", + srcs: [":framework-wifi-stubs-srcs"], + aidl: { + export_include_dirs: [ + "java", + ], + }, + sdk_version: "core_current", + libs: ["android_system_stubs_current"], + installable: false, +} + |