/////////////////////////////
//
// Libraries
//
/////////////////////////////

include ':support-annotations'
project(':support-annotations').projectDir = new File(rootDir, 'annotations')

include ':support-compat'
project(':support-compat').projectDir = new File(rootDir, 'compat')

include ':support-media-compat'
project(':support-media-compat').projectDir = new File(rootDir, 'media-compat')

include ':support-core-ui'
project(':support-core-ui').projectDir = new File(rootDir, 'core-ui')

include ':support-fragment'
project(':support-fragment').projectDir = new File(rootDir, 'fragment')

include ':support-core-utils'
project(':support-core-utils').projectDir = new File(rootDir, 'core-utils')

include ':support-v4'
project(':support-v4').projectDir = new File(rootDir, 'v4')

include ':appcompat-v7'
project(':appcompat-v7').projectDir = new File(rootDir, 'v7/appcompat')

include ':gridlayout-v7'
project(':gridlayout-v7').projectDir = new File(rootDir, 'v7/gridlayout')

include ':mediarouter-v7'
project(':mediarouter-v7').projectDir = new File(rootDir, 'v7/mediarouter')

include ':palette-v7'
project(':palette-v7').projectDir = new File(rootDir, 'v7/palette')

include ':recyclerview-v7'
project(':recyclerview-v7').projectDir = new File(rootDir, 'v7/recyclerview')

include ':recyclerview-selection'
project(':recyclerview-selection').projectDir = new File(rootDir, 'recyclerview-selection')

include ':cardview-v7'
project(':cardview-v7').projectDir = new File(rootDir, 'v7/cardview')

include ':preference-v7'
project(':preference-v7').projectDir = new File(rootDir, 'v7/preference')

include ':preference-v14'
project(':preference-v14').projectDir = new File(rootDir, 'v14/preference')

include ':preference-leanback-v17'
project(':preference-leanback-v17').projectDir = new File(rootDir, 'preference-leanback')

include ':support-v13'
project(':support-v13').projectDir = new File(rootDir, 'v13')

include ':leanback-v17'
project(':leanback-v17').projectDir = new File(rootDir, 'leanback')

include ':design'
project(':design').projectDir = new File(rootDir, 'design')

include ':percent'
project(':percent').projectDir = new File(rootDir, 'percent')

include ':customtabs'
project(':customtabs').projectDir = new File(rootDir, 'customtabs')

include ':recommendation'
project(':recommendation').projectDir = new File(rootDir, 'recommendation')

include ':support-vector-drawable'
project(':support-vector-drawable').projectDir = new File(rootDir, 'graphics/drawable/static')

include ':animated-vector-drawable'
project(':animated-vector-drawable').projectDir = new File(rootDir, 'graphics/drawable/animated')

include ':transition'
project(':transition').projectDir = new File(rootDir, 'transition')

include ':support-dynamic-animation'
project(':support-dynamic-animation').projectDir = new File(rootDir, 'dynamic-animation')

include ':viewpager2'
project(':viewpager2').projectDir = new File(rootDir, 'viewpager2')

include ':exifinterface'
project(':exifinterface').projectDir = new File(rootDir, 'exifinterface')

include ':wear'
project(':wear').projectDir = new File(rootDir, 'wear')

include ':support-tv-provider'
project(':support-tv-provider').projectDir = new File(rootDir, 'tv-provider')

include ':support-emoji'
project(':support-emoji').projectDir = new File(rootDir, 'emoji/core')

include ':support-emoji-bundled'
project(':support-emoji-bundled').projectDir = new File(rootDir, 'emoji/bundled')

include ':support-emoji-appcompat'
project(':support-emoji-appcompat').projectDir = new File(rootDir, 'emoji/appcompat')

include ':support-content'
project(':support-content').projectDir = new File(rootDir, 'content')

include ':car'
project(':car').projectDir = new File(rootDir, 'car')

include ':webkit'
project(':webkit').projectDir = new File(rootDir, 'webkit')

include ':webkit-codegen'
project(':webkit-codegen').projectDir = new File(rootDir, 'webkit-codegen')

/////////////////////////////
//
// Samples
//
/////////////////////////////

File samplesRoot = new File(rootDir, 'samples')

include ':support-content-demos'
project(':support-content-demos').projectDir = new File(samplesRoot, 'SupportContentDemos')

include ':support-design-demos'
project(':support-design-demos').projectDir = new File(samplesRoot, 'SupportDesignDemos')

include ':support-leanback-demos'
project(':support-leanback-demos').projectDir = new File(samplesRoot, 'SupportLeanbackDemos')

include ':support-leanback-jank'
project(':support-leanback-jank').projectDir = new File(samplesRoot, 'SupportLeanbackJank')

include ':support-percent-demos'
project(':support-percent-demos').projectDir = new File(samplesRoot, 'SupportPercentDemos')

include ':support-preference-demos'
project(':support-preference-demos').projectDir = new File(samplesRoot, 'SupportPreferenceDemos')

include ':support-transition-demos'
project(':support-transition-demos').projectDir = new File(samplesRoot, 'SupportTransitionDemos')

include ':support-v4-demos'
project(':support-v4-demos').projectDir = new File(samplesRoot, 'Support4Demos')

include ':support-v7-demos'
project(':support-v7-demos').projectDir = new File(samplesRoot, 'Support7Demos')

include ':support-v13-demos'
project(':support-v13-demos').projectDir = new File(samplesRoot, 'Support13Demos')

include ':support-vector-drawable-demos'
project(':support-vector-drawable-demos').projectDir = new File(samplesRoot, 'SupportVectorDrawableDemos')

include ':support-animation-demos'
project(':support-animation-demos').projectDir = new File(samplesRoot, 'SupportAnimationDemos')

include ':viewpager2-demos'
project(':viewpager2-demos').projectDir = new File(samplesRoot, 'ViewPager2Demos')

include ':support-wear-demos'
project(':support-wear-demos').projectDir = new File(samplesRoot, 'SupportWearDemos')

include ':support-app-navigation'
project(':support-app-navigation').projectDir = new File(samplesRoot, 'SupportAppNavigation')

include ':support-emoji-demos'
project(':support-emoji-demos').projectDir = new File(samplesRoot, 'SupportEmojiDemos')

include ':support-car-demos'
project(':support-car-demos').projectDir = new File(samplesRoot, 'SupportCarDemos')
/////////////////////////////
//
// Testing libraries
//
/////////////////////////////

include ':support-testutils'
project(':support-testutils').projectDir = new File(rootDir, 'testutils')

/////////////////////////////
//
// Applications and libraries for tests
//
/////////////////////////////

include ':support-media-compat-test-client'
project(':support-media-compat-test-client').projectDir = new File(rootDir, 'media-compat/version-compat-tests/current/client')

include ':support-media-compat-test-client-previous'
project(':support-media-compat-test-client-previous').projectDir = new File(rootDir, 'media-compat/version-compat-tests/previous/client')

include ':support-media-compat-test-service'
project(':support-media-compat-test-service').projectDir = new File(rootDir, 'media-compat/version-compat-tests/current/service')

include ':support-media-compat-test-service-previous'
project(':support-media-compat-test-service-previous').projectDir = new File(rootDir, 'media-compat/version-compat-tests/previous/service')

include ':support-media-compat-test-lib'
project(':support-media-compat-test-lib').projectDir = new File(rootDir, 'media-compat/version-compat-tests/lib')

/////////////////////////////
//
// External
//
/////////////////////////////

File externalRoot = new File(rootDir, '../../external')

includeBuild new File(externalRoot, 'doclava')

includeBuild new File(externalRoot, 'jdiff')

include ':noto-emoji-compat'
project(':noto-emoji-compat').projectDir = new File(externalRoot, 'noto-fonts/emoji-compat')

///// FLATFOOT START

///// FLATFOOT END
