blob: 8fab5ecbc940c8b2837855820cc5d3c641f4edeb [file] [log] [blame]
import org.apache.tools.ant.taskdefs.condition.Os
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.+'
}
}
def goPath = System.getenv('GOPATH')
def temporaryDirectory = file(goPath+'/pkg/build').absolutePath
def outputDirectory = file(goPath+'/bin')
apply plugin: 'com.android.application'
apply plugin: 'cpp'
buildDir temporaryDirectory
defaultTasks 'ndkBuild'
android {
compileSdkVersion 20
buildToolsVersion '20.0.0'
defaultConfig.targetSdkVersion 20
buildTypes {
debug {
debuggable true
jniDebuggable true
}
release {
debuggable false
jniDebuggable false
}
}
task ndkBuild(type: Exec) {
def cmd = 'ndk-build' + (osFamily() == 'windows' ? '.cmd' : '')
commandLine cmd, '-C', file('android').absolutePath, 'NDK_OUT='+temporaryDirectory+'/obj',
'NDK_APP_DST_DIR='+temporaryDirectory+'/libs/$(TARGET_ARCH_ABI)', '-s'
}
task ndkClean(type: Exec) {
def cmd = 'ndk-build' + (osFamily() == 'windows' ? '.cmd' : '')
commandLine cmd, '-C', file('android').absolutePath, 'NDK_OUT='+temporaryDirectory+'/obj',
'NDK_APP_DST_DIR='+temporaryDirectory+'/libs/$(TARGET_ARCH_ABI)', '-s', 'clean'
}
tasks.withType(JavaCompile) { compileTask ->
compileTask.dependsOn ndkBuild
}
clean.dependsOn ndkClean
}
def osFamily() {
if (Os.isFamily(Os.FAMILY_MAC)) return 'mac'
if (Os.isFamily(Os.FAMILY_UNIX)) return 'linux'
if (Os.isFamily(Os.FAMILY_WINDOWS)) return 'windows'
return null
}