#
# Copyright (C) 2007 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

#
# These are the files that comprise that SDK.
#
# The files that will go in the tools folder are setup through
#    sdk/build/tools.atree
# This is to help when the sdk.git project is branched differently from
# the other projects.
#

##############################################################################
# SDK Root folder
##############################################################################

# the readme
development/docs/SDK_RELEASE_NOTES RELEASE_NOTES.html

# doc redirect
frameworks/base/docs/docs-redirect.html documentation.html


##############################################################################
# Platform Tools Component
##############################################################################

sdk/files/sdk_files_NOTICE.txt                platform-tools/NOTICE.txt
development/sdk/plat_tools_source.properties  platform-tools/source.properties

# host tools from out/host/$(HOST_OS)-$(HOST_ARCH)/
bin/adb                                 strip platform-tools/adb
bin/fastboot                            strip platform-tools/fastboot

# API database for tools such as lint
development/sdk/api-versions.xml              platform-tools/api/api-versions.xml

# systrace
external/chromium-trace/systrace.py           platform-tools/systrace/systrace.py
external/chromium-trace/systrace-legacy.py    platform-tools/systrace/systrace-legacy.py
external/chromium-trace/script.js             platform-tools/systrace/script.js
external/chromium-trace/style.css             platform-tools/systrace/style.css
external/chromium-trace/prefix.html           platform-tools/systrace/prefix.html
external/chromium-trace/suffix.html           platform-tools/systrace/suffix.html
external/chromium-trace/LICENSE               platform-tools/systrace/LICENSE
external/chromium-trace/AUTHORS               platform-tools/systrace/AUTHORS
external/chromium-trace/NOTICE                platform-tools/systrace/NOTICE
external/chromium-trace/UPSTREAM_REVISION     platform-tools/systrace/UPSTREAM_REVISION

##############################################################################
# Build Tools Component
##############################################################################
# Note that the build-tools sub-folder uses the platform-name as a placeholder
# at build-time. Packaging will later change that to the actual build-tools
# revision as specified in the source.properties.

sdk/files/sdk_files_NOTICE.txt                 build-tools/${PLATFORM_NAME}/NOTICE.txt
development/sdk/build_tools_source.properties  build-tools/${PLATFORM_NAME}/source.properties

# build tools from out/host/$(HOST_OS)-$(HOST_ARCH)/
bin/aapt                                strip build-tools/${PLATFORM_NAME}/aapt
bin/aidl                                strip build-tools/${PLATFORM_NAME}/aidl

# renderscript (cc + headers)
bin/llvm-rs-cc                          strip build-tools/${PLATFORM_NAME}/llvm-rs-cc
bin/bcc_compat                          strip build-tools/${PLATFORM_NAME}/bcc_compat
frameworks/rs/scriptc                         build-tools/${PLATFORM_NAME}/renderscript/include
external/clang/lib/Headers                    build-tools/${PLATFORM_NAME}/renderscript/clang-include
external/clang/LICENSE.TXT                    build-tools/${PLATFORM_NAME}/renderscript/clang-include/LICENSE.TXT

prebuilts/sdk/renderscript/lib/javalib.jar            build-tools/${PLATFORM_NAME}/renderscript/lib/renderscript-v8.jar

prebuilts/sdk/renderscript/lib/arm/libc.so            build-tools/${PLATFORM_NAME}/renderscript/lib/intermediates/armeabi-v7a/libc.so
prebuilts/sdk/renderscript/lib/arm/libm.so            build-tools/${PLATFORM_NAME}/renderscript/lib/intermediates/armeabi-v7a/libm.so
prebuilts/sdk/renderscript/lib/arm/libcompiler_rt.a   build-tools/${PLATFORM_NAME}/renderscript/lib/intermediates/armeabi-v7a/libcompiler_rt.a
prebuilts/sdk/renderscript/lib/arm/libRSSupport.so    build-tools/${PLATFORM_NAME}/renderscript/lib/packaged/armeabi-v7a/libRSSupport.so
prebuilts/sdk/renderscript/lib/arm/librsjni.so        build-tools/${PLATFORM_NAME}/renderscript/lib/packaged/armeabi-v7a/librsjni.so
prebuilts/sdk/renderscript/lib/arm/libclcore.bc       build-tools/${PLATFORM_NAME}/renderscript/lib/bc/armeabi-v7a/libclcore.bc

prebuilts/sdk/renderscript/lib/mips/libc.so            build-tools/${PLATFORM_NAME}/renderscript/lib/intermediates/mips/libc.so
prebuilts/sdk/renderscript/lib/mips/libm.so            build-tools/${PLATFORM_NAME}/renderscript/lib/intermediates/mips/libm.so
prebuilts/sdk/renderscript/lib/mips/libcompiler_rt.a   build-tools/${PLATFORM_NAME}/renderscript/lib/intermediates/mips/libcompiler_rt.a
prebuilts/sdk/renderscript/lib/mips/libRSSupport.so    build-tools/${PLATFORM_NAME}/renderscript/lib/packaged/mips/libRSSupport.so
prebuilts/sdk/renderscript/lib/mips/librsjni.so        build-tools/${PLATFORM_NAME}/renderscript/lib/packaged/mips/librsjni.so
prebuilts/sdk/renderscript/lib/mips/libclcore.bc       build-tools/${PLATFORM_NAME}/renderscript/lib/bc/mips/libclcore.bc

prebuilts/sdk/renderscript/lib/x86/libc.so            build-tools/${PLATFORM_NAME}/renderscript/lib/intermediates/x86/libc.so
prebuilts/sdk/renderscript/lib/x86/libm.so            build-tools/${PLATFORM_NAME}/renderscript/lib/intermediates/x86/libm.so
prebuilts/sdk/renderscript/lib/x86/libcompiler_rt.a   build-tools/${PLATFORM_NAME}/renderscript/lib/intermediates/x86/libcompiler_rt.a
prebuilts/sdk/renderscript/lib/x86/libRSSupport.so    build-tools/${PLATFORM_NAME}/renderscript/lib/packaged/x86/libRSSupport.so
prebuilts/sdk/renderscript/lib/x86/librsjni.so        build-tools/${PLATFORM_NAME}/renderscript/lib/packaged/x86/librsjni.so
prebuilts/sdk/renderscript/lib/x86/libclcore.bc       build-tools/${PLATFORM_NAME}/renderscript/lib/bc/x86/libclcore.bc



# dx
bin/dx                                        build-tools/${PLATFORM_NAME}/dx
framework/dx.jar                              build-tools/${PLATFORM_NAME}/lib/dx.jar
bin/dexdump                                   build-tools/${PLATFORM_NAME}/dexdump


##############################################################################
# Platform Component
##############################################################################

# version files for the SDK updater, from development.git
${HOST_OUT}/development/sdk/platform_source.properties platforms/${PLATFORM_NAME}/source.properties

# copy build prop from out/.../sdk/
sdk/sdk-build.prop                            platforms/${PLATFORM_NAME}/build.prop

# the uper-jar file that apps link against. This is the public API
${OUT_DIR}/target/common/obj/PACKAGING/android_jar_intermediates/android.jar              platforms/${PLATFORM_NAME}/android.jar
${OUT_DIR}/target/common/obj/JAVA_LIBRARIES/android_uiautomator_intermediates/javalib.jar platforms/${PLATFORM_NAME}/uiautomator.jar

# the aidl precompiled include
obj/framework.aidl platforms/${PLATFORM_NAME}/framework.aidl

# emulator skins from sdk.git
development/tools/emulator/skins/QVGA          platforms/${PLATFORM_NAME}/skins/QVGA
development/tools/emulator/skins/WQVGA432      platforms/${PLATFORM_NAME}/skins/WQVGA432
development/tools/emulator/skins/WQVGA400      platforms/${PLATFORM_NAME}/skins/WQVGA400
development/tools/emulator/skins/HVGA          platforms/${PLATFORM_NAME}/skins/HVGA
development/tools/emulator/skins/WVGA800       platforms/${PLATFORM_NAME}/skins/WVGA800
development/tools/emulator/skins/WVGA854       platforms/${PLATFORM_NAME}/skins/WVGA854
development/tools/emulator/skins/WSVGA         platforms/${PLATFORM_NAME}/skins/WSVGA
development/tools/emulator/skins/WXGA720       platforms/${PLATFORM_NAME}/skins/WXGA720
development/tools/emulator/skins/WXGA800       platforms/${PLATFORM_NAME}/skins/WXGA800
development/tools/emulator/skins/WXGA800-7in   platforms/${PLATFORM_NAME}/skins/WXGA800-7in

# Platform SDK properties
development/sdk/sdk.properties                 platforms/${PLATFORM_NAME}/sdk.properties

# sdk.git Ant templates for project files
development/tools/templates/AndroidManifest.template        platforms/${PLATFORM_NAME}/templates/AndroidManifest.template
development/tools/templates/AndroidManifest.tests.template  platforms/${PLATFORM_NAME}/templates/AndroidManifest.tests.template
development/tools/templates/java_file.template              platforms/${PLATFORM_NAME}/templates/java_file.template
development/tools/templates/java_tests_file.template        platforms/${PLATFORM_NAME}/templates/java_tests_file.template
development/tools/templates/layout.template                 platforms/${PLATFORM_NAME}/templates/layout.template
development/tools/templates/strings.template                platforms/${PLATFORM_NAME}/templates/strings.template
development/tools/templates/ic_launcher_ldpi.png            platforms/${PLATFORM_NAME}/templates/ic_launcher_ldpi.png
development/tools/templates/ic_launcher_mdpi.png            platforms/${PLATFORM_NAME}/templates/ic_launcher_mdpi.png
development/tools/templates/ic_launcher_hdpi.png            platforms/${PLATFORM_NAME}/templates/ic_launcher_hdpi.png
development/tools/templates/ic_launcher_xhdpi.png           platforms/${PLATFORM_NAME}/templates/ic_launcher_xhdpi.png

# Eclipse Editors support
framework/layoutlib.jar       platforms/${PLATFORM_NAME}/data/layoutlib.jar
framework/icu4j.jar           platforms/${PLATFORM_NAME}/data/icu4j.jar
frameworks/base/core/res/res  platforms/${PLATFORM_NAME}/data/res
docs/activity_actions.txt     platforms/${PLATFORM_NAME}/data/activity_actions.txt
docs/broadcast_actions.txt    platforms/${PLATFORM_NAME}/data/broadcast_actions.txt
docs/service_actions.txt      platforms/${PLATFORM_NAME}/data/service_actions.txt
docs/categories.txt           platforms/${PLATFORM_NAME}/data/categories.txt
docs/widgets.txt              platforms/${PLATFORM_NAME}/data/widgets.txt
docs/features.txt             platforms/${PLATFORM_NAME}/data/features.txt

# fonts for layoutlib.
frameworks/base/data/fonts    platforms/${PLATFORM_NAME}/data/fonts
external/noto-fonts           platforms/${PLATFORM_NAME}/data/fonts

# NOTICE files are copied by build/core/Makefile from sdk.git
sdk/files/sdk_files_NOTICE.txt platforms/${PLATFORM_NAME}/templates/NOTICE.txt
sdk/files/sdk_files_NOTICE.txt platforms/${PLATFORM_NAME}/data/NOTICE.txt
sdk/files/sdk_files_NOTICE.txt platforms/${PLATFORM_NAME}/skins/NOTICE.txt


##############################################################################
# System image Component
##############################################################################

# System images + Kernel
system.img                                 system-images/${PLATFORM_NAME}/${TARGET_CPU_ABI}/system.img
ramdisk.img                                system-images/${PLATFORM_NAME}/${TARGET_CPU_ABI}/ramdisk.img
userdata.img                               system-images/${PLATFORM_NAME}/${TARGET_CPU_ABI}/userdata.img
system/build.prop                          system-images/${PLATFORM_NAME}/${TARGET_CPU_ABI}/build.prop

# Note: the kernel image is handled by sdk-android-<abi>.atree now.


##############################################################################
# Docs Component
##############################################################################

# version files for the SDK updater, from sdk.git
${HOST_OUT}/development/sdk/doc_source.properties docs/source.properties

# the docs
docs/offline-sdk docs
frameworks/base/docs/docs-samples-redirect.html docs/samples/index.html


##############################################################################
# Samples Component
##############################################################################

# samples to include in the sdk samples package
#
# the list here should match the list of samples that we generate docs for,
# (see web_docs_sample_code_flags in frameworks/base/Android.mk)
development/apps/GestureBuilder                samples/${PLATFORM_NAME}/legacy/GestureBuilder
development/samples/samples_source.properties  samples/${PLATFORM_NAME}/source.properties
#
# PLEASE KEEP THE SAMPLES IN ALPHABETICAL ORDER.
#

# New sample tree
# Note: Some samples reference a shared "common" directory. In the future
# this will be copied in automatically via a templating system. For now,
# we need to copy it in here as needed.
developers/build/prebuilts/gradle/BasicAndroidKeyStore/                      samples/${PLATFORM_NAME}/security/BasicAndroidKeyStore
developers/build/prebuilts/gradle/BasicSyncAdapter/                          samples/${PLATFORM_NAME}/connectivity/BasicSyncAdapter
developers/build/prebuilts/gradle/NetworkConnect/                            samples/${PLATFORM_NAME}/connectivity/NetworkConnect
developers/build/prebuilts/gradle/BasicNetworking/                           samples/${PLATFORM_NAME}/connectivity/BasicNetworking
developers/build/prebuilts/gradle/BluetoothLeGatt/                           samples/${PLATFORM_NAME}/connectivity/BluetoothLeGatt
developers/build/prebuilts/gradle/AppRestrictions/                           samples/${PLATFORM_NAME}/content/AppRestrictions
developers/build/prebuilts/gradle/BasicContactables/                         samples/${PLATFORM_NAME}/content/BasicContactables
developers/build/prebuilts/gradle/StorageClient/                             samples/${PLATFORM_NAME}/content/StorageClient
developers/build/prebuilts/gradle/StorageProvider/                           samples/${PLATFORM_NAME}/content/StorageProvider
developers/build/prebuilts/gradle/BasicGestureDetect/                        samples/${PLATFORM_NAME}/input/BasicGestureDetect
developers/build/prebuilts/gradle/BasicMultitouch/                           samples/${PLATFORM_NAME}/input/BasicMultitouch
developers/build/prebuilts/gradle/ActivityInstrumentation/                   samples/${PLATFORM_NAME}/testing/ActivityInstrumentation
developers/build/prebuilts/gradle/MediaRecorder/                             samples/${PLATFORM_NAME}/media/MediaRecorder
developers/build/prebuilts/gradle/BasicMediaRouter/                          samples/${PLATFORM_NAME}/media/BasicMediaRouter
developers/build/prebuilts/gradle/BasicMediaDecoder/                         samples/${PLATFORM_NAME}/media/BasicMediaDecoder
developers/build/prebuilts/gradle/BorderlessButtons/                         samples/${PLATFORM_NAME}/ui/BorderlessButtons
developers/build/prebuilts/gradle/BasicAccessibility/                        samples/${PLATFORM_NAME}/ui/BasicAccessibility
developers/build/prebuilts/gradle/CustomChoiceList/                          samples/${PLATFORM_NAME}/ui/CustomChoiceList
developers/build/prebuilts/gradle/TextSwitcher/                              samples/${PLATFORM_NAME}/ui/TextSwitcher
developers/build/prebuilts/gradle/HorizontalPaging/                          samples/${PLATFORM_NAME}/ui/HorizontalPaging
developers/build/prebuilts/gradle/ActionBarCompat-Styled/                    samples/${PLATFORM_NAME}/ui/ActionBarCompat-Styled
developers/build/prebuilts/gradle/ActionBarCompat-ListPopupMenu/             samples/${PLATFORM_NAME}/ui/ActionBarCompat-ListPopupMenu
developers/build/prebuilts/gradle/ActionBarCompat-ShareActionProvider/       samples/${PLATFORM_NAME}/ui/ActionBarCompat-ShareActionProvider
developers/build/prebuilts/gradle/ActionBarCompat-Basic/                     samples/${PLATFORM_NAME}/ui/ActionBarCompat-Basic
developers/build/prebuilts/gradle/BasicNotifications/                        samples/${PLATFORM_NAME}/ui/BasicNotifications
developers/build/prebuilts/gradle/CustomNotifications/                       samples/${PLATFORM_NAME}/ui/CustomNotifications
developers/build/prebuilts/gradle/DoneBar/                                   samples/${PLATFORM_NAME}/ui/DoneBar
developers/build/prebuilts/gradle/BasicImmersiveMode/                        samples/${PLATFORM_NAME}/ui/BasicImmersiveMode
developers/build/prebuilts/gradle/AdvancedImmersiveMode/                     samples/${PLATFORM_NAME}/ui/AdvancedImmersiveMode
developers/build/prebuilts/gradle/ImmersiveMode/                             samples/${PLATFORM_NAME}/ui/ImmersiveMode
developers/build/prebuilts/gradle/RepeatingAlarm/                            samples/${PLATFORM_NAME}/background/RepeatingAlarm
developers/build/prebuilts/gradle/TextLinkify/                               samples/${PLATFORM_NAME}/ui/TextLinkify
developers/build/prebuilts/gradle/BasicRenderScript                          samples/${PLATFORM_NAME}/renderscript/BasicRenderScript
developers/build/prebuilts/gradle/RenderScriptIntrinsic                      samples/${PLATFORM_NAME}/renderscript/RenderScriptIntrinsic
developers/build/prebuilts/gradle/SlidingTabsBasic                           samples/${PLATFORM_NAME}/ui/SlidingTabsBasic
developers/build/prebuilts/gradle/SlidingTabsColors                          samples/${PLATFORM_NAME}/ui/SlidingTabsColors
developers/build/prebuilts/gradle/CardEmulation                              samples/${PLATFORM_NAME}/connectivity/CardEmulation
developers/build/prebuilts/gradle/CardReader                                 samples/${PLATFORM_NAME}/connectivity/CardReader
developers/build/prebuilts/gradle/BatchStepSensor                            samples/${PLATFORM_NAME}/sensors/BatchStepSensor



# Old sample tree
development/samples/AccelerometerPlay          samples/${PLATFORM_NAME}/legacy/AccelerometerPlay
development/samples/ActionBarCompat            samples/${PLATFORM_NAME}/legacy/ActionBarCompat
development/samples/AndroidBeamDemo            samples/${PLATFORM_NAME}/legacy/AndroidBeamDemo
development/samples/ApiDemos                   samples/${PLATFORM_NAME}/legacy/ApiDemos
development/samples/AppNavigation              samples/${PLATFORM_NAME}/legacy/AppNavigation
development/samples/BackupRestore              samples/${PLATFORM_NAME}/legacy/BackupRestore
development/samples/BasicGLSurfaceView         samples/${PLATFORM_NAME}/legacy/BasicGLSurfaceView
development/samples/BluetoothChat              samples/${PLATFORM_NAME}/legacy/BluetoothChat
development/samples/BluetoothHDP               samples/${PLATFORM_NAME}/legacy/BluetoothHDP
development/samples/ContactManager             samples/${PLATFORM_NAME}/legacy/ContactManager
development/samples/CrossCompatibility         samples/${PLATFORM_NAME}/legacy/CrossCompatibility
development/samples/CubeLiveWallpaper          samples/${PLATFORM_NAME}/legacy/CubeLiveWallpaper
development/samples/HelloEffects               samples/${PLATFORM_NAME}/legacy/HelloEffects
development/samples/Home                       samples/${PLATFORM_NAME}/legacy/Home
development/samples/HoneycombGallery           samples/${PLATFORM_NAME}/legacy/HoneycombGallery
development/samples/JetBoy                     samples/${PLATFORM_NAME}/legacy/JetBoy
development/samples/KeyChainDemo               samples/${PLATFORM_NAME}/legacy/KeyChainDemo
development/samples/LunarLander                samples/${PLATFORM_NAME}/legacy/LunarLander
development/samples/MultiResolution            samples/${PLATFORM_NAME}/legacy/MultiResolution
development/samples/NotePad                    samples/${PLATFORM_NAME}/legacy/NotePad
development/samples/RandomMusicPlayer          samples/${PLATFORM_NAME}/legacy/RandomMusicPlayer
development/samples/SpellChecker/SampleSpellCheckerService samples/${PLATFORM_NAME}/legacy/SpellChecker/SampleSpellCheckerService
development/samples/SpellChecker/HelloSpellChecker         samples/${PLATFORM_NAME}/legacy/SpellChecker/HelloSpellChecker
development/samples/SampleSyncAdapter          samples/${PLATFORM_NAME}/legacy/SampleSyncAdapter
development/samples/SearchableDictionary       samples/${PLATFORM_NAME}/legacy/SearchableDictionary
development/samples/SipDemo                    samples/${PLATFORM_NAME}/legacy/SipDemo
development/samples/SkeletonApp                samples/${PLATFORM_NAME}/legacy/SkeletonApp
development/samples/Snake                      samples/${PLATFORM_NAME}/legacy/Snake
development/samples/SoftKeyboard               samples/${PLATFORM_NAME}/legacy/SoftKeyboard
development/samples/Spinner                    samples/${PLATFORM_NAME}/legacy/Spinner
development/samples/SpinnerTest                samples/${PLATFORM_NAME}/legacy/SpinnerTest
development/samples/TicTacToeLib               samples/${PLATFORM_NAME}/legacy/TicTacToeLib
development/samples/TicTacToeMain              samples/${PLATFORM_NAME}/legacy/TicTacToeMain
development/samples/TtsEngine                  samples/${PLATFORM_NAME}/legacy/TtsEngine
development/samples/ToyVpn                     samples/${PLATFORM_NAME}/legacy/ToyVpn
development/samples/UiAutomator                samples/${PLATFORM_NAME}/legacy/UiAutomator
development/samples/USB/MissileLauncher        samples/${PLATFORM_NAME}/legacy/USB/MissileLauncher
development/samples/USB/AdbTest                samples/${PLATFORM_NAME}/legacy/USB/AdbTest
development/samples/VoiceRecognitionService    samples/${PLATFORM_NAME}/legacy/VoiceRecognitionService
development/samples/VoicemailProviderDemo      samples/${PLATFORM_NAME}/legacy/VoicemailProviderDemo
development/samples/WeatherListWidget          samples/${PLATFORM_NAME}/legacy/WeatherListWidget
development/apps/WidgetPreview                 samples/${PLATFORM_NAME}/legacy/WidgetPreview
development/samples/WiFiDirectDemo             samples/${PLATFORM_NAME}/legacy/WiFiDirectDemo
development/samples/WiFiDirectServiceDiscovery samples/${PLATFORM_NAME}/legacy/WiFiDirectServiceDiscovery
development/samples/Wiktionary                 samples/${PLATFORM_NAME}/legacy/Wiktionary
development/samples/WiktionarySimple           samples/${PLATFORM_NAME}/legacy/WiktionarySimple
development/samples/XmlAdapters                samples/${PLATFORM_NAME}/legacy/XmlAdapters
development/samples/RenderScript/HelloCompute  samples/${PLATFORM_NAME}/legacy/RenderScript/HelloCompute

# NOTICE files are copied by build/core/Makefile from sdk.git
sdk/files/sdk_files_NOTICE.txt                 samples/${PLATFORM_NAME}/NOTICE.txt

##############################################################################
# Add-on Folder
##############################################################################

# empty add-on folder with just a readme copied from sdk.git
sdk/files/README_add-ons.txt add-ons/README.txt


##############################################################################
# Extra Component: Support
##############################################################################

development/sdk/support_source.properties                                                         extras/android/support/source.properties
development/sdk/support_README.txt                                                                extras/android/support/README.txt
sdk/files/sdk_files_NOTICE.txt                                                                    extras/android/support/NOTICE.txt

${OUT_DIR}/target/common/obj/PACKAGING/android-support-v4_intermediates/android-support-v4.jar    extras/android/support/v4/android-support-v4.jar
frameworks/support/v4                                                                             extras/android/support/v4/src
development/samples/Support4Demos                                                                 extras/android/support/samples/Support4Demos
development/samples/SupportAppNavigation                                                          extras/android/support/samples/SupportAppNavigation

${OUT_DIR}/target/common/obj/PACKAGING/android-support-v13_intermediates/android-support-v13.jar  extras/android/support/v13/android-support-v13.jar
frameworks/support/v13                                                                            extras/android/support/v13/src
development/samples/Support13Demos                                                                extras/android/support/samples/Support13Demos

frameworks/support/v7/gridlayout/README.txt                                                       extras/android/support/v7/gridlayout/README.txt
frameworks/support/v7/gridlayout/.project                                                         extras/android/support/v7/gridlayout/.project
frameworks/support/v7/gridlayout/.classpath                                                       extras/android/support/v7/gridlayout/.classpath
frameworks/support/v7/gridlayout/AndroidManifest.xml                                              extras/android/support/v7/gridlayout/AndroidManifest.xml
frameworks/support/v7/gridlayout/project.properties                                               extras/android/support/v7/gridlayout/project.properties
frameworks/support/v7/gridlayout/res                                                              extras/android/support/v7/gridlayout/res
frameworks/support/v7/gridlayout/src/.readme                                                      extras/android/support/v7/gridlayout/src/.readme
${OUT_DIR}/target/common/obj/PACKAGING/android-support-v7-gridlayout_intermediates/android-support-v7-gridlayout.jar    extras/android/support/v7/gridlayout/libs/android-support-v7-gridlayout.jar

frameworks/support/v7/appcompat/README.txt                                                        extras/android/support/v7/appcompat/README.txt
frameworks/support/v7/appcompat/.project                                                          extras/android/support/v7/appcompat/.project
frameworks/support/v7/appcompat/.classpath                                                        extras/android/support/v7/appcompat/.classpath
frameworks/support/v7/appcompat/AndroidManifest.xml                                               extras/android/support/v7/appcompat/AndroidManifest.xml
frameworks/support/v7/appcompat/project.properties                                                extras/android/support/v7/appcompat/project.properties
frameworks/support/v7/appcompat/res                                                               extras/android/support/v7/appcompat/res
frameworks/support/v7/appcompat/src/.readme                                                       extras/android/support/v7/appcompat/src/.readme
${OUT_DIR}/target/common/obj/PACKAGING/android-support-v7-appcompat_intermediates/android-support-v7-appcompat.jar    extras/android/support/v7/appcompat/libs/android-support-v7-appcompat.jar
${OUT_DIR}/target/common/obj/PACKAGING/android-support-v4_intermediates/android-support-v4.jar                        extras/android/support/v7/appcompat/libs/android-support-v4.jar

frameworks/multidex/library/README.txt                                                            extras/android/support/multidex/library/README.txt
frameworks/multidex/library/.project                                                              extras/android/support/multidex/library/.project
frameworks/multidex/library/.classpath                                                            extras/android/support/multidex/library/.classpath
frameworks/multidex/library/AndroidManifest.xml                                                   extras/android/support/multidex/library/AndroidManifest.xml
frameworks/multidex/library/project.properties                                                    extras/android/support/multidex/library/project.properties
frameworks/multidex/library/src/.readme                                                           extras/android/support/multidex/library/src/.readme
frameworks/multidex/library/res/.readme                                                           extras/android/support/multidex/library/res/.readme
${OUT_DIR}/target/common/obj/PACKAGING/android-support-multidex_intermediates/android-support-multidex.jar              extras/android/support/multidex/library/libs/android-support-multidex.jar

frameworks/multidex/instrumentation/README.txt                                                         extras/android/support/multidex/instrumentation/README.txt
frameworks/multidex/instrumentation/.project                                                           extras/android/support/multidex/instrumentation/.project
frameworks/multidex/instrumentation/.classpath                                                         extras/android/support/multidex/instrumentation/.classpath
frameworks/multidex/instrumentation/AndroidManifest.xml                                                extras/android/support/multidex/instrumentation/AndroidManifest.xml
frameworks/multidex/instrumentation/project.properties                                                 extras/android/support/multidex/instrumentation/project.properties
frameworks/multidex/instrumentation/src/.readme                                                        extras/android/support/multidex/instrumentation/src/.readme
frameworks/multidex/instrumentation/res/.readme                                                        extras/android/support/multidex/instrumentation/res/.readme
${OUT_DIR}/target/common/obj/PACKAGING/android-support-multidex-instrumentation_intermediates/android-support-multidex-instrumentation.jar      extras/android/support/multidex/instrumentation/libs/android-support-multidex-instrumentation.jar
${OUT_DIR}/target/common/obj/PACKAGING/android-support-multidex_intermediates/android-support-multidex.jar                                      extras/android/support/multidex/instrumentation/libs/android-support-multidex.jar

frameworks/support/v7/mediarouter/README.txt                                                       extras/android/support/v7/mediarouter/README.txt
frameworks/support/v7/mediarouter/.project                                                         extras/android/support/v7/mediarouter/.project
frameworks/support/v7/mediarouter/.classpath                                                       extras/android/support/v7/mediarouter/.classpath
frameworks/support/v7/mediarouter/AndroidManifest.xml                                              extras/android/support/v7/mediarouter/AndroidManifest.xml
frameworks/support/v7/mediarouter/project.properties                                               extras/android/support/v7/mediarouter/project.properties
frameworks/support/v7/mediarouter/res                                                              extras/android/support/v7/mediarouter/res
frameworks/support/v7/mediarouter/src/.readme                                                      extras/android/support/v7/mediarouter/src/.readme
${OUT_DIR}/target/common/obj/PACKAGING/android-support-v7-mediarouter_intermediates/android-support-v7-mediarouter.jar    extras/android/support/v7/mediarouter/libs/android-support-v7-mediarouter.jar

development/samples/Support7Demos                                                                 extras/android/support/samples/Support7Demos

##############################################################################
# Tests Component
##############################################################################
framework/layoutlib-tests.jar tests/libtests/layoutlib-tests.jar
system/app/EmulatorSmokeTests.apk tests/emulator-test-apps/EmulatorSmokeTests.apk

