blob: 0ed31e328c1edadb239196513b12eba2820c2923 [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 Liutikasac5fe7c2018-03-06 14:40:53 -080036includeProject(":vectordrawable-animated", "graphics/drawable/animated")
37includeProject(":appcompat", "v7/appcompat")
Aurimas Liutikas9064fa42018-02-13 15:17:37 -080038includeProject(":asynclayoutinflater", "asynclayoutinflater")
Jeff Gastoncfc647a2018-01-29 17:19:41 -050039includeProject(":car", "car")
Jake Whartone94ca662018-03-09 09:50:16 -050040includeProject(":cardview", "cardview")
Jake Wharton3f4d91b2018-03-08 12:23:52 -050041includeProject(":collection", "collection")
Jake Whartonbf04c312018-03-09 13:50:42 -050042includeProject(":collection-ktx", "collection-ktx")
Aurimas Liutikasd4219a72018-02-08 16:00:17 -080043includeProject(":coordinatorlayout", "coordinatorlayout")
Aurimas Liutikasfa72a482018-02-21 11:48:48 -080044includeProject(":cursoradapter", "cursoradapter")
Jake Wharton0efa1d52018-03-09 11:37:18 -050045includeProject(":browser", "browser")
Aurimas Liutikas2ffc5792018-02-09 17:17:47 -080046includeProject(":customview", "customview")
Aurimas Liutikas9d274e12018-02-13 17:57:56 -080047includeProject(":documentfile", "documentfile")
Aurimas Liutikas629ed7f2018-02-12 14:47:46 -080048includeProject(":drawerlayout", "drawerlayout")
Aurimas Liutikas15dadc52018-02-13 10:17:58 -080049includeProject(":exifinterface", "exifinterface")
Jake Whartone94ca662018-03-09 09:50:16 -050050includeProject(":gridlayout", "gridlayout")
Chong Zhang7cabcac2018-01-25 16:18:44 -080051includeProject(":heifwriter", "heifwriter")
Aurimas Liutikas368a8e52018-02-13 09:55:20 -080052includeProject(":interpolator", "interpolator")
Jeff Gastona2208ae2018-01-29 17:48:21 -050053includeProject(":jetifier-core", "jetifier/jetifier/core")
54includeProject(":jetifier-gradle-plugin", "jetifier/jetifier/gradle-plugin")
55includeProject(":jetifier-standalone", "jetifier/jetifier/standalone")
56includeProject(":jetifier-preprocessor", "jetifier/jetifier/preprocessor")
Aurimas Liutikasac5fe7c2018-03-06 14:40:53 -080057includeProject(":leanback", "leanback")
Ian Lake2e772972018-02-16 16:22:47 -080058includeProject(":loader", "loader")
Aurimas Liutikas9c9c4642018-02-13 18:26:36 -080059includeProject(":localbroadcastmanager", "localbroadcastmanager")
Jake Whartone94ca662018-03-09 09:50:16 -050060includeProject(":mediarouter", "mediarouter")
61includeProject(":palette", "palette")
Aurimas Liutikasac5fe7c2018-03-06 14:40:53 -080062includeProject(":percentlayout", "percent")
Jake Whartone94ca662018-03-09 09:50:16 -050063includeProject(":preference", "preference")
Jake Wharton0efa1d52018-03-09 11:37:18 -050064includeProject(":leanback-preference", "leanback-preference")
Aurimas Liutikasa00210b2018-02-13 18:40:38 -080065includeProject(":print", "print")
Aurimas Liutikas15dadc52018-02-13 10:17:58 -080066includeProject(":recommendation", "recommendation")
Aurimas Liutikasac5fe7c2018-03-06 14:40:53 -080067includeProject(":recyclerview", "v7/recyclerview")
Aurimas Liutikas15dadc52018-02-13 10:17:58 -080068includeProject(":recyclerview-selection", "recyclerview-selection")
69includeProject(":slices-core", "slices/core")
70includeProject(":slices-view", "slices/view")
71includeProject(":slices-builders", "slices/builders")
Aurimas Liutikas0888e162018-02-12 14:59:46 -080072includeProject(":slidingpanelayout", "slidingpanelayout")
Aurimas Liutikasac5fe7c2018-03-06 14:40:53 -080073includeProject(":annotation", "annotations")
74includeProject(":core", "compat")
75includeProject(":contentpaging", "content")
Aurimas Liutikasac5fe7c2018-03-06 14:40:53 -080076includeProject(":dynamicanimation", "dynamic-animation")
77includeProject(":emoji", "emoji/core")
78includeProject(":emoji-bundled", "emoji/bundled")
79includeProject(":emoji-appcompat", "emoji/appcompat")
80includeProject(":fragment", "fragment")
Jake Wharton0efa1d52018-03-09 11:37:18 -050081includeProject(":media", "media")
Aurimas Liutikasac5fe7c2018-03-06 14:40:53 -080082includeProject(":tvprovider", "tv-provider")
83includeProject(":vectordrawable", "graphics/drawable/static")
Aurimas Liutikas368a8e52018-02-13 09:55:20 -080084includeProject(":swiperefreshlayout", "swiperefreshlayout")
Aurimas Liutikas15dadc52018-02-13 10:17:58 -080085includeProject(":textclassifier", "textclassifier")
86includeProject(":transition", "transition")
Aurimas Liutikasf1efe442018-02-08 14:21:20 -080087includeProject(":viewpager", "viewpager")
Aurimas Liutikas15dadc52018-02-13 10:17:58 -080088includeProject(":viewpager2", "viewpager2")
89includeProject(":wear", "wear")
90includeProject(":webkit", "webkit")
91includeProject(":webkit-codegen", "webkit-codegen")
Gustav Sennton18f68e72017-12-15 12:00:40 +000092
Chris Banese17c5192016-06-01 13:36:05 +010093/////////////////////////////
94//
Jake Wharton65c15e12018-03-08 12:56:46 -050095// Legacy
96//
97/////////////////////////////
98
99includeProject(":legacy-support-core-ui", "legacy/core-ui")
100includeProject(":legacy-support-core-utils", "legacy/core-utils")
101includeProject(":legacy-support-v4", "legacy/v4")
102includeProject(":legacy-support-v13", "legacy/v13")
103includeProject(":legacy-preference-v14", "legacy/preference-v14")
104
105/////////////////////////////
106//
Chris Banese17c5192016-06-01 13:36:05 +0100107// Samples
108//
109/////////////////////////////
110
Jeff Gastoncfc647a2018-01-29 17:19:41 -0500111File samplesRoot = new File(rootDir, "samples")
Chris Banese17c5192016-06-01 13:36:05 +0100112
Aurimas Liutikas15dadc52018-02-13 10:17:58 -0800113includeProject(":support-animation-demos", new File(samplesRoot, "SupportAnimationDemos"))
114includeProject(":support-app-navigation", new File(samplesRoot, "SupportAppNavigation"))
Aurimas Liutikasf27b1ff2018-03-06 22:38:27 +0000115includeProject(":support-car-demos", new File(samplesRoot, "SupportCarDemos"))
Jeff Gastoncfc647a2018-01-29 17:19:41 -0500116includeProject(":support-content-demos", new File(samplesRoot, "SupportContentDemos"))
Aurimas Liutikasf27b1ff2018-03-06 22:38:27 +0000117includeProject(":support-design-demos", new File(samplesRoot, "SupportDesignDemos"))
Aurimas Liutikas15dadc52018-02-13 10:17:58 -0800118includeProject(":support-emoji-demos", new File(samplesRoot, "SupportEmojiDemos"))
Jeff Gastoncfc647a2018-01-29 17:19:41 -0500119includeProject(":support-leanback-demos", new File(samplesRoot, "SupportLeanbackDemos"))
120includeProject(":support-leanback-jank", new File(samplesRoot, "SupportLeanbackJank"))
121includeProject(":support-percent-demos", new File(samplesRoot, "SupportPercentDemos"))
122includeProject(":support-preference-demos", new File(samplesRoot, "SupportPreferenceDemos"))
Aurimas Liutikas15dadc52018-02-13 10:17:58 -0800123includeProject(":support-slices-demos", new File(samplesRoot, "SupportSliceDemos"))
Jeff Gastoncfc647a2018-01-29 17:19:41 -0500124includeProject(":support-transition-demos", new File(samplesRoot, "SupportTransitionDemos"))
Aurimas Liutikas15dadc52018-02-13 10:17:58 -0800125includeProject(":support-vector-drawable-demos", new File(samplesRoot, "SupportVectorDrawableDemos"))
Jeff Gastoncfc647a2018-01-29 17:19:41 -0500126includeProject(":support-v4-demos", new File(samplesRoot, "Support4Demos"))
127includeProject(":support-v7-demos", new File(samplesRoot, "Support7Demos"))
128includeProject(":support-v13-demos", new File(samplesRoot, "Support13Demos"))
Jeff Gastoncfc647a2018-01-29 17:19:41 -0500129includeProject(":support-wear-demos", new File(samplesRoot, "SupportWearDemos"))
Aurimas Liutikas15dadc52018-02-13 10:17:58 -0800130includeProject(":viewpager2-demos", new File(samplesRoot, "ViewPager2Demos"))
Jason Monkb2c45792017-12-14 17:30:21 -0500131
Alan Viverettecc5197e2016-06-13 12:45:07 -0400132/////////////////////////////
133//
Aurimas Liutikas6d20a522017-03-10 17:13:03 -0800134// Testing libraries
135//
136/////////////////////////////
137
Aurimas Liutikas67171c82018-02-27 13:10:25 -0800138includeProject(":internal-testutils", "testutils")
Jake Whartonbf04c312018-03-09 13:50:42 -0500139includeProject(":internal-testutils-ktx", "testutils-ktx")
Aurimas Liutikas6d20a522017-03-10 17:13:03 -0800140
141/////////////////////////////
142//
Hyundo Moonda9ee6b2017-07-21 14:32:12 +0900143// Applications and libraries for tests
Hyundo Moon72e64db2017-07-20 14:09:13 +0900144//
145/////////////////////////////
146
Jake Wharton0efa1d52018-03-09 11:37:18 -0500147includeProject(":support-media-compat-test-client", "media/version-compat-tests/current/client")
148includeProject(":support-media-compat-test-client-previous", "media/version-compat-tests/previous/client")
149includeProject(":support-media-compat-test-service", "media/version-compat-tests/current/service")
150includeProject(":support-media-compat-test-service-previous", "media/version-compat-tests/previous/service")
151includeProject(":support-media-compat-test-lib", "media/version-compat-tests/lib")
Hyundo Moonda9ee6b2017-07-21 14:32:12 +0900152
Hyundo Moon72e64db2017-07-20 14:09:13 +0900153/////////////////////////////
154//
Alan Viverettecc5197e2016-06-13 12:45:07 -0400155// External
156//
157/////////////////////////////
158
Jeff Gastoncfc647a2018-01-29 17:19:41 -0500159apply(from: "include-composite-deps.gradle")
160File externalRoot = new File(rootDir, "../../external")
Alan Viverettecc5197e2016-06-13 12:45:07 -0400161
Jeff Gastoncfc647a2018-01-29 17:19:41 -0500162includeProject(":noto-emoji-compat", new File(externalRoot, "noto-fonts/emoji-compat"))
Gustav Senntonf9916c32018-02-14 14:27:45 +0000163includeProject(":webview-support-interfaces", new File(externalRoot, "webview_support_interfaces"))
Siyamed Sinir75b91312017-04-21 19:10:41 -0700164
Yigit Boyar95c6a872017-03-03 10:54:49 -0800165///// FLATFOOT START
166
Steve McKayc01ec962017-05-23 14:32:58 -0700167///// FLATFOOT END