blob: 83cdd739ab6b127a92689fe0bd1ef950751c9147 [file] [log] [blame]
Bart Searsa8cc0582015-05-07 03:23:20 +00001#
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#
16LOCAL_PATH := $(call my-dir)
17
Colin Cross5f4dcf62017-11-16 00:15:28 -080018# Load framework-specific path mappings used later in the build.
19include $(LOCAL_PATH)/pathmap.mk
Bart Searsa8cc0582015-05-07 03:23:20 +000020
21# Build the master framework library.
22# The framework contains too many method references (>64K) for poor old DEX.
23# So we first build the framework as a monolithic static library then split it
24# up into smaller pieces.
25# ============================================================
26
27# embedded builds use nothing in frameworks/base
28ifneq ($(ANDROID_BUILD_EMBEDDED),true)
29
Bart Searsa8cc0582015-05-07 03:23:20 +000030# Copy AIDL files to be preprocessed and included in the SDK,
31# specified relative to the root of the build tree.
32# ============================================================
33include $(CLEAR_VARS)
34
35aidl_files := \
Robert Greenwalt4dded7a2016-12-05 16:33:32 -080036 frameworks/base/telephony/java/android/telephony/mbms/DownloadRequest.aidl \
Robert Greenwalt4dded7a2016-12-05 16:33:32 -080037 frameworks/base/telephony/java/android/telephony/mbms/FileInfo.aidl \
38 frameworks/base/telephony/java/android/telephony/mbms/FileServiceInfo.aidl \
39 frameworks/base/telephony/java/android/telephony/mbms/ServiceInfo.aidl \
Robert Greenwalt4dded7a2016-12-05 16:33:32 -080040 frameworks/base/telephony/java/android/telephony/mbms/StreamingServiceInfo.aidl \
Bart Searsa8cc0582015-05-07 03:23:20 +000041 frameworks/base/telephony/java/android/telephony/ServiceState.aidl \
42 frameworks/base/telephony/java/android/telephony/SubscriptionInfo.aidl \
43 frameworks/base/telephony/java/android/telephony/CellInfo.aidl \
44 frameworks/base/telephony/java/android/telephony/SignalStrength.aidl \
45 frameworks/base/telephony/java/android/telephony/IccOpenLogicalChannelResponse.aidl \
46 frameworks/base/telephony/java/android/telephony/NeighboringCellInfo.aidl \
Prerepa Viswanadham5c728992015-05-28 00:12:37 -070047 frameworks/base/telephony/java/android/telephony/ModemActivityInfo.aidl \
Jeff Davidson35cda392017-02-27 09:46:00 -080048 frameworks/base/telephony/java/android/telephony/UiccAccessRule.aidl \
Jack Yub592e292017-11-30 14:03:58 -080049 frameworks/base/telephony/java/android/telephony/data/DataCallResponse.aidl \
Jack Yu1d1022e2017-11-20 11:14:23 -080050 frameworks/base/telephony/java/android/telephony/data/DataProfile.aidl \
Jeff Davidson35cda392017-02-27 09:46:00 -080051 frameworks/base/telephony/java/android/telephony/euicc/DownloadableSubscription.aidl \
Jeff Davidson91c3d072017-04-12 12:17:11 -070052 frameworks/base/telephony/java/android/telephony/euicc/EuiccInfo.aidl \
Bart Searsa8cc0582015-05-07 03:23:20 +000053 frameworks/base/location/java/android/location/Location.aidl \
54 frameworks/base/location/java/android/location/Address.aidl \
55 frameworks/base/location/java/android/location/Criteria.aidl \
56 frameworks/base/media/java/android/media/MediaMetadata.aidl \
57 frameworks/base/media/java/android/media/MediaDescription.aidl \
58 frameworks/base/media/java/android/media/Rating.aidl \
59 frameworks/base/media/java/android/media/AudioAttributes.aidl \
60 frameworks/base/media/java/android/media/AudioFocusInfo.aidl \
61 frameworks/base/media/java/android/media/session/PlaybackState.aidl \
62 frameworks/base/media/java/android/media/session/MediaSession.aidl \
63 frameworks/base/media/java/android/media/tv/TvInputInfo.aidl \
64 frameworks/base/media/java/android/media/tv/TvTrackInfo.aidl \
65 frameworks/base/media/java/android/media/browse/MediaBrowser.aidl \
66 frameworks/base/wifi/java/android/net/wifi/ScanSettings.aidl \
Etan Cohen04133272016-10-26 11:22:06 -070067 frameworks/base/wifi/java/android/net/wifi/aware/ConfigRequest.aidl \
68 frameworks/base/wifi/java/android/net/wifi/aware/PublishConfig.aidl \
69 frameworks/base/wifi/java/android/net/wifi/aware/SubscribeConfig.aidl \
Bart Searsa8cc0582015-05-07 03:23:20 +000070 frameworks/base/wifi/java/android/net/wifi/p2p/WifiP2pInfo.aidl \
71 frameworks/base/wifi/java/android/net/wifi/p2p/WifiP2pDeviceList.aidl \
72 frameworks/base/wifi/java/android/net/wifi/p2p/WifiP2pConfig.aidl \
73 frameworks/base/wifi/java/android/net/wifi/p2p/WifiP2pDevice.aidl \
74 frameworks/base/wifi/java/android/net/wifi/p2p/WifiP2pGroup.aidl \
75 frameworks/base/wifi/java/android/net/wifi/p2p/nsd/WifiP2pServiceRequest.aidl \
76 frameworks/base/wifi/java/android/net/wifi/p2p/nsd/WifiP2pServiceInfo.aidl \
77 frameworks/base/wifi/java/android/net/wifi/WpsInfo.aidl \
78 frameworks/base/wifi/java/android/net/wifi/ScanResult.aidl \
Vinit Deshpandea772f0c2016-01-27 19:05:24 -080079 frameworks/base/wifi/java/android/net/wifi/PasspointManagementObjectDefinition.aidl \
Bart Searsa8cc0582015-05-07 03:23:20 +000080 frameworks/base/wifi/java/android/net/wifi/WifiEnterpriseConfig.aidl \
81 frameworks/base/wifi/java/android/net/wifi/WifiConfiguration.aidl \
82 frameworks/base/wifi/java/android/net/wifi/WifiInfo.aidl \
83 frameworks/base/graphics/java/android/graphics/Region.aidl \
84 frameworks/base/graphics/java/android/graphics/Bitmap.aidl \
85 frameworks/base/graphics/java/android/graphics/Point.aidl \
86 frameworks/base/graphics/java/android/graphics/PointF.aidl \
87 frameworks/base/graphics/java/android/graphics/RectF.aidl \
88 frameworks/base/graphics/java/android/graphics/Rect.aidl \
Philip P. Moltmannbb9f6862015-12-01 14:44:24 -080089 frameworks/base/graphics/java/android/graphics/drawable/Icon.aidl \
Bart Searsa8cc0582015-05-07 03:23:20 +000090 frameworks/base/core/java/android/accounts/AuthenticatorDescription.aidl \
91 frameworks/base/core/java/android/accounts/Account.aidl \
Michal Karpinskif77ee4f2016-10-12 16:40:06 +010092 frameworks/base/core/java/android/app/admin/ConnectEvent.aidl \
93 frameworks/base/core/java/android/app/admin/DnsEvent.aidl \
94 frameworks/base/core/java/android/app/admin/NetworkEvent.aidl \
Rubin Xud86d58c2015-05-05 16:57:37 +010095 frameworks/base/core/java/android/app/admin/SystemUpdatePolicy.aidl \
Andrew Scull5f9e6f32016-08-02 14:22:17 +010096 frameworks/base/core/java/android/app/admin/PasswordMetrics.aidl \
Bart Searsa8cc0582015-05-07 03:23:20 +000097 frameworks/base/core/java/android/print/PrintDocumentInfo.aidl \
98 frameworks/base/core/java/android/print/PageRange.aidl \
99 frameworks/base/core/java/android/print/PrintAttributes.aidl \
100 frameworks/base/core/java/android/print/PrinterCapabilitiesInfo.aidl \
101 frameworks/base/core/java/android/print/PrinterId.aidl \
102 frameworks/base/core/java/android/print/PrintJobInfo.aidl \
103 frameworks/base/core/java/android/print/PrinterInfo.aidl \
104 frameworks/base/core/java/android/print/PrintJobId.aidl \
Philip P. Moltmann9dcb86a2016-03-14 14:31:12 -0700105 frameworks/base/core/java/android/printservice/recommendation/RecommendationInfo.aidl \
Tomasz Wasilczyk8cfb0e82017-07-12 13:59:20 -0700106 frameworks/base/core/java/android/hardware/radio/ProgramSelector.aidl \
Tomasz Wasilczyk347192e2017-04-04 11:13:44 -0700107 frameworks/base/core/java/android/hardware/radio/RadioManager.aidl \
Tomasz Wasilczykc9a1ac72017-05-17 21:29:28 -0700108 frameworks/base/core/java/android/hardware/radio/RadioMetadata.aidl \
Bart Searsa8cc0582015-05-07 03:23:20 +0000109 frameworks/base/core/java/android/hardware/usb/UsbDevice.aidl \
110 frameworks/base/core/java/android/hardware/usb/UsbInterface.aidl \
111 frameworks/base/core/java/android/hardware/usb/UsbEndpoint.aidl \
112 frameworks/base/core/java/android/hardware/usb/UsbAccessory.aidl \
113 frameworks/base/core/java/android/os/Messenger.aidl \
114 frameworks/base/core/java/android/os/PatternMatcher.aidl \
115 frameworks/base/core/java/android/os/Message.aidl \
116 frameworks/base/core/java/android/os/UserHandle.aidl \
117 frameworks/base/core/java/android/os/ParcelUuid.aidl \
118 frameworks/base/core/java/android/os/ParcelFileDescriptor.aidl \
119 frameworks/base/core/java/android/os/ResultReceiver.aidl \
Bart Searsa8cc0582015-05-07 03:23:20 +0000120 frameworks/base/core/java/android/os/WorkSource.aidl \
121 frameworks/base/core/java/android/os/DropBoxManager.aidl \
122 frameworks/base/core/java/android/os/Bundle.aidl \
Sudheer Shankacc6418f2016-10-13 12:03:44 -0700123 frameworks/base/core/java/android/os/Debug.aidl \
John Reckdea6a022017-05-25 17:09:33 -0700124 frameworks/base/core/java/android/os/SharedMemory.aidl \
Sudheer Shankafc46e9b2016-10-21 17:55:27 -0700125 frameworks/base/core/java/android/os/StrictMode.aidl \
Bart Searsa8cc0582015-05-07 03:23:20 +0000126 frameworks/base/core/java/android/accessibilityservice/AccessibilityServiceInfo.aidl \
127 frameworks/base/core/java/android/net/Network.aidl \
128 frameworks/base/core/java/android/net/RouteInfo.aidl \
129 frameworks/base/core/java/android/net/NetworkInfo.aidl \
130 frameworks/base/core/java/android/net/IpPrefix.aidl \
131 frameworks/base/core/java/android/net/NetworkCapabilities.aidl \
132 frameworks/base/core/java/android/net/DhcpInfo.aidl \
133 frameworks/base/core/java/android/net/ProxyInfo.aidl \
134 frameworks/base/core/java/android/net/LinkProperties.aidl \
135 frameworks/base/core/java/android/net/Uri.aidl \
136 frameworks/base/core/java/android/net/NetworkRequest.aidl \
137 frameworks/base/core/java/android/net/LinkAddress.aidl \
Svet Ganov53a441c2016-04-19 19:38:00 -0700138 frameworks/base/core/java/android/util/MemoryIntArray.aidl \
P.Y. Laligandb3b9eb32015-05-11 15:02:07 -0700139 frameworks/base/core/java/android/view/Display.aidl \
Bart Searsa8cc0582015-05-07 03:23:20 +0000140 frameworks/base/core/java/android/view/InputDevice.aidl \
141 frameworks/base/core/java/android/view/InputEvent.aidl \
Eino-Ville Talvala5d2d7782015-12-17 16:50:50 -0800142 frameworks/native/aidl/gui/android/view/Surface.aidl \
P.Y. Laligandb3b9eb32015-05-11 15:02:07 -0700143 frameworks/base/core/java/android/view/WindowContentFrameStats.aidl \
Bart Searsa8cc0582015-05-07 03:23:20 +0000144 frameworks/base/core/java/android/view/inputmethod/InputMethodSubtype.aidl \
145 frameworks/base/core/java/android/view/inputmethod/CursorAnchorInfo.aidl \
146 frameworks/base/core/java/android/view/inputmethod/CompletionInfo.aidl \
147 frameworks/base/core/java/android/view/inputmethod/ExtractedText.aidl \
148 frameworks/base/core/java/android/view/inputmethod/EditorInfo.aidl \
149 frameworks/base/core/java/android/view/inputmethod/InputMethodInfo.aidl \
150 frameworks/base/core/java/android/view/inputmethod/CorrectionInfo.aidl \
151 frameworks/base/core/java/android/view/inputmethod/InputBinding.aidl \
152 frameworks/base/core/java/android/view/inputmethod/ExtractedTextRequest.aidl \
153 frameworks/base/core/java/android/view/DragEvent.aidl \
154 frameworks/base/core/java/android/view/KeyEvent.aidl \
155 frameworks/base/core/java/android/view/WindowManager.aidl \
156 frameworks/base/core/java/android/view/WindowAnimationFrameStats.aidl \
157 frameworks/base/core/java/android/view/MotionEvent.aidl \
158 frameworks/base/core/java/android/view/accessibility/AccessibilityNodeInfo.aidl \
159 frameworks/base/core/java/android/view/accessibility/AccessibilityRecord.aidl \
160 frameworks/base/core/java/android/view/accessibility/AccessibilityWindowInfo.aidl \
161 frameworks/base/core/java/android/view/accessibility/AccessibilityEvent.aidl \
162 frameworks/base/core/java/android/view/textservice/SpellCheckerSubtype.aidl \
163 frameworks/base/core/java/android/view/textservice/TextInfo.aidl \
164 frameworks/base/core/java/android/view/textservice/SpellCheckerInfo.aidl \
165 frameworks/base/core/java/android/view/textservice/SentenceSuggestionsInfo.aidl \
166 frameworks/base/core/java/android/view/textservice/SuggestionsInfo.aidl \
167 frameworks/base/core/java/android/service/carrier/CarrierIdentifier.aidl \
168 frameworks/base/core/java/android/service/carrier/MessagePdu.aidl \
Jeff Davidson91c3d072017-04-12 12:17:11 -0700169 frameworks/base/core/java/android/service/euicc/GetDefaultDownloadableSubscriptionListResult.aidl \
Jeff Davidson35cda392017-02-27 09:46:00 -0800170 frameworks/base/core/java/android/service/euicc/GetDownloadableSubscriptionMetadataResult.aidl \
Jeff Davidsond02731f2017-04-09 14:31:09 -0700171 frameworks/base/core/java/android/service/euicc/GetEuiccProfileInfoListResult.aidl \
Julia Reynolds22f02b32016-12-01 15:05:13 -0500172 frameworks/base/core/java/android/service/notification/Adjustment.aidl \
173 frameworks/base/core/java/android/service/notification/Condition.aidl \
174 frameworks/base/core/java/android/service/notification/SnoozeCriterion.aidl \
Bart Searsa8cc0582015-05-07 03:23:20 +0000175 frameworks/base/core/java/android/service/notification/StatusBarNotification.aidl \
176 frameworks/base/core/java/android/service/chooser/ChooserTarget.aidl \
Kang Libbced1c2017-04-05 12:30:55 -0700177 frameworks/base/core/java/android/service/resolver/ResolverTarget.aidl \
Bart Searsa8cc0582015-05-07 03:23:20 +0000178 frameworks/base/core/java/android/speech/tts/Voice.aidl \
Daniel Nishicf9d19e2017-01-23 14:33:42 -0800179 frameworks/base/core/java/android/app/usage/CacheQuotaHint.aidl \
Jeff Sharkey8dedad32017-01-09 18:21:21 -0700180 frameworks/base/core/java/android/app/usage/ExternalStorageStats.aidl \
Jeff Sharkeye8cece92017-01-04 11:33:33 -0700181 frameworks/base/core/java/android/app/usage/StorageStats.aidl \
Bart Searsa8cc0582015-05-07 03:23:20 +0000182 frameworks/base/core/java/android/app/usage/UsageEvents.aidl \
Bart Searsa8cc0582015-05-07 03:23:20 +0000183 frameworks/base/core/java/android/app/Notification.aidl \
184 frameworks/base/core/java/android/app/NotificationManager.aidl \
185 frameworks/base/core/java/android/app/WallpaperInfo.aidl \
186 frameworks/base/core/java/android/app/AppOpsManager.aidl \
187 frameworks/base/core/java/android/app/ActivityManager.aidl \
188 frameworks/base/core/java/android/app/PendingIntent.aidl \
189 frameworks/base/core/java/android/app/AlarmManager.aidl \
190 frameworks/base/core/java/android/app/SearchableInfo.aidl \
191 frameworks/base/core/java/android/app/VoiceInteractor.aidl \
Dianne Hackborn69c6adc2015-06-02 10:52:59 -0700192 frameworks/base/core/java/android/app/assist/AssistContent.aidl \
193 frameworks/base/core/java/android/app/assist/AssistStructure.aidl \
Bart Searsa8cc0582015-05-07 03:23:20 +0000194 frameworks/base/core/java/android/app/job/JobParameters.aidl \
195 frameworks/base/core/java/android/app/job/JobInfo.aidl \
196 frameworks/base/core/java/android/appwidget/AppWidgetProviderInfo.aidl \
197 frameworks/base/core/java/android/content/ClipDescription.aidl \
198 frameworks/base/core/java/android/content/IntentFilter.aidl \
199 frameworks/base/core/java/android/content/Intent.aidl \
200 frameworks/base/core/java/android/content/res/Configuration.aidl \
201 frameworks/base/core/java/android/content/res/ObbInfo.aidl \
202 frameworks/base/core/java/android/content/RestrictionEntry.aidl \
203 frameworks/base/core/java/android/content/ClipData.aidl \
204 frameworks/base/core/java/android/content/SyncAdapterType.aidl \
205 frameworks/base/core/java/android/content/SyncRequest.aidl \
206 frameworks/base/core/java/android/content/PeriodicSync.aidl \
207 frameworks/base/core/java/android/content/SyncResult.aidl \
208 frameworks/base/core/java/android/content/pm/FeatureInfo.aidl \
209 frameworks/base/core/java/android/content/pm/InstrumentationInfo.aidl \
210 frameworks/base/core/java/android/content/pm/PackageInstaller.aidl \
211 frameworks/base/core/java/android/content/pm/ServiceInfo.aidl \
212 frameworks/base/core/java/android/content/pm/Signature.aidl \
213 frameworks/base/core/java/android/content/pm/ApplicationInfo.aidl \
214 frameworks/base/core/java/android/content/pm/PermissionInfo.aidl \
215 frameworks/base/core/java/android/content/pm/ActivityInfo.aidl \
Sudheer Shankafc46e9b2016-10-21 17:55:27 -0700216 frameworks/base/core/java/android/content/pm/ConfigurationInfo.aidl \
Bart Searsa8cc0582015-05-07 03:23:20 +0000217 frameworks/base/core/java/android/content/pm/PackageInfo.aidl \
218 frameworks/base/core/java/android/content/pm/ResolveInfo.aidl \
219 frameworks/base/core/java/android/content/pm/ProviderInfo.aidl \
220 frameworks/base/core/java/android/content/pm/PackageStats.aidl \
221 frameworks/base/core/java/android/content/pm/PermissionGroupInfo.aidl \
Makoto Onuki6f7362d92016-03-04 13:39:41 -0800222 frameworks/base/core/java/android/content/pm/ShortcutInfo.aidl \
Bart Searsa8cc0582015-05-07 03:23:20 +0000223 frameworks/base/core/java/android/content/pm/LabeledIntent.aidl \
224 frameworks/base/core/java/android/content/ComponentName.aidl \
225 frameworks/base/core/java/android/content/SyncStats.aidl \
226 frameworks/base/core/java/android/content/ContentValues.aidl \
227 frameworks/base/core/java/android/content/SyncInfo.aidl \
228 frameworks/base/core/java/android/content/IntentSender.aidl \
229 frameworks/base/core/java/android/widget/RemoteViews.aidl \
230 frameworks/base/core/java/android/text/style/SuggestionSpan.aidl \
231 frameworks/base/core/java/android/nfc/Tag.aidl \
232 frameworks/base/core/java/android/nfc/NdefRecord.aidl \
233 frameworks/base/core/java/android/nfc/NdefMessage.aidl \
Bart Searsa8cc0582015-05-07 03:23:20 +0000234 frameworks/base/core/java/android/database/CursorWindow.aidl \
Jason Monkbbadff82015-11-06 15:47:26 -0500235 frameworks/base/core/java/android/service/quicksettings/Tile.aidl \
Samuel Tan239951a2016-01-05 17:29:43 -0800236 frameworks/native/aidl/binder/android/os/PersistableBundle.aidl \
Jakub Pawlowski3b38eaa2017-08-09 00:45:34 -0700237 system/bt/binder/android/bluetooth/BluetoothHealthAppConfiguration.aidl \
238 system/bt/binder/android/bluetooth/le/AdvertiseSettings.aidl \
239 system/bt/binder/android/bluetooth/le/ScanSettings.aidl \
240 system/bt/binder/android/bluetooth/le/AdvertiseData.aidl \
241 system/bt/binder/android/bluetooth/le/ScanFilter.aidl \
242 system/bt/binder/android/bluetooth/le/ScanResult.aidl \
243 system/bt/binder/android/bluetooth/BluetoothDevice.aidl \
Robin Lee10606942016-03-30 18:52:40 +0100244 system/netd/server/binder/android/net/UidRange.aidl \
Robert Greenwalt37409c52016-06-02 13:43:27 -0700245 frameworks/base/telephony/java/android/telephony/PcoData.aidl \
Bart Searsa8cc0582015-05-07 03:23:20 +0000246
247gen := $(TARGET_OUT_COMMON_INTERMEDIATES)/framework.aidl
248$(gen): PRIVATE_SRC_FILES := $(aidl_files)
249ALL_SDK_FILES += $(gen)
250$(gen): $(aidl_files) | $(AIDL)
251 @echo Aidl Preprocess: $@
252 $(hide) $(AIDL) --preprocess $@ $(PRIVATE_SRC_FILES)
253
254# the documentation
255# ============================================================
256
257# TODO: deal with com/google/android/googleapps
258packages_to_document := \
Colin Cross5f4dcf62017-11-16 00:15:28 -0800259 android \
260 javax/microedition/khronos \
261 org/apache/http/conn \
262 org/apache/http/params \
Bart Searsa8cc0582015-05-07 03:23:20 +0000263
264# include definition of libcore_to_document
265include libcore/Docs.mk
266
Bart Searsa8cc0582015-05-07 03:23:20 +0000267non_base_dirs := \
Colin Cross5f4dcf62017-11-16 00:15:28 -0800268 ../opt/telephony/src/java/android/telephony \
269 ../opt/telephony/src/java/android/telephony/gsm \
270 ../opt/net/voip/src/java/android/net/rtp \
271 ../opt/net/voip/src/java/android/net/sip \
Bart Searsa8cc0582015-05-07 03:23:20 +0000272
Paul Duffinc08090f2017-06-29 14:58:43 +0100273framework_base_android_test_mock_src_files := \
Paul Duffin69516f42017-11-15 11:39:14 +0000274 $(call all-java-files-under, test-mock/src/android/test/mock)
Paul Duffinc08090f2017-06-29 14:58:43 +0100275
276framework_base_android_test_runner_excluding_mock_src_files := \
Colin Cross5f4dcf62017-11-16 00:15:28 -0800277 $(filter-out $(framework_base_android_test_mock_src_files), $(call all-java-files-under, test-runner/src))
Paul Duffinc08090f2017-06-29 14:58:43 +0100278
Colin Cross5f4dcf62017-11-16 00:15:28 -0800279# Find all files in specific directories (relative to frameworks/base)
280# to document and check apis
281files_to_check_apis := \
282 $(call find-other-java-files, \
283 legacy-test/src \
284 $(non_base_dirs) \
285 )
Bart Searsa8cc0582015-05-07 03:23:20 +0000286
Colin Cross5f4dcf62017-11-16 00:15:28 -0800287# Find all files in specific packages that were used to compile
288# framework.jar to document and check apis
289files_to_check_apis += \
290 $(addprefix ../../,\
291 $(filter \
292 $(foreach dir,$(FRAMEWORKS_BASE_JAVA_SRC_DIRS),\
293 $(foreach package,$(packages_to_document),\
294 $(dir)/$(package)/%.java)),\
295 $(SOONG_FRAMEWORK_SRCS)))
296
297# Find all generated files that were used to compile framework.jar
Colin Cross0c760952017-12-04 13:45:19 -0800298files_to_check_apis_generated := \
299 $(filter $(OUT_DIR)/%,\
300 $(SOONG_FRAMEWORK_SRCS))
George Mountf6be9932015-12-03 07:39:55 -0800301
Bart Searsa8cc0582015-05-07 03:23:20 +0000302# These are relative to frameworks/base
303# FRAMEWORKS_BASE_SUBDIRS comes from build/core/pathmap.mk
Colin Cross5f4dcf62017-11-16 00:15:28 -0800304files_to_document := \
305 $(files_to_check_apis) \
306 $(call find-other-java-files,\
307 $(addprefix ../../, $(FRAMEWORKS_DATA_BINDING_JAVA_SRC_DIRS)) \
308 test-runner/src)
George Mountf6be9932015-12-03 07:39:55 -0800309
Bart Searsa8cc0582015-05-07 03:23:20 +0000310# These are relative to frameworks/base
311html_dirs := \
312 $(FRAMEWORKS_BASE_SUBDIRS) \
Colin Cross5f4dcf62017-11-16 00:15:28 -0800313 $(non_base_dirs) \
Bart Searsa8cc0582015-05-07 03:23:20 +0000314
315# Common sources for doc check and api check
316common_src_files := \
317 $(call find-other-html-files, $(html_dirs)) \
Colin Cross5f4dcf62017-11-16 00:15:28 -0800318 $(addprefix ../../, $(libcore_to_document)) \
Bart Searsa8cc0582015-05-07 03:23:20 +0000319
320# These are relative to frameworks/base
321framework_docs_LOCAL_SRC_FILES := \
Colin Cross5f4dcf62017-11-16 00:15:28 -0800322 $(files_to_document) \
323 $(common_src_files) \
Bart Searsa8cc0582015-05-07 03:23:20 +0000324
325# These are relative to frameworks/base
326framework_docs_LOCAL_API_CHECK_SRC_FILES := \
Colin Cross5f4dcf62017-11-16 00:15:28 -0800327 $(framework_base_android_test_mock_src_files) \
328 $(framework_base_android_test_runner_excluding_mock_src_files) \
329 $(files_to_check_apis) \
330 $(common_src_files) \
Bart Searsa8cc0582015-05-07 03:23:20 +0000331
332# This is used by ide.mk as the list of source files that are
333# always included.
334INTERNAL_SDK_SOURCE_DIRS := $(addprefix $(LOCAL_PATH)/,$(dirs_to_document))
335
336framework_docs_LOCAL_DROIDDOC_SOURCE_PATH := \
337 $(FRAMEWORKS_BASE_JAVA_SRC_DIRS)
338
Colin Cross5f4dcf62017-11-16 00:15:28 -0800339framework_docs_LOCAL_SRCJARS := $(SOONG_FRAMEWORK_SRCJARS)
340
Colin Cross0c760952017-12-04 13:45:19 -0800341framework_docs_LOCAL_GENERATED_SOURCES := \
342 $(libcore_to_document_generated) \
343 $(files_to_check_apis_generated) \
Bart Searsa8cc0582015-05-07 03:23:20 +0000344
345framework_docs_LOCAL_API_CHECK_JAVA_LIBRARIES := \
Piotr Jastrzebskicfa292e2015-02-17 16:58:52 +0000346 core-oj \
Bart Searsa8cc0582015-05-07 03:23:20 +0000347 core-libart \
348 conscrypt \
349 bouncycastle \
350 okhttp \
351 ext \
Rayhaan Jaufeerally2e47a6e2015-08-03 13:54:28 +0100352 icu4j \
Bart Searsa8cc0582015-05-07 03:23:20 +0000353 framework \
Paul Duffinc08090f2017-06-29 14:58:43 +0100354 voip-common \
355 android.test.mock \
Bart Searsa8cc0582015-05-07 03:23:20 +0000356
Alan Viverette2d362a52017-04-05 10:21:58 -0400357# Platform docs can refer to Support Library APIs, but we don't actually build
358# them as part of the docs target, so we need to include them on the classpath.
Bart Searsa8cc0582015-05-07 03:23:20 +0000359framework_docs_LOCAL_JAVA_LIBRARIES := \
360 $(framework_docs_LOCAL_API_CHECK_JAVA_LIBRARIES) \
361 $(FRAMEWORKS_SUPPORT_JAVA_LIBRARIES)
362
363framework_docs_LOCAL_MODULE_CLASS := JAVA_LIBRARIES
364framework_docs_LOCAL_DROIDDOC_HTML_DIR := docs/html
365# The since flag (-since N.xml API_LEVEL) is used to add API Level information
366# to the reference documentation. Must be in order of oldest to newest.
367#
368# Conscrypt (com.android.org.conscrypt) is an implementation detail and should
369# not be referenced in the documentation.
370framework_docs_LOCAL_DROIDDOC_OPTIONS := \
Jeff Sharkey0f3f60b2017-04-24 18:06:20 -0600371 -android \
Bart Searsa8cc0582015-05-07 03:23:20 +0000372 -knowntags ./frameworks/base/docs/knowntags.txt \
Narayan Kamath2c4f2842015-07-27 14:02:11 +0100373 -knowntags ./libcore/known_oj_tags.txt \
Jeff Sharkeybfc4fcd2017-06-05 17:38:17 -0600374 -manifest ./frameworks/base/core/res/AndroidManifest.xml \
Jeff Sharkeybc4f48b2017-12-06 21:02:11 -0700375 -hidePackage com.android.okhttp \
Bart Searsa8cc0582015-05-07 03:23:20 +0000376 -hidePackage com.android.org.conscrypt \
Jeff Sharkeybc4f48b2017-12-06 21:02:11 -0700377 -hidePackage com.android.server \
Bart Searsa8cc0582015-05-07 03:23:20 +0000378 -since $(SRC_API_DIR)/1.xml 1 \
379 -since $(SRC_API_DIR)/2.xml 2 \
380 -since $(SRC_API_DIR)/3.xml 3 \
381 -since $(SRC_API_DIR)/4.xml 4 \
382 -since $(SRC_API_DIR)/5.xml 5 \
383 -since $(SRC_API_DIR)/6.xml 6 \
384 -since $(SRC_API_DIR)/7.xml 7 \
385 -since $(SRC_API_DIR)/8.xml 8 \
386 -since $(SRC_API_DIR)/9.xml 9 \
387 -since $(SRC_API_DIR)/10.xml 10 \
388 -since $(SRC_API_DIR)/11.xml 11 \
389 -since $(SRC_API_DIR)/12.xml 12 \
390 -since $(SRC_API_DIR)/13.xml 13 \
391 -since $(SRC_API_DIR)/14.txt 14 \
392 -since $(SRC_API_DIR)/15.txt 15 \
393 -since $(SRC_API_DIR)/16.txt 16 \
394 -since $(SRC_API_DIR)/17.txt 17 \
395 -since $(SRC_API_DIR)/18.txt 18 \
396 -since $(SRC_API_DIR)/19.txt 19 \
397 -since $(SRC_API_DIR)/20.txt 20 \
398 -since $(SRC_API_DIR)/21.txt 21 \
399 -since $(SRC_API_DIR)/22.txt 22 \
Joe Fernandez1827e322015-08-12 19:45:22 -0700400 -since $(SRC_API_DIR)/23.txt 23 \
Dirk Dougherty5f60f7c2016-06-14 16:26:28 -0700401 -since $(SRC_API_DIR)/24.txt 24 \
Dirk Dougherty3376f582016-10-14 10:27:08 -0700402 -since $(SRC_API_DIR)/25.txt 25 \
Dirk Doughertyfdad0ba2017-06-09 14:43:32 -0700403 -since $(SRC_API_DIR)/26.txt 26 \
Andrew Solovaya6019b22017-10-06 14:27:20 -0700404 -since $(SRC_API_DIR)/27.txt 27 \
Jeff Sharkey2337aec2017-12-06 21:12:23 -0700405 -werror -lerror -hide 111 -hide 113 -hide 125 -hide 126 -hide 127 -hide 128 \
Jeff Sharkey0f3f60b2017-04-24 18:06:20 -0600406 -overview $(LOCAL_PATH)/core/java/overview.html \
Bart Searsa8cc0582015-05-07 03:23:20 +0000407
408framework_docs_LOCAL_API_CHECK_ADDITIONAL_JAVA_DIR:= \
409 $(call intermediates-dir-for,JAVA_LIBRARIES,framework,,COMMON)
410
411framework_docs_LOCAL_ADDITIONAL_JAVA_DIR:= \
Alan Viverette2d362a52017-04-05 10:21:58 -0400412 $(framework_docs_LOCAL_API_CHECK_ADDITIONAL_JAVA_DIR)
Bart Searsa8cc0582015-05-07 03:23:20 +0000413
414framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES := \
Narayan Kamathc21739a2015-07-14 13:39:23 +0100415 frameworks/base/docs/knowntags.txt \
Colin Cross72d359f2017-10-27 10:46:53 -0700416 $(libcore_to_document_generated)
Bart Searsa8cc0582015-05-07 03:23:20 +0000417
418samples_dir := development/samples/browseable
419
420# Whitelist of valid groups, used for default TOC grouping. Each sample must
421# belong to one (and only one) group. Assign samples to groups by setting
422# a sample.group var to one of these groups in the sample's _index.jd.
423sample_groups := -samplegroup Admin \
424 -samplegroup Background \
425 -samplegroup Connectivity \
426 -samplegroup Content \
427 -samplegroup Input \
428 -samplegroup Media \
429 -samplegroup Notification \
430 -samplegroup RenderScript \
431 -samplegroup Security \
432 -samplegroup Sensors \
Trevor Johns4cbe3592015-05-27 14:50:51 -0700433 -samplegroup System \
Bart Searsa8cc0582015-05-07 03:23:20 +0000434 -samplegroup Testing \
435 -samplegroup UI \
436 -samplegroup Views \
437 -samplegroup Wearable
438
439## SDK version identifiers used in the published docs
440 # major[.minor] version for current SDK. (full releases only)
smain@google.comdde8deb2016-08-29 18:36:50 -0700441framework_docs_SDK_VERSION:=7.0
Bart Searsa8cc0582015-05-07 03:23:20 +0000442 # release version (ie "Release x") (full releases only)
443framework_docs_SDK_REL_ID:=1
444
445framework_docs_LOCAL_DROIDDOC_OPTIONS += \
Billy Lamberta75dbc8f2017-03-03 13:09:15 -0800446 -hdf dac true \
Scott Mainf8cdfc82017-03-21 13:43:31 -0700447 -hdf sdk.codename O \
448 -hdf sdk.preview.version 1 \
Bart Searsa8cc0582015-05-07 03:23:20 +0000449 -hdf sdk.version $(framework_docs_SDK_VERSION) \
450 -hdf sdk.rel.id $(framework_docs_SDK_REL_ID) \
Scott Mainf8cdfc82017-03-21 13:43:31 -0700451 -hdf sdk.preview 0 \
452 -resourcesdir $(LOCAL_PATH)/docs/html/reference/images/ \
453 -resourcesoutdir reference/android/images/
Bart Searsa8cc0582015-05-07 03:23:20 +0000454
Alan Viverette2d362a52017-04-05 10:21:58 -0400455# Federate Support Library references against local API file.
456framework_docs_LOCAL_DROIDDOC_OPTIONS += \
457 -federate SupportLib https://developer.android.com \
458 -federationapi SupportLib prebuilts/sdk/current/support-api.txt
459
Bart Searsa8cc0582015-05-07 03:23:20 +0000460# ==== the api stubs and current.xml ===========================
461include $(CLEAR_VARS)
462
463LOCAL_SRC_FILES:=$(framework_docs_LOCAL_API_CHECK_SRC_FILES)
Colin Cross0c760952017-12-04 13:45:19 -0800464LOCAL_GENERATED_SOURCES:=$(framework_docs_LOCAL_GENERATED_SOURCES)
Colin Cross5f4dcf62017-11-16 00:15:28 -0800465LOCAL_SRCJARS:=$(framework_docs_LOCAL_SRCJARS)
Bart Searsa8cc0582015-05-07 03:23:20 +0000466LOCAL_JAVA_LIBRARIES:=$(framework_docs_LOCAL_API_CHECK_JAVA_LIBRARIES)
467LOCAL_MODULE_CLASS:=$(framework_docs_LOCAL_MODULE_CLASS)
468LOCAL_DROIDDOC_SOURCE_PATH:=$(framework_docs_LOCAL_DROIDDOC_SOURCE_PATH)
469LOCAL_DROIDDOC_HTML_DIR:=$(framework_docs_LOCAL_DROIDDOC_HTML_DIR)
470LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_API_CHECK_ADDITIONAL_JAVA_DIR)
471LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES)
472
473LOCAL_MODULE := api-stubs
474
Ying Wang0f92a2e2015-07-16 14:20:22 -0700475LOCAL_DROIDDOC_STUB_OUT_DIR := $(TARGET_OUT_COMMON_INTERMEDIATES)/JAVA_LIBRARIES/android_stubs_current_intermediates/src
476
Bart Searsa8cc0582015-05-07 03:23:20 +0000477LOCAL_DROIDDOC_OPTIONS:=\
478 $(framework_docs_LOCAL_DROIDDOC_OPTIONS) \
smain@google.com534bfe12016-09-01 19:52:17 -0700479 -referenceonly \
Bart Searsa8cc0582015-05-07 03:23:20 +0000480 -api $(INTERNAL_PLATFORM_API_FILE) \
481 -removedApi $(INTERNAL_PLATFORM_REMOVED_API_FILE) \
482 -nodocs
483
Scott Main15b85172017-02-21 14:30:58 -0800484LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=external/doclava/res/assets/templates-sdk
Bart Searsa8cc0582015-05-07 03:23:20 +0000485
486LOCAL_UNINSTALLABLE_MODULE := true
487
488include $(BUILD_DROIDDOC)
489
490# $(gen), i.e. framework.aidl, is also needed while building against the current stub.
Colin Cross5f4dcf62017-11-16 00:15:28 -0800491$(full_target): $(gen)
Bart Searsa8cc0582015-05-07 03:23:20 +0000492$(INTERNAL_PLATFORM_API_FILE): $(full_target)
493$(call dist-for-goals,sdk,$(INTERNAL_PLATFORM_API_FILE))
494
495# ==== the system api stubs ===================================
496include $(CLEAR_VARS)
497
498LOCAL_SRC_FILES:=$(framework_docs_LOCAL_API_CHECK_SRC_FILES)
Colin Cross0c760952017-12-04 13:45:19 -0800499LOCAL_GENERATED_SOURCES:=$(framework_docs_LOCAL_GENERATED_SOURCES)
Colin Cross5f4dcf62017-11-16 00:15:28 -0800500LOCAL_SRCJARS:=$(framework_docs_LOCAL_SRCJARS)
Bart Searsa8cc0582015-05-07 03:23:20 +0000501LOCAL_JAVA_LIBRARIES:=$(framework_docs_LOCAL_API_CHECK_JAVA_LIBRARIES)
502LOCAL_MODULE_CLASS:=$(framework_docs_LOCAL_MODULE_CLASS)
503LOCAL_DROIDDOC_SOURCE_PATH:=$(framework_docs_LOCAL_DROIDDOC_SOURCE_PATH)
504LOCAL_DROIDDOC_HTML_DIR:=$(framework_docs_LOCAL_DROIDDOC_HTML_DIR)
505LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_API_CHECK_ADDITIONAL_JAVA_DIR)
506LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES)
507
508LOCAL_MODULE := system-api-stubs
509
Ying Wang0f92a2e2015-07-16 14:20:22 -0700510LOCAL_DROIDDOC_STUB_OUT_DIR := $(TARGET_OUT_COMMON_INTERMEDIATES)/JAVA_LIBRARIES/android_system_stubs_current_intermediates/src
511
Bart Searsa8cc0582015-05-07 03:23:20 +0000512LOCAL_DROIDDOC_OPTIONS:=\
513 $(framework_docs_LOCAL_DROIDDOC_OPTIONS) \
smain@google.com534bfe12016-09-01 19:52:17 -0700514 -referenceonly \
Bart Searsa8cc0582015-05-07 03:23:20 +0000515 -showAnnotation android.annotation.SystemApi \
516 -api $(INTERNAL_PLATFORM_SYSTEM_API_FILE) \
517 -removedApi $(INTERNAL_PLATFORM_SYSTEM_REMOVED_API_FILE) \
Jeff Sharkey05461c02017-05-09 19:01:09 -0600518 -exactApi $(INTERNAL_PLATFORM_SYSTEM_EXACT_API_FILE) \
Bart Searsa8cc0582015-05-07 03:23:20 +0000519 -nodocs
520
Scott Main15b85172017-02-21 14:30:58 -0800521LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=external/doclava/res/assets/templates-sdk
Bart Searsa8cc0582015-05-07 03:23:20 +0000522
523LOCAL_UNINSTALLABLE_MODULE := true
524
525include $(BUILD_DROIDDOC)
526
527# $(gen), i.e. framework.aidl, is also needed while building against the current stub.
Colin Cross5f4dcf62017-11-16 00:15:28 -0800528$(full_target): $(gen)
Bart Searsa8cc0582015-05-07 03:23:20 +0000529$(INTERNAL_PLATFORM_SYSTEM_API_FILE): $(full_target)
530$(call dist-for-goals,sdk,$(INTERNAL_PLATFORM_SYSTEM_API_FILE))
531
Michael Wrightb2b2c0e2015-11-06 15:21:13 +0000532# ==== the test api stubs ===================================
533include $(CLEAR_VARS)
534
535LOCAL_SRC_FILES:=$(framework_docs_LOCAL_API_CHECK_SRC_FILES)
Colin Cross0c760952017-12-04 13:45:19 -0800536LOCAL_GENERATED_SOURCES:=$(framework_docs_LOCAL_GENERATED_SOURCES)
Colin Cross5f4dcf62017-11-16 00:15:28 -0800537LOCAL_SRCJARS:=$(framework_docs_LOCAL_SRCJARS)
Michael Wrightb2b2c0e2015-11-06 15:21:13 +0000538LOCAL_JAVA_LIBRARIES:=$(framework_docs_LOCAL_API_CHECK_JAVA_LIBRARIES)
539LOCAL_MODULE_CLASS:=$(framework_docs_LOCAL_MODULE_CLASS)
540LOCAL_DROIDDOC_SOURCE_PATH:=$(framework_docs_LOCAL_DROIDDOC_SOURCE_PATH)
541LOCAL_DROIDDOC_HTML_DIR:=$(framework_docs_LOCAL_DROIDDOC_HTML_DIR)
542LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_API_CHECK_ADDITIONAL_JAVA_DIR)
543LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES)
544
545LOCAL_MODULE := test-api-stubs
546
547LOCAL_DROIDDOC_STUB_OUT_DIR := $(TARGET_OUT_COMMON_INTERMEDIATES)/JAVA_LIBRARIES/android_test_stubs_current_intermediates/src
548
549LOCAL_DROIDDOC_OPTIONS:=\
550 $(framework_docs_LOCAL_DROIDDOC_OPTIONS) \
smain@google.com534bfe12016-09-01 19:52:17 -0700551 -referenceonly \
Michael Wrightb2b2c0e2015-11-06 15:21:13 +0000552 -stubs $(TARGET_OUT_COMMON_INTERMEDIATES)/JAVA_LIBRARIES/android_test_stubs_current_intermediates/src \
553 -showAnnotation android.annotation.TestApi \
554 -api $(INTERNAL_PLATFORM_TEST_API_FILE) \
555 -removedApi $(INTERNAL_PLATFORM_TEST_REMOVED_API_FILE) \
Jeff Sharkey05461c02017-05-09 19:01:09 -0600556 -exactApi $(INTERNAL_PLATFORM_TEST_EXACT_API_FILE) \
Michael Wrightb2b2c0e2015-11-06 15:21:13 +0000557 -nodocs
558
Scott Main15b85172017-02-21 14:30:58 -0800559LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=external/doclava/res/assets/templates-sdk
Michael Wrightb2b2c0e2015-11-06 15:21:13 +0000560
561LOCAL_UNINSTALLABLE_MODULE := true
562
563include $(BUILD_DROIDDOC)
564
565# $(gen), i.e. framework.aidl, is also needed while building against the current stub.
Colin Cross5f4dcf62017-11-16 00:15:28 -0800566$(full_target): $(gen)
Michael Wrightb2b2c0e2015-11-06 15:21:13 +0000567$(INTERNAL_PLATFORM_TEST_API_FILE): $(full_target)
568$(call dist-for-goals,sdk,$(INTERNAL_PLATFORM_TEST_API_FILE))
569
Bart Searsa8cc0582015-05-07 03:23:20 +0000570# ==== check javadoc comments but don't generate docs ========
571include $(CLEAR_VARS)
572
573LOCAL_SRC_FILES:=$(framework_docs_LOCAL_SRC_FILES)
Colin Cross0c760952017-12-04 13:45:19 -0800574LOCAL_GENERATED_SOURCES:=$(framework_docs_LOCAL_GENERATED_SOURCES)
Colin Cross5f4dcf62017-11-16 00:15:28 -0800575LOCAL_SRCJARS:=$(framework_docs_LOCAL_SRCJARS)
Bart Searsa8cc0582015-05-07 03:23:20 +0000576LOCAL_JAVA_LIBRARIES:=$(framework_docs_LOCAL_JAVA_LIBRARIES)
577LOCAL_MODULE_CLASS:=$(framework_docs_LOCAL_MODULE_CLASS)
578LOCAL_DROIDDOC_SOURCE_PATH:=$(framework_docs_LOCAL_DROIDDOC_SOURCE_PATH)
579LOCAL_DROIDDOC_HTML_DIR:=$(framework_docs_LOCAL_DROIDDOC_HTML_DIR)
580LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_ADDITIONAL_JAVA_DIR)
581LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES)
582
583LOCAL_MODULE := doc-comment-check
584
585LOCAL_DROIDDOC_OPTIONS:=\
586 $(framework_docs_LOCAL_DROIDDOC_OPTIONS) \
smain@google.com534bfe12016-09-01 19:52:17 -0700587 -referenceonly \
Bart Searsa8cc0582015-05-07 03:23:20 +0000588 -parsecomments
589
Scott Main15b85172017-02-21 14:30:58 -0800590LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=external/doclava/res/assets/templates-sdk
Bart Searsa8cc0582015-05-07 03:23:20 +0000591
592LOCAL_UNINSTALLABLE_MODULE := true
593
594include $(BUILD_DROIDDOC)
595
596# $(gen), i.e. framework.aidl, is also needed while building against the current stub.
Colin Cross5f4dcf62017-11-16 00:15:28 -0800597$(full_target): $(gen)
Bart Searsa8cc0582015-05-07 03:23:20 +0000598
599# Run this for checkbuild
600checkbuild: doc-comment-check-docs
601# Check comment when you are updating the API
602update-api: doc-comment-check-docs
603
604# ==== static html in the sdk ==================================
605include $(CLEAR_VARS)
606
607LOCAL_SRC_FILES:=$(framework_docs_LOCAL_SRC_FILES)
Colin Cross0c760952017-12-04 13:45:19 -0800608LOCAL_GENERATED_SOURCES:=$(framework_docs_LOCAL_GENERATED_SOURCES)
Colin Cross5f4dcf62017-11-16 00:15:28 -0800609LOCAL_SRCJARS:=$(framework_docs_LOCAL_SRCJARS)
Bart Searsa8cc0582015-05-07 03:23:20 +0000610LOCAL_JAVA_LIBRARIES:=$(framework_docs_LOCAL_JAVA_LIBRARIES)
611LOCAL_MODULE_CLASS:=$(framework_docs_LOCAL_MODULE_CLASS)
612LOCAL_DROIDDOC_SOURCE_PATH:=$(framework_docs_LOCAL_DROIDDOC_SOURCE_PATH)
613LOCAL_DROIDDOC_HTML_DIR:=$(framework_docs_LOCAL_DROIDDOC_HTML_DIR)
614LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_ADDITIONAL_JAVA_DIR)
615LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES)
616
617LOCAL_MODULE := offline-sdk
618
619LOCAL_DROIDDOC_OPTIONS:=\
620 $(framework_docs_LOCAL_DROIDDOC_OPTIONS) \
621 -offlinemode \
622 -title "Android SDK" \
623 -proofread $(OUT_DOCS)/$(LOCAL_MODULE)-proofread.txt \
smain@google.com00de8c52016-03-07 18:38:08 -0800624 -sdkvalues $(OUT_DOCS) \
smain@google.com8562ab52016-06-14 17:11:57 -0700625 -hdf android.whichdoc offline
626
Scott Main15b85172017-02-21 14:30:58 -0800627LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=external/doclava/res/assets/templates-sdk
smain@google.com8562ab52016-06-14 17:11:57 -0700628
629include $(BUILD_DROIDDOC)
630
631static_doc_index_redirect := $(out_dir)/index.html
632$(static_doc_index_redirect): \
633 $(LOCAL_PATH)/docs/docs-preview-index.html | $(ACP)
634 $(hide) mkdir -p $(dir $@)
635 $(hide) $(ACP) $< $@
636
637$(full_target): $(static_doc_index_redirect)
smain@google.com8562ab52016-06-14 17:11:57 -0700638
639
640# ==== static html in the sdk ==================================
641include $(CLEAR_VARS)
642
643LOCAL_SRC_FILES:=$(framework_docs_LOCAL_SRC_FILES)
Colin Cross0c760952017-12-04 13:45:19 -0800644LOCAL_GENERATED_SOURCES:=$(framework_docs_LOCAL_GENERATED_SOURCES)
Colin Cross5f4dcf62017-11-16 00:15:28 -0800645LOCAL_SRCJARS:=$(framework_docs_LOCAL_SRCJARS)
smain@google.com8562ab52016-06-14 17:11:57 -0700646LOCAL_JAVA_LIBRARIES:=$(framework_docs_LOCAL_JAVA_LIBRARIES)
647LOCAL_MODULE_CLASS:=$(framework_docs_LOCAL_MODULE_CLASS)
648LOCAL_DROIDDOC_SOURCE_PATH:=$(framework_docs_LOCAL_DROIDDOC_SOURCE_PATH)
649LOCAL_DROIDDOC_HTML_DIR:=$(framework_docs_LOCAL_DROIDDOC_HTML_DIR)
650LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_ADDITIONAL_JAVA_DIR)
651LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES)
652
653LOCAL_MODULE := offline-sdk-referenceonly
654
655LOCAL_DROIDDOC_OPTIONS:=\
656 $(framework_docs_LOCAL_DROIDDOC_OPTIONS) \
657 -offlinemode \
658 -title "Android SDK" \
659 -proofread $(OUT_DOCS)/$(LOCAL_MODULE)-proofread.txt \
660 -sdkvalues $(OUT_DOCS) \
smain@google.com00de8c52016-03-07 18:38:08 -0800661 -hdf android.whichdoc offline \
Scott Mainf8cdfc82017-03-21 13:43:31 -0700662 -referenceonly
smain@google.com00de8c52016-03-07 18:38:08 -0800663
Scott Main15b85172017-02-21 14:30:58 -0800664LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=external/doclava/res/assets/templates-sdk
smain@google.com00de8c52016-03-07 18:38:08 -0800665
666include $(BUILD_DROIDDOC)
667
668static_doc_index_redirect := $(out_dir)/index.html
smain@google.com151833a2016-08-31 08:42:09 -0700669$(static_doc_index_redirect): $(LOCAL_PATH)/docs/docs-documentation-redirect.html
Dan Willemsen98ff0b72016-03-23 00:42:44 -0700670 $(copy-file-to-target)
smain@google.com00de8c52016-03-07 18:38:08 -0800671
smain@google.com2f2365d2016-09-21 14:05:50 -0700672static_doc_properties := $(out_dir)/source.properties
673$(static_doc_properties): \
674 $(LOCAL_PATH)/docs/source.properties | $(ACP)
675 $(hide) mkdir -p $(dir $@)
676 $(hide) $(ACP) $< $@
677
smain@google.com00de8c52016-03-07 18:38:08 -0800678$(full_target): $(static_doc_index_redirect)
smain@google.com2f2365d2016-09-21 14:05:50 -0700679$(full_target): $(static_doc_properties)
smain@google.com00de8c52016-03-07 18:38:08 -0800680
smain@google.com7aca8be2016-03-10 14:13:30 -0800681
Bart Searsa8cc0582015-05-07 03:23:20 +0000682# ==== docs for the web (on the androiddevdocs app engine server) =======================
683include $(CLEAR_VARS)
684
685LOCAL_SRC_FILES:=$(framework_docs_LOCAL_SRC_FILES)
Colin Cross0c760952017-12-04 13:45:19 -0800686LOCAL_GENERATED_SOURCES:=$(framework_docs_LOCAL_GENERATED_SOURCES)
Colin Cross5f4dcf62017-11-16 00:15:28 -0800687LOCAL_SRCJARS:=$(framework_docs_LOCAL_SRCJARS)
Bart Searsa8cc0582015-05-07 03:23:20 +0000688LOCAL_STATIC_JAVA_LIBRARIES:=$(framework_docs_LOCAL_STATIC_JAVA_LIBRARIES)
689LOCAL_JAVA_LIBRARIES:=$(framework_docs_LOCAL_JAVA_LIBRARIES)
690LOCAL_MODULE_CLASS:=$(framework_docs_LOCAL_MODULE_CLASS)
691LOCAL_DROIDDOC_SOURCE_PATH:=$(framework_docs_LOCAL_DROIDDOC_SOURCE_PATH)
692LOCAL_DROIDDOC_HTML_DIR:=$(framework_docs_LOCAL_DROIDDOC_HTML_DIR)
693LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_ADDITIONAL_JAVA_DIR)
694LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES)
695LOCAL_ADDITIONAL_HTML_DIR:=docs/html-intl /
696
697LOCAL_MODULE := online-sdk
698
699LOCAL_DROIDDOC_OPTIONS:= \
700 $(framework_docs_LOCAL_DROIDDOC_OPTIONS) \
701 -toroot / \
702 -hdf android.whichdoc online \
703 $(sample_groups) \
704 -hdf android.hasSamples true \
705 -samplesdir $(samples_dir)
706
Scott Main15b85172017-02-21 14:30:58 -0800707LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=external/doclava/res/assets/templates-sdk
Bart Searsa8cc0582015-05-07 03:23:20 +0000708
709include $(BUILD_DROIDDOC)
710
711# ==== docs for the web (on the androiddevdocs app engine server) =======================
Bart Searsa8cc0582015-05-07 03:23:20 +0000712include $(CLEAR_VARS)
713
714LOCAL_SRC_FILES:=$(framework_docs_LOCAL_SRC_FILES)
Colin Cross0c760952017-12-04 13:45:19 -0800715LOCAL_GENERATED_SOURCES:=$(framework_docs_LOCAL_GENERATED_SOURCES)
Colin Cross5f4dcf62017-11-16 00:15:28 -0800716LOCAL_SRCJARS:=$(framework_docs_LOCAL_SRCJARS)
Bart Searsa8cc0582015-05-07 03:23:20 +0000717LOCAL_STATIC_JAVA_LIBRARIES:=$(framework_docs_LOCAL_STATIC_JAVA_LIBRARIES)
718LOCAL_JAVA_LIBRARIES:=$(framework_docs_LOCAL_JAVA_LIBRARIES)
719LOCAL_MODULE_CLASS:=$(framework_docs_LOCAL_MODULE_CLASS)
720LOCAL_DROIDDOC_SOURCE_PATH:=$(framework_docs_LOCAL_DROIDDOC_SOURCE_PATH)
721LOCAL_DROIDDOC_HTML_DIR:=$(framework_docs_LOCAL_DROIDDOC_HTML_DIR)
722LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_ADDITIONAL_JAVA_DIR)
723LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES)
724LOCAL_ADDITIONAL_HTML_DIR:=docs/html-intl /
725
726LOCAL_MODULE := online-system-api-sdk
727
728LOCAL_DROIDDOC_OPTIONS:= \
729 $(framework_docs_LOCAL_DROIDDOC_OPTIONS) \
smain@google.com534bfe12016-09-01 19:52:17 -0700730 -referenceonly \
Bart Searsa8cc0582015-05-07 03:23:20 +0000731 -showAnnotation android.annotation.SystemApi \
732 -title "Android SDK - Including system APIs." \
733 -toroot / \
Gina Dimino98ad8882016-05-31 17:25:48 -0700734 -hide 101 \
735 -hide 104 \
736 -hide 108 \
Bart Searsa8cc0582015-05-07 03:23:20 +0000737 -hdf android.whichdoc online \
738 $(sample_groups) \
739 -hdf android.hasSamples true \
740 -samplesdir $(samples_dir)
741
Scott Main15b85172017-02-21 14:30:58 -0800742LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=external/doclava/res/assets/templates-sdk
Jeff Sharkey05461c02017-05-09 19:01:09 -0600743
Bart Searsa8cc0582015-05-07 03:23:20 +0000744LOCAL_UNINSTALLABLE_MODULE := true
745
746include $(BUILD_DROIDDOC)
Bart Searsa8cc0582015-05-07 03:23:20 +0000747
748# ==== docs for the web (on the devsite app engine server) =======================
749include $(CLEAR_VARS)
750LOCAL_SRC_FILES:=$(framework_docs_LOCAL_SRC_FILES)
Colin Cross0c760952017-12-04 13:45:19 -0800751LOCAL_GENERATED_SOURCES:=$(framework_docs_LOCAL_GENERATED_SOURCES)
Colin Cross5f4dcf62017-11-16 00:15:28 -0800752LOCAL_SRCJARS:=$(framework_docs_LOCAL_SRCJARS)
Bart Searsa8cc0582015-05-07 03:23:20 +0000753LOCAL_STATIC_JAVA_LIBRARIES:=$(framework_docs_LOCAL_STATIC_JAVA_LIBRARIES)
754LOCAL_JAVA_LIBRARIES:=$(framework_docs_LOCAL_JAVA_LIBRARIES)
755LOCAL_MODULE_CLASS:=$(framework_docs_LOCAL_MODULE_CLASS)
756LOCAL_DROIDDOC_SOURCE_PATH:=$(framework_docs_LOCAL_DROIDDOC_SOURCE_PATH)
757LOCAL_DROIDDOC_HTML_DIR:=$(framework_docs_LOCAL_DROIDDOC_HTML_DIR)
758LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_ADDITIONAL_JAVA_DIR)
759LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES)
760# specify a second html input dir and an output path relative to OUT_DIR)
Dirk Dougherty3852c1f2016-04-10 02:05:09 -0700761LOCAL_ADDITIONAL_HTML_DIR:=docs/html-intl /
Bart Searsa8cc0582015-05-07 03:23:20 +0000762
763LOCAL_MODULE := ds
764
765LOCAL_DROIDDOC_OPTIONS:= \
766 $(framework_docs_LOCAL_DROIDDOC_OPTIONS) \
Bart Searsa8cc0582015-05-07 03:23:20 +0000767 -toroot / \
768 -hdf android.whichdoc online \
Dirk Doughertyb042ab12016-06-14 16:26:28 -0700769 -devsite \
Dirk Dougherty3852c1f2016-04-10 02:05:09 -0700770 $(sample_groups) \
Dirk Dougherty3852c1f2016-04-10 02:05:09 -0700771 -hdf android.hasSamples true \
772 -samplesdir $(samples_dir)
Bart Searsa8cc0582015-05-07 03:23:20 +0000773
Scott Main15b85172017-02-21 14:30:58 -0800774LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=external/doclava/res/assets/templates-sdk
Bart Searsa8cc0582015-05-07 03:23:20 +0000775
776include $(BUILD_DROIDDOC)
777
Dirk Doughertyb042ab12016-06-14 16:26:28 -0700778# ==== docs for the web (on the devsite app engine server) =======================
779include $(CLEAR_VARS)
780LOCAL_SRC_FILES:=$(framework_docs_LOCAL_SRC_FILES)
Colin Cross0c760952017-12-04 13:45:19 -0800781LOCAL_GENERATED_SOURCES:=$(framework_docs_LOCAL_GENERATED_SOURCES)
Colin Cross5f4dcf62017-11-16 00:15:28 -0800782LOCAL_SRCJARS:=$(framework_docs_LOCAL_SRCJARS)
Dirk Doughertyb042ab12016-06-14 16:26:28 -0700783LOCAL_STATIC_JAVA_LIBRARIES:=$(framework_docs_LOCAL_STATIC_JAVA_LIBRARIES)
784LOCAL_JAVA_LIBRARIES:=$(framework_docs_LOCAL_JAVA_LIBRARIES)
785LOCAL_MODULE_CLASS:=$(framework_docs_LOCAL_MODULE_CLASS)
786LOCAL_DROIDDOC_SOURCE_PATH:=$(framework_docs_LOCAL_DROIDDOC_SOURCE_PATH)
787LOCAL_DROIDDOC_HTML_DIR:=$(framework_docs_LOCAL_DROIDDOC_HTML_DIR)
788LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_ADDITIONAL_JAVA_DIR)
789LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES)
790# specify a second html input dir and an output path relative to OUT_DIR)
791LOCAL_ADDITIONAL_HTML_DIR:=docs/html-intl /
792
793LOCAL_MODULE := ds-static
794
795LOCAL_DROIDDOC_OPTIONS:= \
796 $(framework_docs_LOCAL_DROIDDOC_OPTIONS) \
797 -hdf android.whichdoc online \
798 -staticonly \
799 -toroot / \
800 -devsite \
801 -ignoreJdLinks
802
Scott Main15b85172017-02-21 14:30:58 -0800803LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=external/doclava/res/assets/templates-sdk
Dirk Doughertyb042ab12016-06-14 16:26:28 -0700804
805include $(BUILD_DROIDDOC)
806
Dirk Dougherty7d47b552016-09-13 16:44:25 -0700807# ==== generates full navtree for resolving @links in ds postprocessing ====
808include $(CLEAR_VARS)
809
810LOCAL_SRC_FILES:=$(framework_docs_LOCAL_SRC_FILES)
Colin Cross0c760952017-12-04 13:45:19 -0800811LOCAL_GENERATED_SOURCES:=$(framework_docs_LOCAL_GENERATED_SOURCES)
Colin Cross5f4dcf62017-11-16 00:15:28 -0800812LOCAL_SRCJARS:=$(framework_docs_LOCAL_SRCJARS)
Dirk Dougherty7d47b552016-09-13 16:44:25 -0700813LOCAL_STATIC_JAVA_LIBRARIES:=$(framework_docs_LOCAL_STATIC_JAVA_LIBRARIES)
814LOCAL_JAVA_LIBRARIES:=$(framework_docs_LOCAL_JAVA_LIBRARIES)
815LOCAL_MODULE_CLASS:=$(framework_docs_LOCAL_MODULE_CLASS)
816LOCAL_DROIDDOC_SOURCE_PATH:=$(framework_docs_LOCAL_DROIDDOC_SOURCE_PATH)
817LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_ADDITIONAL_JAVA_DIR)
818LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES)
819
820LOCAL_MODULE := ds-ref-navtree
821
822LOCAL_DROIDDOC_OPTIONS:= \
823 $(framework_docs_LOCAL_DROIDDOC_OPTIONS) \
824 -hdf android.whichdoc online \
825 -toroot / \
826 -atLinksNavtree \
827 -navtreeonly
828
Scott Main15b85172017-02-21 14:30:58 -0800829LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=external/doclava/res/assets/templates-sdk
Dirk Dougherty7d47b552016-09-13 16:44:25 -0700830
831include $(BUILD_DROIDDOC)
832
Dirk Dougherty31ae1c512015-11-07 13:18:02 -0800833# ==== site updates for docs (on the androiddevdocs app engine server) =======================
Bart Searsa8cc0582015-05-07 03:23:20 +0000834include $(CLEAR_VARS)
Dirk Dougherty31ae1c512015-11-07 13:18:02 -0800835
Bart Searsa8cc0582015-05-07 03:23:20 +0000836LOCAL_SRC_FILES:=$(framework_docs_LOCAL_SRC_FILES)
Colin Cross0c760952017-12-04 13:45:19 -0800837LOCAL_GENERATED_SOURCES:=$(framework_docs_LOCAL_GENERATED_SOURCES)
Colin Cross5f4dcf62017-11-16 00:15:28 -0800838LOCAL_SRCJARS:=$(framework_docs_LOCAL_SRCJARS)
Bart Searsa8cc0582015-05-07 03:23:20 +0000839LOCAL_STATIC_JAVA_LIBRARIES:=$(framework_docs_LOCAL_STATIC_JAVA_LIBRARIES)
840LOCAL_JAVA_LIBRARIES:=$(framework_docs_LOCAL_JAVA_LIBRARIES)
841LOCAL_MODULE_CLASS:=$(framework_docs_LOCAL_MODULE_CLASS)
842LOCAL_DROIDDOC_SOURCE_PATH:=$(framework_docs_LOCAL_DROIDDOC_SOURCE_PATH)
Dirk Dougherty31ae1c512015-11-07 13:18:02 -0800843LOCAL_DROIDDOC_HTML_DIR:=$(framework_docs_LOCAL_DROIDDOC_HTML_DIR)
Bart Searsa8cc0582015-05-07 03:23:20 +0000844LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_ADDITIONAL_JAVA_DIR)
845LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES)
Dirk Dougherty31ae1c512015-11-07 13:18:02 -0800846LOCAL_ADDITIONAL_HTML_DIR:=docs/html-intl /
Bart Searsa8cc0582015-05-07 03:23:20 +0000847
Dirk Dougherty31ae1c512015-11-07 13:18:02 -0800848LOCAL_MODULE := online-sdk-dev
Bart Searsa8cc0582015-05-07 03:23:20 +0000849
850LOCAL_DROIDDOC_OPTIONS:= \
851 $(framework_docs_LOCAL_DROIDDOC_OPTIONS) \
852 -toroot / \
853 -hdf android.whichdoc online \
854 $(sample_groups) \
855 -hdf android.hasSamples true \
856 -samplesdir $(samples_dir)
857
Scott Main15b85172017-02-21 14:30:58 -0800858LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=external/doclava/res/assets/templates-sdk
Bart Searsa8cc0582015-05-07 03:23:20 +0000859
860include $(BUILD_DROIDDOC)
861
Bart Searsa8cc0582015-05-07 03:23:20 +0000862# ==== docs that have all of the stuff that's @hidden =======================
863include $(CLEAR_VARS)
864
865LOCAL_SRC_FILES:=$(framework_docs_LOCAL_SRC_FILES)
Colin Cross0c760952017-12-04 13:45:19 -0800866LOCAL_GENERATED_SOURCES:=$(framework_docs_LOCAL_GENERATED_SOURCES)
Colin Cross5f4dcf62017-11-16 00:15:28 -0800867LOCAL_SRCJARS:=$(framework_docs_LOCAL_SRCJARS)
Bart Searsa8cc0582015-05-07 03:23:20 +0000868LOCAL_JAVA_LIBRARIES:=$(framework_docs_LOCAL_JAVA_LIBRARIES)
869LOCAL_MODULE_CLASS:=$(framework_docs_LOCAL_MODULE_CLASS)
870LOCAL_DROIDDOC_SOURCE_PATH:=$(framework_docs_LOCAL_DROIDDOC_SOURCE_PATH)
871LOCAL_DROIDDOC_HTML_DIR:=$(framework_docs_LOCAL_DROIDDOC_HTML_DIR)
872LOCAL_ADDITIONAL_JAVA_DIR:=$(framework_docs_LOCAL_ADDITIONAL_JAVA_DIR)
873LOCAL_ADDITIONAL_DEPENDENCIES:=$(framework_docs_LOCAL_ADDITIONAL_DEPENDENCIES)
874
875LOCAL_MODULE := hidden
876LOCAL_DROIDDOC_OPTIONS:=\
877 $(framework_docs_LOCAL_DROIDDOC_OPTIONS) \
smain@google.com534bfe12016-09-01 19:52:17 -0700878 -referenceonly \
Bart Searsa8cc0582015-05-07 03:23:20 +0000879 -title "Android SDK - Including hidden APIs."
880# -hidden
881
Scott Main15b85172017-02-21 14:30:58 -0800882LOCAL_DROIDDOC_CUSTOM_TEMPLATE_DIR:=external/doclava/res/assets/templates-sdk
Bart Searsa8cc0582015-05-07 03:23:20 +0000883
884include $(BUILD_DROIDDOC)
885
Joe Onorato1754d742016-11-21 17:51:35 -0800886# ==== java proto host library ==============================
887include $(CLEAR_VARS)
888LOCAL_MODULE := platformprotos
889LOCAL_PROTOC_OPTIMIZE_TYPE := full
890LOCAL_PROTOC_FLAGS := \
891 -Iexternal/protobuf/src
892LOCAL_SOURCE_FILES_ALL_GENERATED := true
893LOCAL_SRC_FILES := \
894 $(call all-proto-files-under, core/proto) \
895 $(call all-proto-files-under, libs/incident/proto)
896include $(BUILD_HOST_JAVA_LIBRARY)
897
Bart Searsa8cc0582015-05-07 03:23:20 +0000898
899# Include subdirectory makefiles
900# ============================================================
901
902# If we're building with ONE_SHOT_MAKEFILE (mm, mmm), then what the framework
903# team really wants is to build the stuff defined by this makefile.
904ifeq (,$(ONE_SHOT_MAKEFILE))
905include $(call first-makefiles-under,$(LOCAL_PATH))
906endif
907
908endif # ANDROID_BUILD_EMBEDDED