blob: d969d88c23dfec7157acb0bfdedb4ffe493b61a6 [file] [log] [blame]
Chris Banese17c5192016-06-01 13:36:05 +01001/////////////////////////////
2//
Jeff Gastoncfc647a2018-01-29 17:19:41 -05003// Buildscript utils
4//
5/////////////////////////////
6
7
8// Calling includeProject(name, filePath) is shorthand for:
9//
10// include(name)
11// project(name).projectDir = new File(filePath)
12//
13// Note that <name> directly controls the Gradle project name, and also indirectly sets:
14// the project name in the IDE
15// the Maven artifactId
16//
17def includeProject(name, filePath) {
Aurimas Liutikas15dadc52018-02-13 10:17:58 -080018 settings.include(name)
Jeff Gastoncfc647a2018-01-29 17:19:41 -050019
Aurimas Liutikas15dadc52018-02-13 10:17:58 -080020 def file
21 if (filePath instanceof String) {
22 file = new File(filePath)
23 } else {
24 file = filePath
25 }
26 project(name).projectDir = file
Jeff Gastoncfc647a2018-01-29 17:19:41 -050027}
28
29
Jeff Gastoncfc647a2018-01-29 17:19:41 -050030/////////////////////////////
31//
Chris Banese17c5192016-06-01 13:36:05 +010032// Libraries
33//
34/////////////////////////////
35
Aurimas Liutikase8fcac12018-03-14 17:10:10 -070036includeProject(":annotation", "annotations")
Aurimas Liutikasac5fe7c2018-03-06 14:40:53 -080037includeProject(":appcompat", "v7/appcompat")
Aurimas Liutikas9064fa42018-02-13 15:17:37 -080038includeProject(":asynclayoutinflater", "asynclayoutinflater")
Aurimas Liutikase8fcac12018-03-14 17:10:10 -070039includeProject(":browser", "browser")
Jeff Gastoncfc647a2018-01-29 17:19:41 -050040includeProject(":car", "car")
Jake Whartone94ca662018-03-09 09:50:16 -050041includeProject(":cardview", "cardview")
Jake Wharton3f4d91b2018-03-08 12:23:52 -050042includeProject(":collection", "collection")
Jake Whartonb9b8af22018-03-15 16:54:55 -040043includeProject(":collection-ktx", "collection/ktx")
Aurimas Liutikase8fcac12018-03-14 17:10:10 -070044includeProject(":contentpaging", "content")
Aurimas Liutikasd4219a72018-02-08 16:00:17 -080045includeProject(":coordinatorlayout", "coordinatorlayout")
Aurimas Liutikase8fcac12018-03-14 17:10:10 -070046includeProject(":core", "compat")
Jake Wharton6889aa52018-03-28 16:04:32 -040047includeProject(":core-ktx", "core/ktx")
Aurimas Liutikasfa72a482018-02-21 11:48:48 -080048includeProject(":cursoradapter", "cursoradapter")
Aurimas Liutikas2ffc5792018-02-09 17:17:47 -080049includeProject(":customview", "customview")
Aurimas Liutikas9d274e12018-02-13 17:57:56 -080050includeProject(":documentfile", "documentfile")
Aurimas Liutikas629ed7f2018-02-12 14:47:46 -080051includeProject(":drawerlayout", "drawerlayout")
Aurimas Liutikase8fcac12018-03-14 17:10:10 -070052includeProject(":dynamicanimation", "dynamic-animation")
53includeProject(":emoji", "emoji/core")
54includeProject(":emoji-bundled", "emoji/bundled")
55includeProject(":emoji-appcompat", "emoji/appcompat")
Aurimas Liutikas15dadc52018-02-13 10:17:58 -080056includeProject(":exifinterface", "exifinterface")
Aurimas Liutikase8fcac12018-03-14 17:10:10 -070057includeProject(":fragment", "fragment")
Jake Whartone94ca662018-03-09 09:50:16 -050058includeProject(":gridlayout", "gridlayout")
Chong Zhang7cabcac2018-01-25 16:18:44 -080059includeProject(":heifwriter", "heifwriter")
Aurimas Liutikas368a8e52018-02-13 09:55:20 -080060includeProject(":interpolator", "interpolator")
Jeff Gastona2208ae2018-01-29 17:48:21 -050061includeProject(":jetifier-core", "jetifier/jetifier/core")
Filip Pavlis4a360e32018-03-23 18:42:42 +000062includeProject(":jetifier-processor", "jetifier/jetifier/processor")
Jeff Gastona2208ae2018-01-29 17:48:21 -050063includeProject(":jetifier-gradle-plugin", "jetifier/jetifier/gradle-plugin")
64includeProject(":jetifier-standalone", "jetifier/jetifier/standalone")
65includeProject(":jetifier-preprocessor", "jetifier/jetifier/preprocessor")
Aurimas Liutikasac5fe7c2018-03-06 14:40:53 -080066includeProject(":leanback", "leanback")
Aurimas Liutikase8fcac12018-03-14 17:10:10 -070067includeProject(":leanback-preference", "leanback-preference")
Ian Lake2e772972018-02-16 16:22:47 -080068includeProject(":loader", "loader")
Aurimas Liutikas9c9c4642018-02-13 18:26:36 -080069includeProject(":localbroadcastmanager", "localbroadcastmanager")
Aurimas Liutikase8fcac12018-03-14 17:10:10 -070070includeProject(":media", "media")
Jin Seok Park3aa13ea2018-04-09 17:18:07 +090071includeProject(":media-widget", "media-widget")
Jake Whartone94ca662018-03-09 09:50:16 -050072includeProject(":mediarouter", "mediarouter")
73includeProject(":palette", "palette")
Jake Whartonb9b8af22018-03-15 16:54:55 -040074includeProject(":palette-ktx", "palette/ktx")
Aurimas Liutikasac5fe7c2018-03-06 14:40:53 -080075includeProject(":percentlayout", "percent")
Jake Whartone94ca662018-03-09 09:50:16 -050076includeProject(":preference", "preference")
Aurimas Liutikasa00210b2018-02-13 18:40:38 -080077includeProject(":print", "print")
Aurimas Liutikas15dadc52018-02-13 10:17:58 -080078includeProject(":recommendation", "recommendation")
Aurimas Liutikasac5fe7c2018-03-06 14:40:53 -080079includeProject(":recyclerview", "v7/recyclerview")
Aurimas Liutikas15dadc52018-02-13 10:17:58 -080080includeProject(":recyclerview-selection", "recyclerview-selection")
Aurimas Liutikas4d33d5f2018-04-10 11:09:27 -070081includeProject(":slice-core", "slices/core")
82includeProject(":slice-view", "slices/view")
83includeProject(":slice-builders", "slices/builders")
Aurimas Liutikas0888e162018-02-12 14:59:46 -080084includeProject(":slidingpanelayout", "slidingpanelayout")
Jake Wharton50a6d032018-03-15 15:16:17 -040085includeProject(":fragment-ktx", "fragment/ktx")
Aurimas Liutikas368a8e52018-02-13 09:55:20 -080086includeProject(":swiperefreshlayout", "swiperefreshlayout")
Aurimas Liutikas15dadc52018-02-13 10:17:58 -080087includeProject(":textclassifier", "textclassifier")
88includeProject(":transition", "transition")
Aurimas Liutikase8fcac12018-03-14 17:10:10 -070089includeProject(":tvprovider", "tv-provider")
90includeProject(":vectordrawable", "graphics/drawable/static")
91includeProject(":vectordrawable-animated", "graphics/drawable/animated")
Aurimas Liutikasf1efe442018-02-08 14:21:20 -080092includeProject(":viewpager", "viewpager")
Aurimas Liutikas15dadc52018-02-13 10:17:58 -080093includeProject(":viewpager2", "viewpager2")
94includeProject(":wear", "wear")
95includeProject(":webkit", "webkit")
96includeProject(":webkit-codegen", "webkit-codegen")
Gustav Sennton18f68e72017-12-15 12:00:40 +000097
Chris Banese17c5192016-06-01 13:36:05 +010098/////////////////////////////
99//
Jake Wharton65c15e12018-03-08 12:56:46 -0500100// Legacy
101//
102/////////////////////////////
103
104includeProject(":legacy-support-core-ui", "legacy/core-ui")
105includeProject(":legacy-support-core-utils", "legacy/core-utils")
106includeProject(":legacy-support-v4", "legacy/v4")
107includeProject(":legacy-support-v13", "legacy/v13")
108includeProject(":legacy-preference-v14", "legacy/preference-v14")
109
110/////////////////////////////
111//
Chris Banese17c5192016-06-01 13:36:05 +0100112// Samples
113//
114/////////////////////////////
115
Jeff Gastoncfc647a2018-01-29 17:19:41 -0500116File samplesRoot = new File(rootDir, "samples")
Chris Banese17c5192016-06-01 13:36:05 +0100117
Aurimas Liutikas15dadc52018-02-13 10:17:58 -0800118includeProject(":support-animation-demos", new File(samplesRoot, "SupportAnimationDemos"))
119includeProject(":support-app-navigation", new File(samplesRoot, "SupportAppNavigation"))
Aurimas Liutikasf27b1ff2018-03-06 22:38:27 +0000120includeProject(":support-car-demos", new File(samplesRoot, "SupportCarDemos"))
Jeff Gastoncfc647a2018-01-29 17:19:41 -0500121includeProject(":support-content-demos", new File(samplesRoot, "SupportContentDemos"))
Aurimas Liutikasf27b1ff2018-03-06 22:38:27 +0000122includeProject(":support-design-demos", new File(samplesRoot, "SupportDesignDemos"))
Aurimas Liutikas15dadc52018-02-13 10:17:58 -0800123includeProject(":support-emoji-demos", new File(samplesRoot, "SupportEmojiDemos"))
Jeff Gastoncfc647a2018-01-29 17:19:41 -0500124includeProject(":support-leanback-demos", new File(samplesRoot, "SupportLeanbackDemos"))
Aurimas Liutikas690af252018-03-20 09:55:04 -0700125//includeProject(":support-leanback-jank", new File(samplesRoot, "SupportLeanbackJank"))
Insun Kangbc048d02018-04-13 03:41:13 +0900126includeProject(":support-media-demos", new File(samplesRoot, "SupportMediaDemos"))
Jeff Gastoncfc647a2018-01-29 17:19:41 -0500127includeProject(":support-percent-demos", new File(samplesRoot, "SupportPercentDemos"))
128includeProject(":support-preference-demos", new File(samplesRoot, "SupportPreferenceDemos"))
Aurimas Liutikas15dadc52018-02-13 10:17:58 -0800129includeProject(":support-slices-demos", new File(samplesRoot, "SupportSliceDemos"))
Jeff Gastoncfc647a2018-01-29 17:19:41 -0500130includeProject(":support-transition-demos", new File(samplesRoot, "SupportTransitionDemos"))
Aurimas Liutikas15dadc52018-02-13 10:17:58 -0800131includeProject(":support-vector-drawable-demos", new File(samplesRoot, "SupportVectorDrawableDemos"))
Jeff Gastoncfc647a2018-01-29 17:19:41 -0500132includeProject(":support-v4-demos", new File(samplesRoot, "Support4Demos"))
133includeProject(":support-v7-demos", new File(samplesRoot, "Support7Demos"))
134includeProject(":support-v13-demos", new File(samplesRoot, "Support13Demos"))
Jeff Gastoncfc647a2018-01-29 17:19:41 -0500135includeProject(":support-wear-demos", new File(samplesRoot, "SupportWearDemos"))
Aurimas Liutikas15dadc52018-02-13 10:17:58 -0800136includeProject(":viewpager2-demos", new File(samplesRoot, "ViewPager2Demos"))
Jason Monkb2c45792017-12-14 17:30:21 -0500137
Alan Viverettecc5197e2016-06-13 12:45:07 -0400138/////////////////////////////
139//
Aurimas Liutikas6d20a522017-03-10 17:13:03 -0800140// Testing libraries
141//
142/////////////////////////////
143
Aurimas Liutikas67171c82018-02-27 13:10:25 -0800144includeProject(":internal-testutils", "testutils")
Jake Whartonbf04c312018-03-09 13:50:42 -0500145includeProject(":internal-testutils-ktx", "testutils-ktx")
Aurimas Liutikas6d20a522017-03-10 17:13:03 -0800146
147/////////////////////////////
148//
Hyundo Moonda9ee6b2017-07-21 14:32:12 +0900149// Applications and libraries for tests
Hyundo Moon72e64db2017-07-20 14:09:13 +0900150//
151/////////////////////////////
152
Jake Wharton0efa1d52018-03-09 11:37:18 -0500153includeProject(":support-media-compat-test-client", "media/version-compat-tests/current/client")
154includeProject(":support-media-compat-test-client-previous", "media/version-compat-tests/previous/client")
155includeProject(":support-media-compat-test-service", "media/version-compat-tests/current/service")
156includeProject(":support-media-compat-test-service-previous", "media/version-compat-tests/previous/service")
157includeProject(":support-media-compat-test-lib", "media/version-compat-tests/lib")
Hyundo Moonda9ee6b2017-07-21 14:32:12 +0900158
Hyundo Moon72e64db2017-07-20 14:09:13 +0900159/////////////////////////////
160//
Alan Viverettecc5197e2016-06-13 12:45:07 -0400161// External
162//
163/////////////////////////////
164
Jeff Gastoncfc647a2018-01-29 17:19:41 -0500165apply(from: "include-composite-deps.gradle")
166File externalRoot = new File(rootDir, "../../external")
Alan Viverettecc5197e2016-06-13 12:45:07 -0400167
Jeff Gastoncfc647a2018-01-29 17:19:41 -0500168includeProject(":noto-emoji-compat", new File(externalRoot, "noto-fonts/emoji-compat"))
Gustav Senntonf9916c32018-02-14 14:27:45 +0000169includeProject(":webview-support-interfaces", new File(externalRoot, "webview_support_interfaces"))
Siyamed Sinir75b91312017-04-21 19:10:41 -0700170
Yigit Boyar95c6a872017-03-03 10:54:49 -0800171///// FLATFOOT START
172
Steve McKayc01ec962017-05-23 14:32:58 -0700173///// FLATFOOT END