98 lines
3.6 KiB
Groovy
98 lines
3.6 KiB
Groovy
import org.apache.tools.ant.taskdefs.condition.Os
|
|
// Top-level build file where you can add configuration options common to all sub-projects/modules.
|
|
|
|
/**
|
|
* Project-wide gradle configuration properties for use by all modules
|
|
*/
|
|
ext {
|
|
// kotlin_version is needed for react-native-camera-kit library
|
|
kotlin_version = project.kotlinVersion
|
|
RNNKotlinVersion = "1.6.20"
|
|
RNGH_kotlinVersion = "1.6.20"
|
|
buildToolsVersion = project.buildToolsVersion
|
|
minSdkVersion = Integer.valueOf(project.minSdkVersion)
|
|
compileSdkVersion = Integer.valueOf(project.compileSdkVersion)
|
|
targetSdkVersion = Integer.valueOf(project.targetSdkVersion)
|
|
supportLibVersion = project.supportLibVersion
|
|
gradlePluginVersion = project.gradlePluginVersion
|
|
kotlinPluginVersion = project.kotlinPluginVersion
|
|
|
|
if (System.properties['os.arch'] == "aarch64") {
|
|
// For M1 Users we need to use the NDK 24 which added support for aarch64
|
|
ndkVersion = "24.0.8215888"
|
|
} else {
|
|
// Otherwise we default to the side-by-side NDK version from AGP.
|
|
ndkVersion = "21.4.7075529"
|
|
}
|
|
|
|
}
|
|
|
|
buildscript {
|
|
repositories {
|
|
flatDir { dirs "libs", "${rootDir}/app/libs" }
|
|
google()
|
|
mavenCentral()
|
|
}
|
|
dependencies {
|
|
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:${project.ext.kotlinPluginVersion}"
|
|
classpath "com.android.tools.build:gradle:${project.ext.gradlePluginVersion}"
|
|
classpath("com.facebook.react:react-native-gradle-plugin")
|
|
classpath("de.undercouch:gradle-download-task:5.0.1")
|
|
// WARNING: Do not place your application dependencies here!
|
|
// They belong in the individual module build.gradle files.
|
|
}
|
|
}
|
|
|
|
subprojects {
|
|
afterEvaluate {
|
|
if (project.hasProperty("android")) {
|
|
android {
|
|
compileSdkVersion rootProject.ext.compileSdkVersion
|
|
buildToolsVersion rootProject.ext.buildToolsVersion
|
|
|
|
defaultConfig {
|
|
targetSdkVersion rootProject.ext.targetSdkVersion
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
allprojects {
|
|
beforeEvaluate {
|
|
if (System.env.STATUS_GO_ANDROID_LIBDIR == null || System.env.STATUS_GO_ANDROID_LIBDIR == "") {
|
|
throw new GradleException('STATUS_GO_ANDROID_LIBDIR environment variable is not valid!')
|
|
}
|
|
}
|
|
|
|
repositories {
|
|
exclusiveContent {
|
|
// We get React Native's Android binaries exclusively through npm,
|
|
// from a local Maven repo inside node_modules/react-native/.
|
|
// (The use of exclusiveContent prevents looking elsewhere like Maven Central
|
|
// and potentially getting a wrong version.)
|
|
filter {
|
|
includeGroup "com.facebook.react"
|
|
}
|
|
forRepository {
|
|
maven {
|
|
url "$rootDir/../node_modules/react-native/android"
|
|
}
|
|
}
|
|
}
|
|
mavenLocal()
|
|
// All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
|
|
maven { url("$rootDir/../node_modules/react-native/android") }
|
|
// Android JSC is installed from npm
|
|
maven { url("$rootDir/../node_modules/jsc-android/dist") }
|
|
// For geth, function, and status-go
|
|
flatDir { dirs "libs", System.env.STATUS_GO_ANDROID_LIBDIR }
|
|
// Everything Else
|
|
google()
|
|
jcenter() // Required for @react-native-community/blur:3.6.1, can be removed after updating to 3.6.1+
|
|
mavenCentral()
|
|
// maven { url "https://www.jitpack.io" }
|
|
maven { url 'https://mvnrepository.com/artifact/com.github.gundy/semver4j'}
|
|
}
|
|
}
|