Home | History | Annotate | Download | only in base
      1 #
      2 # Copyright (C) 2008 The Android Open Source Project
      3 #
      4 # Licensed under the Apache License, Version 2.0 (the "License");
      5 # you may not use this file except in compliance with the License.
      6 # You may obtain a copy of the License at
      7 #
      8 #      http://www.apache.org/licenses/LICENSE-2.0
      9 #
     10 # Unless required by applicable law or agreed to in writing, software
     11 # distributed under the License is distributed on an "AS IS" BASIS,
     12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     13 # See the License for the specific language governing permissions and
     14 # limitations under the License.
     15 #
     16 LOCAL_PATH := $(call my-dir)
     17 
     18 # We have a special case here where we build the library's resources
     19 # independently from its code, so we need to find where the resource
     20 # class source got placed in the course of building the resources.
     21 # Thus, the magic here.
     22 # Also, this module cannot depend directly on the R.java file; if it
     23 # did, the PRIVATE_* vars for R.java wouldn't be guaranteed to be correct.
     24 # Instead, it depends on the R.stamp file, which lists the corresponding
     25 # R.java file as a prerequisite.
     26 # TODO: find a more appropriate way to do this.
     27 framework_res_source_path := APPS/framework-res_intermediates/src
     28 
     29 # Build the master framework library.
     30 # The framework contains too many method references (>64K) for poor old DEX.
     31 # So we first build the framework as a monolithic static library then split it
     32 # up into smaller pieces.
     33 # ============================================================
     34 
     35 # embedded builds use nothing in frameworks/base
     36 ifneq ($(ANDROID_BUILD_EMBEDDED),true)
     37 
     38 include $(CLEAR_VARS)
     39 
     40 # FRAMEWORKS_BASE_SUBDIRS comes from build/core/pathmap.mk
     41 LOCAL_SRC_FILES := $(call find-other-java-files,$(FRAMEWORKS_BASE_SUBDIRS))
     42 
     43 # EventLogTags files.
     44 LOCAL_SRC_FILES += \
     45        core/java/android/content/EventLogTags.logtags \
     46        core/java/android/speech/tts/EventLogTags.logtags \
     47        core/java/android/webkit/EventLogTags.logtags \
     48 
     49 ## READ ME: ########################################################
     50 ##
     51 ## When updating this list of aidl files, consider if that aidl is
     52 ## part of the SDK API.  If it is, also add it to the list below that
     53 ## is preprocessed and distributed with the SDK.  This list should
     54 ## not contain any aidl files for parcelables, but the one below should
     55 ## if you intend for 3rd parties to be able to send those objects
     56 ## across process boundaries.
     57 ##
     58 ## READ ME: ########################################################
     59 LOCAL_SRC_FILES += \
     60 	core/java/android/accessibilityservice/IAccessibilityServiceConnection.aidl \
     61 	core/java/android/accessibilityservice/IAccessibilityServiceClient.aidl \
     62 	core/java/android/accounts/IAccountManager.aidl \
     63 	core/java/android/accounts/IAccountManagerResponse.aidl \
     64 	core/java/android/accounts/IAccountAuthenticator.aidl \
     65 	core/java/android/accounts/IAccountAuthenticatorResponse.aidl \
     66 	core/java/android/app/IActivityContainer.aidl \
     67 	core/java/android/app/IActivityContainerCallback.aidl \
     68 	core/java/android/app/IActivityController.aidl \
     69 	core/java/android/app/IActivityPendingResult.aidl \
     70 	core/java/android/app/IAlarmManager.aidl \
     71 	core/java/android/app/IAppTask.aidl \
     72 	core/java/android/app/ITaskStackListener.aidl \
     73 	core/java/android/app/IBackupAgent.aidl \
     74 	core/java/android/app/IInstrumentationWatcher.aidl \
     75 	core/java/android/app/INotificationManager.aidl \
     76 	core/java/android/app/IProcessObserver.aidl \
     77 	core/java/android/app/ISearchManager.aidl \
     78 	core/java/android/app/ISearchManagerCallback.aidl \
     79 	core/java/android/app/IServiceConnection.aidl \
     80 	core/java/android/app/IStopUserCallback.aidl \
     81 	core/java/android/app/job/IJobCallback.aidl \
     82 	core/java/android/app/job/IJobScheduler.aidl \
     83 	core/java/android/app/job/IJobService.aidl \
     84 	core/java/android/app/ITransientNotification.aidl \
     85 	core/java/android/app/IUiAutomationConnection.aidl \
     86 	core/java/android/app/IUiModeManager.aidl \
     87 	core/java/android/app/IUserSwitchObserver.aidl \
     88 	core/java/android/app/IWallpaperManager.aidl \
     89 	core/java/android/app/IWallpaperManagerCallback.aidl \
     90 	core/java/android/app/admin/IDevicePolicyManager.aidl \
     91 	core/java/android/app/trust/ITrustManager.aidl \
     92 	core/java/android/app/trust/ITrustListener.aidl \
     93 	core/java/android/app/backup/IBackupManager.aidl \
     94 	core/java/android/app/backup/IFullBackupRestoreObserver.aidl \
     95 	core/java/android/app/backup/IRestoreObserver.aidl \
     96 	core/java/android/app/backup/IRestoreSession.aidl \
     97 	core/java/android/app/usage/IUsageStatsManager.aidl \
     98 	core/java/android/bluetooth/IBluetooth.aidl \
     99 	core/java/android/bluetooth/IBluetoothA2dp.aidl \
    100 	core/java/android/bluetooth/IBluetoothA2dpSink.aidl \
    101 	core/java/android/bluetooth/IBluetoothAvrcpController.aidl \
    102 	core/java/android/bluetooth/IBluetoothCallback.aidl \
    103 	core/java/android/bluetooth/IBluetoothProfileServiceConnection.aidl \
    104 	core/java/android/bluetooth/IBluetoothHeadset.aidl \
    105 	core/java/android/bluetooth/IBluetoothHeadsetPhone.aidl \
    106 	core/java/android/bluetooth/IBluetoothHealth.aidl \
    107 	core/java/android/bluetooth/IBluetoothHealthCallback.aidl \
    108 	core/java/android/bluetooth/IBluetoothInputDevice.aidl \
    109 	core/java/android/bluetooth/IBluetoothPan.aidl \
    110 	core/java/android/bluetooth/IBluetoothManager.aidl \
    111 	core/java/android/bluetooth/IBluetoothManagerCallback.aidl \
    112 	core/java/android/bluetooth/IBluetoothPbap.aidl \
    113 	core/java/android/bluetooth/IBluetoothMap.aidl \
    114 	core/java/android/bluetooth/IBluetoothStateChangeCallback.aidl \
    115 	core/java/android/bluetooth/IBluetoothHeadsetClient.aidl \
    116 	core/java/android/bluetooth/IBluetoothGatt.aidl \
    117 	core/java/android/bluetooth/IBluetoothGattCallback.aidl \
    118 	core/java/android/bluetooth/IBluetoothGattServerCallback.aidl \
    119 	core/java/android/content/IClipboard.aidl \
    120 	core/java/android/content/IContentService.aidl \
    121 	core/java/android/content/IIntentReceiver.aidl \
    122 	core/java/android/content/IIntentSender.aidl \
    123 	core/java/android/content/IOnPrimaryClipChangedListener.aidl \
    124 	core/java/android/content/IRestrictionsManager.aidl \
    125 	core/java/android/content/ISyncAdapter.aidl \
    126 	core/java/android/content/ISyncContext.aidl \
    127 	core/java/android/content/ISyncServiceAdapter.aidl \
    128 	core/java/android/content/ISyncStatusObserver.aidl \
    129 	core/java/android/content/pm/ILauncherApps.aidl \
    130 	core/java/android/content/pm/IOnAppsChangedListener.aidl \
    131 	core/java/android/content/pm/IPackageDataObserver.aidl \
    132 	core/java/android/content/pm/IPackageDeleteObserver.aidl \
    133 	core/java/android/content/pm/IPackageDeleteObserver2.aidl \
    134 	core/java/android/content/pm/IPackageInstallObserver.aidl \
    135 	core/java/android/content/pm/IPackageInstallObserver2.aidl \
    136 	core/java/android/content/pm/IPackageInstaller.aidl \
    137 	core/java/android/content/pm/IPackageInstallerCallback.aidl \
    138 	core/java/android/content/pm/IPackageInstallerSession.aidl \
    139 	core/java/android/content/pm/IPackageManager.aidl \
    140 	core/java/android/content/pm/IPackageMoveObserver.aidl \
    141 	core/java/android/content/pm/IPackageStatsObserver.aidl \
    142 	core/java/android/database/IContentObserver.aidl \
    143 	core/java/android/hardware/ICameraService.aidl \
    144 	core/java/android/hardware/ICameraServiceListener.aidl \
    145 	core/java/android/hardware/ICamera.aidl \
    146 	core/java/android/hardware/ICameraClient.aidl \
    147 	core/java/android/hardware/IConsumerIrService.aidl \
    148 	core/java/android/hardware/IProCameraUser.aidl \
    149 	core/java/android/hardware/IProCameraCallbacks.aidl \
    150 	core/java/android/hardware/camera2/ICameraDeviceUser.aidl \
    151 	core/java/android/hardware/camera2/ICameraDeviceCallbacks.aidl \
    152 	core/java/android/hardware/ISerialManager.aidl \
    153 	core/java/android/hardware/display/IDisplayManager.aidl \
    154 	core/java/android/hardware/display/IDisplayManagerCallback.aidl \
    155 	core/java/android/hardware/display/IVirtualDisplayCallback.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/location/IActivityRecognitionHardware.aidl \
    168 	core/java/android/hardware/location/IActivityRecognitionHardwareSink.aidl \
    169 	core/java/android/hardware/location/IActivityRecognitionHardwareWatcher.aidl \
    170 	core/java/android/hardware/location/IFusedLocationHardware.aidl \
    171 	core/java/android/hardware/location/IFusedLocationHardwareSink.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/soundtrigger/IRecognitionStatusCallback.aidl \
    176 	core/java/android/hardware/usb/IUsbManager.aidl \
    177 	core/java/android/net/IConnectivityManager.aidl \
    178 	core/java/android/net/IEthernetManager.aidl \
    179 	core/java/android/net/IEthernetServiceListener.aidl \
    180 	core/java/android/net/INetworkManagementEventObserver.aidl \
    181 	core/java/android/net/INetworkPolicyListener.aidl \
    182 	core/java/android/net/INetworkPolicyManager.aidl \
    183 	core/java/android/net/INetworkScoreCache.aidl \
    184 	core/java/android/net/INetworkScoreService.aidl \
    185 	core/java/android/net/INetworkStatsService.aidl \
    186 	core/java/android/net/INetworkStatsSession.aidl \
    187 	core/java/android/net/nsd/INsdManager.aidl \
    188 	core/java/android/nfc/IAppCallback.aidl \
    189 	core/java/android/nfc/INfcAdapter.aidl \
    190 	core/java/android/nfc/INfcAdapterExtras.aidl \
    191 	core/java/android/nfc/INfcTag.aidl \
    192 	core/java/android/nfc/INfcCardEmulation.aidl \
    193 	core/java/android/nfc/INfcUnlockHandler.aidl \
    194 	core/java/android/os/IBatteryPropertiesListener.aidl \
    195 	core/java/android/os/IBatteryPropertiesRegistrar.aidl \
    196 	core/java/android/os/ICancellationSignal.aidl \
    197 	core/java/android/os/IHardwareService.aidl \
    198 	core/java/android/os/IMessenger.aidl \
    199 	core/java/android/os/INetworkActivityListener.aidl \
    200 	core/java/android/os/INetworkManagementService.aidl \
    201 	core/java/android/os/IPermissionController.aidl \
    202 	core/java/android/os/IPowerManager.aidl \
    203 	core/java/android/os/IRemoteCallback.aidl \
    204 	core/java/android/os/ISchedulingPolicyService.aidl \
    205 	core/java/android/os/IUpdateLock.aidl \
    206 	core/java/android/os/IUserManager.aidl \
    207 	core/java/android/os/IVibratorService.aidl \
    208 	core/java/android/service/carrier/ICarrierMessagingCallback.aidl \
    209 	core/java/android/service/carrier/ICarrierMessagingService.aidl \
    210 	core/java/android/service/notification/INotificationListener.aidl \
    211 	core/java/android/service/notification/IStatusBarNotificationHolder.aidl \
    212 	core/java/android/service/notification/IConditionListener.aidl \
    213 	core/java/android/service/notification/IConditionProvider.aidl \
    214 	core/java/android/print/ILayoutResultCallback.aidl \
    215 	core/java/android/print/IPrinterDiscoveryObserver.aidl \
    216 	core/java/android/print/IPrintDocumentAdapter.aidl \
    217 	core/java/android/print/IPrintDocumentAdapterObserver.aidl \
    218 	core/java/android/print/IPrintJobStateChangeListener.aidl \
    219 	core/java/android/print/IPrintManager.aidl \
    220 	core/java/android/print/IPrintSpooler.aidl \
    221 	core/java/android/print/IPrintSpoolerCallbacks.aidl \
    222 	core/java/android/print/IPrintSpoolerClient.aidl \
    223 	core/java/android/print/IWriteResultCallback.aidl \
    224 	core/java/android/printservice/IPrintService.aidl \
    225 	core/java/android/printservice/IPrintServiceClient.aidl \
    226 	core/java/android/service/dreams/IDreamManager.aidl \
    227 	core/java/android/service/dreams/IDreamService.aidl \
    228 	core/java/android/service/persistentdata/IPersistentDataBlockService.aidl \
    229 	core/java/android/service/fingerprint/IFingerprintService.aidl \
    230 	core/java/android/service/fingerprint/IFingerprintServiceReceiver.aidl \
    231 	core/java/android/service/trust/ITrustAgentService.aidl \
    232 	core/java/android/service/trust/ITrustAgentServiceCallback.aidl \
    233 	core/java/android/service/voice/IVoiceInteractionService.aidl \
    234 	core/java/android/service/voice/IVoiceInteractionSession.aidl \
    235 	core/java/android/service/voice/IVoiceInteractionSessionService.aidl \
    236 	core/java/android/service/wallpaper/IWallpaperConnection.aidl \
    237 	core/java/android/service/wallpaper/IWallpaperEngine.aidl \
    238 	core/java/android/service/wallpaper/IWallpaperService.aidl \
    239 	core/java/android/view/accessibility/IAccessibilityInteractionConnection.aidl\
    240 	core/java/android/view/accessibility/IAccessibilityInteractionConnectionCallback.aidl\
    241 	core/java/android/view/accessibility/IAccessibilityManager.aidl \
    242 	core/java/android/view/accessibility/IAccessibilityManagerClient.aidl \
    243 	core/java/android/view/IApplicationToken.aidl \
    244 	core/java/android/view/IAssetAtlas.aidl \
    245 	core/java/android/view/IInputFilter.aidl \
    246 	core/java/android/view/IInputFilterHost.aidl \
    247 	core/java/android/view/IOnKeyguardExitResult.aidl \
    248 	core/java/android/view/IRotationWatcher.aidl \
    249 	core/java/android/view/IWindow.aidl \
    250 	core/java/android/view/IWindowFocusObserver.aidl \
    251 	core/java/android/view/IWindowId.aidl \
    252 	core/java/android/view/IWindowManager.aidl \
    253 	core/java/android/view/IWindowSession.aidl \
    254 	core/java/android/view/IWindowSessionCallback.aidl \
    255 	core/java/android/webkit/IWebViewUpdateService.aidl \
    256 	core/java/android/speech/IRecognitionListener.aidl \
    257 	core/java/android/speech/IRecognitionService.aidl \
    258 	core/java/android/speech/tts/ITextToSpeechCallback.aidl \
    259 	core/java/android/speech/tts/ITextToSpeechService.aidl \
    260 	core/java/com/android/internal/app/IAppOpsCallback.aidl \
    261 	core/java/com/android/internal/app/IAppOpsService.aidl \
    262 	core/java/com/android/internal/app/IBatteryStats.aidl \
    263 	core/java/com/android/internal/app/IProcessStats.aidl \
    264 	core/java/com/android/internal/app/IVoiceInteractionManagerService.aidl \
    265 	core/java/com/android/internal/app/IVoiceInteractor.aidl \
    266 	core/java/com/android/internal/app/IVoiceInteractorCallback.aidl \
    267 	core/java/com/android/internal/app/IVoiceInteractorRequest.aidl \
    268 	core/java/com/android/internal/app/IMediaContainerService.aidl \
    269 	core/java/com/android/internal/appwidget/IAppWidgetService.aidl \
    270 	core/java/com/android/internal/appwidget/IAppWidgetHost.aidl \
    271 	core/java/com/android/internal/backup/IBackupTransport.aidl \
    272 	core/java/com/android/internal/backup/IObbBackupService.aidl \
    273 	core/java/com/android/internal/policy/IFaceLockCallback.aidl \
    274 	core/java/com/android/internal/policy/IFaceLockInterface.aidl \
    275 	core/java/com/android/internal/policy/IKeyguardShowCallback.aidl \
    276 	core/java/com/android/internal/policy/IKeyguardExitCallback.aidl \
    277 	core/java/com/android/internal/policy/IKeyguardService.aidl \
    278 	core/java/com/android/internal/policy/IKeyguardStateCallback.aidl \
    279 	core/java/com/android/internal/os/IDropBoxManagerService.aidl \
    280 	core/java/com/android/internal/os/IParcelFileDescriptorFactory.aidl \
    281 	core/java/com/android/internal/os/IResultReceiver.aidl \
    282 	core/java/com/android/internal/statusbar/IStatusBar.aidl \
    283 	core/java/com/android/internal/statusbar/IStatusBarService.aidl \
    284 	core/java/com/android/internal/textservice/ISpellCheckerService.aidl \
    285 	core/java/com/android/internal/textservice/ISpellCheckerSession.aidl \
    286 	core/java/com/android/internal/textservice/ISpellCheckerSessionListener.aidl \
    287 	core/java/com/android/internal/textservice/ITextServicesManager.aidl \
    288 	core/java/com/android/internal/textservice/ITextServicesSessionListener.aidl \
    289 	core/java/com/android/internal/view/IInputContext.aidl \
    290 	core/java/com/android/internal/view/IInputContextCallback.aidl \
    291 	core/java/com/android/internal/view/IInputMethod.aidl \
    292 	core/java/com/android/internal/view/IInputMethodClient.aidl \
    293 	core/java/com/android/internal/view/IInputMethodManager.aidl \
    294 	core/java/com/android/internal/view/IInputMethodSession.aidl \
    295 	core/java/com/android/internal/view/IInputSessionCallback.aidl \
    296 	core/java/com/android/internal/widget/ILockSettings.aidl \
    297 	core/java/com/android/internal/widget/IRemoteViewsFactory.aidl \
    298 	core/java/com/android/internal/widget/IRemoteViewsAdapterConnection.aidl \
    299 	keystore/java/android/security/IKeyChainAliasCallback.aidl \
    300 	keystore/java/android/security/IKeyChainService.aidl \
    301 	location/java/android/location/ICountryDetector.aidl \
    302 	location/java/android/location/ICountryListener.aidl \
    303 	location/java/android/location/IFusedProvider.aidl \
    304 	location/java/android/location/IGeocodeProvider.aidl \
    305 	location/java/android/location/IGeofenceProvider.aidl \
    306 	location/java/android/location/IGpsMeasurementsListener.aidl \
    307 	location/java/android/location/IGpsNavigationMessageListener.aidl \
    308 	location/java/android/location/IGpsStatusListener.aidl \
    309 	location/java/android/location/IGpsStatusProvider.aidl \
    310 	location/java/android/location/ILocationListener.aidl \
    311 	location/java/android/location/ILocationManager.aidl \
    312 	location/java/android/location/IFusedGeofenceHardware.aidl \
    313 	location/java/android/location/IGpsGeofenceHardware.aidl \
    314 	location/java/android/location/INetInitiatedListener.aidl \
    315 	location/java/com/android/internal/location/ILocationProvider.aidl \
    316 	media/java/android/media/IAudioService.aidl \
    317 	media/java/android/media/IAudioFocusDispatcher.aidl \
    318 	media/java/android/media/IAudioRoutesObserver.aidl \
    319 	media/java/android/media/IMediaHTTPConnection.aidl \
    320 	media/java/android/media/IMediaHTTPService.aidl \
    321 	media/java/android/media/IMediaRouterClient.aidl \
    322 	media/java/android/media/IMediaRouterService.aidl \
    323 	media/java/android/media/IMediaScannerListener.aidl \
    324 	media/java/android/media/IMediaScannerService.aidl \
    325 	media/java/android/media/IRemoteControlClient.aidl \
    326 	media/java/android/media/IRemoteControlDisplay.aidl \
    327 	media/java/android/media/IRemoteDisplayCallback.aidl \
    328 	media/java/android/media/IRemoteDisplayProvider.aidl \
    329 	media/java/android/media/IRemoteVolumeController.aidl \
    330 	media/java/android/media/IRemoteVolumeObserver.aidl \
    331 	media/java/android/media/IRingtonePlayer.aidl \
    332 	media/java/android/media/IVolumeController.aidl \
    333         media/java/android/media/audiopolicy/IAudioPolicyCallback.aidl \
    334 	media/java/android/media/projection/IMediaProjection.aidl \
    335 	media/java/android/media/projection/IMediaProjectionCallback.aidl \
    336 	media/java/android/media/projection/IMediaProjectionManager.aidl \
    337 	media/java/android/media/projection/IMediaProjectionWatcherCallback.aidl \
    338 	media/java/android/media/session/IActiveSessionsListener.aidl \
    339 	media/java/android/media/session/ISessionController.aidl \
    340 	media/java/android/media/session/ISessionControllerCallback.aidl \
    341 	media/java/android/media/session/ISession.aidl \
    342 	media/java/android/media/session/ISessionCallback.aidl \
    343 	media/java/android/media/session/ISessionManager.aidl \
    344 	media/java/android/media/tv/ITvInputClient.aidl \
    345 	media/java/android/media/tv/ITvInputHardware.aidl \
    346 	media/java/android/media/tv/ITvInputHardwareCallback.aidl \
    347 	media/java/android/media/tv/ITvInputManager.aidl \
    348 	media/java/android/media/tv/ITvInputManagerCallback.aidl \
    349 	media/java/android/media/tv/ITvInputService.aidl \
    350 	media/java/android/media/tv/ITvInputServiceCallback.aidl \
    351 	media/java/android/media/tv/ITvInputSession.aidl \
    352 	media/java/android/media/tv/ITvInputSessionCallback.aidl \
    353 	media/java/android/service/media/IMediaBrowserService.aidl \
    354 	media/java/android/service/media/IMediaBrowserServiceCallbacks.aidl \
    355 	telecomm/java/com/android/internal/telecom/IVideoCallback.aidl \
    356 	telecomm/java/com/android/internal/telecom/IVideoProvider.aidl \
    357 	telecomm/java/com/android/internal/telecom/IConnectionService.aidl \
    358 	telecomm/java/com/android/internal/telecom/IConnectionServiceAdapter.aidl \
    359 	telecomm/java/com/android/internal/telecom/IInCallAdapter.aidl \
    360 	telecomm/java/com/android/internal/telecom/IInCallService.aidl \
    361 	telecomm/java/com/android/internal/telecom/ITelecomService.aidl \
    362 	telecomm/java/com/android/internal/telecom/RemoteServiceCallback.aidl \
    363 	telephony/java/com/android/ims/internal/IImsCallSession.aidl \
    364 	telephony/java/com/android/ims/internal/IImsCallSessionListener.aidl \
    365 	telephony/java/com/android/ims/internal/IImsConfig.aidl \
    366 	telephony/java/com/android/ims/internal/IImsRegistrationListener.aidl \
    367 	telephony/java/com/android/ims/internal/IImsEcbm.aidl \
    368 	telephony/java/com/android/ims/internal/IImsEcbmListener.aidl \
    369 	telephony/java/com/android/ims/internal/IImsService.aidl \
    370 	telephony/java/com/android/ims/internal/IImsStreamMediaSession.aidl \
    371 	telephony/java/com/android/ims/internal/IImsUt.aidl \
    372 	telephony/java/com/android/ims/internal/IImsUtListener.aidl \
    373 	telephony/java/com/android/ims/internal/IImsVideoCallCallback.aidl \
    374 	telephony/java/com/android/ims/internal/IImsVideoCallProvider.aidl \
    375 	telephony/java/com/android/ims/ImsConfigListener.aidl \
    376 	telephony/java/com/android/internal/telephony/IPhoneStateListener.aidl \
    377 	telephony/java/com/android/internal/telephony/IPhoneSubInfo.aidl \
    378 	telephony/java/com/android/internal/telephony/ITelephony.aidl \
    379 	telephony/java/com/android/internal/telephony/ITelephonyRegistry.aidl \
    380 	telephony/java/com/android/internal/telephony/IOnSubscriptionsChangedListener.aidl \
    381 	telephony/java/com/android/internal/telephony/ISms.aidl \
    382 	telephony/java/com/android/internal/telephony/IWapPushManager.aidl \
    383 	telephony/java/com/android/internal/telephony/ISub.aidl \
    384 	telephony/java/com/android/internal/telephony/IMms.aidl \
    385 	wifi/java/android/net/wifi/IWifiManager.aidl \
    386 	wifi/java/android/net/wifi/p2p/IWifiP2pManager.aidl \
    387 	wifi/java/android/net/wifi/IWifiScanner.aidl \
    388 	wifi/java/android/net/wifi/IRttManager.aidl \
    389 	packages/services/PacProcessor/com/android/net/IProxyService.aidl \
    390 	packages/services/Proxy/com/android/net/IProxyCallback.aidl \
    391 	packages/services/Proxy/com/android/net/IProxyPortListener.aidl \
    392 
    393 # FRAMEWORKS_BASE_JAVA_SRC_DIRS comes from build/core/pathmap.mk
    394 LOCAL_AIDL_INCLUDES += $(FRAMEWORKS_BASE_JAVA_SRC_DIRS)
    395 
    396 LOCAL_INTERMEDIATE_SOURCES := \
    397 			$(framework_res_source_path)/android/R.java \
    398 			$(framework_res_source_path)/android/Manifest.java \
    399 			$(framework_res_source_path)/com/android/internal/R.java
    400 
    401 LOCAL_NO_STANDARD_LIBRARIES := true
    402 LOCAL_JAVA_LIBRARIES := core-libart conscrypt okhttp core-junit bouncycastle ext
    403 
    404 LOCAL_MODULE := framework
    405 
    406 LOCAL_DX_FLAGS := --core-library --multi-dex
    407 
    408 LOCAL_RMTYPEDEFS := true
    409 
    410 include $(BUILD_JAVA_LIBRARY)
    411 framework_module := $(LOCAL_INSTALLED_MODULE)
    412 
    413 # Make sure that R.java and Manifest.java are built before we build
    414 # the source for this library.
    415 framework_res_R_stamp := \
    416 	$(call intermediates-dir-for,APPS,framework-res,,COMMON)/src/R.stamp
    417 $(full_classes_compiled_jar): $(framework_res_R_stamp)
    418 
    419 $(framework_module): | $(dir $(framework_module))framework-res.apk
    420 
    421 framework_built := $(call java-lib-deps,framework)
    422 
    423 # Copy AIDL files to be preprocessed and included in the SDK,
    424 # specified relative to the root of the build tree.
    425 # ============================================================
    426 include $(CLEAR_VARS)
    427 
    428 aidl_files := \
    429 	frameworks/base/telephony/java/android/telephony/ServiceState.aidl \
    430 	frameworks/base/telephony/java/android/telephony/CellInfo.aidl \
    431 	frameworks/base/telephony/java/android/telephony/SignalStrength.aidl \
    432 	frameworks/base/telephony/java/android/telephony/IccOpenLogicalChannelResponse.aidl \
    433 	frameworks/base/telephony/java/android/telephony/NeighboringCellInfo.aidl \
    434 	frameworks/base/location/java/android/location/Location.aidl \
    435 	frameworks/base/location/java/android/location/Address.aidl \
    436 	frameworks/base/location/java/android/location/Criteria.aidl \
    437 	frameworks/base/media/java/android/media/MediaMetadata.aidl \
    438 	frameworks/base/media/java/android/media/MediaDescription.aidl \
    439 	frameworks/base/media/java/android/media/Rating.aidl \
    440 	frameworks/base/media/java/android/media/AudioAttributes.aidl \
    441 	frameworks/base/media/java/android/media/AudioFocusInfo.aidl \
    442 	frameworks/base/media/java/android/media/session/PlaybackState.aidl \
    443 	frameworks/base/media/java/android/media/session/MediaSession.aidl \
    444 	frameworks/base/media/java/android/media/tv/TvInputInfo.aidl \
    445 	frameworks/base/media/java/android/media/tv/TvTrackInfo.aidl \
    446 	frameworks/base/media/java/android/media/browse/MediaBrowser.aidl \
    447 	frameworks/base/wifi/java/android/net/wifi/ScanSettings.aidl \
    448 	frameworks/base/wifi/java/android/net/wifi/p2p/WifiP2pInfo.aidl \
    449 	frameworks/base/wifi/java/android/net/wifi/p2p/WifiP2pDeviceList.aidl \
    450 	frameworks/base/wifi/java/android/net/wifi/p2p/WifiP2pConfig.aidl \
    451 	frameworks/base/wifi/java/android/net/wifi/p2p/WifiP2pDevice.aidl \
    452 	frameworks/base/wifi/java/android/net/wifi/p2p/WifiP2pGroup.aidl \
    453 	frameworks/base/wifi/java/android/net/wifi/p2p/nsd/WifiP2pServiceRequest.aidl \
    454 	frameworks/base/wifi/java/android/net/wifi/p2p/nsd/WifiP2pServiceInfo.aidl \
    455 	frameworks/base/wifi/java/android/net/wifi/WpsInfo.aidl \
    456 	frameworks/base/wifi/java/android/net/wifi/ScanResult.aidl \
    457 	frameworks/base/wifi/java/android/net/wifi/WifiEnterpriseConfig.aidl \
    458 	frameworks/base/wifi/java/android/net/wifi/WifiConfiguration.aidl \
    459 	frameworks/base/wifi/java/android/net/wifi/WifiInfo.aidl \
    460 	frameworks/base/graphics/java/android/graphics/Region.aidl \
    461 	frameworks/base/graphics/java/android/graphics/Bitmap.aidl \
    462 	frameworks/base/graphics/java/android/graphics/Point.aidl \
    463 	frameworks/base/graphics/java/android/graphics/PointF.aidl \
    464 	frameworks/base/graphics/java/android/graphics/RectF.aidl \
    465 	frameworks/base/graphics/java/android/graphics/Rect.aidl \
    466 	frameworks/base/core/java/android/accounts/AuthenticatorDescription.aidl \
    467 	frameworks/base/core/java/android/accounts/Account.aidl \
    468 	frameworks/base/core/java/android/print/PrintDocumentInfo.aidl \
    469 	frameworks/base/core/java/android/print/PageRange.aidl \
    470 	frameworks/base/core/java/android/print/PrintAttributes.aidl \
    471 	frameworks/base/core/java/android/print/PrinterCapabilitiesInfo.aidl \
    472 	frameworks/base/core/java/android/print/PrinterId.aidl \
    473 	frameworks/base/core/java/android/print/PrintJobInfo.aidl \
    474 	frameworks/base/core/java/android/print/PrinterInfo.aidl \
    475 	frameworks/base/core/java/android/print/PrintJobId.aidl \
    476 	frameworks/base/core/java/android/hardware/usb/UsbDevice.aidl \
    477 	frameworks/base/core/java/android/hardware/usb/UsbInterface.aidl \
    478 	frameworks/base/core/java/android/hardware/usb/UsbEndpoint.aidl \
    479 	frameworks/base/core/java/android/hardware/usb/UsbAccessory.aidl \
    480 	frameworks/base/core/java/android/os/Messenger.aidl \
    481 	frameworks/base/core/java/android/os/PatternMatcher.aidl \
    482 	frameworks/base/core/java/android/os/Message.aidl \
    483 	frameworks/base/core/java/android/os/UserHandle.aidl \
    484 	frameworks/base/core/java/android/os/ParcelUuid.aidl \
    485 	frameworks/base/core/java/android/os/ParcelFileDescriptor.aidl \
    486 	frameworks/base/core/java/android/os/ResultReceiver.aidl \
    487 	frameworks/base/core/java/android/os/PersistableBundle.aidl \
    488 	frameworks/base/core/java/android/os/WorkSource.aidl \
    489 	frameworks/base/core/java/android/os/DropBoxManager.aidl \
    490 	frameworks/base/core/java/android/os/Bundle.aidl \
    491 	frameworks/base/core/java/android/accessibilityservice/AccessibilityServiceInfo.aidl \
    492 	frameworks/base/core/java/android/net/Network.aidl \
    493 	frameworks/base/core/java/android/net/RouteInfo.aidl \
    494 	frameworks/base/core/java/android/net/NetworkInfo.aidl \
    495 	frameworks/base/core/java/android/net/IpPrefix.aidl \
    496 	frameworks/base/core/java/android/net/NetworkCapabilities.aidl \
    497 	frameworks/base/core/java/android/net/DhcpInfo.aidl \
    498 	frameworks/base/core/java/android/net/ProxyInfo.aidl \
    499 	frameworks/base/core/java/android/net/LinkProperties.aidl \
    500 	frameworks/base/core/java/android/net/Uri.aidl \
    501 	frameworks/base/core/java/android/net/NetworkRequest.aidl \
    502 	frameworks/base/core/java/android/net/LinkAddress.aidl \
    503 	frameworks/base/core/java/android/view/Surface.aidl \
    504 	frameworks/base/core/java/android/view/WindowContentFrameStats.aidl \
    505 	frameworks/base/core/java/android/view/InputDevice.aidl \
    506 	frameworks/base/core/java/android/view/InputEvent.aidl \
    507 	frameworks/base/core/java/android/view/inputmethod/InputMethodSubtype.aidl \
    508 	frameworks/base/core/java/android/view/inputmethod/CursorAnchorInfo.aidl \
    509 	frameworks/base/core/java/android/view/inputmethod/CompletionInfo.aidl \
    510 	frameworks/base/core/java/android/view/inputmethod/ExtractedText.aidl \
    511 	frameworks/base/core/java/android/view/inputmethod/EditorInfo.aidl \
    512 	frameworks/base/core/java/android/view/inputmethod/InputMethodInfo.aidl \
    513 	frameworks/base/core/java/android/view/inputmethod/CorrectionInfo.aidl \
    514 	frameworks/base/core/java/android/view/inputmethod/InputBinding.aidl \
    515 	frameworks/base/core/java/android/view/inputmethod/ExtractedTextRequest.aidl \
    516 	frameworks/base/core/java/android/view/DragEvent.aidl \
    517 	frameworks/base/core/java/android/view/KeyEvent.aidl \
    518 	frameworks/base/core/java/android/view/WindowManager.aidl \
    519 	frameworks/base/core/java/android/view/WindowAnimationFrameStats.aidl \
    520 	frameworks/base/core/java/android/view/MotionEvent.aidl \
    521 	frameworks/base/core/java/android/view/accessibility/AccessibilityNodeInfo.aidl \
    522 	frameworks/base/core/java/android/view/accessibility/AccessibilityRecord.aidl \
    523 	frameworks/base/core/java/android/view/accessibility/AccessibilityWindowInfo.aidl \
    524 	frameworks/base/core/java/android/view/accessibility/AccessibilityEvent.aidl \
    525 	frameworks/base/core/java/android/view/textservice/SpellCheckerSubtype.aidl \
    526 	frameworks/base/core/java/android/view/textservice/TextInfo.aidl \
    527 	frameworks/base/core/java/android/view/textservice/SpellCheckerInfo.aidl \
    528 	frameworks/base/core/java/android/view/textservice/SentenceSuggestionsInfo.aidl \
    529 	frameworks/base/core/java/android/view/textservice/SuggestionsInfo.aidl \
    530 	frameworks/base/core/java/android/service/carrier/MessagePdu.aidl \
    531 	frameworks/base/core/java/android/service/notification/StatusBarNotification.aidl \
    532 	frameworks/base/core/java/android/speech/tts/Voice.aidl \
    533 	frameworks/base/core/java/android/app/usage/UsageEvents.aidl \
    534 	frameworks/base/core/java/android/app/Notification.aidl \
    535 	frameworks/base/core/java/android/app/WallpaperInfo.aidl \
    536 	frameworks/base/core/java/android/app/AppOpsManager.aidl \
    537 	frameworks/base/core/java/android/app/ActivityManager.aidl \
    538 	frameworks/base/core/java/android/app/PendingIntent.aidl \
    539 	frameworks/base/core/java/android/app/AlarmManager.aidl \
    540 	frameworks/base/core/java/android/app/SearchableInfo.aidl \
    541 	frameworks/base/core/java/android/app/job/JobParameters.aidl \
    542 	frameworks/base/core/java/android/app/job/JobInfo.aidl \
    543 	frameworks/base/core/java/android/appwidget/AppWidgetProviderInfo.aidl \
    544 	frameworks/base/core/java/android/content/ClipDescription.aidl \
    545 	frameworks/base/core/java/android/content/IntentFilter.aidl \
    546 	frameworks/base/core/java/android/content/Intent.aidl \
    547 	frameworks/base/core/java/android/content/res/Configuration.aidl \
    548 	frameworks/base/core/java/android/content/res/ObbInfo.aidl \
    549 	frameworks/base/core/java/android/content/RestrictionEntry.aidl \
    550 	frameworks/base/core/java/android/content/ClipData.aidl \
    551 	frameworks/base/core/java/android/content/SyncAdapterType.aidl \
    552 	frameworks/base/core/java/android/content/SyncRequest.aidl \
    553 	frameworks/base/core/java/android/content/PeriodicSync.aidl \
    554 	frameworks/base/core/java/android/content/SyncResult.aidl \
    555 	frameworks/base/core/java/android/content/pm/FeatureInfo.aidl \
    556 	frameworks/base/core/java/android/content/pm/InstrumentationInfo.aidl \
    557 	frameworks/base/core/java/android/content/pm/PackageInstaller.aidl \
    558 	frameworks/base/core/java/android/content/pm/ServiceInfo.aidl \
    559 	frameworks/base/core/java/android/content/pm/Signature.aidl \
    560 	frameworks/base/core/java/android/content/pm/ApplicationInfo.aidl \
    561 	frameworks/base/core/java/android/content/pm/PermissionInfo.aidl \
    562 	frameworks/base/core/java/android/content/pm/ActivityInfo.aidl \
    563 	frameworks/base/core/java/android/content/pm/PackageInfo.aidl \
    564 	frameworks/base/core/java/android/content/pm/ResolveInfo.aidl \
    565 	frameworks/base/core/java/android/content/pm/ProviderInfo.aidl \
    566 	frameworks/base/core/java/android/content/pm/PackageStats.aidl \
    567 	frameworks/base/core/java/android/content/pm/PermissionGroupInfo.aidl \
    568 	frameworks/base/core/java/android/content/pm/LabeledIntent.aidl \
    569 	frameworks/base/core/java/android/content/ComponentName.aidl \
    570 	frameworks/base/core/java/android/content/SyncStats.aidl \
    571 	frameworks/base/core/java/android/content/ContentValues.aidl \
    572 	frameworks/base/core/java/android/content/SyncInfo.aidl \
    573 	frameworks/base/core/java/android/content/IntentSender.aidl \
    574 	frameworks/base/core/java/android/widget/RemoteViews.aidl \
    575 	frameworks/base/core/java/android/text/style/SuggestionSpan.aidl \
    576 	frameworks/base/core/java/android/nfc/Tag.aidl \
    577 	frameworks/base/core/java/android/nfc/NdefRecord.aidl \
    578 	frameworks/base/core/java/android/nfc/NdefMessage.aidl \
    579 	frameworks/base/core/java/android/bluetooth/BluetoothHealthAppConfiguration.aidl \
    580 	frameworks/base/core/java/android/bluetooth/le/AdvertiseSettings.aidl \
    581 	frameworks/base/core/java/android/bluetooth/le/ScanSettings.aidl \
    582 	frameworks/base/core/java/android/bluetooth/le/AdvertiseData.aidl \
    583 	frameworks/base/core/java/android/bluetooth/le/ScanFilter.aidl \
    584 	frameworks/base/core/java/android/bluetooth/le/ScanResult.aidl \
    585 	frameworks/base/core/java/android/bluetooth/BluetoothDevice.aidl \
    586 	frameworks/base/core/java/android/database/CursorWindow.aidl
    587 
    588 gen := $(TARGET_OUT_COMMON_INTERMEDIATES)/framework.aidl
    589 $(gen): PRIVATE_SRC_FILES := $(aidl_files)
    590 ALL_SDK_FILES += $(gen)
    591 $(gen): $(aidl_files) | $(AIDL)
    592 		@echo Aidl Preprocess: $@
    593 		$(hide) $(AIDL) --preprocess $@ $(PRIVATE_SRC_FILES)
    594 
    595 # the documentation
    596 # ============================================================
    597 
    598 # TODO: deal with com/google/android/googleapps
    599 packages_to_document := \
    600 	android \
    601 	javax/microedition/khronos
    602 
    603 # Search through the base framework dirs for these packages.
    604 # The result will be relative to frameworks/base.
    605 fwbase_dirs_to_document := \
    606 	test-runner/src \
    607 	$(patsubst $(LOCAL_PATH)/%,%, \
    608 	  $(wildcard \
    609 	    $(foreach dir, $(FRAMEWORKS_BASE_JAVA_SRC_DIRS), \
    610 	      $(addprefix $(dir)/, $(packages_to_document)) \
    611 	     ) \
    612 	   ) \
    613 	 )
    614 
    615 # include definition of libcore_to_document
    616 include libcore/Docs.mk
    617 
    618 # include definition of junit_to_document
    619 include external/junit/Common.mk
    620 
    621 non_base_dirs := \
    622 	../../external/apache-http/src/org/apache/http \
    623 	../opt/telephony/src/java/android/provider \
    624 	../opt/telephony/src/java/android/telephony \
    625 	../opt/telephony/src/java/android/telephony/gsm \
    626 	../opt/net/voip/src/java/android/net/rtp \
    627 	../opt/net/voip/src/java/android/net/sip
    628 
    629 # These are relative to frameworks/base
    630 dirs_to_check_apis := \
    631   $(fwbase_dirs_to_document) \
    632 	$(non_base_dirs)
    633 
    634 # These are relative to frameworks/base
    635 # FRAMEWORKS_BASE_SUBDIRS comes from build/core/pathmap.mk
    636 dirs_to_document := \
    637 	$(dirs_to_check_apis) \
    638   $(addprefix ../../, $(FRAMEWORKS_SUPPORT_JAVA_SRC_DIRS))
    639 
    640 # These are relative to frameworks/base
    641 html_dirs := \
    642 	$(FRAMEWORKS_BASE_SUBDIRS) \
    643 	$(non_base_dirs)
    644 
    645 # Common sources for doc check and api check
    646 common_src_files := \
    647 	$(call find-other-html-files, $(html_dirs)) \
    648 	$(addprefix ../../libcore/, $(libcore_to_document)) \
    649 	$(addprefix ../../external/junit/, $(junit_to_document))
    650 
    651 # These are relative to frameworks/base
    652 framework_docs_LOCAL_SRC_FILES := \
    653 	$(call find-other-java-files, $(dirs_to_document)) \
    654 	$(common_src_files)
    655 
    656 # These are relative to frameworks/base
    657 framework_docs_LOCAL_API_CHECK_SRC_FILES := \
    658 	$(call find-other-java-files, $(dirs_to_check_apis)) \
    659 	$(common_src_files)
    660 
    661 # This is used by ide.mk as the list of source files that are
    662 # always included.
    663 INTERNAL_SDK_SOURCE_DIRS := $(addprefix $(LOCAL_PATH)/,$(dirs_to_document))
    664 
    665 framework_docs_LOCAL_DROIDDOC_SOURCE_PATH := \
    666 	$(FRAMEWORKS_BASE_JAVA_SRC_DIRS)
    667 
    668 framework_docs_LOCAL_INTERMEDIATE_SOURCES := \
    669 	$(framework_res_source_path)/android/R.java \
    670 	$(framework_res_source_path)/android/Manifest.java \
    671 	$(framework_res_source_path)/com/android/internal/R.java
    672 
    673 framework_docs_LOCAL_API_CHECK_JAVA_LIBRARIES := \
    674 	core-libart \
    675 	conscrypt \
    676 	bouncycastle \
    677 	okhttp \
    678 	ext \
    679 	framework \
    680 	telephony-common \
    681 	voip-common
    682 
    683 framework_docs_LOCAL_JAVA_LIBRARIES := \
    684 	$(framework_docs_LOCAL_API_CHECK_JAVA_LIBRARIES) \
    685 	$(FRAMEWORKS_SUPPORT_JAVA_LIBRARIES)
    686 
    687 framework_docs_LOCAL_MODULE_CLASS := JAVA_LIBRARIES
    688 framework_docs_LOCAL_DROIDDOC_HTML_DIR := docs/html
    689 # The since flag (-since N.xml API_LEVEL) is used to add API Level information
    690 # to the reference documentation. Must be in order of oldest to newest.
    691 #
    692 # Conscrypt (com.android.org.conscrypt) is an implementation detail and should
    693 # not be referenced in the documentation.
    694 framework_docs_LOCAL_DROIDDOC_OPTIONS := \
    695     -knowntags ./frameworks/base/docs/knowntags.txt \
    696     -hidePackage com.android.org.conscrypt \
    697     -since $(SRC_API_DIR)/1.xml 1 \
    698     -since $(SRC_API_DIR)/2.xml 2 \
    699     -since $(SRC_API_DIR)/3.xml 3 \
    700     -since $(SRC_API_DIR)/4.xml 4 \
    701     -since $(SRC_API_DIR)/5.xml 5 \
    702     -since $(SRC_API_DIR)/6.xml 6 \
    703     -since $(SRC_API_DIR)/7.xml 7 \
    704     -since $(SRC_API_DIR)/8.xml 8 \
    705     -since $(SRC_API_DIR)/9.xml 9 \
    706     -since $(SRC_API_DIR)/10.xml 10 \
    707     -since $(SRC_API_DIR)/11.xml 11 \
    708     -since $(SRC_API_DIR)/12.xml 12 \
    709     -since $(SRC_API_DIR)/13.xml 13 \
    710     -since $(SRC_API_DIR)/14.txt 14 \
    711     -since $(SRC_API_DIR)/15.txt 15 \
    712     -since $(SRC_API_DIR)/16.txt 16 \
    713     -since $(SRC_API_DIR)/17.txt 17 \
    714     -since $(SRC_API_DIR)/18.txt 18 \
    715     -since $(SRC_API_DIR)/19.txt 19 \
    716     -since $(SRC_API_DIR)/20.txt 20 \
    717     -since $(SRC_API_DIR)/21.txt 21 \
    718 		-werror -hide 111 -hide 113 \
    719 		-overview $(LOCAL_PATH)/core/java/overview.html
    720 
    721 framework_docs_LOCAL_API_CHECK_ADDITIONAL_JAVA_DIR:= \
    722 	$(call intermediates-dir-for,JAVA_LIBRARIES,framework,,COMMON)
    723 
    724 framework_docs_LOCAL_ADDITIONAL_JAVA_DIR:= \
    725 	$(framework_docs_LOCAL_API_CHECK_ADDITIONAL_JAVA_DIR) \
    726 	$(foreach lib,$(FRAMEWORKS_SUPPORT_JAVA_LIBRARIES),$(call intermediates-dir-for,JAVA_LIBRARIES,$(lib),,COMMON)) \
    727 	$(foreach lib,$(FRAMEWORKS_SUPPORT_JAVA_LIBRARIES),$(call intermediates-dir-for,JAVA_LIBRARIES,$(lib)-res,,COMMON))
    728 
    729 framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES := \
    730     frameworks/base/docs/knowntags.txt
    731 
    732 samples_dir := development/samples/browseable
    733 
    734 # Whitelist of valid groups, used for default TOC grouping. Each sample must
    735 # belong to one (and only one) group. Assign samples to groups by setting
    736 # a sample.group var to one of these groups in the sample's _index.jd.
    737 sample_groups := -samplegroup Admin \
    738                  -samplegroup Background \
    739                  -samplegroup Connectivity \
    740                  -samplegroup Content \
    741                  -samplegroup Input \
    742                  -samplegroup Media \
    743                  -samplegroup Notification \
    744                  -samplegroup RenderScript \
    745                  -samplegroup Security \
    746                  -samplegroup Sensors \
    747                  -samplegroup Testing \
    748                  -samplegroup UI \
    749                  -samplegroup Views \
    750                  -samplegroup Wearable
    751 
    752 ## SDK version identifiers used in the published docs
    753   # major[.minor] version for current SDK. (full releases only)
    754 framework_docs_SDK_VERSION:=4.4
    755   # release version (ie "Release x")  (full releases only)
    756 framework_docs_SDK_REL_ID:=1
    757 
    758 framework_docs_LOCAL_DROIDDOC_OPTIONS += \
    759 		-hdf sdk.version $(framework_docs_SDK_VERSION) \
    760 		-hdf sdk.rel.id $(framework_docs_SDK_REL_ID) \
    761 		-hdf sdk.preview 0
    762 
    763 # ====  the api stubs and current.xml ===========================
    764 include $(CLEAR_VARS)
    765 
    766 LOCAL_SRC_FILES:=$(framework_docs_LOCAL_API_CHECK_SRC_FILES)
    767 LOCAL_INTERMEDIATE_SOURCES:=$(framework_docs_LOCAL_INTERMEDIATE_SOURCES)
    768 LOCAL_JAVA_LIBRARIES:=$(framework_docs_LOCAL_API_CHECK_JAVA_LIBRARIES)
    769 LOCAL_MODULE_CLASS:=$(framework_docs_LOCAL_MODULE_CLASS)
    770 LOCAL_DROIDDOC_SOURCE_PATH:=$(framework_docs_LOCAL_DROIDDOC_SOURCE_PATH)
    771 LOCAL_DROIDDOC_HTML_DIR:=$(framework_docs_LOCAL_DROIDDOC_HTML_DIR)
    772 LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_API_CHECK_ADDITIONAL_JAVA_DIR)
    773 LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES)
    774 
    775 LOCAL_MODULE := api-stubs
    776 
    777 LOCAL_DROIDDOC_OPTIONS:=\
    778 		$(framework_docs_LOCAL_DROIDDOC_OPTIONS) \
    779 		-stubs $(TARGET_OUT_COMMON_INTERMEDIATES)/JAVA_LIBRARIES/android_stubs_current_intermediates/src \
    780 		-api $(INTERNAL_PLATFORM_API_FILE) \
    781 		-removedApi $(INTERNAL_PLATFORM_REMOVED_API_FILE) \
    782 		-nodocs
    783 
    784 LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=build/tools/droiddoc/templates-sdk
    785 
    786 LOCAL_UNINSTALLABLE_MODULE := true
    787 
    788 include $(BUILD_DROIDDOC)
    789 
    790 # $(gen), i.e. framework.aidl, is also needed while building against the current stub.
    791 $(full_target): $(framework_built) $(gen)
    792 $(INTERNAL_PLATFORM_API_FILE): $(full_target)
    793 $(call dist-for-goals,sdk,$(INTERNAL_PLATFORM_API_FILE))
    794 
    795 # ====  the system api stubs ===================================
    796 include $(CLEAR_VARS)
    797 
    798 LOCAL_SRC_FILES:=$(framework_docs_LOCAL_API_CHECK_SRC_FILES)
    799 LOCAL_INTERMEDIATE_SOURCES:=$(framework_docs_LOCAL_INTERMEDIATE_SOURCES)
    800 LOCAL_JAVA_LIBRARIES:=$(framework_docs_LOCAL_API_CHECK_JAVA_LIBRARIES)
    801 LOCAL_MODULE_CLASS:=$(framework_docs_LOCAL_MODULE_CLASS)
    802 LOCAL_DROIDDOC_SOURCE_PATH:=$(framework_docs_LOCAL_DROIDDOC_SOURCE_PATH)
    803 LOCAL_DROIDDOC_HTML_DIR:=$(framework_docs_LOCAL_DROIDDOC_HTML_DIR)
    804 LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_API_CHECK_ADDITIONAL_JAVA_DIR)
    805 LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES)
    806 
    807 LOCAL_MODULE := system-api-stubs
    808 
    809 LOCAL_DROIDDOC_OPTIONS:=\
    810 		$(framework_docs_LOCAL_DROIDDOC_OPTIONS) \
    811 		-stubs $(TARGET_OUT_COMMON_INTERMEDIATES)/JAVA_LIBRARIES/android_system_stubs_current_intermediates/src \
    812 		-showAnnotation android.annotation.SystemApi \
    813 		-api $(INTERNAL_PLATFORM_SYSTEM_API_FILE) \
    814 		-removedApi $(INTERNAL_PLATFORM_SYSTEM_REMOVED_API_FILE) \
    815 		-nodocs
    816 
    817 LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=build/tools/droiddoc/templates-sdk
    818 
    819 LOCAL_UNINSTALLABLE_MODULE := true
    820 
    821 include $(BUILD_DROIDDOC)
    822 
    823 # $(gen), i.e. framework.aidl, is also needed while building against the current stub.
    824 $(full_target): $(framework_built) $(gen)
    825 $(INTERNAL_PLATFORM_SYSTEM_API_FILE): $(full_target)
    826 $(call dist-for-goals,sdk,$(INTERNAL_PLATFORM_SYSTEM_API_FILE))
    827 
    828 # ====  check javadoc comments but don't generate docs ========
    829 include $(CLEAR_VARS)
    830 
    831 LOCAL_SRC_FILES:=$(framework_docs_LOCAL_SRC_FILES)
    832 LOCAL_INTERMEDIATE_SOURCES:=$(framework_docs_LOCAL_INTERMEDIATE_SOURCES)
    833 LOCAL_JAVA_LIBRARIES:=$(framework_docs_LOCAL_JAVA_LIBRARIES)
    834 LOCAL_MODULE_CLASS:=$(framework_docs_LOCAL_MODULE_CLASS)
    835 LOCAL_DROIDDOC_SOURCE_PATH:=$(framework_docs_LOCAL_DROIDDOC_SOURCE_PATH)
    836 LOCAL_DROIDDOC_HTML_DIR:=$(framework_docs_LOCAL_DROIDDOC_HTML_DIR)
    837 LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_ADDITIONAL_JAVA_DIR)
    838 LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES)
    839 
    840 LOCAL_MODULE := doc-comment-check
    841 
    842 LOCAL_DROIDDOC_OPTIONS:=\
    843 		$(framework_docs_LOCAL_DROIDDOC_OPTIONS) \
    844 		-parsecomments
    845 
    846 LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=build/tools/droiddoc/templates-sdk
    847 
    848 LOCAL_UNINSTALLABLE_MODULE := true
    849 
    850 include $(BUILD_DROIDDOC)
    851 
    852 # $(gen), i.e. framework.aidl, is also needed while building against the current stub.
    853 $(full_target): $(framework_built) $(gen)
    854 
    855 # Run this for checkbuild
    856 checkbuild: doc-comment-check-docs
    857 # Check comment when you are updating the API
    858 update-api: doc-comment-check-docs
    859 
    860 # ====  static html in the sdk ==================================
    861 include $(CLEAR_VARS)
    862 
    863 LOCAL_SRC_FILES:=$(framework_docs_LOCAL_SRC_FILES)
    864 LOCAL_INTERMEDIATE_SOURCES:=$(framework_docs_LOCAL_INTERMEDIATE_SOURCES)
    865 LOCAL_JAVA_LIBRARIES:=$(framework_docs_LOCAL_JAVA_LIBRARIES)
    866 LOCAL_MODULE_CLASS:=$(framework_docs_LOCAL_MODULE_CLASS)
    867 LOCAL_DROIDDOC_SOURCE_PATH:=$(framework_docs_LOCAL_DROIDDOC_SOURCE_PATH)
    868 LOCAL_DROIDDOC_HTML_DIR:=$(framework_docs_LOCAL_DROIDDOC_HTML_DIR)
    869 LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_ADDITIONAL_JAVA_DIR)
    870 LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES)
    871 
    872 LOCAL_MODULE := offline-sdk
    873 
    874 LOCAL_DROIDDOC_OPTIONS:=\
    875 		$(framework_docs_LOCAL_DROIDDOC_OPTIONS) \
    876 		-offlinemode \
    877 		-title "Android SDK" \
    878 		-proofread $(OUT_DOCS)/$(LOCAL_MODULE)-proofread.txt \
    879 		-todo $(OUT_DOCS)/$(LOCAL_MODULE)-docs-todo.html \
    880 		-sdkvalues $(OUT_DOCS) \
    881 		-hdf android.whichdoc offline
    882 
    883 LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=build/tools/droiddoc/templates-sdk
    884 
    885 include $(BUILD_DROIDDOC)
    886 
    887 static_doc_index_redirect := $(out_dir)/index.html
    888 $(static_doc_index_redirect): \
    889 	$(LOCAL_PATH)/docs/docs-documentation-redirect.html | $(ACP)
    890 	$(hide) mkdir -p $(dir $@)
    891 	$(hide) $(ACP) $< $@
    892 
    893 $(full_target): $(static_doc_index_redirect)
    894 $(full_target): $(framework_built)
    895 
    896 # ==== docs for the web (on the androiddevdocs app engine server) =======================
    897 include $(CLEAR_VARS)
    898 
    899 LOCAL_SRC_FILES:=$(framework_docs_LOCAL_SRC_FILES)
    900 LOCAL_INTERMEDIATE_SOURCES:=$(framework_docs_LOCAL_INTERMEDIATE_SOURCES)
    901 LOCAL_STATIC_JAVA_LIBRARIES:=$(framework_docs_LOCAL_STATIC_JAVA_LIBRARIES)
    902 LOCAL_JAVA_LIBRARIES:=$(framework_docs_LOCAL_JAVA_LIBRARIES)
    903 LOCAL_MODULE_CLASS:=$(framework_docs_LOCAL_MODULE_CLASS)
    904 LOCAL_DROIDDOC_SOURCE_PATH:=$(framework_docs_LOCAL_DROIDDOC_SOURCE_PATH)
    905 LOCAL_DROIDDOC_HTML_DIR:=$(framework_docs_LOCAL_DROIDDOC_HTML_DIR)
    906 LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_ADDITIONAL_JAVA_DIR)
    907 LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES)
    908 LOCAL_ADDITIONAL_HTML_DIR:=docs/html-intl /
    909 
    910 LOCAL_MODULE := online-sdk
    911 
    912 LOCAL_DROIDDOC_OPTIONS:= \
    913 		$(framework_docs_LOCAL_DROIDDOC_OPTIONS) \
    914 		-toroot / \
    915 		-hdf android.whichdoc online \
    916 		$(sample_groups) \
    917 		-hdf android.hasSamples true \
    918 		-samplesdir $(samples_dir)
    919 
    920 LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=build/tools/droiddoc/templates-sdk
    921 
    922 include $(BUILD_DROIDDOC)
    923 
    924 # ==== docs for the web (on the androiddevdocs app engine server) =======================
    925 # TODO: Fix the System API docs build.
    926 ifneq ($(filter online-system-api-sdk-docs,$(MAKECMDGOALS)),)
    927 include $(CLEAR_VARS)
    928 
    929 LOCAL_SRC_FILES:=$(framework_docs_LOCAL_SRC_FILES)
    930 LOCAL_INTERMEDIATE_SOURCES:=$(framework_docs_LOCAL_INTERMEDIATE_SOURCES)
    931 LOCAL_STATIC_JAVA_LIBRARIES:=$(framework_docs_LOCAL_STATIC_JAVA_LIBRARIES)
    932 LOCAL_JAVA_LIBRARIES:=$(framework_docs_LOCAL_JAVA_LIBRARIES)
    933 LOCAL_MODULE_CLASS:=$(framework_docs_LOCAL_MODULE_CLASS)
    934 LOCAL_DROIDDOC_SOURCE_PATH:=$(framework_docs_LOCAL_DROIDDOC_SOURCE_PATH)
    935 LOCAL_DROIDDOC_HTML_DIR:=$(framework_docs_LOCAL_DROIDDOC_HTML_DIR)
    936 LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_ADDITIONAL_JAVA_DIR)
    937 LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES)
    938 LOCAL_ADDITIONAL_HTML_DIR:=docs/html-intl /
    939 
    940 LOCAL_MODULE := online-system-api-sdk
    941 
    942 LOCAL_DROIDDOC_OPTIONS:= \
    943 		$(framework_docs_LOCAL_DROIDDOC_OPTIONS) \
    944 		-showAnnotation android.annotation.SystemApi \
    945 		-title "Android SDK - Including system APIs." \
    946 		-toroot / \
    947 		-hdf android.whichdoc online \
    948 		$(sample_groups) \
    949 		-hdf android.hasSamples true \
    950 		-samplesdir $(samples_dir)
    951 
    952 LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=build/tools/droiddoc/templates-sdk
    953 # Don't build by default
    954 LOCAL_UNINSTALLABLE_MODULE := true
    955 
    956 include $(BUILD_DROIDDOC)
    957 endif  # online-system-api-sdk-docs in make command line.
    958 
    959 # ==== docs for the web (on the devsite app engine server) =======================
    960 include $(CLEAR_VARS)
    961 LOCAL_SRC_FILES:=$(framework_docs_LOCAL_SRC_FILES)
    962 LOCAL_INTERMEDIATE_SOURCES:=$(framework_docs_LOCAL_INTERMEDIATE_SOURCES)
    963 LOCAL_STATIC_JAVA_LIBRARIES:=$(framework_docs_LOCAL_STATIC_JAVA_LIBRARIES)
    964 LOCAL_JAVA_LIBRARIES:=$(framework_docs_LOCAL_JAVA_LIBRARIES)
    965 LOCAL_MODULE_CLASS:=$(framework_docs_LOCAL_MODULE_CLASS)
    966 LOCAL_DROIDDOC_SOURCE_PATH:=$(framework_docs_LOCAL_DROIDDOC_SOURCE_PATH)
    967 LOCAL_DROIDDOC_HTML_DIR:=$(framework_docs_LOCAL_DROIDDOC_HTML_DIR)
    968 LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_ADDITIONAL_JAVA_DIR)
    969 LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES)
    970 # specify a second html input dir and an output path relative to OUT_DIR)
    971 LOCAL_ADDITIONAL_HTML_DIR:=docs/html-intl/intl /
    972 
    973 LOCAL_MODULE := ds
    974 
    975 LOCAL_DROIDDOC_OPTIONS:= \
    976 		$(framework_docs_LOCAL_DROIDDOC_OPTIONS) \
    977 		-devsite \
    978 		-toroot / \
    979 		-hdf android.whichdoc online \
    980 		-hdf devsite true
    981 
    982 LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=build/tools/droiddoc/templates-sdk
    983 
    984 include $(BUILD_DROIDDOC)
    985 
    986 # ==== docs that have all of the stuff that's @hidden =======================
    987 include $(CLEAR_VARS)
    988 
    989 LOCAL_SRC_FILES:=$(framework_docs_LOCAL_SRC_FILES)
    990 LOCAL_INTERMEDIATE_SOURCES:=$(framework_docs_LOCAL_INTERMEDIATE_SOURCES)
    991 LOCAL_JAVA_LIBRARIES:=$(framework_docs_LOCAL_JAVA_LIBRARIES)
    992 LOCAL_MODULE_CLASS:=$(framework_docs_LOCAL_MODULE_CLASS)
    993 LOCAL_DROIDDOC_SOURCE_PATH:=$(framework_docs_LOCAL_DROIDDOC_SOURCE_PATH)
    994 LOCAL_DROIDDOC_HTML_DIR:=$(framework_docs_LOCAL_DROIDDOC_HTML_DIR)
    995 LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_ADDITIONAL_JAVA_DIR)
    996 LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES)
    997 
    998 LOCAL_MODULE := hidden
    999 LOCAL_DROIDDOC_OPTIONS:=\
   1000 		$(framework_docs_LOCAL_DROIDDOC_OPTIONS) \
   1001 		-title "Android SDK - Including hidden APIs."
   1002 #		-hidden
   1003 
   1004 LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=build/tools/droiddoc/templates-sdk
   1005 
   1006 include $(BUILD_DROIDDOC)
   1007 
   1008 # Build ext.jar
   1009 # ============================================================
   1010 
   1011 # NOTICE notes for non-obvious sections
   1012 # apache-http - covered by the Apache Commons section.
   1013 
   1014 
   1015 ext_dirs := \
   1016 	../../external/nist-sip/java \
   1017 	../../external/apache-http/src \
   1018 	../../external/tagsoup/src \
   1019 	../../external/libphonenumber/java/src
   1020 
   1021 ext_src_files := $(call all-java-files-under,$(ext_dirs))
   1022 
   1023 ext_res_dirs := \
   1024 	../../external/libphonenumber/java/src
   1025 
   1026 # ====  the library  =========================================
   1027 include $(CLEAR_VARS)
   1028 
   1029 LOCAL_SRC_FILES := $(ext_src_files)
   1030 
   1031 LOCAL_NO_STANDARD_LIBRARIES := true
   1032 LOCAL_JAVA_LIBRARIES := core-libart
   1033 LOCAL_JAVA_RESOURCE_DIRS := $(ext_res_dirs)
   1034 LOCAL_MODULE_TAGS := optional
   1035 LOCAL_MODULE := ext
   1036 
   1037 LOCAL_DX_FLAGS := --core-library
   1038 
   1039 include $(BUILD_JAVA_LIBRARY)
   1040 
   1041 
   1042 # Include subdirectory makefiles
   1043 # ============================================================
   1044 
   1045 # If we're building with ONE_SHOT_MAKEFILE (mm, mmm), then what the framework
   1046 # team really wants is to build the stuff defined by this makefile.
   1047 ifeq (,$(ONE_SHOT_MAKEFILE))
   1048 include $(call first-makefiles-under,$(LOCAL_PATH))
   1049 endif
   1050 
   1051 endif # ANDROID_BUILD_EMBEDDED
   1052