settings.gradle
author Csoregi Natalia <ncsoregi@mozilla.com>
Fri, 01 Jun 2018 23:42:00 +0300
changeset 475262 66f87c551f18e83f5b04f34c42d2feddbe4fd88c
parent 471392 d8c9882a3b3ca27904d6169567829e79c458e567
child 525636 b698ba8b6e2454bd18dbe5b03fb98f8f6ff47df6
permissions -rw-r--r--
Backed out 18 changesets (bug 1462784) for ESlint failure on FlameGraph.js:1297. CLOSED TREE Backed out changeset 79556798ff9f (bug 1462784) Backed out changeset 88321efb673b (bug 1462784) Backed out changeset 7880f9dc7023 (bug 1462784) Backed out changeset 71fe35fd1f7e (bug 1462784) Backed out changeset a543b94b049a (bug 1462784) Backed out changeset d1ca8b0f2221 (bug 1462784) Backed out changeset 68eabfbf3c16 (bug 1462784) Backed out changeset 34e71c789903 (bug 1462784) Backed out changeset 6fe79d1ca1bd (bug 1462784) Backed out changeset e5ad2e525ea9 (bug 1462784) Backed out changeset 329645ff1e23 (bug 1462784) Backed out changeset e09c38853172 (bug 1462784) Backed out changeset 0663d1a6d2da (bug 1462784) Backed out changeset 106967fc29d2 (bug 1462784) Backed out changeset 99b4a433a8e5 (bug 1462784) Backed out changeset 1d38a4cf5a4a (bug 1462784) Backed out changeset 692017229de6 (bug 1462784) Backed out changeset c2911a626671 (bug 1462784)

// You might think topsrcdir is '.', but that's not true when the Gradle build
// is launched from within IntelliJ.
def topsrcdir = rootProject.projectDir.absolutePath

def commandLine = ["${topsrcdir}/mach", "environment", "--format", "json", "--verbose"]
def proc = commandLine.execute(null, new File(topsrcdir))
def standardOutput = new ByteArrayOutputStream()
proc.consumeProcessOutput(standardOutput, standardOutput)
proc.waitFor()

// Only show the output if something went wrong.
if (proc.exitValue() != 0) {
    throw new GradleException("Process '${commandLine}' finished with non-zero exit value ${proc.exitValue()}:\n\n${standardOutput.toString()}")
}

import groovy.json.JsonSlurper

def slurper = new JsonSlurper()
def json = slurper.parseText(standardOutput.toString())

if (json.substs.MOZ_BUILD_APP != 'mobile/android') {
    throw new GradleException("Building with Gradle is only supported for Fennec, i.e., MOZ_BUILD_APP == 'mobile/android'.")
}

// Set the Android SDK location.  This is the *least specific* mechanism, which
// is unfortunate: we'd prefer to use the *most specific* mechanism.  That is,
// local.properties (first 'sdk.dir', then 'android.dir') and then the
// environment variable ANDROID_HOME will override this.  That's unfortunate,
// but it's hard to automatically arrange better.
System.setProperty('android.home', json.substs.ANDROID_SDK_ROOT)

include ':annotations'
include ':app'
include ':geckoview'
include ':geckoview_example'
include ':omnijar'
include ':thirdparty'

project(':annotations').projectDir = new File("${json.topsrcdir}/mobile/android/annotations")
project(':app').projectDir = new File("${json.topsrcdir}/mobile/android/app")
project(':geckoview').projectDir = new File("${json.topsrcdir}/mobile/android/geckoview")
project(':geckoview_example').projectDir = new File("${json.topsrcdir}/mobile/android/geckoview_example")
project(':omnijar').projectDir = new File("${json.topsrcdir}/mobile/android/app/omnijar")
project(':thirdparty').projectDir = new File("${json.topsrcdir}/mobile/android/thirdparty")

// The Gradle instance is shared between settings.gradle and all the
// other build.gradle files (see
// http://forums.gradle.org/gradle/topics/define_extension_properties_from_settings_xml).
// We use this ext property to pass the per-object-directory mozconfig
// between scripts.  This lets us execute set-up code before we gradle
// tries to configure the project even once, and as a side benefit
// saves invoking |mach environment| multiple times.
gradle.ext.mozconfig = json