model { components { cpspc(NativeExecutableSpec) { sources { cpp { source { srcDir 'src' include '**/*.cpp' } exportedHeaders { srcDir 'include' } lib project: ':Net', library: 'Net', linkage: 'shared' lib project: ':Util', library: 'Util', linkage: 'shared' lib project: ':Foundation', library: 'Foundation', linkage: 'shared' } } } } binaries { withType(NativeExecutableBinarySpec) { 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 poco { dependsOn "assemble" }