mirror of
https://github.com/pocoproject/poco.git
synced 2024-12-15 03:21:09 +01:00
64 lines
1.8 KiB
Groovy
64 lines
1.8 KiB
Groovy
|
import org.gradle.nativeplatform.test.cppunit.CppUnitTestSuiteSpec
|
||
|
|
||
|
model {
|
||
|
components {
|
||
|
withType(NativeComponentSpec) {
|
||
|
binaries.withType(NativeBinarySpec) {
|
||
|
if (buildType == buildTypes.debug) {
|
||
|
if (it instanceof NativeExecutableBinarySpec) {
|
||
|
executable.file = toLocalBin(appendDebugSuffix(executable.file), targetPlatform)
|
||
|
}
|
||
|
} else
|
||
|
if (buildType == buildTypes.release) {
|
||
|
if (it instanceof NativeExecutableBinarySpec) {
|
||
|
executable.file = toLocalBin(executable.file, targetPlatform)
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
TestSuite(NativeLibrarySpec) {
|
||
|
sources {
|
||
|
cpp {
|
||
|
source {
|
||
|
srcDir 'src'
|
||
|
include '**/*.cpp'
|
||
|
exclude '*Driver.cpp'
|
||
|
}
|
||
|
exportedHeaders {
|
||
|
srcDir 'src'
|
||
|
}
|
||
|
lib project: ':CppUnit', library: 'CppUnit', linkage: 'shared'
|
||
|
lib project: ':MongoDB', library: 'MongoDB', linkage: 'shared'
|
||
|
lib project: ':Net', library: 'Net', linkage: 'shared'
|
||
|
lib project: ':Foundation', library: 'Foundation', linkage: 'shared'
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
testSuites {
|
||
|
MongoDBTestSuite(org.gradle.nativeplatform.test.cppunit.CppUnitTestSuiteSpec) {
|
||
|
testing $.components.TestSuite
|
||
|
}
|
||
|
}
|
||
|
binaries {
|
||
|
withType(org.gradle.nativeplatform.test.cppunit.CppUnitTestSuiteBinarySpec) {
|
||
|
lib project: ':CppUnit', library: 'CppUnit', linkage: 'shared'
|
||
|
if (toolChain in VisualCpp) {
|
||
|
if (buildType == buildTypes.debug) {
|
||
|
cCompiler.args "/MDd"
|
||
|
cppCompiler.args "/MDd"
|
||
|
} else
|
||
|
if (buildType == buildTypes.release) {
|
||
|
cCompiler.args "/MD"
|
||
|
cppCompiler.args "/MD"
|
||
|
} else {
|
||
|
throw new GradleException("Unknown buildType" + buildType)
|
||
|
}
|
||
|
}
|
||
|
if (toolChain in Gcc) {
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
task testsuite { dependsOn "assemble" }
|