repositories {
    mavenCentral()
}

apply plugin: 'java'
apply plugin: 'application'

mainClassName = 'io.v.syncbench.SyncbaseBenchmark'

dependencies {
    compile 'com.google.guava:guava:18'
    compile project(':lib')
    compile 'com.google.caliper:caliper:1.0-beta-2'
}

task copyLib(type: Copy) {
    from([project(':lib').buildDir.getAbsolutePath(), 'libs', 'libv23.so'].join(File.separator))
    destinationDir = new File(['src', 'main', 'resources'].join(File.separator))
}

tasks.'processResources'.dependsOn(copyLib)

task wrapper(type: Wrapper) {
    gradleVersion = '2.7'
}

clean {
    delete 'src/main/resources/libv23.so'
}
