1// Copyright (C) 2016 The Android Open Source Project
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//      http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15// Build the master framework library.
16
17// READ ME: ########################################################
18//
19// When updating this list of aidl files, consider if that aidl is
20// part of the SDK API.  If it is, also add it to the list in Android.mk
21// that is preprocessed and distributed with the SDK.  This list should
22// not contain any aidl files for parcelables, but the one below should
23// if you intend for 3rd parties to be able to send those objects
24// across process boundaries.
25//
26// READ ME: ########################################################
27
28java_library {
29    name: "framework",
30
31    srcs: [
32        // From build/make/core/pathmap.mk FRAMEWORK_BASE_SUBDIRS
33        "core/java/**/*.java",
34        "graphics/java/**/*.java",
35        "location/java/**/*.java",
36        "lowpan/java/**/*.java",
37        "media/java/**/*.java",
38        "media/mca/effect/java/**/*.java",
39        "media/mca/filterfw/java/**/*.java",
40        "media/mca/filterpacks/java/**/*.java",
41        "drm/java/**/*.java",
42        "opengl/java/**/*.java",
43        "sax/java/**/*.java",
44        "telecomm/java/**/*.java",
45        "telephony/java/**/*.java",
46        "wifi/java/**/*.java",
47        "keystore/java/**/*.java",
48        "rs/java/**/*.java",
49
50        ":framework-javastream-protos",
51
52        "core/java/android/accessibilityservice/IAccessibilityServiceConnection.aidl",
53        "core/java/android/accessibilityservice/IAccessibilityServiceClient.aidl",
54        "core/java/android/accounts/IAccountManager.aidl",
55        "core/java/android/accounts/IAccountManagerResponse.aidl",
56        "core/java/android/accounts/IAccountAuthenticator.aidl",
57        "core/java/android/accounts/IAccountAuthenticatorResponse.aidl",
58        "core/java/android/app/IActivityController.aidl",
59        "core/java/android/app/IActivityManager.aidl",
60        "core/java/android/app/IActivityPendingResult.aidl",
61        "core/java/android/app/IAlarmCompleteListener.aidl",
62        "core/java/android/app/IAlarmListener.aidl",
63        "core/java/android/app/IAlarmManager.aidl",
64        "core/java/android/app/IAppTask.aidl",
65        "core/java/android/app/IApplicationThread.aidl",
66        "core/java/android/app/IAssistDataReceiver.aidl",
67        "core/java/android/app/ITaskStackListener.aidl",
68        "core/java/android/app/IBackupAgent.aidl",
69        "core/java/android/app/IEphemeralResolver.aidl",
70        "core/java/android/app/IInputForwarder.aidl",
71        "core/java/android/app/IInstantAppResolver.aidl",
72        "core/java/android/app/IInstrumentationWatcher.aidl",
73        "core/java/android/app/INotificationManager.aidl",
74        "core/java/android/app/IProcessObserver.aidl",
75        "core/java/android/app/ISearchManager.aidl",
76        "core/java/android/app/ISearchManagerCallback.aidl",
77        "core/java/android/app/IServiceConnection.aidl",
78        "core/java/android/app/IStopUserCallback.aidl",
79        "core/java/android/app/job/IJobCallback.aidl",
80        "core/java/android/app/job/IJobScheduler.aidl",
81        "core/java/android/app/job/IJobService.aidl",
82        "core/java/android/app/ITransientNotification.aidl",
83        "core/java/android/app/IUidObserver.aidl",
84        "core/java/android/app/IUiAutomationConnection.aidl",
85        "core/java/android/app/IUiModeManager.aidl",
86        "core/java/android/app/IUserSwitchObserver.aidl",
87        "core/java/android/app/IWallpaperManager.aidl",
88        "core/java/android/app/IWallpaperManagerCallback.aidl",
89        "core/java/android/app/admin/IDeviceAdminService.aidl",
90        "core/java/android/app/admin/IDevicePolicyManager.aidl",
91        "core/java/android/app/trust/IStrongAuthTracker.aidl",
92        "core/java/android/app/trust/ITrustManager.aidl",
93        "core/java/android/app/trust/ITrustListener.aidl",
94        "core/java/android/app/backup/IBackupManager.aidl",
95        "core/java/android/app/backup/IBackupObserver.aidl",
96        "core/java/android/app/backup/IBackupManagerMonitor.aidl",
97        "core/java/android/app/backup/IFullBackupRestoreObserver.aidl",
98        "core/java/android/app/backup/IRestoreObserver.aidl",
99        "core/java/android/app/backup/IRestoreSession.aidl",
100        "core/java/android/app/backup/ISelectBackupTransportCallback.aidl",
101        "core/java/android/app/slice/ISliceManager.aidl",
102        "core/java/android/app/slice/ISliceListener.aidl",
103        "core/java/android/app/timezone/ICallback.aidl",
104        "core/java/android/app/timezone/IRulesManager.aidl",
105        "core/java/android/app/usage/ICacheQuotaService.aidl",
106        "core/java/android/app/usage/IStorageStatsManager.aidl",
107        "core/java/android/app/usage/IUsageStatsManager.aidl",
108        ":libbluetooth-binder-aidl",
109        "core/java/android/content/IClipboard.aidl",
110        "core/java/android/content/IContentService.aidl",
111        "core/java/android/content/IIntentReceiver.aidl",
112        "core/java/android/content/IIntentSender.aidl",
113        "core/java/android/content/IOnPrimaryClipChangedListener.aidl",
114        "core/java/android/content/IRestrictionsManager.aidl",
115        "core/java/android/content/ISyncAdapter.aidl",
116        "core/java/android/content/ISyncAdapterUnsyncableAccountCallback.aidl",
117        "core/java/android/content/ISyncContext.aidl",
118        "core/java/android/content/ISyncServiceAdapter.aidl",
119        "core/java/android/content/ISyncStatusObserver.aidl",
120        "core/java/android/content/om/IOverlayManager.aidl",
121        "core/java/android/content/pm/ICrossProfileApps.aidl",
122        "core/java/android/content/pm/IDexModuleRegisterCallback.aidl",
123        "core/java/android/content/pm/ILauncherApps.aidl",
124        "core/java/android/content/pm/IOnAppsChangedListener.aidl",
125        "core/java/android/content/pm/IOnPermissionsChangeListener.aidl",
126        "core/java/android/content/pm/IOtaDexopt.aidl",
127        "core/java/android/content/pm/IPackageDataObserver.aidl",
128        "core/java/android/content/pm/IPackageDeleteObserver.aidl",
129        "core/java/android/content/pm/IPackageDeleteObserver2.aidl",
130        "core/java/android/content/pm/IPackageInstallObserver2.aidl",
131        "core/java/android/content/pm/IPackageInstaller.aidl",
132        "core/java/android/content/pm/IPackageInstallerCallback.aidl",
133        "core/java/android/content/pm/IPackageInstallerSession.aidl",
134        "core/java/android/content/pm/IPackageManager.aidl",
135        ":libbinder_aidl",
136        "core/java/android/content/pm/IPackageMoveObserver.aidl",
137        "core/java/android/content/pm/IPackageStatsObserver.aidl",
138        "core/java/android/content/pm/IPinItemRequest.aidl",
139        "core/java/android/content/pm/IShortcutService.aidl",
140        "core/java/android/content/pm/dex/IArtManager.aidl",
141        "core/java/android/content/pm/dex/ISnapshotRuntimeProfileCallback.aidl",
142        "core/java/android/content/pm/permission/IRuntimePermissionPresenter.aidl",
143        "core/java/android/database/IContentObserver.aidl",
144        ":libcamera_client_aidl",
145        ":libcamera_client_framework_aidl",
146        "core/java/android/hardware/IConsumerIrService.aidl",
147        "core/java/android/hardware/ISerialManager.aidl",
148        "core/java/android/hardware/biometrics/IBiometricPromptReceiver.aidl",
149        "core/java/android/hardware/display/IDisplayManager.aidl",
150        "core/java/android/hardware/display/IDisplayManagerCallback.aidl",
151        "core/java/android/hardware/display/IVirtualDisplayCallback.aidl",
152        "core/java/android/hardware/fingerprint/IFingerprintClientActiveCallback.aidl",
153        "core/java/android/hardware/fingerprint/IFingerprintService.aidl",
154        "core/java/android/hardware/fingerprint/IFingerprintServiceLockoutResetCallback.aidl",
155        "core/java/android/hardware/fingerprint/IFingerprintServiceReceiver.aidl",
156        "core/java/android/hardware/hdmi/IHdmiControlCallback.aidl",
157        "core/java/android/hardware/hdmi/IHdmiControlService.aidl",
158        "core/java/android/hardware/hdmi/IHdmiDeviceEventListener.aidl",
159        "core/java/android/hardware/hdmi/IHdmiHotplugEventListener.aidl",
160        "core/java/android/hardware/hdmi/IHdmiInputChangeListener.aidl",
161        "core/java/android/hardware/hdmi/IHdmiMhlVendorCommandListener.aidl",
162        "core/java/android/hardware/hdmi/IHdmiRecordListener.aidl",
163        "core/java/android/hardware/hdmi/IHdmiSystemAudioModeChangeListener.aidl",
164        "core/java/android/hardware/hdmi/IHdmiVendorCommandListener.aidl",
165        "core/java/android/hardware/input/IInputManager.aidl",
166        "core/java/android/hardware/input/IInputDevicesChangedListener.aidl",
167        "core/java/android/hardware/input/ITabletModeChangedListener.aidl",
168        "core/java/android/hardware/location/IActivityRecognitionHardware.aidl",
169        "core/java/android/hardware/location/IActivityRecognitionHardwareClient.aidl",
170        "core/java/android/hardware/location/IActivityRecognitionHardwareSink.aidl",
171        "core/java/android/hardware/location/IActivityRecognitionHardwareWatcher.aidl",
172        "core/java/android/hardware/location/IGeofenceHardware.aidl",
173        "core/java/android/hardware/location/IGeofenceHardwareCallback.aidl",
174        "core/java/android/hardware/location/IGeofenceHardwareMonitorCallback.aidl",
175        "core/java/android/hardware/location/IContextHubCallback.aidl",
176        "core/java/android/hardware/location/IContextHubClient.aidl",
177        "core/java/android/hardware/location/IContextHubClientCallback.aidl",
178        "core/java/android/hardware/location/IContextHubService.aidl",
179        "core/java/android/hardware/location/IContextHubTransactionCallback.aidl",
180        "core/java/android/hardware/radio/IAnnouncementListener.aidl",
181        "core/java/android/hardware/radio/ICloseHandle.aidl",
182        "core/java/android/hardware/radio/IRadioService.aidl",
183        "core/java/android/hardware/radio/ITuner.aidl",
184        "core/java/android/hardware/radio/ITunerCallback.aidl",
185        "core/java/android/hardware/soundtrigger/IRecognitionStatusCallback.aidl",
186        "core/java/android/hardware/usb/IUsbManager.aidl",
187        "core/java/android/net/ICaptivePortal.aidl",
188        "core/java/android/net/IConnectivityManager.aidl",
189        "core/java/android/net/IIpConnectivityMetrics.aidl",
190        "core/java/android/net/IEthernetManager.aidl",
191        "core/java/android/net/IEthernetServiceListener.aidl",
192        "core/java/android/net/INetdEventCallback.aidl",
193        "core/java/android/net/IIpSecService.aidl",
194        "core/java/android/net/INetworkManagementEventObserver.aidl",
195        "core/java/android/net/INetworkPolicyListener.aidl",
196        "core/java/android/net/INetworkPolicyManager.aidl",
197        "core/java/android/net/INetworkRecommendationProvider.aidl",
198        "core/java/android/net/INetworkScoreCache.aidl",
199        "core/java/android/net/INetworkScoreService.aidl",
200        "core/java/android/net/INetworkStatsService.aidl",
201        "core/java/android/net/INetworkStatsSession.aidl",
202        "core/java/android/net/ITetheringStatsProvider.aidl",
203        "core/java/android/net/nsd/INsdManager.aidl",
204        "core/java/android/nfc/IAppCallback.aidl",
205        "core/java/android/nfc/INfcAdapter.aidl",
206        "core/java/android/nfc/INfcAdapterExtras.aidl",
207        "core/java/android/nfc/INfcTag.aidl",
208        "core/java/android/nfc/INfcCardEmulation.aidl",
209        "core/java/android/nfc/INfcFCardEmulation.aidl",
210        "core/java/android/nfc/INfcUnlockHandler.aidl",
211        "core/java/android/nfc/INfcDta.aidl",
212        "core/java/android/nfc/ITagRemovedCallback.aidl",
213        "core/java/android/se/omapi/ISecureElementService.aidl",
214        "core/java/android/se/omapi/ISecureElementListener.aidl",
215        "core/java/android/se/omapi/ISecureElementChannel.aidl",
216        "core/java/android/se/omapi/ISecureElementReader.aidl",
217        "core/java/android/se/omapi/ISecureElementSession.aidl",
218        "core/java/android/os/IBatteryPropertiesListener.aidl",
219        "core/java/android/os/IBatteryPropertiesRegistrar.aidl",
220        "core/java/android/os/ICancellationSignal.aidl",
221        "core/java/android/os/IDeviceIdentifiersPolicyService.aidl",
222        "core/java/android/os/IDeviceIdleController.aidl",
223        "core/java/android/os/IHardwarePropertiesManager.aidl",
224        "core/java/android/os/IIncidentManager.aidl",
225        "core/java/android/os/IIncidentReportStatusListener.aidl",
226        "core/java/android/os/IMaintenanceActivityListener.aidl",
227        "core/java/android/os/IMessenger.aidl",
228        "core/java/android/os/INetworkActivityListener.aidl",
229        "core/java/android/os/INetworkManagementService.aidl",
230        "core/java/android/os/IPermissionController.aidl",
231        "core/java/android/os/IProcessInfoService.aidl",
232        "core/java/android/os/IProgressListener.aidl",
233        "core/java/android/os/IPowerManager.aidl",
234        "core/java/android/os/IRecoverySystem.aidl",
235        "core/java/android/os/IRecoverySystemProgressListener.aidl",
236        "core/java/android/os/IRemoteCallback.aidl",
237        "core/java/android/os/ISchedulingPolicyService.aidl",
238        "core/java/android/os/IStatsCompanionService.aidl",
239        "core/java/android/os/IStatsManager.aidl",
240        "core/java/android/os/ISystemUpdateManager.aidl",
241        "core/java/android/os/IThermalEventListener.aidl",
242        "core/java/android/os/IThermalService.aidl",
243        "core/java/android/os/IUpdateLock.aidl",
244        "core/java/android/os/IUserManager.aidl",
245        "core/java/android/os/IVibratorService.aidl",
246        "core/java/android/os/storage/IStorageManager.aidl",
247        "core/java/android/os/storage/IStorageEventListener.aidl",
248        "core/java/android/os/storage/IStorageShutdownObserver.aidl",
249        "core/java/android/os/storage/IObbActionListener.aidl",
250        ":keystore_aidl",
251        "core/java/android/security/keymaster/IKeyAttestationApplicationIdProvider.aidl",
252        "core/java/android/service/autofill/IAutoFillService.aidl",
253        "core/java/android/service/autofill/IAutofillFieldClassificationService.aidl",
254        "core/java/android/service/autofill/IFillCallback.aidl",
255        "core/java/android/service/autofill/ISaveCallback.aidl",
256        "core/java/android/service/carrier/ICarrierService.aidl",
257        "core/java/android/service/carrier/ICarrierMessagingCallback.aidl",
258        "core/java/android/service/carrier/ICarrierMessagingService.aidl",
259        "core/java/android/service/euicc/IDeleteSubscriptionCallback.aidl",
260        "core/java/android/service/euicc/IDownloadSubscriptionCallback.aidl",
261        "core/java/android/service/euicc/IEraseSubscriptionsCallback.aidl",
262        "core/java/android/service/euicc/IEuiccService.aidl",
263        "core/java/android/service/euicc/IGetDefaultDownloadableSubscriptionListCallback.aidl",
264        "core/java/android/service/euicc/IGetDownloadableSubscriptionMetadataCallback.aidl",
265        "core/java/android/service/euicc/IGetEidCallback.aidl",
266        "core/java/android/service/euicc/IGetEuiccInfoCallback.aidl",
267        "core/java/android/service/euicc/IGetEuiccProfileInfoListCallback.aidl",
268        "core/java/android/service/euicc/IGetOtaStatusCallback.aidl",
269        "core/java/android/service/euicc/IOtaStatusChangedCallback.aidl",
270        "core/java/android/service/euicc/IRetainSubscriptionsForFactoryResetCallback.aidl",
271        "core/java/android/service/euicc/ISwitchToSubscriptionCallback.aidl",
272        "core/java/android/service/euicc/IUpdateSubscriptionNicknameCallback.aidl",
273        "core/java/android/service/gatekeeper/IGateKeeperService.aidl",
274        "core/java/android/service/notification/INotificationListener.aidl",
275        "core/java/android/service/notification/IStatusBarNotificationHolder.aidl",
276        "core/java/android/service/notification/IConditionListener.aidl",
277        "core/java/android/service/notification/IConditionProvider.aidl",
278        "core/java/android/service/settings/suggestions/ISuggestionService.aidl",
279        "core/java/android/service/vr/IPersistentVrStateCallbacks.aidl",
280        "core/java/android/service/vr/IVrListener.aidl",
281        "core/java/android/service/vr/IVrManager.aidl",
282        "core/java/android/service/vr/IVrStateCallbacks.aidl",
283        "core/java/android/print/ILayoutResultCallback.aidl",
284        "core/java/android/print/IPrinterDiscoveryObserver.aidl",
285        "core/java/android/print/IPrintDocumentAdapter.aidl",
286        "core/java/android/print/IPrintDocumentAdapterObserver.aidl",
287        "core/java/android/print/IPrintJobStateChangeListener.aidl",
288        "core/java/android/print/IPrintServicesChangeListener.aidl",
289        "core/java/android/printservice/recommendation/IRecommendationsChangeListener.aidl",
290        "core/java/android/print/IPrintManager.aidl",
291        "core/java/android/print/IPrintSpooler.aidl",
292        "core/java/android/print/IPrintSpoolerCallbacks.aidl",
293        "core/java/android/print/IPrintSpoolerClient.aidl",
294        "core/java/android/printservice/recommendation/IRecommendationServiceCallbacks.aidl",
295        "core/java/android/printservice/recommendation/IRecommendationService.aidl",
296        "core/java/android/print/IWriteResultCallback.aidl",
297        "core/java/android/printservice/IPrintService.aidl",
298        "core/java/android/printservice/IPrintServiceClient.aidl",
299        "core/java/android/companion/ICompanionDeviceManager.aidl",
300        "core/java/android/companion/ICompanionDeviceDiscoveryService.aidl",
301        "core/java/android/companion/ICompanionDeviceDiscoveryServiceCallback.aidl",
302        "core/java/android/companion/IFindDeviceCallback.aidl",
303        "core/java/android/service/dreams/IDreamManager.aidl",
304        "core/java/android/service/dreams/IDreamService.aidl",
305        "core/java/android/service/oemlock/IOemLockService.aidl",
306        "core/java/android/service/persistentdata/IPersistentDataBlockService.aidl",
307        "core/java/android/service/trust/ITrustAgentService.aidl",
308        "core/java/android/service/trust/ITrustAgentServiceCallback.aidl",
309        "core/java/android/service/voice/IVoiceInteractionService.aidl",
310        "core/java/android/service/voice/IVoiceInteractionSession.aidl",
311        "core/java/android/service/voice/IVoiceInteractionSessionService.aidl",
312        "core/java/android/service/wallpaper/IWallpaperConnection.aidl",
313        "core/java/android/service/wallpaper/IWallpaperEngine.aidl",
314        "core/java/android/service/wallpaper/IWallpaperService.aidl",
315        "core/java/android/service/chooser/IChooserTargetService.aidl",
316        "core/java/android/service/chooser/IChooserTargetResult.aidl",
317        "core/java/android/service/resolver/IResolverRankerService.aidl",
318        "core/java/android/service/resolver/IResolverRankerResult.aidl",
319        "core/java/android/service/textclassifier/ITextClassificationCallback.aidl",
320        "core/java/android/service/textclassifier/ITextClassifierService.aidl",
321        "core/java/android/service/textclassifier/ITextLinksCallback.aidl",
322        "core/java/android/service/textclassifier/ITextSelectionCallback.aidl",
323        "core/java/android/view/accessibility/IAccessibilityInteractionConnection.aidl",
324        "core/java/android/view/accessibility/IAccessibilityInteractionConnectionCallback.aidl",
325        "core/java/android/view/accessibility/IAccessibilityManager.aidl",
326        "core/java/android/view/accessibility/IAccessibilityManagerClient.aidl",
327        "core/java/android/view/autofill/IAutoFillManager.aidl",
328        "core/java/android/view/autofill/IAutoFillManagerClient.aidl",
329        "core/java/android/view/autofill/IAutofillWindowPresenter.aidl",
330        "core/java/android/view/IApplicationToken.aidl",
331        "core/java/android/view/IAppTransitionAnimationSpecsFuture.aidl",
332        "core/java/android/view/IDockedStackListener.aidl",
333        "core/java/android/view/IGraphicsStats.aidl",
334        "core/java/android/view/IGraphicsStatsCallback.aidl",
335        "core/java/android/view/IInputFilter.aidl",
336        "core/java/android/view/IInputFilterHost.aidl",
337        "core/java/android/view/IOnKeyguardExitResult.aidl",
338        "core/java/android/view/IPinnedStackController.aidl",
339        "core/java/android/view/IPinnedStackListener.aidl",
340        "core/java/android/view/IRemoteAnimationRunner.aidl",
341        "core/java/android/view/IRecentsAnimationController.aidl",
342        "core/java/android/view/IRecentsAnimationRunner.aidl",
343        "core/java/android/view/IRemoteAnimationFinishedCallback.aidl",
344        "core/java/android/view/IRotationWatcher.aidl",
345        "core/java/android/view/IWallpaperVisibilityListener.aidl",
346        "core/java/android/view/IWindow.aidl",
347        "core/java/android/view/IWindowFocusObserver.aidl",
348        "core/java/android/view/IWindowId.aidl",
349        "core/java/android/view/IWindowManager.aidl",
350        "core/java/android/view/IWindowSession.aidl",
351        "core/java/android/view/IWindowSessionCallback.aidl",
352        "core/java/android/webkit/IWebViewUpdateService.aidl",
353        "core/java/android/speech/IRecognitionListener.aidl",
354        "core/java/android/speech/IRecognitionService.aidl",
355        "core/java/android/speech/tts/ITextToSpeechCallback.aidl",
356        "core/java/android/speech/tts/ITextToSpeechService.aidl",
357        "core/java/com/android/internal/app/IAppOpsActiveCallback.aidl",
358        "core/java/com/android/internal/app/IAppOpsCallback.aidl",
359        "core/java/com/android/internal/app/IAppOpsService.aidl",
360        "core/java/com/android/internal/app/IBatteryStats.aidl",
361        "core/java/com/android/internal/app/ISoundTriggerService.aidl",
362        "core/java/com/android/internal/app/IVoiceInteractionManagerService.aidl",
363        "core/java/com/android/internal/app/IVoiceInteractionSessionListener.aidl",
364        "core/java/com/android/internal/app/IVoiceInteractionSessionShowCallback.aidl",
365        "core/java/com/android/internal/app/IVoiceInteractor.aidl",
366        "core/java/com/android/internal/app/IVoiceInteractorCallback.aidl",
367        "core/java/com/android/internal/app/IVoiceInteractorRequest.aidl",
368        "core/java/com/android/internal/app/IMediaContainerService.aidl",
369        "core/java/com/android/internal/app/procstats/IProcessStats.aidl",
370        "core/java/com/android/internal/appwidget/IAppWidgetService.aidl",
371        "core/java/com/android/internal/appwidget/IAppWidgetHost.aidl",
372        "core/java/com/android/internal/backup/IBackupTransport.aidl",
373        "core/java/com/android/internal/backup/IObbBackupService.aidl",
374        "core/java/com/android/internal/inputmethod/IInputContentUriToken.aidl",
375        "core/java/com/android/internal/net/INetworkWatchlistManager.aidl",
376        "core/java/com/android/internal/policy/IKeyguardDrawnCallback.aidl",
377        "core/java/com/android/internal/policy/IKeyguardDismissCallback.aidl",
378        "core/java/com/android/internal/policy/IKeyguardExitCallback.aidl",
379        "core/java/com/android/internal/policy/IKeyguardService.aidl",
380        "core/java/com/android/internal/policy/IKeyguardStateCallback.aidl",
381        "core/java/com/android/internal/policy/IShortcutService.aidl",
382        "core/java/com/android/internal/os/IDropBoxManagerService.aidl",
383        "core/java/com/android/internal/os/IParcelFileDescriptorFactory.aidl",
384        "core/java/com/android/internal/os/IResultReceiver.aidl",
385        "core/java/com/android/internal/os/IShellCallback.aidl",
386        "core/java/com/android/internal/statusbar/IStatusBar.aidl",
387        "core/java/com/android/internal/statusbar/IStatusBarService.aidl",
388        "core/java/com/android/internal/textservice/ISpellCheckerService.aidl",
389        "core/java/com/android/internal/textservice/ISpellCheckerServiceCallback.aidl",
390        "core/java/com/android/internal/textservice/ISpellCheckerSession.aidl",
391        "core/java/com/android/internal/textservice/ISpellCheckerSessionListener.aidl",
392        "core/java/com/android/internal/textservice/ITextServicesManager.aidl",
393        "core/java/com/android/internal/textservice/ITextServicesSessionListener.aidl",
394        "core/java/com/android/internal/view/IDragAndDropPermissions.aidl",
395        "core/java/com/android/internal/view/IInputContext.aidl",
396        "core/java/com/android/internal/view/IInputContextCallback.aidl",
397        "core/java/com/android/internal/view/IInputMethod.aidl",
398        "core/java/com/android/internal/view/IInputMethodClient.aidl",
399        "core/java/com/android/internal/view/IInputMethodManager.aidl",
400        "core/java/com/android/internal/view/IInputMethodSession.aidl",
401        "core/java/com/android/internal/view/IInputSessionCallback.aidl",
402        "core/java/com/android/internal/widget/ICheckCredentialProgressCallback.aidl",
403        "core/java/com/android/internal/widget/ILockSettings.aidl",
404        "core/java/com/android/internal/widget/IRemoteViewsFactory.aidl",
405        "keystore/java/android/security/IKeyChainAliasCallback.aidl",
406        "keystore/java/android/security/IKeyChainService.aidl",
407        "location/java/android/location/IBatchedLocationCallback.aidl",
408        "location/java/android/location/ICountryDetector.aidl",
409        "location/java/android/location/ICountryListener.aidl",
410        "location/java/android/location/IGeocodeProvider.aidl",
411        "location/java/android/location/IGeofenceProvider.aidl",
412        "location/java/android/location/IGnssStatusListener.aidl",
413        "location/java/android/location/IGnssStatusProvider.aidl",
414        "location/java/android/location/IGnssMeasurementsListener.aidl",
415        "location/java/android/location/IGnssNavigationMessageListener.aidl",
416        "location/java/android/location/ILocationListener.aidl",
417        "location/java/android/location/ILocationManager.aidl",
418        "location/java/android/location/IFusedGeofenceHardware.aidl",
419        "location/java/android/location/IGpsGeofenceHardware.aidl",
420        "location/java/android/location/INetInitiatedListener.aidl",
421        "location/java/com/android/internal/location/ILocationProvider.aidl",
422        "media/java/android/media/IAudioFocusDispatcher.aidl",
423        "media/java/android/media/IAudioRoutesObserver.aidl",
424        "media/java/android/media/IAudioService.aidl",
425        "media/java/android/media/IAudioServerStateDispatcher.aidl",
426        "media/java/android/media/IMediaHTTPConnection.aidl",
427        "media/java/android/media/IMediaHTTPService.aidl",
428        "media/java/android/media/IMediaResourceMonitor.aidl",
429        "media/java/android/media/IMediaRouterClient.aidl",
430        "media/java/android/media/IMediaRouterService.aidl",
431        "media/java/android/media/IMediaScannerListener.aidl",
432        "media/java/android/media/IMediaScannerService.aidl",
433        "media/java/android/media/IPlaybackConfigDispatcher.aidl",
434        "media/java/android/media/ISessionTokensListener.aidl",
435        ":libaudioclient_aidl",
436        "media/java/android/media/IRecordingConfigDispatcher.aidl",
437        "media/java/android/media/IRemoteDisplayCallback.aidl",
438        "media/java/android/media/IRemoteDisplayProvider.aidl",
439        "media/java/android/media/IRemoteVolumeController.aidl",
440        "media/java/android/media/IRemoteVolumeObserver.aidl",
441        "media/java/android/media/IRingtonePlayer.aidl",
442        "media/java/android/media/IVolumeController.aidl",
443        "media/java/android/media/audiopolicy/IAudioPolicyCallback.aidl",
444        "media/java/android/media/midi/IBluetoothMidiService.aidl",
445        "media/java/android/media/midi/IMidiDeviceListener.aidl",
446        "media/java/android/media/midi/IMidiDeviceOpenCallback.aidl",
447        "media/java/android/media/midi/IMidiDeviceServer.aidl",
448        "media/java/android/media/midi/IMidiManager.aidl",
449        "media/java/android/media/projection/IMediaProjection.aidl",
450        "media/java/android/media/projection/IMediaProjectionCallback.aidl",
451        "media/java/android/media/projection/IMediaProjectionManager.aidl",
452        "media/java/android/media/projection/IMediaProjectionWatcherCallback.aidl",
453        "media/java/android/media/session/IActiveSessionsListener.aidl",
454        "media/java/android/media/session/ICallback.aidl",
455        "media/java/android/media/session/IOnMediaKeyListener.aidl",
456        "media/java/android/media/session/IOnVolumeKeyLongPressListener.aidl",
457        "media/java/android/media/session/ISession.aidl",
458        "media/java/android/media/session/ISessionCallback.aidl",
459        "media/java/android/media/session/ISessionController.aidl",
460        "media/java/android/media/session/ISessionControllerCallback.aidl",
461        "media/java/android/media/session/ISessionManager.aidl",
462        "media/java/android/media/soundtrigger/ISoundTriggerDetectionService.aidl",
463        "media/java/android/media/soundtrigger/ISoundTriggerDetectionServiceClient.aidl",
464        "media/java/android/media/tv/ITvInputClient.aidl",
465        "media/java/android/media/tv/ITvInputHardware.aidl",
466        "media/java/android/media/tv/ITvInputHardwareCallback.aidl",
467        "media/java/android/media/tv/ITvInputManager.aidl",
468        "media/java/android/media/tv/ITvInputManagerCallback.aidl",
469        "media/java/android/media/tv/ITvInputService.aidl",
470        "media/java/android/media/tv/ITvInputServiceCallback.aidl",
471        "media/java/android/media/tv/ITvInputSession.aidl",
472        "media/java/android/media/tv/ITvInputSessionCallback.aidl",
473        "media/java/android/media/tv/ITvRemoteProvider.aidl",
474        "media/java/android/media/tv/ITvRemoteServiceInput.aidl",
475        "media/java/android/service/media/IMediaBrowserService.aidl",
476        "media/java/android/service/media/IMediaBrowserServiceCallbacks.aidl",
477        "telecomm/java/com/android/internal/telecom/ICallScreeningAdapter.aidl",
478        "telecomm/java/com/android/internal/telecom/ICallScreeningService.aidl",
479        "telecomm/java/com/android/internal/telecom/IVideoCallback.aidl",
480        "telecomm/java/com/android/internal/telecom/IVideoProvider.aidl",
481        "telecomm/java/com/android/internal/telecom/IConnectionService.aidl",
482        "telecomm/java/com/android/internal/telecom/IConnectionServiceAdapter.aidl",
483        "telecomm/java/com/android/internal/telecom/IInCallAdapter.aidl",
484        "telecomm/java/com/android/internal/telecom/IInCallService.aidl",
485        "telecomm/java/com/android/internal/telecom/ITelecomService.aidl",
486        "telecomm/java/com/android/internal/telecom/RemoteServiceCallback.aidl",
487        "telephony/java/android/telephony/data/IDataService.aidl",
488        "telephony/java/android/telephony/data/IDataServiceCallback.aidl",
489        "telephony/java/android/telephony/ims/aidl/IImsCallSessionListener.aidl",
490        "telephony/java/android/telephony/ims/aidl/IImsCapabilityCallback.aidl",
491        "telephony/java/android/telephony/ims/aidl/IImsConfig.aidl",
492        "telephony/java/android/telephony/ims/aidl/IImsConfigCallback.aidl",
493        "telephony/java/android/telephony/ims/aidl/IImsMmTelFeature.aidl",
494        "telephony/java/android/telephony/ims/aidl/IImsMmTelListener.aidl",
495        "telephony/java/android/telephony/ims/aidl/IImsRegistration.aidl",
496        "telephony/java/android/telephony/ims/aidl/IImsRegistrationCallback.aidl",
497        "telephony/java/android/telephony/ims/aidl/IImsRcsFeature.aidl",
498        "telephony/java/android/telephony/ims/aidl/IImsServiceController.aidl",
499        "telephony/java/android/telephony/ims/aidl/IImsServiceControllerListener.aidl",
500        "telephony/java/android/telephony/ims/aidl/IImsSmsListener.aidl",
501        "telephony/java/android/telephony/mbms/IMbmsDownloadSessionCallback.aidl",
502        "telephony/java/android/telephony/mbms/IMbmsStreamingSessionCallback.aidl",
503        "telephony/java/android/telephony/mbms/IDownloadStatusListener.aidl",
504        "telephony/java/android/telephony/mbms/IDownloadProgressListener.aidl",
505        "telephony/java/android/telephony/mbms/IStreamingServiceCallback.aidl",
506        "telephony/java/android/telephony/mbms/vendor/IMbmsDownloadService.aidl",
507        "telephony/java/android/telephony/mbms/vendor/IMbmsStreamingService.aidl",
508        "telephony/java/android/telephony/INetworkService.aidl",
509        "telephony/java/android/telephony/INetworkServiceCallback.aidl",
510        "telephony/java/com/android/ims/internal/IImsCallSession.aidl",
511        "telephony/java/com/android/ims/internal/IImsCallSessionListener.aidl",
512        "telephony/java/com/android/ims/internal/IImsConfig.aidl",
513        "telephony/java/com/android/ims/internal/IImsRegistrationListener.aidl",
514        "telephony/java/com/android/ims/internal/IImsEcbm.aidl",
515        "telephony/java/com/android/ims/internal/IImsEcbmListener.aidl",
516        "telephony/java/com/android/ims/internal/IImsExternalCallStateListener.aidl",
517        "telephony/java/com/android/ims/internal/IImsFeatureStatusCallback.aidl",
518        "telephony/java/com/android/ims/internal/IImsMMTelFeature.aidl",
519        "telephony/java/com/android/ims/internal/IImsMultiEndpoint.aidl",
520        "telephony/java/com/android/ims/internal/IImsRcsFeature.aidl",
521        "telephony/java/com/android/ims/internal/IImsService.aidl",
522        "telephony/java/com/android/ims/internal/IImsServiceController.aidl",
523        "telephony/java/com/android/ims/internal/IImsServiceFeatureCallback.aidl",
524        "telephony/java/com/android/ims/internal/IImsStreamMediaSession.aidl",
525        "telephony/java/com/android/ims/internal/IImsUt.aidl",
526        "telephony/java/com/android/ims/internal/IImsUtListener.aidl",
527        "telephony/java/com/android/ims/internal/IImsVideoCallCallback.aidl",
528        "telephony/java/com/android/ims/internal/IImsVideoCallProvider.aidl",
529        "telephony/java/com/android/ims/internal/uce/uceservice/IUceService.aidl",
530        "telephony/java/com/android/ims/internal/uce/uceservice/IUceListener.aidl",
531        "telephony/java/com/android/ims/internal/uce/options/IOptionsService.aidl",
532        "telephony/java/com/android/ims/internal/uce/options/IOptionsListener.aidl",
533        "telephony/java/com/android/ims/internal/uce/presence/IPresenceService.aidl",
534        "telephony/java/com/android/ims/internal/uce/presence/IPresenceListener.aidl",
535        "telephony/java/com/android/ims/ImsConfigListener.aidl",
536        "telephony/java/com/android/internal/telephony/IApnSourceService.aidl",
537        "telephony/java/com/android/internal/telephony/ICarrierConfigLoader.aidl",
538        "telephony/java/com/android/internal/telephony/IMms.aidl",
539        "telephony/java/com/android/internal/telephony/IOnSubscriptionsChangedListener.aidl",
540        "telephony/java/com/android/internal/telephony/IPhoneStateListener.aidl",
541        "telephony/java/com/android/internal/telephony/IPhoneSubInfo.aidl",
542        "telephony/java/com/android/internal/telephony/ISms.aidl",
543        "telephony/java/com/android/internal/telephony/ISub.aidl",
544        "telephony/java/com/android/internal/telephony/ITelephony.aidl",
545        "telephony/java/com/android/internal/telephony/ITelephonyRegistry.aidl",
546        "telephony/java/com/android/internal/telephony/IWapPushManager.aidl",
547        "telephony/java/com/android/internal/telephony/euicc/IAuthenticateServerCallback.aidl",
548        "telephony/java/com/android/internal/telephony/euicc/ICancelSessionCallback.aidl",
549        "telephony/java/com/android/internal/telephony/euicc/IDeleteProfileCallback.aidl",
550        "telephony/java/com/android/internal/telephony/euicc/IDisableProfileCallback.aidl",
551        "telephony/java/com/android/internal/telephony/euicc/IEuiccCardController.aidl",
552        "telephony/java/com/android/internal/telephony/euicc/IEuiccController.aidl",
553        "telephony/java/com/android/internal/telephony/euicc/IGetAllProfilesCallback.aidl",
554        "telephony/java/com/android/internal/telephony/euicc/IGetDefaultSmdpAddressCallback.aidl",
555        "telephony/java/com/android/internal/telephony/euicc/IGetEuiccChallengeCallback.aidl",
556        "telephony/java/com/android/internal/telephony/euicc/IGetEuiccInfo1Callback.aidl",
557        "telephony/java/com/android/internal/telephony/euicc/IGetEuiccInfo2Callback.aidl",
558        "telephony/java/com/android/internal/telephony/euicc/IGetProfileCallback.aidl",
559        "telephony/java/com/android/internal/telephony/euicc/IGetRulesAuthTableCallback.aidl",
560        "telephony/java/com/android/internal/telephony/euicc/IGetSmdsAddressCallback.aidl",
561        "telephony/java/com/android/internal/telephony/euicc/IListNotificationsCallback.aidl",
562        "telephony/java/com/android/internal/telephony/euicc/ILoadBoundProfilePackageCallback.aidl",
563        "telephony/java/com/android/internal/telephony/euicc/IPrepareDownloadCallback.aidl",
564        "telephony/java/com/android/internal/telephony/euicc/IRemoveNotificationFromListCallback.aidl",
565        "telephony/java/com/android/internal/telephony/euicc/IResetMemoryCallback.aidl",
566        "telephony/java/com/android/internal/telephony/euicc/IRetrieveNotificationCallback.aidl",
567        "telephony/java/com/android/internal/telephony/euicc/IRetrieveNotificationListCallback.aidl",
568        "telephony/java/com/android/internal/telephony/euicc/ISetDefaultSmdpAddressCallback.aidl",
569        "telephony/java/com/android/internal/telephony/euicc/ISetNicknameCallback.aidl",
570        "telephony/java/com/android/internal/telephony/euicc/ISwitchToProfileCallback.aidl",
571        "wifi/java/android/net/wifi/ISoftApCallback.aidl",
572        "wifi/java/android/net/wifi/IWifiManager.aidl",
573        "wifi/java/android/net/wifi/aware/IWifiAwareDiscoverySessionCallback.aidl",
574        "wifi/java/android/net/wifi/aware/IWifiAwareEventCallback.aidl",
575        "wifi/java/android/net/wifi/aware/IWifiAwareMacAddressProvider.aidl",
576        "wifi/java/android/net/wifi/aware/IWifiAwareManager.aidl",
577        "wifi/java/android/net/wifi/p2p/IWifiP2pManager.aidl",
578        "wifi/java/android/net/wifi/rtt/IRttCallback.aidl",
579        "wifi/java/android/net/wifi/rtt/IWifiRttManager.aidl",
580        "wifi/java/android/net/wifi/hotspot2/IProvisioningCallback.aidl",
581        "wifi/java/android/net/wifi/IWifiScanner.aidl",
582        "packages/services/PacProcessor/com/android/net/IProxyService.aidl",
583        "packages/services/Proxy/com/android/net/IProxyCallback.aidl",
584        "packages/services/Proxy/com/android/net/IProxyPortListener.aidl",
585        "core/java/android/service/quicksettings/IQSService.aidl",
586        "core/java/android/service/quicksettings/IQSTileService.aidl",
587
588        ":libupdate_engine_aidl",
589
590        ":storaged_aidl",
591        ":netd_aidl",
592        ":vold_aidl",
593        ":installd_aidl",
594
595        "lowpan/java/android/net/lowpan/ILowpanEnergyScanCallback.aidl",
596        "lowpan/java/android/net/lowpan/ILowpanNetScanCallback.aidl",
597        "lowpan/java/android/net/lowpan/ILowpanInterfaceListener.aidl",
598        "lowpan/java/android/net/lowpan/ILowpanInterface.aidl",
599        "lowpan/java/android/net/lowpan/ILowpanManagerListener.aidl",
600        "lowpan/java/android/net/lowpan/ILowpanManager.aidl",
601
602        "core/java/android/app/admin/SecurityLogTags.logtags",
603        "core/java/android/content/EventLogTags.logtags",
604        "core/java/android/speech/tts/EventLogTags.logtags",
605        "core/java/android/net/EventLogTags.logtags",
606        "core/java/android/os/EventLogTags.logtags",
607        "core/java/android/webkit/EventLogTags.logtags",
608        "core/java/com/android/internal/app/EventLogTags.logtags",
609        "core/java/com/android/internal/logging/EventLogTags.logtags",
610        "core/java/com/android/server/DropboxLogTags.logtags",
611        "core/java/org/chromium/arc/EventLogTags.logtags",
612
613        ":framework-statslog-gen",
614    ],
615
616    aidl: {
617        export_include_dirs: [
618            // From build/make/core/pathmap.mk FRAMEWORK_BASE_SUBDIRS
619            "core/java",
620            "graphics/java",
621            "location/java",
622            "lowpan/java",
623            "media/java",
624            "media/mca/effect/java",
625            "media/mca/filterfw/java",
626            "media/mca/filterpacks/java",
627            "drm/java",
628            "opengl/java",
629            "sax/java",
630            "telecomm/java",
631            "telephony/java",
632            "wifi/java",
633            "keystore/java",
634            "rs/java",
635        ],
636
637        include_dirs: [
638            "system/update_engine/binder_bindings",
639            "frameworks/native/aidl/binder",
640            "frameworks/av/camera/aidl",
641            "frameworks/av/media/libaudioclient/aidl",
642            "frameworks/native/aidl/gui",
643            "system/core/storaged/binder",
644            "system/netd/server/binder",
645            "system/vold/binder",
646            "system/bt/binder",
647            "system/security/keystore/binder",
648        ],
649    },
650
651    exclude_srcs: [
652        // See comment on framework-atb-backward-compatibility module below
653        "core/java/android/content/pm/AndroidTestBaseUpdater.java",
654        // See comment on framework-oahl-backward-compatibility module below
655        "core/java/android/content/pm/OrgApacheHttpLegacyUpdater.java",
656    ],
657
658    no_framework_libs: true,
659    libs: [
660        "conscrypt",
661        "okhttp",
662        "bouncycastle",
663        "ext",
664    ],
665
666    static_libs: [
667        "framework-protos",
668        "android.hidl.base-V1.0-java",
669        "android.hardware.cas-V1.0-java",
670        "android.hardware.contexthub-V1.0-java",
671        "android.hardware.health-V1.0-java-constants",
672        "android.hardware.thermal-V1.0-java-constants",
673        "android.hardware.tv.input-V1.0-java-constants",
674        "android.hardware.usb-V1.0-java-constants",
675        "android.hardware.usb-V1.1-java-constants",
676        "android.hardware.vibrator-V1.0-java",
677        "android.hardware.vibrator-V1.1-java",
678        "android.hardware.vibrator-V1.2-java",
679        "android.hardware.wifi-V1.0-java-constants",
680        "android.hardware.radio-V1.0-java",
681        "android.hardware.usb.gadget-V1.0-java",
682    ],
683
684    // Loaded with System.loadLibrary by android.view.textclassifier
685    required: [
686        "libtextclassifier",
687        "libmedia2_jni",
688    ],
689
690    javac_shard_size: 150,
691
692    dxflags: [
693        "--core-library",
694        "--multi-dex",
695    ],
696}
697
698// A temporary build target that is conditionally included on the bootclasspath if
699// org.apache.http.legacy library has been removed and which provides support for
700// maintaining backwards compatibility for APKs that target pre-P and depend on
701// org.apache.http.legacy classes. This is used iff REMOVE_OAHL_FROM_BCP=true is
702// specified on the build command line.
703java_library {
704    name: "framework-oahl-backward-compatibility",
705    srcs: [
706        "core/java/android/content/pm/OrgApacheHttpLegacyUpdater.java",
707    ],
708}
709
710// A temporary build target that is conditionally included on the bootclasspath if
711// android.test.base library has been removed and which provides support for
712// maintaining backwards compatibility for APKs that target pre-P and depend on
713// android.test.base classes. This is used iff REMOVE_ATB_FROM_BCP=true is
714// specified on the build command line.
715java_library {
716    name: "framework-atb-backward-compatibility",
717    srcs: [
718        "core/java/android/content/pm/AndroidTestBaseUpdater.java",
719    ],
720}
721
722genrule {
723    name: "framework-statslog-gen",
724    tools: ["stats-log-api-gen"],
725    cmd: "$(location stats-log-api-gen) --java $(out)",
726    out: ["android/util/StatsLogInternal.java"],
727}
728
729gensrcs {
730    name: "framework-javastream-protos",
731    depfile: true,
732
733    tools: [
734        "aprotoc",
735        "protoc-gen-javastream",
736        "soong_zip",
737    ],
738
739    cmd: "mkdir -p $(genDir)/$(in) " +
740        "&& $(location aprotoc) " +
741        "  --plugin=$(location protoc-gen-javastream) " +
742        "  --dependency_out=$(depfile) " +
743        "  --javastream_out=$(genDir)/$(in) " +
744        "  -Iexternal/protobuf/src " +
745        "  -I . " +
746        "  $(in) " +
747        "&& $(location soong_zip) -jar -o $(out) -C $(genDir)/$(in) -D $(genDir)/$(in)",
748
749    srcs: [
750        "core/proto/**/*.proto",
751        "libs/incident/**/*.proto",
752    ],
753    output_extension: "srcjar",
754}
755
756// Build ext.jar
757// ============================================================
758java_library {
759    name: "ext",
760    no_framework_libs: true,
761    static_libs: [
762        "libphonenumber-platform",
763        "nist-sip",
764        "tagsoup",
765        "rappor",
766    ],
767    dxflags: ["--core-library"],
768}
769
770// ====  c++ proto device library  ==============================
771cc_library {
772    name: "libplatformprotos",
773    host_supported: true,
774    proto: {
775        export_proto_headers: true,
776        include_dirs: ["external/protobuf/src"],
777    },
778
779    cflags: [
780        "-Wall",
781        "-Werror",
782        "-Wno-unused-parameter",
783    ],
784
785    srcs: [
786        "core/proto/**/*.proto",
787        "libs/incident/**/*.proto",
788    ],
789
790    target: {
791        host: {
792            proto: {
793                type: "full",
794            },
795        },
796        android: {
797            proto: {
798                type: "lite",
799            },
800            shared: {
801                enabled: false,
802            },
803        },
804    },
805}
806
807gensrcs {
808    name: "gen-platform-proto-constants",
809    depfile: true,
810
811    tools: [
812        "aprotoc",
813        "protoc-gen-cppstream",
814    ],
815
816    srcs: [
817        "core/proto/android/os/backtrace.proto",
818        "core/proto/android/os/batterytype.proto",
819        "core/proto/android/os/cpufreq.proto",
820        "core/proto/android/os/cpuinfo.proto",
821        "core/proto/android/os/kernelwake.proto",
822        "core/proto/android/os/pagetypeinfo.proto",
823        "core/proto/android/os/procrank.proto",
824        "core/proto/android/os/ps.proto",
825        "core/proto/android/os/system_properties.proto",
826        "core/proto/android/util/event_log_tags.proto",
827    ],
828
829    // Append protoc-gen-cppstream tool's PATH otherwise aprotoc can't find the plugin tool
830    cmd: "mkdir -p $(genDir) " +
831        "&& $(location aprotoc) " +
832        "  --plugin=$(location protoc-gen-cppstream) " +
833        "  --dependency_out=$(depfile) " +
834        "  --cppstream_out=$(genDir) " +
835        "  -Iexternal/protobuf/src " +
836        "  -I . " +
837        "  $(in)",
838
839    output_extension: "proto.h",
840}
841
842subdirs = [
843    "cmds/*",
844    "core/*",
845    "libs/*",
846    "media/*",
847    "proto",
848    "tools/*",
849    "native/android",
850    "native/graphics/jni",
851]
852
853optional_subdirs = [
854    "core/tests/utiltests/jni",
855]
856
857java_library {
858    name: "hwbinder",
859    no_framework_libs: true,
860
861    srcs: [
862        "core/java/android/os/HidlSupport.java",
863        "core/java/android/annotation/IntDef.java",
864        "core/java/android/annotation/NonNull.java",
865        "core/java/android/annotation/SystemApi.java",
866        "core/java/android/os/HwBinder.java",
867        "core/java/android/os/HwBlob.java",
868        "core/java/android/os/HwParcel.java",
869        "core/java/android/os/IHwBinder.java",
870        "core/java/android/os/IHwInterface.java",
871        "core/java/android/os/DeadObjectException.java",
872        "core/java/android/os/DeadSystemException.java",
873        "core/java/android/os/RemoteException.java",
874        "core/java/android/util/AndroidException.java",
875    ],
876
877    dxflags: ["--core-library"],
878    installable: false,
879}
880
881python_defaults {
882    name: "base_default",
883    version: {
884        py2: {
885            enabled: true,
886            embedded_launcher: true,
887        },
888        py3: {
889            enabled: false,
890            embedded_launcher: false,
891        },
892    },
893}
894
895python_binary_host {
896    name: "fontchain_linter",
897    defaults: ["base_default"],
898    main: "tools/fonts/fontchain_linter.py",
899    srcs: [
900        "tools/fonts/fontchain_linter.py",
901    ],
902    libs: [
903        "fontTools",
904    ],
905}
906