blob: a370204730afdd1a19cf55c8cf91a1be332dd093 [file] [log] [blame]
Yigit Boyar24bec1c2015-07-09 10:51:54 -07001/**
2 * Helper build script that reads data binding variables and sets up the projects.
3 */
Yigit Boyard6ddc642015-09-11 12:59:40 -07004def forceReleaseVersion = project.hasProperty('useReleaseVersion') && project.getProperty('useReleaseVersion').equals("true")
Yigit Boyar24bec1c2015-07-09 10:51:54 -07005def root = ext.rootFolder
6Properties databindingProperties = new Properties()
7databindingProperties.load(new FileInputStream("${root}/databinding.properties"))
Yigit Boyard6ddc642015-09-11 12:59:40 -07008if (forceReleaseVersion) {
9 databindingProperties.version = databindingProperties.releaseVersion
10}
Yigit Boyar24bec1c2015-07-09 10:51:54 -070011def repoBase = databindingProperties.mavenRepoAbsolutePath == "." ? root : databindingProperties.mavenRepoAbsolutePath
12databindingProperties.mavenRepoDir = "${repoBase}/${databindingProperties.mavenRepoName}"
13databindingProperties.extraPluginsRepoDir = "${root}/${databindingProperties.extraPluginsRepoName}"
14
15databindingProperties.eapOutDir = "${root}/${databindingProperties.eapOutFolderName}"
16databindingProperties.prebuildFolder = "${root}/${databindingProperties.prebuildFolderName}" +
17 "/${databindingProperties.releaseVersion}"
18
19ext.config = databindingProperties
20ext.config.externalPrebuiltsBase = "${root}/../../prebuilts"
21databindingProperties.megaRepoDir = "${databindingProperties.externalPrebuiltsBase}/tools/common/m2/repository"
22
23println "local maven repo is ${ext.config.mavenRepoDir}."
24println "local pre-build folder is ${ext.config.prebuildFolder}."
25println "mega-repo folder is ${ext.config.megaRepoDir}."
26
27new File(ext.config.mavenRepoDir).mkdir()
28new File(ext.config.prebuildFolder).mkdir()
29
Yigit Boyar097f33c2015-07-15 13:49:39 -070030def addRemoteRepos = project.hasProperty('addRemoteRepos') && project.getProperty('addRemoteRepos').equals("true")
Yigit Boyar24bec1c2015-07-09 10:51:54 -070031ext.config.addRemoteRepos = addRemoteRepos
Yigit Boyard6ddc642015-09-11 12:59:40 -070032ext.config.sharedSupportRepoDir = "${ext.config.externalPrebuiltsBase}/maven_repo/android"
33ext.config.inReleaseBuild = !databindingProperties.version.endsWith("SNAPSHOT")
Yigit Boyar24bec1c2015-07-09 10:51:54 -070034def config = ext.config
35def localRepositories = ["${config.extraPluginsRepoDir}",
36 "${config.megaRepoDir}",
37 "${config.mavenRepoDir}",
George Mount9e7a4ce2015-08-24 13:29:40 -070038 "${config.externalPrebuiltsBase}/tools/common/offline-m2",
Yigit Boyard6ddc642015-09-11 12:59:40 -070039 config.sharedSupportRepoDir,
Yigit Boyar24bec1c2015-07-09 10:51:54 -070040 "${config.externalPrebuiltsBase}/gradle-plugin",
41 "${config.externalPrebuiltsBase}/tools/common/m2/repository"]
42ext.config.localRepositories = localRepositories
43def addRepos(RepositoryHandler handler) {
44 config.localRepositories.each { repo ->
45 handler.maven {
46 url repo
47 }
48 }
Yigit Boyar25731022015-09-11 14:53:54 -070049 if (config.addRemoteRepos) {
50 handler.jcenter()
51 handler.mavenCentral()
52 }
Yigit Boyar24bec1c2015-07-09 10:51:54 -070053}
54ext.addRepos = this.&addRepos
55subprojects {
56 buildscript {
57 config.localRepositories.each { repo ->
58 repositories.maven {
59 url repo
60 }
61 }
62 repositories {
63 if (config.addRemoteRepos) {
64 jcenter()
65 mavenCentral()
66 }
67 }
68 }
69 repositories {
70 config.localRepositories.each { repo ->
71 repositories.maven {
72 url repo
73 }
74 }
75 if (config.addRemoteRepos) {
76 jcenter()
77 mavenCentral()
78 }
79 }
80}
Yigit Boyard6ddc642015-09-11 12:59:40 -070081