diff options
Diffstat (limited to 'mobile/android/gradle.configure')
-rw-r--r-- | mobile/android/gradle.configure | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/mobile/android/gradle.configure b/mobile/android/gradle.configure new file mode 100644 index 000000000..22e3b6805 --- /dev/null +++ b/mobile/android/gradle.configure @@ -0,0 +1,59 @@ +# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*- +# vim: set filetype=python: +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +# If --with-gradle is specified, build mobile/android with Gradle. If no +# Gradle binary is specified, or if --without-gradle is specified, use the in +# tree Gradle wrapper. The wrapper downloads and installs Gradle, which is +# good for local developers but not good in automation. +option('--with-gradle', nargs='?', + help='Enable building mobile/android with Gradle ' + '(argument: location of binary or wrapper (gradle/gradlew))') + +@depends('--with-gradle') +def with_gradle(value): + if value: + return True + +set_config('MOZ_BUILD_MOBILE_ANDROID_WITH_GRADLE', with_gradle) + + +@depends('--with-gradle', check_build_environment) +@imports(_from='os.path', _import='isfile') +def gradle(value, build_env): + gradle = value[0] if len(value) else \ + os.path.join(build_env.topsrcdir, 'gradlew') + + # TODO: verify that $GRADLE is executable. + if not isfile(gradle): + die('GRADLE must be executable: %s', gradle) + + return gradle + +set_config('GRADLE', gradle) + + +# Automation uses this to change log levels, not use the daemon, and use +# offline mode. +option(env='GRADLE_FLAGS', default='', help='Flags to pass to Gradle.') + +@depends('GRADLE_FLAGS') +def gradle_flags(value): + return value[0] if value else '' + +set_config('GRADLE_FLAGS', gradle_flags) + + +# Automation will set this to file:///path/to/local via the mozconfig. +# Local developer default is jcenter. +option(env='GRADLE_MAVEN_REPOSITORY', default='https://jcenter.bintray.com/', + help='Path to Maven repository containing Gradle dependencies.') + +@depends('GRADLE_MAVEN_REPOSITORY') +def gradle_maven_repository(value): + if value: + return value[0] + +set_config('GRADLE_MAVEN_REPOSITORY', gradle_maven_repository) |