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 include $(CLEAR_VARS)
     35 
     36 # FRAMEWORKS_BASE_SUBDIRS comes from build/core/pathmap.mk
     37 LOCAL_SRC_FILES := $(call find-other-java-files,$(FRAMEWORKS_BASE_SUBDIRS))
     38 
     39 # EventLogTags files.
     40 LOCAL_SRC_FILES += \
     41        core/java/android/content/EventLogTags.logtags \
     42        core/java/android/speech/tts/EventLogTags.logtags \
     43        core/java/android/webkit/EventLogTags.logtags \
     44 
     45 ## READ ME: ########################################################
     46 ##
     47 ## When updating this list of aidl files, consider if that aidl is
     48 ## part of the SDK API.  If it is, also add it to the list below that
     49 ## is preprocessed and distributed with the SDK.  This list should
     50 ## not contain any aidl files for parcelables, but the one below should
     51 ## if you intend for 3rd parties to be able to send those objects
     52 ## across process boundaries.
     53 ##
     54 ## READ ME: ########################################################
     55 LOCAL_SRC_FILES += \
     56 	core/java/android/accessibilityservice/IAccessibilityServiceConnection.aidl \
     57 	core/java/android/accessibilityservice/IAccessibilityServiceClient.aidl \
     58 	core/java/android/accounts/IAccountManager.aidl \
     59 	core/java/android/accounts/IAccountManagerResponse.aidl \
     60 	core/java/android/accounts/IAccountAuthenticator.aidl \
     61 	core/java/android/accounts/IAccountAuthenticatorResponse.aidl \
     62 	core/java/android/app/IActivityController.aidl \
     63 	core/java/android/app/IActivityPendingResult.aidl \
     64 	core/java/android/app/IAlarmManager.aidl \
     65 	core/java/android/app/IBackupAgent.aidl \
     66 	core/java/android/app/IInstrumentationWatcher.aidl \
     67 	core/java/android/app/INotificationManager.aidl \
     68 	core/java/android/app/IProcessObserver.aidl \
     69 	core/java/android/app/ISearchManager.aidl \
     70 	core/java/android/app/ISearchManagerCallback.aidl \
     71 	core/java/android/app/IServiceConnection.aidl \
     72 	core/java/android/app/IStopUserCallback.aidl \
     73 	core/java/android/app/IThumbnailReceiver.aidl \
     74 	core/java/android/app/IThumbnailRetriever.aidl \
     75 	core/java/android/app/ITransientNotification.aidl \
     76 	core/java/android/app/IUiAutomationConnection.aidl \
     77 	core/java/android/app/IUiModeManager.aidl \
     78 	core/java/android/app/IUserSwitchObserver.aidl \
     79 	core/java/android/app/IWallpaperManager.aidl \
     80 	core/java/android/app/IWallpaperManagerCallback.aidl \
     81 	core/java/android/app/admin/IDevicePolicyManager.aidl \
     82 	core/java/android/app/backup/IBackupManager.aidl \
     83 	core/java/android/app/backup/IFullBackupRestoreObserver.aidl \
     84 	core/java/android/app/backup/IRestoreObserver.aidl \
     85 	core/java/android/app/backup/IRestoreSession.aidl \
     86 	core/java/android/bluetooth/IBluetooth.aidl \
     87 	core/java/android/bluetooth/IBluetoothA2dp.aidl \
     88 	core/java/android/bluetooth/IBluetoothCallback.aidl \
     89 	core/java/android/bluetooth/IBluetoothHeadset.aidl \
     90 	core/java/android/bluetooth/IBluetoothHeadsetPhone.aidl \
     91 	core/java/android/bluetooth/IBluetoothHealth.aidl \
     92 	core/java/android/bluetooth/IBluetoothHealthCallback.aidl \
     93 	core/java/android/bluetooth/IBluetoothInputDevice.aidl \
     94 	core/java/android/bluetooth/IBluetoothPan.aidl \
     95 	core/java/android/bluetooth/IBluetoothManager.aidl \
     96 	core/java/android/bluetooth/IBluetoothManagerCallback.aidl \
     97 	core/java/android/bluetooth/IBluetoothPbap.aidl \
     98 	core/java/android/bluetooth/IBluetoothMap.aidl \
     99 	core/java/android/bluetooth/IBluetoothStateChangeCallback.aidl \
    100 	core/java/android/bluetooth/IBluetoothGatt.aidl \
    101 	core/java/android/bluetooth/IBluetoothGattCallback.aidl \
    102 	core/java/android/bluetooth/IBluetoothGattServerCallback.aidl \
    103 	core/java/android/content/IClipboard.aidl \
    104 	core/java/android/content/IContentService.aidl \
    105 	core/java/android/content/IIntentReceiver.aidl \
    106 	core/java/android/content/IIntentSender.aidl \
    107 	core/java/android/content/IOnPrimaryClipChangedListener.aidl \
    108 	core/java/android/content/IAnonymousSyncAdapter.aidl \
    109 	core/java/android/content/ISyncAdapter.aidl \
    110 	core/java/android/content/ISyncContext.aidl \
    111 	core/java/android/content/ISyncStatusObserver.aidl \
    112 	core/java/android/content/pm/IPackageDataObserver.aidl \
    113 	core/java/android/content/pm/IPackageDeleteObserver.aidl \
    114 	core/java/android/content/pm/IPackageInstallObserver.aidl \
    115 	core/java/android/content/pm/IPackageManager.aidl \
    116 	core/java/android/content/pm/IPackageMoveObserver.aidl \
    117 	core/java/android/content/pm/IPackageStatsObserver.aidl \
    118 	core/java/android/database/IContentObserver.aidl \
    119 	core/java/android/hardware/ICameraService.aidl \
    120 	core/java/android/hardware/ICameraServiceListener.aidl \
    121 	core/java/android/hardware/ICamera.aidl \
    122 	core/java/android/hardware/ICameraClient.aidl \
    123 	core/java/android/hardware/IConsumerIrService.aidl \
    124 	core/java/android/hardware/IProCameraUser.aidl \
    125 	core/java/android/hardware/IProCameraCallbacks.aidl \
    126 	core/java/android/hardware/camera2/ICameraDeviceUser.aidl \
    127 	core/java/android/hardware/camera2/ICameraDeviceCallbacks.aidl \
    128 	core/java/android/hardware/ISerialManager.aidl \
    129 	core/java/android/hardware/display/IDisplayManager.aidl \
    130 	core/java/android/hardware/display/IDisplayManagerCallback.aidl \
    131 	core/java/android/hardware/input/IInputManager.aidl \
    132 	core/java/android/hardware/input/IInputDevicesChangedListener.aidl \
    133 	core/java/android/hardware/location/IFusedLocationHardware.aidl \
    134 	core/java/android/hardware/location/IFusedLocationHardwareSink.aidl \
    135 	core/java/android/hardware/location/IGeofenceHardware.aidl \
    136 	core/java/android/hardware/location/IGeofenceHardwareCallback.aidl \
    137 	core/java/android/hardware/location/IGeofenceHardwareMonitorCallback.aidl \
    138 	core/java/android/hardware/usb/IUsbManager.aidl \
    139 	core/java/android/net/IConnectivityManager.aidl \
    140 	core/java/android/net/INetworkManagementEventObserver.aidl \
    141 	core/java/android/net/INetworkPolicyListener.aidl \
    142 	core/java/android/net/INetworkPolicyManager.aidl \
    143 	core/java/android/net/INetworkStatsService.aidl \
    144 	core/java/android/net/INetworkStatsSession.aidl \
    145 	core/java/android/net/nsd/INsdManager.aidl \
    146 	core/java/android/nfc/IAppCallback.aidl \
    147 	core/java/android/nfc/INfcAdapter.aidl \
    148 	core/java/android/nfc/INfcAdapterExtras.aidl \
    149 	core/java/android/nfc/INfcTag.aidl \
    150 	core/java/android/nfc/INfcCardEmulation.aidl \
    151 	core/java/android/os/IBatteryPropertiesListener.aidl \
    152 	core/java/android/os/IBatteryPropertiesRegistrar.aidl \
    153 	core/java/android/os/ICancellationSignal.aidl \
    154 	core/java/android/os/IHardwareService.aidl \
    155 	core/java/android/os/IMessenger.aidl \
    156 	core/java/android/os/INetworkManagementService.aidl \
    157 	core/java/android/os/IPermissionController.aidl \
    158 	core/java/android/os/IPowerManager.aidl \
    159 	core/java/android/os/IRemoteCallback.aidl \
    160 	core/java/android/os/ISchedulingPolicyService.aidl \
    161 	core/java/android/os/IUpdateLock.aidl \
    162 	core/java/android/os/IUserManager.aidl \
    163 	core/java/android/os/IVibratorService.aidl \
    164 	core/java/android/service/notification/INotificationListener.aidl \
    165 	core/java/android/print/ILayoutResultCallback.aidl \
    166 	core/java/android/print/IPrinterDiscoveryObserver.aidl \
    167 	core/java/android/print/IPrintDocumentAdapter.aidl \
    168 	core/java/android/print/IPrintDocumentAdapterObserver.aidl \
    169 	core/java/android/print/IPrintJobStateChangeListener.aidl \
    170 	core/java/android/print/IPrintManager.aidl \
    171 	core/java/android/print/IPrintSpooler.aidl \
    172 	core/java/android/print/IPrintSpoolerCallbacks.aidl \
    173 	core/java/android/print/IPrintSpoolerClient.aidl \
    174 	core/java/android/print/IWriteResultCallback.aidl \
    175 	core/java/android/printservice/IPrintService.aidl \
    176 	core/java/android/printservice/IPrintServiceClient.aidl \
    177 	core/java/android/service/dreams/IDreamManager.aidl \
    178 	core/java/android/service/dreams/IDreamService.aidl \
    179 	core/java/android/service/wallpaper/IWallpaperConnection.aidl \
    180 	core/java/android/service/wallpaper/IWallpaperEngine.aidl \
    181 	core/java/android/service/wallpaper/IWallpaperService.aidl \
    182 	core/java/android/view/accessibility/IAccessibilityInteractionConnection.aidl\
    183 	core/java/android/view/accessibility/IAccessibilityInteractionConnectionCallback.aidl\
    184 	core/java/android/view/accessibility/IAccessibilityManager.aidl \
    185 	core/java/android/view/accessibility/IAccessibilityManagerClient.aidl \
    186 	core/java/android/view/IApplicationToken.aidl \
    187 	core/java/android/view/IAssetAtlas.aidl \
    188 	core/java/android/view/IMagnificationCallbacks.aidl \
    189 	core/java/android/view/IInputFilter.aidl \
    190 	core/java/android/view/IInputFilterHost.aidl \
    191 	core/java/android/view/IOnKeyguardExitResult.aidl \
    192 	core/java/android/view/IRotationWatcher.aidl \
    193 	core/java/android/view/IWindow.aidl \
    194 	core/java/android/view/IWindowFocusObserver.aidl \
    195 	core/java/android/view/IWindowId.aidl \
    196 	core/java/android/view/IWindowManager.aidl \
    197 	core/java/android/view/IWindowSession.aidl \
    198 	core/java/android/speech/IRecognitionListener.aidl \
    199 	core/java/android/speech/IRecognitionService.aidl \
    200 	core/java/android/speech/tts/ITextToSpeechCallback.aidl \
    201 	core/java/android/speech/tts/ITextToSpeechService.aidl \
    202 	core/java/com/android/internal/app/IAppOpsCallback.aidl \
    203 	core/java/com/android/internal/app/IAppOpsService.aidl \
    204 	core/java/com/android/internal/app/IBatteryStats.aidl \
    205 	core/java/com/android/internal/app/IProcessStats.aidl \
    206 	core/java/com/android/internal/app/IUsageStats.aidl \
    207 	core/java/com/android/internal/app/IMediaContainerService.aidl \
    208 	core/java/com/android/internal/appwidget/IAppWidgetService.aidl \
    209 	core/java/com/android/internal/appwidget/IAppWidgetHost.aidl \
    210 	core/java/com/android/internal/backup/IBackupTransport.aidl \
    211 	core/java/com/android/internal/backup/IObbBackupService.aidl \
    212 	core/java/com/android/internal/policy/IFaceLockCallback.aidl \
    213 	core/java/com/android/internal/policy/IFaceLockInterface.aidl \
    214 	core/java/com/android/internal/policy/IKeyguardShowCallback.aidl \
    215 	core/java/com/android/internal/policy/IKeyguardExitCallback.aidl \
    216 	core/java/com/android/internal/policy/IKeyguardService.aidl \
    217 	core/java/com/android/internal/os/IDropBoxManagerService.aidl \
    218 	core/java/com/android/internal/os/IResultReceiver.aidl \
    219 	core/java/com/android/internal/statusbar/IStatusBar.aidl \
    220 	core/java/com/android/internal/statusbar/IStatusBarService.aidl \
    221 	core/java/com/android/internal/textservice/ISpellCheckerService.aidl \
    222 	core/java/com/android/internal/textservice/ISpellCheckerSession.aidl \
    223 	core/java/com/android/internal/textservice/ISpellCheckerSessionListener.aidl \
    224 	core/java/com/android/internal/textservice/ITextServicesManager.aidl \
    225 	core/java/com/android/internal/textservice/ITextServicesSessionListener.aidl \
    226 	core/java/com/android/internal/view/IInputContext.aidl \
    227 	core/java/com/android/internal/view/IInputContextCallback.aidl \
    228 	core/java/com/android/internal/view/IInputMethod.aidl \
    229 	core/java/com/android/internal/view/IInputMethodClient.aidl \
    230 	core/java/com/android/internal/view/IInputMethodManager.aidl \
    231 	core/java/com/android/internal/view/IInputMethodSession.aidl \
    232 	core/java/com/android/internal/view/IInputSessionCallback.aidl \
    233 	core/java/com/android/internal/widget/ILockSettings.aidl \
    234 	core/java/com/android/internal/widget/IRemoteViewsFactory.aidl \
    235 	core/java/com/android/internal/widget/IRemoteViewsAdapterConnection.aidl \
    236 	keystore/java/android/security/IKeyChainAliasCallback.aidl \
    237 	keystore/java/android/security/IKeyChainService.aidl \
    238 	location/java/android/location/ICountryDetector.aidl \
    239 	location/java/android/location/ICountryListener.aidl \
    240 	location/java/android/location/IFusedProvider.aidl \
    241 	location/java/android/location/IGeocodeProvider.aidl \
    242 	location/java/android/location/IGeofenceProvider.aidl \
    243 	location/java/android/location/IGpsStatusListener.aidl \
    244 	location/java/android/location/IGpsStatusProvider.aidl \
    245 	location/java/android/location/ILocationListener.aidl \
    246 	location/java/android/location/ILocationManager.aidl \
    247 	location/java/android/location/IFusedGeofenceHardware.aidl \
    248 	location/java/android/location/IGpsGeofenceHardware.aidl \
    249 	location/java/android/location/INetInitiatedListener.aidl \
    250 	location/java/com/android/internal/location/ILocationProvider.aidl \
    251 	media/java/android/media/IAudioService.aidl \
    252 	media/java/android/media/IAudioFocusDispatcher.aidl \
    253 	media/java/android/media/IAudioRoutesObserver.aidl \
    254 	media/java/android/media/IMediaRouterClient.aidl \
    255 	media/java/android/media/IMediaRouterService.aidl \
    256 	media/java/android/media/IMediaScannerListener.aidl \
    257 	media/java/android/media/IMediaScannerService.aidl \
    258 	media/java/android/media/IRemoteControlClient.aidl \
    259 	media/java/android/media/IRemoteControlDisplay.aidl \
    260 	media/java/android/media/IRemoteDisplayCallback.aidl \
    261 	media/java/android/media/IRemoteDisplayProvider.aidl \
    262 	media/java/android/media/IRemoteVolumeObserver.aidl \
    263 	media/java/android/media/IRingtonePlayer.aidl \
    264 	telephony/java/com/android/internal/telephony/IPhoneStateListener.aidl \
    265 	telephony/java/com/android/internal/telephony/IPhoneSubInfo.aidl \
    266 	telephony/java/com/android/internal/telephony/ITelephony.aidl \
    267 	telephony/java/com/android/internal/telephony/ISms.aidl \
    268 	telephony/java/com/android/internal/telephony/ITelephonyRegistry.aidl \
    269 	telephony/java/com/android/internal/telephony/IWapPushManager.aidl \
    270 	wifi/java/android/net/wifi/IWifiManager.aidl \
    271 	wifi/java/android/net/wifi/p2p/IWifiP2pManager.aidl \
    272 	packages/services/PacProcessor/com/android/net/IProxyService.aidl \
    273 	packages/services/Proxy/com/android/net/IProxyCallback.aidl \
    274 	packages/services/Proxy/com/android/net/IProxyPortListener.aidl \
    275 
    276 # FRAMEWORKS_BASE_JAVA_SRC_DIRS comes from build/core/pathmap.mk
    277 LOCAL_AIDL_INCLUDES += $(FRAMEWORKS_BASE_JAVA_SRC_DIRS)
    278 
    279 LOCAL_INTERMEDIATE_SOURCES := \
    280 			$(framework_res_source_path)/android/R.java \
    281 			$(framework_res_source_path)/android/Manifest.java \
    282 			$(framework_res_source_path)/com/android/internal/R.java
    283 
    284 LOCAL_NO_STANDARD_LIBRARIES := true
    285 LOCAL_JAVA_LIBRARIES := bouncycastle conscrypt core core-junit ext okhttp
    286 
    287 LOCAL_MODULE := framework-base
    288 
    289 LOCAL_JAR_EXCLUDE_FILES := none
    290 
    291 include $(BUILD_STATIC_JAVA_LIBRARY)
    292 
    293 # Make sure that R.java and Manifest.java are built before we build
    294 # the source for this library.
    295 framework_res_R_stamp := \
    296 	$(call intermediates-dir-for,APPS,framework-res,,COMMON)/src/R.stamp
    297 $(full_classes_compiled_jar): $(framework_res_R_stamp)
    298 
    299 # Build part 1 of the framework library.
    300 # ============================================================
    301 include $(CLEAR_VARS)
    302 
    303 LOCAL_MODULE := framework
    304 LOCAL_MODULE_CLASS := JAVA_LIBRARIES
    305 LOCAL_NO_STANDARD_LIBRARIES := true
    306 LOCAL_STATIC_JAVA_LIBRARIES := framework-base
    307 LOCAL_DX_FLAGS := --core-library
    308 
    309 # Packages to include, use \* wildcard to include descendants.
    310 LOCAL_JAR_PACKAGES := android\*
    311 
    312 # List of classes and interfaces which should be loaded by the Zygote.
    313 LOCAL_JAVA_RESOURCE_FILES += $(LOCAL_PATH)/preloaded-classes
    314 
    315 include $(BUILD_JAVA_LIBRARY)
    316 framework_module := $(LOCAL_INSTALLED_MODULE)
    317 
    318 # Build part 2 of the framework library.
    319 # ============================================================
    320 include $(CLEAR_VARS)
    321 
    322 LOCAL_MODULE := framework2
    323 LOCAL_MODULE_CLASS := JAVA_LIBRARIES
    324 LOCAL_NO_STANDARD_LIBRARIES := true
    325 LOCAL_STATIC_JAVA_LIBRARIES := framework-base
    326 LOCAL_DX_FLAGS := --core-library
    327 
    328 # Packages to include, use \* wildcard to include descendants.
    329 LOCAL_JAR_PACKAGES := com\* javax\*
    330 
    331 include $(BUILD_JAVA_LIBRARY)
    332 framework2_module := $(LOCAL_INSTALLED_MODULE)
    333 
    334 # Make sure that all framework modules are installed when framework is.
    335 # ============================================================
    336 $(framework_module): | $(dir $(framework_module))framework-res.apk
    337 $(framework_module): | $(dir $(framework_module))framework2.jar
    338 
    339 framework_built := $(call java-lib-deps,framework framework2)
    340 
    341 # Copy AIDL files to be preprocessed and included in the SDK,
    342 # specified relative to the root of the build tree.
    343 # ============================================================
    344 include $(CLEAR_VARS)
    345 
    346 aidl_files := \
    347 	frameworks/base/core/java/android/accounts/IAccountManager.aidl \
    348 	frameworks/base/core/java/android/accounts/IAccountManagerResponse.aidl \
    349 	frameworks/base/core/java/android/accounts/IAccountAuthenticator.aidl \
    350 	frameworks/base/core/java/android/accounts/IAccountAuthenticatorResponse.aidl \
    351 	frameworks/base/core/java/android/app/Notification.aidl \
    352 	frameworks/base/core/java/android/app/PendingIntent.aidl \
    353 	frameworks/base/core/java/android/appwidget/AppWidgetProviderInfo.aidl \
    354 	frameworks/base/core/java/android/bluetooth/BluetoothDevice.aidl \
    355 	frameworks/base/core/java/android/bluetooth/BluetoothHealthAppConfiguration.aidl \
    356 	frameworks/base/core/java/android/content/ComponentName.aidl \
    357 	frameworks/base/core/java/android/content/ContentValues.aidl \
    358 	frameworks/base/core/java/android/content/Intent.aidl \
    359 	frameworks/base/core/java/android/content/IntentSender.aidl \
    360 	frameworks/base/core/java/android/content/PeriodicSync.aidl \
    361 	frameworks/base/core/java/android/content/SyncRequest.aidl \
    362 	frameworks/base/core/java/android/content/SyncStats.aidl \
    363 	frameworks/base/core/java/android/content/res/Configuration.aidl \
    364 	frameworks/base/core/java/android/database/CursorWindow.aidl \
    365 	frameworks/base/core/java/android/hardware/location/GeofenceHardwareRequestParcelable.aidl \
    366 	frameworks/base/core/java/android/net/Uri.aidl \
    367 	frameworks/base/core/java/android/nfc/NdefMessage.aidl \
    368 	frameworks/base/core/java/android/nfc/NdefRecord.aidl \
    369 	frameworks/base/core/java/android/nfc/Tag.aidl \
    370 	frameworks/base/core/java/android/os/Bundle.aidl \
    371 	frameworks/base/core/java/android/os/DropBoxManager.aidl \
    372 	frameworks/base/core/java/android/os/ParcelFileDescriptor.aidl \
    373 	frameworks/base/core/java/android/os/ParcelUuid.aidl \
    374 	frameworks/base/core/java/android/view/KeyEvent.aidl \
    375 	frameworks/base/core/java/android/view/MotionEvent.aidl \
    376 	frameworks/base/core/java/android/view/Surface.aidl \
    377 	frameworks/base/core/java/android/view/WindowManager.aidl \
    378 	frameworks/base/core/java/android/widget/RemoteViews.aidl \
    379 	frameworks/base/core/java/com/android/internal/textservice/ISpellCheckerService.aidl \
    380 	frameworks/base/core/java/com/android/internal/textservice/ISpellCheckerSession.aidl \
    381 	frameworks/base/core/java/com/android/internal/textservice/ISpellCheckerSessionListener.aidl \
    382 	frameworks/base/core/java/com/android/internal/textservice/ITextServicesManager.aidl \
    383 	frameworks/base/core/java/com/android/internal/textservice/ITextServicesSessionListener.aidl \
    384 	frameworks/base/core/java/com/android/internal/view/IInputContext.aidl \
    385 	frameworks/base/core/java/com/android/internal/view/IInputMethod.aidl \
    386 	frameworks/base/core/java/com/android/internal/view/IInputMethodClient.aidl \
    387 	frameworks/base/core/java/com/android/internal/view/IInputMethodManager.aidl \
    388 	frameworks/base/core/java/com/android/internal/view/IInputMethodSession.aidl \
    389 	frameworks/base/graphics/java/android/graphics/Bitmap.aidl \
    390 	frameworks/base/graphics/java/android/graphics/Rect.aidl \
    391 	frameworks/base/graphics/java/android/graphics/Region.aidl \
    392 	frameworks/base/location/java/android/location/Criteria.aidl \
    393 	frameworks/base/location/java/android/location/Geofence.aidl \
    394 	frameworks/base/location/java/android/location/Location.aidl \
    395 	frameworks/base/location/java/android/location/LocationRequest.aidl \
    396 	frameworks/base/location/java/android/location/FusedBatchOptions.aidl \
    397 	frameworks/base/location/java/com/android/internal/location/ProviderProperties.aidl \
    398 	frameworks/base/location/java/com/android/internal/location/ProviderRequest.aidl \
    399 	frameworks/base/telephony/java/android/telephony/ServiceState.aidl \
    400 	frameworks/base/telephony/java/com/android/internal/telephony/IPhoneSubInfo.aidl \
    401 	frameworks/base/telephony/java/com/android/internal/telephony/ITelephony.aidl \
    402 	frameworks/base/wifi/java/android/net/wifi/BatchedScanSettings.aidl \
    403 	frameworks/base/wifi/java/android/net/wifi/BatchedScanResult.aidl \
    404 
    405 gen := $(TARGET_OUT_COMMON_INTERMEDIATES)/framework.aidl
    406 $(gen): PRIVATE_SRC_FILES := $(aidl_files)
    407 ALL_SDK_FILES += $(gen)
    408 $(gen): $(aidl_files) | $(AIDL)
    409 		@echo Aidl Preprocess: $@
    410 		$(hide) $(AIDL) --preprocess $@ $(PRIVATE_SRC_FILES)
    411 
    412 # the documentation
    413 # ============================================================
    414 
    415 # TODO: deal with com/google/android/googleapps
    416 packages_to_document := \
    417 	android \
    418 	javax/microedition/khronos
    419 
    420 # Search through the base framework dirs for these packages.
    421 # The result will be relative to frameworks/base.
    422 fwbase_dirs_to_document := \
    423 	test-runner/src \
    424 	$(patsubst $(LOCAL_PATH)/%,%, \
    425 	  $(wildcard \
    426 	    $(foreach dir, $(FRAMEWORKS_BASE_JAVA_SRC_DIRS), \
    427 	      $(addprefix $(dir)/, $(packages_to_document)) \
    428 	     ) \
    429 	   ) \
    430 	 )
    431 
    432 # include definition of libcore_to_document
    433 include libcore/Docs.mk
    434 
    435 # include definition of junit_to_document
    436 include external/junit/Common.mk
    437 
    438 non_base_dirs := \
    439 	../../external/apache-http/src/org/apache/http \
    440 	../opt/telephony/src/java/android/provider \
    441 	../opt/telephony/src/java/android/telephony \
    442 	../opt/telephony/src/java/android/telephony/gsm \
    443 	../opt/net/voip/src/java/android/net/rtp \
    444 	../opt/net/voip/src/java/android/net/sip
    445 
    446 # These are relative to frameworks/base
    447 dirs_to_check_apis := \
    448   $(fwbase_dirs_to_document) \
    449 	$(non_base_dirs)
    450 
    451 # These are relative to frameworks/base
    452 # FRAMEWORKS_BASE_SUBDIRS comes from build/core/pathmap.mk
    453 dirs_to_document := \
    454 	$(dirs_to_check_apis) \
    455   $(addprefix ../../, $(FRAMEWORKS_SUPPORT_JAVA_SRC_DIRS))
    456 
    457 # These are relative to frameworks/base
    458 html_dirs := \
    459 	$(FRAMEWORKS_BASE_SUBDIRS) \
    460 	$(non_base_dirs)
    461 
    462 # Common sources for doc check and api check
    463 common_src_files := \
    464 	$(call find-other-html-files, $(html_dirs)) \
    465 	$(addprefix ../../libcore/, $(call libcore_to_document, $(LOCAL_PATH)/../../libcore)) \
    466 	$(addprefix ../../external/junit/, $(call junit_to_document, $(LOCAL_PATH)/../../external/junit))
    467 
    468 # These are relative to frameworks/base
    469 framework_docs_LOCAL_SRC_FILES := \
    470 	$(call find-other-java-files, $(dirs_to_document)) \
    471 	$(common_src_files)
    472 
    473 # These are relative to frameworks/base
    474 framework_docs_LOCAL_API_CHECK_SRC_FILES := \
    475 	$(call find-other-java-files, $(dirs_to_check_apis)) \
    476 	$(common_src_files)
    477 
    478 # This is used by ide.mk as the list of source files that are
    479 # always included.
    480 INTERNAL_SDK_SOURCE_DIRS := $(addprefix $(LOCAL_PATH)/,$(dirs_to_document))
    481 
    482 framework_docs_LOCAL_DROIDDOC_SOURCE_PATH := \
    483 	$(FRAMEWORKS_BASE_JAVA_SRC_DIRS)
    484 
    485 framework_docs_LOCAL_INTERMEDIATE_SOURCES := \
    486 	$(framework_res_source_path)/android/R.java \
    487 	$(framework_res_source_path)/android/Manifest.java \
    488 	$(framework_res_source_path)/com/android/internal/R.java
    489 
    490 framework_docs_LOCAL_API_CHECK_JAVA_LIBRARIES := \
    491 	bouncycastle \
    492 	conscrypt \
    493 	core \
    494 	okhttp \
    495 	ext \
    496 	framework \
    497 	framework2 \
    498 	mms-common \
    499 	telephony-common \
    500 	voip-common
    501 
    502 framework_docs_LOCAL_JAVA_LIBRARIES := \
    503 	$(framework_docs_LOCAL_API_CHECK_JAVA_LIBRARIES) \
    504 	$(FRAMEWORKS_SUPPORT_JAVA_LIBRARIES)
    505 
    506 framework_docs_LOCAL_MODULE_CLASS := JAVA_LIBRARIES
    507 framework_docs_LOCAL_DROIDDOC_HTML_DIR := docs/html
    508 # The since flag (-since N.xml API_LEVEL) is used to add API Level information
    509 # to the reference documentation. Must be in order of oldest to newest.
    510 framework_docs_LOCAL_DROIDDOC_OPTIONS := \
    511     -knowntags ./frameworks/base/docs/knowntags.txt \
    512     -since $(SRC_API_DIR)/1.xml 1 \
    513     -since $(SRC_API_DIR)/2.xml 2 \
    514     -since $(SRC_API_DIR)/3.xml 3 \
    515     -since $(SRC_API_DIR)/4.xml 4 \
    516     -since $(SRC_API_DIR)/5.xml 5 \
    517     -since $(SRC_API_DIR)/6.xml 6 \
    518     -since $(SRC_API_DIR)/7.xml 7 \
    519     -since $(SRC_API_DIR)/8.xml 8 \
    520     -since $(SRC_API_DIR)/9.xml 9 \
    521     -since $(SRC_API_DIR)/10.xml 10 \
    522     -since $(SRC_API_DIR)/11.xml 11 \
    523     -since $(SRC_API_DIR)/12.xml 12 \
    524     -since $(SRC_API_DIR)/13.xml 13 \
    525     -since $(SRC_API_DIR)/14.txt 14 \
    526     -since $(SRC_API_DIR)/15.txt 15 \
    527     -since $(SRC_API_DIR)/16.txt 16 \
    528     -since $(SRC_API_DIR)/17.txt 17 \
    529     -since $(SRC_API_DIR)/18.txt 18 \
    530     -since $(SRC_API_DIR)/19.txt 19 \
    531 		-werror -hide 113 \
    532 		-overview $(LOCAL_PATH)/core/java/overview.html
    533 
    534 framework_docs_LOCAL_API_CHECK_ADDITIONAL_JAVA_DIR:= \
    535 	$(call intermediates-dir-for,JAVA_LIBRARIES,framework-base,,COMMON)
    536 
    537 framework_docs_LOCAL_ADDITIONAL_JAVA_DIR:= \
    538 	$(framework_docs_LOCAL_API_CHECK_ADDITIONAL_JAVA_DIR) \
    539 	$(foreach lib,$(FRAMEWORKS_SUPPORT_JAVA_LIBRARIES),$(call intermediates-dir-for,JAVA_LIBRARIES,$(lib),,COMMON)) \
    540 	$(foreach lib,$(FRAMEWORKS_SUPPORT_JAVA_LIBRARIES),$(call intermediates-dir-for,JAVA_LIBRARIES,$(lib)-res,,COMMON))
    541 
    542 framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES := \
    543     frameworks/base/docs/knowntags.txt
    544 
    545 sample_dir := development/samples/browseable
    546 new_sample_dir := developers/samples/android
    547 
    548 # Whitelist of valid groups, used for default TOC grouping. Each sample must
    549 # belong to one (and only one) group. Assign samples to groups by setting
    550 # a sample.group var to one of these groups in the sample's _index.jd.
    551 sample_groups := -samplegroup Background \
    552                  -samplegroup Connectivity \
    553                  -samplegroup Content \
    554                  -samplegroup Input \
    555                  -samplegroup Media \
    556                  -samplegroup Security \
    557                  -samplegroup Testing \
    558                  -samplegroup UI \
    559                  -samplegroup Views
    560 
    561 # the list here should match the list of samples included in the sdk samples package
    562 # (see development/build/sdk.atree)
    563 # remove htmlified samples for now -- samples are still available through the SDK
    564 web_docs_sample_code_flags := \
    565 		-hdf android.hasSamples 1 \
    566 		-samplecode $(sample_dir)/BasicAccessibility \
    567  		            samples/BasicAccessibility "" \
    568 		-samplecode $(sample_dir)/HorizontalPaging \
    569  		            samples/HorizontalPaging "" \
    570 		-samplecode $(sample_dir)/ShareActionProvider \
    571  		            samples/ShareActionProvider "" \
    572 		-samplecode $(sample_dir)/Styled \
    573  		            samples/Styled "" \
    574 		-samplecode $(sample_dir)/BasicAndroidKeyStore \
    575  		            samples/BasicAndroidKeyStore "" \
    576 		-samplecode $(sample_dir)/Basic \
    577  		            samples/Basic "" \
    578 		-samplecode $(sample_dir)/ImmersiveMode \
    579  		            samples/ImmersiveMode "" \
    580 		-samplecode $(sample_dir)/repeatingAlarm \
    581  		            samples/repeatingAlarm "" \
    582 		-samplecode $(sample_dir)/TextLinkify \
    583  		            samples/TextLinkify "" \
    584 		-samplecode $(sample_dir)/BasicMediaRouter \
    585  		            samples/BasicMediaRouter "" \
    586 		-samplecode $(sample_dir)/BasicMultitouch \
    587  		            samples/BasicMultitouch "" \
    588 		-samplecode $(sample_dir)/TextSwitcher \
    589  		            samples/TextSwitcher "" \
    590 		-samplecode $(sample_dir)/ActivityInstrumentation \
    591  		            samples/ActivityInstrumentation "" \
    592 		-samplecode $(sample_dir)/BorderlessButtons \
    593  		            samples/BorderlessButtons "" \
    594 		-samplecode $(sample_dir)/BasicNotifications \
    595  		            samples/BasicNotifications "" \
    596 		-samplecode $(sample_dir)/AdvancedImmersiveMode \
    597  		            samples/AdvancedImmersiveMode "" \
    598 		-samplecode $(sample_dir)/BluetoothLeGatt \
    599  		            samples/BluetoothLeGatt "" \
    600 		-samplecode $(sample_dir)/NetworkConnect \
    601  		            samples/NetworkConnect "" \
    602 		-samplecode $(sample_dir)/BasicNetworking \
    603  		            samples/BasicNetworking "" \
    604 		-samplecode $(sample_dir)/BasicMediaDecoder \
    605  		            samples/BasicMediaDecoder "" \
    606 		-samplecode $(sample_dir)/BasicImmersiveMode \
    607  		            samples/BasicImmersiveMode "" \
    608 		-samplecode $(sample_dir)/CustomChoiceList \
    609  		            samples/CustomChoiceList "" \
    610 		-samplecode $(sample_dir)/BasicContactables \
    611  		            samples/BasicContactables "" \
    612 		-samplecode $(sample_dir)/BasicGestureDetect \
    613  		            samples/BasicGestureDetect "" \
    614 		-samplecode $(sample_dir)/DoneBar \
    615  		            samples/DoneBar "" \
    616 		-samplecode $(sample_dir)/ListPopupMenu \
    617  		            samples/ListPopupMenu "" \
    618 		-samplecode $(sample_dir)/AppRestrictions \
    619  		            samples/AppRestrictions "" \
    620 		-samplecode $(sample_dir)/CustomNotifications \
    621  		            samples/CustomNotifications "" \
    622 		-samplecode $(sample_dir)/BasicSyncAdapter \
    623  		            samples/BasicSyncAdapter "" \
    624 		-samplecode $(sample_dir)/StorageClient \
    625  		            samples/StorageClient "" 
    626 #		-samplecode $(sample_dir)/StorageProvider \
    627 # 		            samples/StorageProvider "" 
    628 #       -samplecode $(sample_dir)/AndroidBeamDemo \
    629 # 		            samples/AndroidBeamDemo "Android Beam Demo" \
    630 # 		-samplecode $(sample_dir)/ApiDemos \
    631 # 		            samples/ApiDemos "API Demos" \
    632 # 		-samplecode $(sample_dir)/Support4Demos \
    633 # 		            samples/Support4Demos "API 4+ Support Demos" \
    634 # 		-samplecode $(sample_dir)/Support13Demos \
    635 # 		            samples/Support13Demos "API 13+ Support Demos" \
    636 # 		-samplecode $(sample_dir)/BackupRestore \
    637 # 		            samples/BackupRestore "Backup and Restore" \
    638 #		-samplecode $(sample_dir)/BluetoothChat \
    639 # 		            samples/BluetoothChat "Bluetooth Chat" \
    640 # 		-samplecode $(sample_dir)/BusinessCard \
    641 # 		            samples/BusinessCard "Business Card" \
    642 # 		-samplecode $(sample_dir)/ContactManager \
    643 # 		            samples/ContactManager "Contact Manager" \
    644 # 		-samplecode $(sample_dir)/CubeLiveWallpaper \
    645 # 		            samples/CubeLiveWallpaper "Cube Live Wallpaper" \
    646 # 		-samplecode $(sample_dir)/Home \
    647 # 		            samples/Home "Home" \
    648 # 		-samplecode $(sample_dir)/HoneycombGallery \
    649 # 		            samples/HoneycombGallery "Honeycomb Gallery" \
    650 # 		-samplecode $(sample_dir)/JetBoy \
    651 # 		            samples/JetBoy "JetBoy" \
    652 # 		-samplecode $(sample_dir)/KeyChainDemo \
    653 # 		            samples/KeyChainDemo "KeyChain Demo" \
    654 # 		-samplecode $(sample_dir)/LunarLander \
    655 # 		            samples/LunarLander "Lunar Lander" \
    656 # 		-samplecode $(sample_dir)/training/ads-and-ux \
    657 # 		            samples/training/ads-and-ux "Mobile Advertisement Integration" \
    658 # 		-samplecode $(sample_dir)/MultiResolution \
    659 # 		            samples/MultiResolution "Multiple Resolutions" \
    660 # 		-samplecode $(sample_dir)/training/multiscreen/newsreader \
    661 # 		            samples/newsreader "News Reader" \
    662 # 		-samplecode $(sample_dir)/NotePad \
    663 # 		            samples/NotePad "Note Pad" \
    664 # 		-samplecode $(sample_dir)/SpellChecker/SampleSpellCheckerService \
    665 # 		            samples/SpellChecker/SampleSpellCheckerService "Spell Checker Service" \
    666 # 		-samplecode $(sample_dir)/SpellChecker/HelloSpellChecker \
    667 # 		            samples/SpellChecker/HelloSpellChecker "Spell Checker Client" \
    668 # 		-samplecode $(sample_dir)/SampleSyncAdapter \
    669 # 		            samples/SampleSyncAdapter "Sample Sync Adapter" \
    670 # 		-samplecode $(sample_dir)/RandomMusicPlayer \
    671 # 		            samples/RandomMusicPlayer "Random Music Player" \
    672 # 		-samplecode $(sample_dir)/RenderScript \
    673 # 		            samples/RenderScript "RenderScript" \
    674 # 		-samplecode $(sample_dir)/SearchableDictionary \
    675 # 		            samples/SearchableDictionary "Searchable Dictionary v2" \
    676 # 		-samplecode $(sample_dir)/SipDemo \
    677 # 		            samples/SipDemo "SIP Demo" \
    678 # 		-samplecode $(sample_dir)/Snake \
    679 # 		            samples/Snake "Snake" \
    680 # 		-samplecode $(sample_dir)/SoftKeyboard \
    681 # 		            samples/SoftKeyboard "Soft Keyboard" \
    682 # 		-samplecode $(sample_dir)/Spinner  \
    683 # 		            samples/Spinner "Spinner" \
    684 # 		-samplecode $(sample_dir)/SpinnerTest \
    685 # 		            samples/SpinnerTest "SpinnerTest" \
    686 # 		-samplecode $(sample_dir)/StackWidget \
    687 # 		            samples/StackWidget "StackView Widget" \
    688 # 		-samplecode $(sample_dir)/TicTacToeLib  \
    689 # 		            samples/TicTacToeLib "TicTacToeLib" \
    690 # 		-samplecode $(sample_dir)/TicTacToeMain \
    691 # 		            samples/TicTacToeMain "TicTacToeMain" \
    692 # 		-samplecode $(sample_dir)/ToyVpn \
    693 # 		            samples/ToyVpn "Toy VPN Client" \
    694 # 		-samplecode $(sample_dir)/USB \
    695 # 		            samples/USB "USB" \
    696 # 		-samplecode $(sample_dir)/WeatherListWidget \
    697 # 		            samples/WeatherListWidget "Weather List Widget" \
    698 # 		-samplecode $(sample_dir)/WiFiDirectDemo \
    699 #                   samples/WiFiDirectDemo "Wi-Fi Direct Demo" \
    700 # 		-samplecode $(sample_dir)/Wiktionary \
    701 # 		            samples/Wiktionary "Wiktionary" \
    702 # 		-samplecode $(sample_dir)/WiktionarySimple \
    703 # 		            samples/WiktionarySimple "Wiktionary (Simplified)" \
    704 # 		-samplecode $(sample_dir)/VoiceRecognitionService \
    705 # 		            samples/VoiceRecognitionService "Voice Recognition Service" \
    706 # 		-samplecode $(sample_dir)/VoicemailProviderDemo \
    707 # 		            samples/VoicemailProviderDemo "Voicemail Provider Demo" \
    708 # 		-samplecode $(sample_dir)/XmlAdapters \
    709 # 		            samples/XmlAdapters "XML Adapters" \
    710 # 		-samplecode $(sample_dir)/TtsEngine \
    711 # 		            samples/TtsEngine "Text To Speech Engine" \
    712 # 		-samplecode $(sample_dir)/training/device-management-policy \
    713 # 		            samples/training/device-management-policy "Device Management Policy"
    714 
    715 
    716 ## SDK version identifiers used in the published docs
    717   # major[.minor] version for current SDK. (full releases only)
    718 framework_docs_SDK_VERSION:=4.4
    719   # release version (ie "Release x")  (full releases only)
    720 framework_docs_SDK_REL_ID:=1
    721 
    722 framework_docs_LOCAL_DROIDDOC_OPTIONS += \
    723 		-hdf sdk.version $(framework_docs_SDK_VERSION) \
    724 		-hdf sdk.rel.id $(framework_docs_SDK_REL_ID) \
    725 		-hdf sdk.preview 0 \
    726 
    727 # ====  the api stubs and current.xml ===========================
    728 include $(CLEAR_VARS)
    729 
    730 LOCAL_SRC_FILES:=$(framework_docs_LOCAL_API_CHECK_SRC_FILES)
    731 LOCAL_INTERMEDIATE_SOURCES:=$(framework_docs_LOCAL_INTERMEDIATE_SOURCES)
    732 LOCAL_JAVA_LIBRARIES:=$(framework_docs_LOCAL_API_CHECK_JAVA_LIBRARIES)
    733 LOCAL_MODULE_CLASS:=$(framework_docs_LOCAL_MODULE_CLASS)
    734 LOCAL_DROIDDOC_SOURCE_PATH:=$(framework_docs_LOCAL_DROIDDOC_SOURCE_PATH)
    735 LOCAL_DROIDDOC_HTML_DIR:=$(framework_docs_LOCAL_DROIDDOC_HTML_DIR)
    736 LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_API_CHECK_ADDITIONAL_JAVA_DIR)
    737 LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES)
    738 
    739 LOCAL_MODULE := api-stubs
    740 
    741 LOCAL_DROIDDOC_OPTIONS:=\
    742 		$(framework_docs_LOCAL_DROIDDOC_OPTIONS) \
    743 		-stubs $(TARGET_OUT_COMMON_INTERMEDIATES)/JAVA_LIBRARIES/android_stubs_current_intermediates/src \
    744 		-api $(INTERNAL_PLATFORM_API_FILE) \
    745 		-nodocs
    746 
    747 LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=build/tools/droiddoc/templates-sdk
    748 
    749 LOCAL_UNINSTALLABLE_MODULE := true
    750 
    751 include $(BUILD_DROIDDOC)
    752 
    753 # $(gen), i.e. framework.aidl, is also needed while building against the current stub.
    754 $(full_target): $(framework_built) $(gen)
    755 $(INTERNAL_PLATFORM_API_FILE): $(full_target)
    756 $(call dist-for-goals,sdk,$(INTERNAL_PLATFORM_API_FILE))
    757 
    758 # ====  check javadoc comments but don't generate docs ========
    759 include $(CLEAR_VARS)
    760 
    761 LOCAL_SRC_FILES:=$(framework_docs_LOCAL_SRC_FILES)
    762 LOCAL_INTERMEDIATE_SOURCES:=$(framework_docs_LOCAL_INTERMEDIATE_SOURCES)
    763 LOCAL_JAVA_LIBRARIES:=$(framework_docs_LOCAL_JAVA_LIBRARIES)
    764 LOCAL_MODULE_CLASS:=$(framework_docs_LOCAL_MODULE_CLASS)
    765 LOCAL_DROIDDOC_SOURCE_PATH:=$(framework_docs_LOCAL_DROIDDOC_SOURCE_PATH)
    766 LOCAL_DROIDDOC_HTML_DIR:=$(framework_docs_LOCAL_DROIDDOC_HTML_DIR)
    767 LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_ADDITIONAL_JAVA_DIR)
    768 LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES)
    769 
    770 LOCAL_MODULE := doc-comment-check
    771 
    772 LOCAL_DROIDDOC_OPTIONS:=\
    773 		$(framework_docs_LOCAL_DROIDDOC_OPTIONS) \
    774 		-parsecomments
    775 
    776 LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=build/tools/droiddoc/templates-sdk
    777 
    778 LOCAL_UNINSTALLABLE_MODULE := true
    779 
    780 include $(BUILD_DROIDDOC)
    781 
    782 # $(gen), i.e. framework.aidl, is also needed while building against the current stub.
    783 $(full_target): $(framework_built) $(gen)
    784 
    785 # Run this for checkbuild
    786 .PHONY: checkbuild
    787 checkbuild: doc-comment-check-docs
    788 
    789 # ====  static html in the sdk ==================================
    790 include $(CLEAR_VARS)
    791 
    792 LOCAL_SRC_FILES:=$(framework_docs_LOCAL_SRC_FILES)
    793 LOCAL_INTERMEDIATE_SOURCES:=$(framework_docs_LOCAL_INTERMEDIATE_SOURCES)
    794 LOCAL_JAVA_LIBRARIES:=$(framework_docs_LOCAL_JAVA_LIBRARIES)
    795 LOCAL_MODULE_CLASS:=$(framework_docs_LOCAL_MODULE_CLASS)
    796 LOCAL_DROIDDOC_SOURCE_PATH:=$(framework_docs_LOCAL_DROIDDOC_SOURCE_PATH)
    797 LOCAL_DROIDDOC_HTML_DIR:=$(framework_docs_LOCAL_DROIDDOC_HTML_DIR)
    798 LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_ADDITIONAL_JAVA_DIR)
    799 LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES)
    800 
    801 LOCAL_MODULE := offline-sdk
    802 
    803 LOCAL_DROIDDOC_OPTIONS:=\
    804 		$(framework_docs_LOCAL_DROIDDOC_OPTIONS) \
    805 		-offlinemode \
    806 		-title "Android SDK" \
    807 		-proofread $(OUT_DOCS)/$(LOCAL_MODULE)-proofread.txt \
    808 		-todo $(OUT_DOCS)/$(LOCAL_MODULE)-docs-todo.html \
    809 		-sdkvalues $(OUT_DOCS) \
    810 		-hdf android.whichdoc offline
    811 #		$(web_docs_sample_code_flags)
    812 
    813 
    814 LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=build/tools/droiddoc/templates-sdk
    815 
    816 include $(BUILD_DROIDDOC)
    817 
    818 static_doc_index_redirect := $(out_dir)/index.html
    819 $(static_doc_index_redirect): \
    820 	$(LOCAL_PATH)/docs/docs-documentation-redirect.html | $(ACP)
    821 	$(hide) mkdir -p $(dir $@)
    822 	$(hide) $(ACP) $< $@
    823 
    824 $(full_target): $(static_doc_index_redirect)
    825 $(full_target): $(framework_built)
    826 
    827 # ==== docs for the web (on the androiddevdocs app engine server) =======================
    828 include $(CLEAR_VARS)
    829 
    830 LOCAL_SRC_FILES:=$(framework_docs_LOCAL_SRC_FILES)
    831 LOCAL_INTERMEDIATE_SOURCES:=$(framework_docs_LOCAL_INTERMEDIATE_SOURCES)
    832 LOCAL_STATIC_JAVA_LIBRARIES:=$(framework_docs_LOCAL_STATIC_JAVA_LIBRARIES)
    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 LOCAL_ADDITIONAL_HTML_DIR:=docs/html-intl /intl/
    840 
    841 LOCAL_MODULE := online-sdk
    842 
    843 LOCAL_DROIDDOC_OPTIONS:= \
    844 		$(framework_docs_LOCAL_DROIDDOC_OPTIONS) \
    845 		-toroot / \
    846 		-hdf android.whichdoc online \
    847 		$(sample_groups) \
    848 		$(web_docs_sample_code_flags)
    849 
    850 LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=build/tools/droiddoc/templates-sdk
    851 
    852 include $(BUILD_DROIDDOC)
    853 
    854 # ==== docs for the web (on the devsite app engine server) =======================
    855 include $(CLEAR_VARS)
    856 LOCAL_SRC_FILES:=$(framework_docs_LOCAL_SRC_FILES)
    857 LOCAL_INTERMEDIATE_SOURCES:=$(framework_docs_LOCAL_INTERMEDIATE_SOURCES)
    858 LOCAL_STATIC_JAVA_LIBRARIES:=$(framework_docs_LOCAL_STATIC_JAVA_LIBRARIES)
    859 LOCAL_JAVA_LIBRARIES:=$(framework_docs_LOCAL_JAVA_LIBRARIES)
    860 LOCAL_MODULE_CLASS:=$(framework_docs_LOCAL_MODULE_CLASS)
    861 LOCAL_DROIDDOC_SOURCE_PATH:=$(framework_docs_LOCAL_DROIDDOC_SOURCE_PATH)
    862 LOCAL_DROIDDOC_HTML_DIR:=$(framework_docs_LOCAL_DROIDDOC_HTML_DIR)
    863 LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_ADDITIONAL_JAVA_DIR)
    864 LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES)
    865 # specify a second html input dir and an output path relative to OUT_DIR)
    866 LOCAL_ADDITIONAL_HTML_DIR:=docs/html-intl /
    867 
    868 LOCAL_MODULE := ds
    869 
    870 LOCAL_DROIDDOC_OPTIONS:= \
    871 		$(framework_docs_LOCAL_DROIDDOC_OPTIONS) \
    872 		-devsite \
    873 		-toroot / \
    874 		-hdf android.whichdoc online \
    875 		-hdf devsite true
    876 #		$(web_docs_sample_code_flags)
    877 
    878 LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=build/tools/droiddoc/templates-sdk
    879 
    880 include $(BUILD_DROIDDOC)
    881 
    882 # ==== docs that have all of the stuff that's @hidden =======================
    883 include $(CLEAR_VARS)
    884 
    885 LOCAL_SRC_FILES:=$(framework_docs_LOCAL_SRC_FILES)
    886 LOCAL_INTERMEDIATE_SOURCES:=$(framework_docs_LOCAL_INTERMEDIATE_SOURCES)
    887 LOCAL_JAVA_LIBRARIES:=$(framework_docs_LOCAL_JAVA_LIBRARIES)
    888 LOCAL_MODULE_CLASS:=$(framework_docs_LOCAL_MODULE_CLASS)
    889 LOCAL_DROIDDOC_SOURCE_PATH:=$(framework_docs_LOCAL_DROIDDOC_SOURCE_PATH)
    890 LOCAL_DROIDDOC_HTML_DIR:=$(framework_docs_LOCAL_DROIDDOC_HTML_DIR)
    891 LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_ADDITIONAL_JAVA_DIR)
    892 LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES)
    893 
    894 LOCAL_MODULE := hidden
    895 LOCAL_DROIDDOC_OPTIONS:=\
    896 		$(framework_docs_LOCAL_DROIDDOC_OPTIONS) \
    897 		-title "Android SDK - Including hidden APIs."
    898 #		-hidden
    899 
    900 LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=build/tools/droiddoc/templates-sdk
    901 
    902 include $(BUILD_DROIDDOC)
    903 
    904 # Build ext.jar
    905 # ============================================================
    906 
    907 # NOTICE notes for non-obvious sections
    908 # apache-http - covered by the Apache Commons section.
    909 
    910 
    911 ext_dirs := \
    912 	../../external/nist-sip/java \
    913 	../../external/apache-http/src \
    914 	../../external/tagsoup/src \
    915 	../../external/libphonenumber/java/src
    916 
    917 ext_src_files := $(call all-java-files-under,$(ext_dirs))
    918 
    919 ext_res_dirs := \
    920 	../../external/libphonenumber/java/src
    921 
    922 # ====  the library  =========================================
    923 include $(CLEAR_VARS)
    924 
    925 LOCAL_SRC_FILES := $(ext_src_files)
    926 
    927 LOCAL_NO_STANDARD_LIBRARIES := true
    928 LOCAL_JAVA_LIBRARIES := core
    929 LOCAL_JAVA_RESOURCE_DIRS := $(ext_res_dirs)
    930 LOCAL_MODULE_TAGS := optional
    931 LOCAL_MODULE := ext
    932 
    933 LOCAL_DX_FLAGS := --core-library
    934 
    935 include $(BUILD_JAVA_LIBRARY)
    936 
    937 
    938 # Include subdirectory makefiles
    939 # ============================================================
    940 
    941 # If we're building with ONE_SHOT_MAKEFILE (mm, mmm), then what the framework
    942 # team really wants is to build the stuff defined by this makefile.
    943 ifeq (,$(ONE_SHOT_MAKEFILE))
    944 include $(call first-makefiles-under,$(LOCAL_PATH))
    945 endif
    946