OSDN Git Service

Merge "Clean up IPackageManager install surface area."
[android-x86/frameworks-base.git] / Android.mk
index 8f0869c..a7eb03d 100644 (file)
@@ -31,6 +31,10 @@ framework_res_source_path := APPS/framework-res_intermediates/src
 # So we first build the framework as a monolithic static library then split it
 # up into smaller pieces.
 # ============================================================
+
+# embedded builds use nothing in frameworks/base
+ifneq ($(ANDROID_BUILD_EMBEDDED),true)
+
 include $(CLEAR_VARS)
 
 # FRAMEWORKS_BASE_SUBDIRS comes from build/core/pathmap.mk
@@ -64,6 +68,7 @@ LOCAL_SRC_FILES += \
        core/java/android/app/IActivityController.aidl \
        core/java/android/app/IActivityPendingResult.aidl \
        core/java/android/app/IAlarmManager.aidl \
+       core/java/android/app/IAppTask.aidl \
        core/java/android/app/IBackupAgent.aidl \
        core/java/android/app/IInstrumentationWatcher.aidl \
        core/java/android/app/INotificationManager.aidl \
@@ -72,8 +77,9 @@ LOCAL_SRC_FILES += \
        core/java/android/app/ISearchManagerCallback.aidl \
        core/java/android/app/IServiceConnection.aidl \
        core/java/android/app/IStopUserCallback.aidl \
-       core/java/android/app/IThumbnailReceiver.aidl \
-       core/java/android/app/IThumbnailRetriever.aidl \
+       core/java/android/app/job/IJobCallback.aidl \
+       core/java/android/app/job/IJobScheduler.aidl \
+       core/java/android/app/job/IJobService.aidl \
        core/java/android/app/ITransientNotification.aidl \
        core/java/android/app/IUiAutomationConnection.aidl \
        core/java/android/app/IUiModeManager.aidl \
@@ -81,12 +87,16 @@ LOCAL_SRC_FILES += \
        core/java/android/app/IWallpaperManager.aidl \
        core/java/android/app/IWallpaperManagerCallback.aidl \
        core/java/android/app/admin/IDevicePolicyManager.aidl \
+       core/java/android/app/trust/ITrustManager.aidl \
+       core/java/android/app/trust/ITrustListener.aidl \
        core/java/android/app/backup/IBackupManager.aidl \
        core/java/android/app/backup/IFullBackupRestoreObserver.aidl \
        core/java/android/app/backup/IRestoreObserver.aidl \
        core/java/android/app/backup/IRestoreSession.aidl \
        core/java/android/bluetooth/IBluetooth.aidl \
        core/java/android/bluetooth/IBluetoothA2dp.aidl \
+       core/java/android/bluetooth/IBluetoothA2dpSink.aidl \
+       core/java/android/bluetooth/IBluetoothAvrcpController.aidl \
        core/java/android/bluetooth/IBluetoothCallback.aidl \
        core/java/android/bluetooth/IBluetoothHeadset.aidl \
        core/java/android/bluetooth/IBluetoothHeadsetPhone.aidl \
@@ -99,6 +109,7 @@ LOCAL_SRC_FILES += \
        core/java/android/bluetooth/IBluetoothPbap.aidl \
        core/java/android/bluetooth/IBluetoothMap.aidl \
        core/java/android/bluetooth/IBluetoothStateChangeCallback.aidl \
+       core/java/android/bluetooth/IBluetoothHeadsetClient.aidl \
        core/java/android/bluetooth/IBluetoothGatt.aidl \
        core/java/android/bluetooth/IBluetoothGattCallback.aidl \
        core/java/android/bluetooth/IBluetoothGattServerCallback.aidl \
@@ -107,13 +118,19 @@ LOCAL_SRC_FILES += \
        core/java/android/content/IIntentReceiver.aidl \
        core/java/android/content/IIntentSender.aidl \
        core/java/android/content/IOnPrimaryClipChangedListener.aidl \
-       core/java/android/content/IAnonymousSyncAdapter.aidl \
+       core/java/android/content/IRestrictionsManager.aidl \
        core/java/android/content/ISyncAdapter.aidl \
        core/java/android/content/ISyncContext.aidl \
+       core/java/android/content/ISyncServiceAdapter.aidl \
        core/java/android/content/ISyncStatusObserver.aidl \
+       core/java/android/content/pm/ILauncherApps.aidl \
+       core/java/android/content/pm/IOnAppsChangedListener.aidl \
        core/java/android/content/pm/IPackageDataObserver.aidl \
        core/java/android/content/pm/IPackageDeleteObserver.aidl \
        core/java/android/content/pm/IPackageInstallObserver.aidl \
+       core/java/android/content/pm/IPackageInstallObserver2.aidl \
+       core/java/android/content/pm/IPackageInstaller.aidl \
+       core/java/android/content/pm/IPackageInstallerSession.aidl \
        core/java/android/content/pm/IPackageManager.aidl \
        core/java/android/content/pm/IPackageMoveObserver.aidl \
        core/java/android/content/pm/IPackageStatsObserver.aidl \
@@ -130,8 +147,13 @@ LOCAL_SRC_FILES += \
        core/java/android/hardware/ISerialManager.aidl \
        core/java/android/hardware/display/IDisplayManager.aidl \
        core/java/android/hardware/display/IDisplayManagerCallback.aidl \
-       core/java/android/hardware/hdmi/IHdmiCecListener.aidl \
-       core/java/android/hardware/hdmi/IHdmiCecService.aidl \
+       core/java/android/hardware/hdmi/IHdmiControlCallback.aidl \
+       core/java/android/hardware/hdmi/IHdmiControlService.aidl \
+       core/java/android/hardware/hdmi/IHdmiDeviceEventListener.aidl \
+       core/java/android/hardware/hdmi/IHdmiHotplugEventListener.aidl \
+       core/java/android/hardware/hdmi/IHdmiInputChangeListener.aidl \
+       core/java/android/hardware/hdmi/IHdmiSystemAudioModeChangeListener.aidl \
+       core/java/android/hardware/hdmi/IHdmiVendorCommandListener.aidl \
        core/java/android/hardware/input/IInputManager.aidl \
        core/java/android/hardware/input/IInputDevicesChangedListener.aidl \
        core/java/android/hardware/location/IFusedLocationHardware.aidl \
@@ -141,9 +163,12 @@ LOCAL_SRC_FILES += \
        core/java/android/hardware/location/IGeofenceHardwareMonitorCallback.aidl \
        core/java/android/hardware/usb/IUsbManager.aidl \
        core/java/android/net/IConnectivityManager.aidl \
+       core/java/android/net/IEthernetManager.aidl \
        core/java/android/net/INetworkManagementEventObserver.aidl \
        core/java/android/net/INetworkPolicyListener.aidl \
        core/java/android/net/INetworkPolicyManager.aidl \
+       core/java/android/net/INetworkScoreCache.aidl \
+       core/java/android/net/INetworkScoreService.aidl \
        core/java/android/net/INetworkStatsService.aidl \
        core/java/android/net/INetworkStatsSession.aidl \
        core/java/android/net/nsd/INsdManager.aidl \
@@ -152,11 +177,13 @@ LOCAL_SRC_FILES += \
        core/java/android/nfc/INfcAdapterExtras.aidl \
        core/java/android/nfc/INfcTag.aidl \
        core/java/android/nfc/INfcCardEmulation.aidl \
+       core/java/android/nfc/INfcLockscreenDispatch.aidl \
        core/java/android/os/IBatteryPropertiesListener.aidl \
        core/java/android/os/IBatteryPropertiesRegistrar.aidl \
        core/java/android/os/ICancellationSignal.aidl \
        core/java/android/os/IHardwareService.aidl \
        core/java/android/os/IMessenger.aidl \
+       core/java/android/os/INetworkActivityListener.aidl \
        core/java/android/os/INetworkManagementService.aidl \
        core/java/android/os/IPermissionController.aidl \
        core/java/android/os/IPowerManager.aidl \
@@ -166,7 +193,8 @@ LOCAL_SRC_FILES += \
        core/java/android/os/IUserManager.aidl \
        core/java/android/os/IVibratorService.aidl \
        core/java/android/service/notification/INotificationListener.aidl \
-       core/java/android/service/notification/IStatusBarNotificationHolder.aidl \
+       core/java/android/service/notification/IConditionListener.aidl \
+       core/java/android/service/notification/IConditionProvider.aidl \
        core/java/android/print/ILayoutResultCallback.aidl \
        core/java/android/print/IPrinterDiscoveryObserver.aidl \
        core/java/android/print/IPrintDocumentAdapter.aidl \
@@ -182,6 +210,13 @@ LOCAL_SRC_FILES += \
        core/java/android/service/dreams/IDozeHardware.aidl \
        core/java/android/service/dreams/IDreamManager.aidl \
        core/java/android/service/dreams/IDreamService.aidl \
+       core/java/android/service/fingerprint/IFingerprintService.aidl \
+       core/java/android/service/fingerprint/IFingerprintServiceReceiver.aidl \
+       core/java/android/service/trust/ITrustAgentService.aidl \
+       core/java/android/service/trust/ITrustAgentServiceCallback.aidl \
+       core/java/android/service/voice/IVoiceInteractionService.aidl \
+       core/java/android/service/voice/IVoiceInteractionSession.aidl \
+       core/java/android/service/voice/IVoiceInteractionSessionService.aidl \
        core/java/android/service/wallpaper/IWallpaperConnection.aidl \
        core/java/android/service/wallpaper/IWallpaperEngine.aidl \
        core/java/android/service/wallpaper/IWallpaperService.aidl \
@@ -191,7 +226,6 @@ LOCAL_SRC_FILES += \
        core/java/android/view/accessibility/IAccessibilityManagerClient.aidl \
        core/java/android/view/IApplicationToken.aidl \
        core/java/android/view/IAssetAtlas.aidl \
-       core/java/android/view/IMagnificationCallbacks.aidl \
        core/java/android/view/IInputFilter.aidl \
        core/java/android/view/IInputFilterHost.aidl \
        core/java/android/view/IOnKeyguardExitResult.aidl \
@@ -201,6 +235,7 @@ LOCAL_SRC_FILES += \
        core/java/android/view/IWindowId.aidl \
        core/java/android/view/IWindowManager.aidl \
        core/java/android/view/IWindowSession.aidl \
+       core/java/android/view/IWindowSessionCallback.aidl \
        core/java/android/speech/IRecognitionListener.aidl \
        core/java/android/speech/IRecognitionService.aidl \
        core/java/android/speech/tts/ITextToSpeechCallback.aidl \
@@ -210,6 +245,10 @@ LOCAL_SRC_FILES += \
        core/java/com/android/internal/app/IBatteryStats.aidl \
        core/java/com/android/internal/app/IProcessStats.aidl \
        core/java/com/android/internal/app/IUsageStats.aidl \
+       core/java/com/android/internal/app/IVoiceInteractionManagerService.aidl \
+       core/java/com/android/internal/app/IVoiceInteractor.aidl \
+       core/java/com/android/internal/app/IVoiceInteractorCallback.aidl \
+       core/java/com/android/internal/app/IVoiceInteractorRequest.aidl \
        core/java/com/android/internal/app/IMediaContainerService.aidl \
        core/java/com/android/internal/appwidget/IAppWidgetService.aidl \
        core/java/com/android/internal/appwidget/IAppWidgetHost.aidl \
@@ -221,6 +260,7 @@ LOCAL_SRC_FILES += \
        core/java/com/android/internal/policy/IKeyguardExitCallback.aidl \
        core/java/com/android/internal/policy/IKeyguardService.aidl \
        core/java/com/android/internal/os/IDropBoxManagerService.aidl \
+       core/java/com/android/internal/os/IParcelFileDescriptorFactory.aidl \
        core/java/com/android/internal/os/IResultReceiver.aidl \
        core/java/com/android/internal/statusbar/IStatusBar.aidl \
        core/java/com/android/internal/statusbar/IStatusBarService.aidl \
@@ -237,6 +277,7 @@ LOCAL_SRC_FILES += \
        core/java/com/android/internal/view/IInputMethodSession.aidl \
        core/java/com/android/internal/view/IInputSessionCallback.aidl \
        core/java/com/android/internal/widget/ILockSettings.aidl \
+       core/java/com/android/internal/widget/ILockSettingsObserver.aidl \
        core/java/com/android/internal/widget/IRemoteViewsFactory.aidl \
        core/java/com/android/internal/widget/IRemoteViewsAdapterConnection.aidl \
        keystore/java/android/security/IKeyChainAliasCallback.aidl \
@@ -257,6 +298,8 @@ LOCAL_SRC_FILES += \
        media/java/android/media/IAudioService.aidl \
        media/java/android/media/IAudioFocusDispatcher.aidl \
        media/java/android/media/IAudioRoutesObserver.aidl \
+       media/java/android/media/IMediaHTTPConnection.aidl \
+       media/java/android/media/IMediaHTTPService.aidl \
        media/java/android/media/IMediaRouterClient.aidl \
        media/java/android/media/IMediaRouterService.aidl \
        media/java/android/media/IMediaScannerListener.aidl \
@@ -265,17 +308,60 @@ LOCAL_SRC_FILES += \
        media/java/android/media/IRemoteControlDisplay.aidl \
        media/java/android/media/IRemoteDisplayCallback.aidl \
        media/java/android/media/IRemoteDisplayProvider.aidl \
+       media/java/android/media/IRemoteVolumeController.aidl \
        media/java/android/media/IRemoteVolumeObserver.aidl \
        media/java/android/media/IRingtonePlayer.aidl \
+       media/java/android/media/IVolumeController.aidl \
+       media/java/android/media/routeprovider/IRouteConnection.aidl \
+       media/java/android/media/routeprovider/IRouteProvider.aidl \
+       media/java/android/media/routeprovider/IRouteProviderCallback.aidl \
+       media/java/android/media/session/IActiveSessionsListener.aidl \
+       media/java/android/media/session/ISessionController.aidl \
+       media/java/android/media/session/ISessionControllerCallback.aidl \
+       media/java/android/media/session/ISession.aidl \
+       media/java/android/media/session/ISessionCallback.aidl \
+       media/java/android/media/session/ISessionManager.aidl \
+       media/java/android/media/tv/ITvInputClient.aidl \
+       media/java/android/media/tv/ITvInputHardware.aidl \
+       media/java/android/media/tv/ITvInputHardwareCallback.aidl \
+       media/java/android/media/tv/ITvInputManager.aidl \
+       media/java/android/media/tv/ITvInputService.aidl \
+       media/java/android/media/tv/ITvInputServiceCallback.aidl \
+       media/java/android/media/tv/ITvInputSession.aidl \
+       media/java/android/media/tv/ITvInputSessionCallback.aidl \
+       telecomm/java/com/android/internal/telecomm/ICallServiceLookupResponse.aidl \
+       telecomm/java/com/android/internal/telecomm/ICallServiceProvider.aidl \
+       telecomm/java/com/android/internal/telecomm/ICallVideoProvider.aidl \
+       telecomm/java/com/android/internal/telecomm/ICallVideoClient.aidl \
+       telecomm/java/com/android/internal/telecomm/IConnectionService.aidl \
+       telecomm/java/com/android/internal/telecomm/IConnectionServiceAdapter.aidl \
+       telecomm/java/com/android/internal/telecomm/IInCallAdapter.aidl \
+       telecomm/java/com/android/internal/telecomm/IInCallService.aidl \
+       telecomm/java/com/android/internal/telecomm/ITelecommService.aidl \
+       telecomm/java/com/android/internal/telecomm/RemoteServiceCallback.aidl \
+       telephony/java/com/android/ims/internal/IImsCallSession.aidl \
+       telephony/java/com/android/ims/internal/IImsCallSessionListener.aidl \
+       telephony/java/com/android/ims/internal/IImsRegistrationListener.aidl \
+       telephony/java/com/android/ims/internal/IImsService.aidl \
+       telephony/java/com/android/ims/internal/IImsStreamMediaSession.aidl \
+       telephony/java/com/android/ims/internal/IImsUt.aidl \
+       telephony/java/com/android/ims/internal/IImsUtListener.aidl \
        telephony/java/com/android/internal/telephony/IPhoneStateListener.aidl \
        telephony/java/com/android/internal/telephony/IPhoneSubInfo.aidl \
        telephony/java/com/android/internal/telephony/ITelephony.aidl \
-       telephony/java/com/android/internal/telephony/ITelephonyListener.aidl \
+       telephony/java/com/android/internal/telephony/IThirdPartyCallListener.aidl \
+       telephony/java/com/android/internal/telephony/IThirdPartyCallProvider.aidl \
+       telephony/java/com/android/internal/telephony/IThirdPartyCallSendDtmfCallback.aidl \
+       telephony/java/com/android/internal/telephony/IThirdPartyCallService.aidl \
        telephony/java/com/android/internal/telephony/ITelephonyRegistry.aidl \
        telephony/java/com/android/internal/telephony/ISms.aidl \
        telephony/java/com/android/internal/telephony/IWapPushManager.aidl \
+       telephony/java/com/android/internal/telephony/ISub.aidl \
+       telephony/java/com/android/internal/telephony/IMms.aidl \
        wifi/java/android/net/wifi/IWifiManager.aidl \
+       wifi/java/android/net/wifi/passpoint/IWifiPasspointManager.aidl \
        wifi/java/android/net/wifi/p2p/IWifiP2pManager.aidl \
+       wifi/java/android/net/wifi/IWifiScanner.aidl \
        packages/services/PacProcessor/com/android/net/IProxyService.aidl \
        packages/services/Proxy/com/android/net/IProxyCallback.aidl \
        packages/services/Proxy/com/android/net/IProxyPortListener.aidl \
@@ -293,7 +379,7 @@ LOCAL_JAVA_LIBRARIES := core-libart conscrypt okhttp core-junit bouncycastle ext
 
 LOCAL_MODULE := framework-base
 
-LOCAL_JAR_EXCLUDE_FILES := none
+LOCAL_RMTYPEDEFS := true
 
 include $(BUILD_STATIC_JAVA_LIBRARY)
 
@@ -313,8 +399,16 @@ LOCAL_NO_STANDARD_LIBRARIES := true
 LOCAL_STATIC_JAVA_LIBRARIES := framework-base
 LOCAL_DX_FLAGS := --core-library
 
-# Packages to include, use \* wildcard to include descendants.
-LOCAL_JAR_PACKAGES := android\*
+# List of packages to include along with their descendants.
+LOCAL_JAR_PACKAGES := \
+    android
+
+# List of packages to exclude along with their descendants.
+# Overrides inclusion.
+LOCAL_JAR_EXCLUDE_PACKAGES := \
+    android.filterfw \
+    android.filterpacks \
+    android.hardware
 
 # List of classes and interfaces which should be loaded by the Zygote.
 LOCAL_JAVA_RESOURCE_FILES += $(LOCAL_PATH)/preloaded-classes
@@ -332,8 +426,13 @@ LOCAL_NO_STANDARD_LIBRARIES := true
 LOCAL_STATIC_JAVA_LIBRARIES := framework-base
 LOCAL_DX_FLAGS := --core-library
 
-# Packages to include, use \* wildcard to include descendants.
-LOCAL_JAR_PACKAGES := com\* javax\*
+# List of packages to include along with their descendants.
+LOCAL_JAR_PACKAGES := \
+    android.filterfw \
+    android.filterpacks \
+    android.hardware \
+    com \
+    javax
 
 include $(BUILD_JAVA_LIBRARY)
 framework2_module := $(LOCAL_INSTALLED_MODULE)
@@ -378,10 +477,23 @@ aidl_files := \
        frameworks/base/core/java/android/os/DropBoxManager.aidl \
        frameworks/base/core/java/android/os/ParcelFileDescriptor.aidl \
        frameworks/base/core/java/android/os/ParcelUuid.aidl \
+       frameworks/base/core/java/android/print/PrinterInfo.aidl \
+       frameworks/base/core/java/android/print/PageRange.aidl \
+       frameworks/base/core/java/android/print/PrintAttributes.aidl \
+       frameworks/base/core/java/android/print/PrinterCapabilitiesInfo.aidl \
+       frameworks/base/core/java/android/print/PrinterId.aidl \
+       frameworks/base/core/java/android/print/PrintJobId.aidl \
+       frameworks/base/core/java/android/print/PrintJobInfo.aidl \
+       frameworks/base/core/java/android/view/accessibility/AccessibilityEvent.aidl \
+       frameworks/base/core/java/android/view/accessibility/AccessibilityNodeInfo.aidl \
+       frameworks/base/core/java/android/view/accessibility/AccessibilityRecord.aidl \
+       frameworks/base/core/java/android/view/accessibility/AccessibilityWindowInfo.aidl \
        frameworks/base/core/java/android/view/KeyEvent.aidl \
        frameworks/base/core/java/android/view/MotionEvent.aidl \
        frameworks/base/core/java/android/view/Surface.aidl \
        frameworks/base/core/java/android/view/WindowManager.aidl \
+       frameworks/base/core/java/android/view/WindowAnimationFrameStats.aidl \
+       frameworks/base/core/java/android/view/WindowContentFrameStats.aidl \
        frameworks/base/core/java/android/widget/RemoteViews.aidl \
        frameworks/base/core/java/com/android/internal/textservice/ISpellCheckerService.aidl \
        frameworks/base/core/java/com/android/internal/textservice/ISpellCheckerSession.aidl \
@@ -403,6 +515,10 @@ aidl_files := \
        frameworks/base/location/java/android/location/FusedBatchOptions.aidl \
        frameworks/base/location/java/com/android/internal/location/ProviderProperties.aidl \
        frameworks/base/location/java/com/android/internal/location/ProviderRequest.aidl \
+       frameworks/base/media/java/android/media/MediaMetadata.aidl \
+       frameworks/base/media/java/android/media/Rating.aidl \
+       frameworks/base/media/java/android/media/session/MediaSession.aidl \
+       frameworks/base/media/java/android/media/session/PlaybackState.aidl \
        frameworks/base/telephony/java/android/telephony/ServiceState.aidl \
        frameworks/base/telephony/java/com/android/internal/telephony/IPhoneSubInfo.aidl \
        frameworks/base/telephony/java/com/android/internal/telephony/ITelephony.aidl \
@@ -502,7 +618,6 @@ framework_docs_LOCAL_API_CHECK_JAVA_LIBRARIES := \
        ext \
        framework \
        framework2 \
-       mms-common \
        telephony-common \
        voip-common
 
@@ -514,8 +629,12 @@ framework_docs_LOCAL_MODULE_CLASS := JAVA_LIBRARIES
 framework_docs_LOCAL_DROIDDOC_HTML_DIR := docs/html
 # The since flag (-since N.xml API_LEVEL) is used to add API Level information
 # to the reference documentation. Must be in order of oldest to newest.
+#
+# Conscrypt (com.android.org.conscrypt) is an implementation detail and should
+# not be referenced in the documentation.
 framework_docs_LOCAL_DROIDDOC_OPTIONS := \
     -knowntags ./frameworks/base/docs/knowntags.txt \
+    -hidePackage com.android.org.conscrypt \
     -since $(SRC_API_DIR)/1.xml 1 \
     -since $(SRC_API_DIR)/2.xml 2 \
     -since $(SRC_API_DIR)/3.xml 3 \
@@ -596,6 +715,7 @@ LOCAL_DROIDDOC_OPTIONS:=\
                $(framework_docs_LOCAL_DROIDDOC_OPTIONS) \
                -stubs $(TARGET_OUT_COMMON_INTERMEDIATES)/JAVA_LIBRARIES/android_stubs_current_intermediates/src \
                -api $(INTERNAL_PLATFORM_API_FILE) \
+               -removedApi $(INTERNAL_PLATFORM_REMOVED_API_FILE) \
                -nodocs
 
 LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=build/tools/droiddoc/templates-sdk
@@ -609,7 +729,7 @@ $(full_target): $(framework_built) $(gen)
 $(INTERNAL_PLATFORM_API_FILE): $(full_target)
 $(call dist-for-goals,sdk,$(INTERNAL_PLATFORM_API_FILE))
 
-# ====  the private api stubs ===================================
+# ====  the system api stubs ===================================
 include $(CLEAR_VARS)
 
 LOCAL_SRC_FILES:=$(framework_docs_LOCAL_API_CHECK_SRC_FILES)
@@ -621,12 +741,14 @@ LOCAL_DROIDDOC_HTML_DIR:=$(framework_docs_LOCAL_DROIDDOC_HTML_DIR)
 LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_API_CHECK_ADDITIONAL_JAVA_DIR)
 LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES)
 
-LOCAL_MODULE := private-api-stubs
+LOCAL_MODULE := system-api-stubs
 
 LOCAL_DROIDDOC_OPTIONS:=\
                $(framework_docs_LOCAL_DROIDDOC_OPTIONS) \
-               -stubs $(TARGET_OUT_COMMON_INTERMEDIATES)/JAVA_LIBRARIES/android_private_stubs_current_intermediates/src \
-        -showAnnotation android.annotation.PrivateApi \
+               -stubs $(TARGET_OUT_COMMON_INTERMEDIATES)/JAVA_LIBRARIES/android_system_stubs_current_intermediates/src \
+               -showAnnotation android.annotation.SystemApi \
+               -api $(INTERNAL_PLATFORM_SYSTEM_API_FILE) \
+               -removedApi $(INTERNAL_PLATFORM_SYSTEM_REMOVED_API_FILE) \
                -nodocs
 
 LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=build/tools/droiddoc/templates-sdk
@@ -663,8 +785,9 @@ include $(BUILD_DROIDDOC)
 $(full_target): $(framework_built) $(gen)
 
 # Run this for checkbuild
-.PHONY: checkbuild
 checkbuild: doc-comment-check-docs
+# Check comment when you are updating the API
+update-api: doc-comment-check-docs
 
 # ====  static html in the sdk ==================================
 include $(CLEAR_VARS)
@@ -730,6 +853,41 @@ LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=build/tools/droiddoc/templates-sdk
 
 include $(BUILD_DROIDDOC)
 
+# ==== docs for the web (on the androiddevdocs app engine server) =======================
+# TODO: Fix the System API docs build.
+ifneq ($(filter online-system-api-sdk-docs,$(MAKECMDGOALS)),)
+include $(CLEAR_VARS)
+
+LOCAL_SRC_FILES:=$(framework_docs_LOCAL_SRC_FILES)
+LOCAL_INTERMEDIATE_SOURCES:=$(framework_docs_LOCAL_INTERMEDIATE_SOURCES)
+LOCAL_STATIC_JAVA_LIBRARIES:=$(framework_docs_LOCAL_STATIC_JAVA_LIBRARIES)
+LOCAL_JAVA_LIBRARIES:=$(framework_docs_LOCAL_JAVA_LIBRARIES)
+LOCAL_MODULE_CLASS:=$(framework_docs_LOCAL_MODULE_CLASS)
+LOCAL_DROIDDOC_SOURCE_PATH:=$(framework_docs_LOCAL_DROIDDOC_SOURCE_PATH)
+LOCAL_DROIDDOC_HTML_DIR:=$(framework_docs_LOCAL_DROIDDOC_HTML_DIR)
+LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_ADDITIONAL_JAVA_DIR)
+LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES)
+LOCAL_ADDITIONAL_HTML_DIR:=docs/html-intl /
+
+LOCAL_MODULE := online-system-api-sdk
+
+LOCAL_DROIDDOC_OPTIONS:= \
+               $(framework_docs_LOCAL_DROIDDOC_OPTIONS) \
+               -showAnnotation android.annotation.SystemApi \
+               -title "Android SDK - Including system APIs." \
+               -toroot / \
+               -hdf android.whichdoc online \
+               $(sample_groups) \
+               -hdf android.hasSamples true \
+               -samplesdir $(samples_dir)
+
+LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=build/tools/droiddoc/templates-sdk
+# Don't build by default
+LOCAL_UNINSTALLABLE_MODULE := true
+
+include $(BUILD_DROIDDOC)
+endif  # online-system-api-sdk-docs in make command line.
+
 # ==== docs for the web (on the devsite app engine server) =======================
 include $(CLEAR_VARS)
 LOCAL_SRC_FILES:=$(framework_docs_LOCAL_SRC_FILES)
@@ -821,3 +979,5 @@ include $(BUILD_JAVA_LIBRARY)
 ifeq (,$(ONE_SHOT_MAKEFILE))
 include $(call first-makefiles-under,$(LOCAL_PATH))
 endif
+
+endif # ANDROID_BUILD_EMBEDDED