#
# 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.
#

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

# the readme
development/docs/SDK_RELEASE_NOTES RELEASE_NOTES.html

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


##############################################################################
# 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

# Main Public API jar
${OUT_DIR}/target/common/obj/PACKAGING/android_jar_intermediates/android.jar            platforms/${PLATFORM_NAME}/android.jar
${OUT_DIR}/target/common/obj/PACKAGING/android_jar_intermediates/android-stubs-src.jar  platforms/${PLATFORM_NAME}/android-stubs-src.jar

# core-for-system-modules.jar for building system modules
${OUT_DIR}/target/common/obj/JAVA_LIBRARIES/core-current-stubs-for-system-modules-exportable_intermediates/classes.jar    platforms/${PLATFORM_NAME}/core-for-system-modules.jar

# optional API files.
development/build/optional.json                                                               platforms/${PLATFORM_NAME}/optional/optional.json
${OUT_DIR}/target/common/obj/JAVA_LIBRARIES/org.apache.http.legacy.stubs_intermediates/classes.jar  platforms/${PLATFORM_NAME}/optional/org.apache.http.legacy.jar
# deprecated APIs
${OUT_DIR}/target/common/obj/JAVA_LIBRARIES/android_uiautomator_intermediates/classes.jar     platforms/${PLATFORM_NAME}/uiautomator.jar
# Android Automotive OS stubs.
${OUT_DIR}/target/common/obj/JAVA_LIBRARIES/android.car-stubs_intermediates/classes.jar         platforms/${PLATFORM_NAME}/optional/android.car.jar
# Test APIs
${OUT_DIR}/target/common/obj/JAVA_LIBRARIES/android.test.mock.stubs_intermediates/classes.jar   platforms/${PLATFORM_NAME}/optional/android.test.mock.jar
${OUT_DIR}/target/common/obj/JAVA_LIBRARIES/android.test.base.stubs_intermediates/classes.jar   platforms/${PLATFORM_NAME}/optional/android.test.base.jar
${OUT_DIR}/target/common/obj/JAVA_LIBRARIES/android.test.runner.stubs_intermediates/classes.jar platforms/${PLATFORM_NAME}/optional/android.test.runner.jar

# the aidl precompiled include
${OUT_DIR}/target/common/obj/PACKAGING/framework.aidl                                        platforms/${PLATFORM_NAME}/framework.aidl
# the libbinder_ndk C++ library files associated with the AIDL compiler
frameworks/native/libs/binder/ndk/include_cpp/                                               platforms/${PLATFORM_NAME}/optional/libbinder_ndk_cpp/

# 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

# API database for tools such as lint
${OUT_DIR}/target/common/obj/PACKAGING/api_versions_public_generated-api-versions.xml  platforms/${PLATFORM_NAME}/data/api-versions.xml

# API annotations database for lint
prebuilts/sdk/sdk-annotations/annotations.zip platforms/${PLATFORM_NAME}/data/annotations.zip
${OUT_DIR}/target/common/obj/PACKAGING/sdk-annotations.zip platforms/${PLATFORM_NAME}/data/annotations.zip

# Eclipse Editors support
frameworks/base/core/res/res              platforms/${PLATFORM_NAME}/data/res
${OUT_DIR}/target/common/obj/PACKAGING/framework-doc-stubs-metadata_intermediates/activity_actions.txt   platforms/${PLATFORM_NAME}/data/activity_actions.txt
${OUT_DIR}/target/common/obj/PACKAGING/framework-doc-stubs-metadata_intermediates/broadcast_actions.txt  platforms/${PLATFORM_NAME}/data/broadcast_actions.txt
${OUT_DIR}/target/common/obj/PACKAGING/framework-doc-stubs-metadata_intermediates/service_actions.txt    platforms/${PLATFORM_NAME}/data/service_actions.txt
${OUT_DIR}/target/common/obj/PACKAGING/framework-doc-stubs-metadata_intermediates/categories.txt         platforms/${PLATFORM_NAME}/data/categories.txt
${OUT_DIR}/target/common/obj/PACKAGING/framework-doc-stubs-metadata_intermediates/widgets.txt            platforms/${PLATFORM_NAME}/data/widgets.txt
${OUT_DIR}/target/common/obj/PACKAGING/framework-doc-stubs-metadata_intermediates/features.txt           platforms/${PLATFORM_NAME}/data/features.txt

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


##############################################################################
# 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/ShareActionProvider/                       samples/${PLATFORM_NAME}/ui/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/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
developers/build/prebuilts/gradle/DisplayingBitmaps                          samples/${PLATFORM_NAME}/ui/DisplayingBitmaps
developers/build/prebuilts/gradle/BasicTransition                            samples/${PLATFORM_NAME}/ui/BasicTransition
developers/build/prebuilts/gradle/CustomTransition                           samples/${PLATFORM_NAME}/ui/CustomTransition
developers/build/prebuilts/gradle/SwipeRefreshLayoutBasic                    samples/${PLATFORM_NAME}/ui/SwipeRefreshLayoutBasic
developers/build/prebuilts/gradle/SwipeRefreshListFragment                   samples/${PLATFORM_NAME}/ui/SwipeRefreshListFragment
developers/build/prebuilts/gradle/SwipeRefreshMultipleViews                  samples/${PLATFORM_NAME}/ui/SwipeRefreshMultipleViews
developers/build/prebuilts/gradle/MediaRouter                                samples/${PLATFORM_NAME}/media/MediaRouter
developers/build/prebuilts/gradle/BluetoothChat                              samples/${PLATFORM_NAME}/connectivity/bluetooth/BluetoothChat
developers/build/prebuilts/gradle/MediaEffects                               samples/${PLATFORM_NAME}/media/MediaEffects
developers/build/prebuilts/gradle/BasicManagedProfile                        samples/${PLATFORM_NAME}/admin/BasicManagedProfile
developers/build/prebuilts/gradle/Camera2Basic                               samples/${PLATFORM_NAME}/media/Camera2Basic
developers/build/prebuilts/gradle/Camera2Video                               samples/${PLATFORM_NAME}/media/Camera2Video
developers/build/prebuilts/gradle/ActivitySceneTransitionBasic               samples/${PLATFORM_NAME}/ui/activityscenetransition/ActivitySceneTransitionBasic
developers/build/prebuilts/gradle/NavigationDrawer                           samples/${PLATFORM_NAME}/ui/views/NavigationDrawer
developers/build/prebuilts/gradle/ElevationBasic                             samples/${PLATFORM_NAME}/ui/views/Elevation/ElevationBasic
developers/build/prebuilts/gradle/ElevationDrag                              samples/${PLATFORM_NAME}/ui/views/Elevation/ElevationDrag
developers/build/prebuilts/gradle/ClippingBasic                              samples/${PLATFORM_NAME}/ui/views/Clipping/ClippingBasic
developers/build/prebuilts/gradle/JobScheduler                               samples/${PLATFORM_NAME}/background/JobScheduler
developers/build/prebuilts/gradle/DocumentCentricApps                        samples/${PLATFORM_NAME}/ui/activitytasks/DocumentCentricApps
developers/build/prebuilts/gradle/DocumentCentricRelinquishIdentity          samples/${PLATFORM_NAME}/ui/activitytasks/DocumentCentricRelinquishIdentity
developers/build/prebuilts/gradle/AppRestrictionEnforcer                     samples/${PLATFORM_NAME}/admin/AppRestrictionEnforcer
developers/build/prebuilts/gradle/AppRestrictionSchema                       samples/${PLATFORM_NAME}/admin/AppRestrictionSchema
developers/build/prebuilts/gradle/RecyclerView                               samples/${PLATFORM_NAME}/ui/views/RecyclerView
developers/build/prebuilts/gradle/CardView                                   samples/${PLATFORM_NAME}/ui/views/CardView
developers/build/prebuilts/gradle/LNotifications                             samples/${PLATFORM_NAME}/ui/notifications/LNotifications
developers/build/prebuilts/gradle/DrawableTinting                            samples/${PLATFORM_NAME}/ui/DrawableTinting
developers/build/prebuilts/gradle/Interpolator                               samples/${PLATFORM_NAME}/ui/Interpolator
developers/build/prebuilts/gradle/PdfRendererBasic                           samples/${PLATFORM_NAME}/ui/graphics/PdfRendererBasic
developers/build/prebuilts/gradle/FloatingActionButtonBasic                  samples/${PLATFORM_NAME}/ui/views/FloatingActionButton/FloatingActionButtonBasic
developers/build/prebuilts/gradle/RevealEffectBasic                          samples/${PLATFORM_NAME}/ui/views/RevealEffect/RevealEffectBasic
developers/build/prebuilts/gradle/PermissionRequest                          samples/${PLATFORM_NAME}/content/webview/PermissionRequest
developers/build/prebuilts/gradle/DirectorySelection                         samples/${PLATFORM_NAME}/content/documentsUi/DirectorySelection
developers/build/prebuilts/gradle/AppUsageStatistics                         samples/${PLATFORM_NAME}/system/AppUsageStatistics
developers/build/prebuilts/gradle/ScreenCapture                              samples/${PLATFORM_NAME}/media/ScreenCapture
developers/build/prebuilts/gradle/NfcProvisioning                            samples/${PLATFORM_NAME}/nfc/NfcProvisioning
developers/build/prebuilts/gradle/DeviceOwner                                samples/${PLATFORM_NAME}/admin/DeviceOwner
developers/build/prebuilts/gradle/ConfirmCredential                          samples/${PLATFORM_NAME}/security/ConfirmCredential
developers/build/prebuilts/gradle/FingerprintDialog                          samples/${PLATFORM_NAME}/security/FingerprintDialog
developers/build/prebuilts/gradle/RuntimePermissions                         samples/${PLATFORM_NAME}/system/RuntimePermissions
developers/build/prebuilts/gradle/RuntimePermissionsBasic                    samples/${PLATFORM_NAME}/system/RuntimePermissionsBasic
developers/build/prebuilts/gradle/ActiveNotifications                        samples/${PLATFORM_NAME}/notification/ActiveNotifications
developers/build/prebuilts/gradle/Camera2Raw                                 samples/${PLATFORM_NAME}/media/Camera2Raw
developers/build/prebuilts/gradle/AutoBackupForApps                          samples/${PLATFORM_NAME}/content/AutoBackupForApps
developers/build/prebuilts/gradle/DirectShare                                samples/${PLATFORM_NAME}/content/DirectShare
developers/build/prebuilts/gradle/MidiScope                                  samples/${PLATFORM_NAME}/media/MidiScope
developers/build/prebuilts/gradle/MidiSynth                                  samples/${PLATFORM_NAME}/media/MidiSynth
developers/build/prebuilts/gradle/AsymmetricFingerprintDialog                samples/${PLATFORM_NAME}/security/AsymmetricFingerprintDialog
developers/build/prebuilts/gradle/AppShortcuts                               samples/${PLATFORM_NAME}/system/AppShortcuts
developers/build/prebuilts/gradle/CommitContentSampleApp                     samples/${PLATFORM_NAME}/input/keyboard/CommitContentSampleApp
developers/build/prebuilts/gradle/CommitContentSampleIME                     samples/${PLATFORM_NAME}/input/keyboard/CommitContentSampleIME

developers/build/prebuilts/androidtv                                         samples/${PLATFORM_NAME}/androidtv

# Wearable sample tree
developers/build/prebuilts/gradle/AgendaData                    samples/${PLATFORM_NAME}/wearable/AgendaData
developers/build/prebuilts/gradle/DataLayer                     samples/${PLATFORM_NAME}/wearable/DataLayer
developers/build/prebuilts/gradle/DelayedConfirmation           samples/${PLATFORM_NAME}/wearable/DelayedConfirmation
developers/build/prebuilts/gradle/ElizaChat                     samples/${PLATFORM_NAME}/wearable/ElizaChat
developers/build/prebuilts/gradle/FindMyPhone                   samples/${PLATFORM_NAME}/wearable/FindMyPhone
developers/build/prebuilts/gradle/Flashlight                    samples/${PLATFORM_NAME}/wearable/Flashlight
developers/build/prebuilts/gradle/Geofencing                    samples/${PLATFORM_NAME}/wearable/Geofencing
developers/build/prebuilts/gradle/GridViewPager                 samples/${PLATFORM_NAME}/wearable/GridViewPager
developers/build/prebuilts/gradle/JumpingJack                   samples/${PLATFORM_NAME}/wearable/JumpingJack
developers/build/prebuilts/gradle/Notifications                 samples/${PLATFORM_NAME}/wearable/Notifications
developers/build/prebuilts/gradle/Quiz                          samples/${PLATFORM_NAME}/wearable/Quiz
developers/build/prebuilts/gradle/RecipeAssistant               samples/${PLATFORM_NAME}/wearable/RecipeAssistant
developers/build/prebuilts/gradle/RuntimePermissionsWear        samples/${PLATFORM_NAME}/wearable/RuntimePermissionsWear
developers/build/prebuilts/gradle/SkeletonWearableApp           samples/${PLATFORM_NAME}/wearable/SkeletonWearableApp
developers/build/prebuilts/gradle/SpeedTracker                  samples/${PLATFORM_NAME}/wearable/SpeedTracker
developers/build/prebuilts/gradle/SynchronizedNotifications     samples/${PLATFORM_NAME}/wearable/SynchronizedNotifications
developers/build/prebuilts/gradle/Timer                         samples/${PLATFORM_NAME}/wearable/Timer
developers/build/prebuilts/gradle/WatchFace                     samples/${PLATFORM_NAME}/wearable/WatchFace
developers/build/prebuilts/gradle/WatchViewStub                 samples/${PLATFORM_NAME}/wearable/WatchViewStub
developers/build/prebuilts/gradle/WearNotifications             samples/${PLATFORM_NAME}/wearable/WearNotifications
developers/build/prebuilts/gradle/WearSpeakerSample             samples/${PLATFORM_NAME}/wearable/WearSpeakerSample
developers/build/prebuilts/gradle/XYZTouristAttractions         samples/${PLATFORM_NAME}/wearable/XYZTouristAttractions

# Old sample tree
development/samples/AccelerometerPlay          samples/${PLATFORM_NAME}/legacy/AccelerometerPlay
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/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/LceDemo                    samples/${PLATFORM_NAME}/legacy/LceDemo
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/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

# NOTICE files are copied by build/core/Makefile from sdk.git
development/sdk/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

##############################################################################
# Tests Component
##############################################################################
