blob: 0a2d8ceecfa46d3d911e9a2bb5809af0e0042624 [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")
Aurimas Liutikase8fcac12018-03-14 17:10:10 -070043includeProject(":contentpaging", "content")
Aurimas Liutikasd4219a72018-02-08 16:00:17 -080044includeProject(":coordinatorlayout", "coordinatorlayout")
Aurimas Liutikase8fcac12018-03-14 17:10:10 -070045includeProject(":core", "compat")
Aurimas Liutikasfa72a482018-02-21 11:48:48 -080046includeProject(":cursoradapter", "cursoradapter")
Aurimas Liutikas2ffc5792018-02-09 17:17:47 -080047includeProject(":customview", "customview")
Aurimas Liutikas9d274e12018-02-13 17:57:56 -080048includeProject(":documentfile", "documentfile")
Aurimas Liutikas629ed7f2018-02-12 14:47:46 -080049includeProject(":drawerlayout", "drawerlayout")
Aurimas Liutikase8fcac12018-03-14 17:10:10 -070050includeProject(":dynamicanimation", "dynamic-animation")
51includeProject(":emoji", "emoji/core")
52includeProject(":emoji-bundled", "emoji/bundled")
53includeProject(":emoji-appcompat", "emoji/appcompat")
Aurimas Liutikas15dadc52018-02-13 10:17:58 -080054includeProject(":exifinterface", "exifinterface")
Aurimas Liutikase8fcac12018-03-14 17:10:10 -070055includeProject(":fragment", "fragment")
Jake Whartone94ca662018-03-09 09:50:16 -050056includeProject(":gridlayout", "gridlayout")
Chong Zhang7cabcac2018-01-25 16:18:44 -080057includeProject(":heifwriter", "heifwriter")
Aurimas Liutikas368a8e52018-02-13 09:55:20 -080058includeProject(":interpolator", "interpolator")
Jeff Gastona2208ae2018-01-29 17:48:21 -050059includeProject(":jetifier-core", "jetifier/jetifier/core")
Filip Pavlis4a360e32018-03-23 18:42:42 +000060includeProject(":jetifier-processor", "jetifier/jetifier/processor")
Jeff Gastona2208ae2018-01-29 17:48:21 -050061includeProject(":jetifier-gradle-plugin", "jetifier/jetifier/gradle-plugin")
62includeProject(":jetifier-standalone", "jetifier/jetifier/standalone")
63includeProject(":jetifier-preprocessor", "jetifier/jetifier/preprocessor")
Aurimas Liutikasac5fe7c2018-03-06 14:40:53 -080064includeProject(":leanback", "leanback")
Aurimas Liutikase8fcac12018-03-14 17:10:10 -070065includeProject(":leanback-preference", "leanback-preference")
Ian Lake2e772972018-02-16 16:22:47 -080066includeProject(":loader", "loader")
Aurimas Liutikas9c9c4642018-02-13 18:26:36 -080067includeProject(":localbroadcastmanager", "localbroadcastmanager")
Aurimas Liutikase8fcac12018-03-14 17:10:10 -070068includeProject(":media", "media")
Jin Seok Park3aa13ea2018-04-09 17:18:07 +090069includeProject(":media-widget", "media-widget")
Jake Whartone94ca662018-03-09 09:50:16 -050070includeProject(":mediarouter", "mediarouter")
71includeProject(":palette", "palette")
Aurimas Liutikasac5fe7c2018-03-06 14:40:53 -080072includeProject(":percentlayout", "percent")
Jake Whartone94ca662018-03-09 09:50:16 -050073includeProject(":preference", "preference")
Aurimas Liutikasa00210b2018-02-13 18:40:38 -080074includeProject(":print", "print")
Aurimas Liutikas15dadc52018-02-13 10:17:58 -080075includeProject(":recommendation", "recommendation")
Aurimas Liutikasac5fe7c2018-03-06 14:40:53 -080076includeProject(":recyclerview", "v7/recyclerview")
Aurimas Liutikas15dadc52018-02-13 10:17:58 -080077includeProject(":recyclerview-selection", "recyclerview-selection")
Aurimas Liutikas4d33d5f2018-04-10 11:09:27 -070078includeProject(":slice-core", "slices/core")
79includeProject(":slice-view", "slices/view")
80includeProject(":slice-builders", "slices/builders")
Aurimas Liutikas0888e162018-02-12 14:59:46 -080081includeProject(":slidingpanelayout", "slidingpanelayout")
Aurimas Liutikas368a8e52018-02-13 09:55:20 -080082includeProject(":swiperefreshlayout", "swiperefreshlayout")
Aurimas Liutikas15dadc52018-02-13 10:17:58 -080083includeProject(":textclassifier", "textclassifier")
84includeProject(":transition", "transition")
Aurimas Liutikase8fcac12018-03-14 17:10:10 -070085includeProject(":tvprovider", "tv-provider")
86includeProject(":vectordrawable", "graphics/drawable/static")
87includeProject(":vectordrawable-animated", "graphics/drawable/animated")
Aurimas Liutikasf1efe442018-02-08 14:21:20 -080088includeProject(":viewpager", "viewpager")
Aurimas Liutikas15dadc52018-02-13 10:17:58 -080089includeProject(":viewpager2", "viewpager2")
90includeProject(":wear", "wear")
91includeProject(":webkit", "webkit")
92includeProject(":webkit-codegen", "webkit-codegen")
Gustav Sennton18f68e72017-12-15 12:00:40 +000093
Chris Banese17c5192016-06-01 13:36:05 +010094/////////////////////////////
95//
Jake Wharton65c15e1c2018-03-08 12:56:46 -050096// Legacy
97//
98/////////////////////////////
99
100includeProject(":legacy-support-core-ui", "legacy/core-ui")
101includeProject(":legacy-support-core-utils", "legacy/core-utils")
102includeProject(":legacy-support-v4", "legacy/v4")
103includeProject(":legacy-support-v13", "legacy/v13")
104includeProject(":legacy-preference-v14", "legacy/preference-v14")
105
106/////////////////////////////
107//
Chris Banese17c5192016-06-01 13:36:05 +0100108// Samples
109//
110/////////////////////////////
111
Jeff Gastoncfc647a2018-01-29 17:19:41 -0500112File samplesRoot = new File(rootDir, "samples")
Chris Banese17c5192016-06-01 13:36:05 +0100113
Aurimas Liutikas15dadc52018-02-13 10:17:58 -0800114includeProject(":support-animation-demos", new File(samplesRoot, "SupportAnimationDemos"))
115includeProject(":support-app-navigation", new File(samplesRoot, "SupportAppNavigation"))
Aurimas Liutikasf27b1ff2018-03-06 22:38:27 +0000116includeProject(":support-car-demos", new File(samplesRoot, "SupportCarDemos"))
Jeff Gastoncfc647a2018-01-29 17:19:41 -0500117includeProject(":support-content-demos", new File(samplesRoot, "SupportContentDemos"))
Aurimas Liutikasf27b1ff2018-03-06 22:38:27 +0000118includeProject(":support-design-demos", new File(samplesRoot, "SupportDesignDemos"))
Aurimas Liutikas15dadc52018-02-13 10:17:58 -0800119includeProject(":support-emoji-demos", new File(samplesRoot, "SupportEmojiDemos"))
Jeff Gastoncfc647a2018-01-29 17:19:41 -0500120includeProject(":support-leanback-demos", new File(samplesRoot, "SupportLeanbackDemos"))
Aurimas Liutikas690af252018-03-20 09:55:04 -0700121//includeProject(":support-leanback-jank", new File(samplesRoot, "SupportLeanbackJank"))
Jeff Gastoncfc647a2018-01-29 17:19:41 -0500122includeProject(":support-percent-demos", new File(samplesRoot, "SupportPercentDemos"))
123includeProject(":support-preference-demos", new File(samplesRoot, "SupportPreferenceDemos"))
Aurimas Liutikas15dadc52018-02-13 10:17:58 -0800124includeProject(":support-slices-demos", new File(samplesRoot, "SupportSliceDemos"))
Jeff Gastoncfc647a2018-01-29 17:19:41 -0500125includeProject(":support-transition-demos", new File(samplesRoot, "SupportTransitionDemos"))
Aurimas Liutikas15dadc52018-02-13 10:17:58 -0800126includeProject(":support-vector-drawable-demos", new File(samplesRoot, "SupportVectorDrawableDemos"))
Jeff Gastoncfc647a2018-01-29 17:19:41 -0500127includeProject(":support-v4-demos", new File(samplesRoot, "Support4Demos"))
128includeProject(":support-v7-demos", new File(samplesRoot, "Support7Demos"))
129includeProject(":support-v13-demos", new File(samplesRoot, "Support13Demos"))
Jeff Gastoncfc647a2018-01-29 17:19:41 -0500130includeProject(":support-wear-demos", new File(samplesRoot, "SupportWearDemos"))
Aurimas Liutikas15dadc52018-02-13 10:17:58 -0800131includeProject(":viewpager2-demos", new File(samplesRoot, "ViewPager2Demos"))
Jason Monkb2c45792017-12-14 17:30:21 -0500132
Alan Viverettecc5197e2016-06-13 12:45:07 -0400133/////////////////////////////
134//
Aurimas Liutikas6d20a522017-03-10 17:13:03 -0800135// Testing libraries
136//
137/////////////////////////////
138
Aurimas Liutikas67171c82018-02-27 13:10:25 -0800139includeProject(":internal-testutils", "testutils")
Aurimas Liutikas6d20a522017-03-10 17:13:03 -0800140
141/////////////////////////////
142//
Hyundo Moonda9ee6b22017-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 Moonda9ee6b22017-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