mirror of
https://github.com/Telecominfraproject/wlan-cloud-lib-poco.git
synced 2025-11-05 21:18:02 +00:00
Backport of pocoproject/feature-gradle to pocoproject/develop (#2127)
* Backport of feature-gradle Signed-off-by: Francis ANDRE <francis.andre.kampbell@orange.fr> * Replace '/' by '\' to comply with DOS path Signed-off-by: Francis ANDRE <francis.andre.kampbell@orange.fr> * Cleanup Signed-off-by: Francis ANDRE <francis.andre.kampbell@orange.fr> * Put environment setting at the Exec task. Signed-off-by: Francis ANDRE <francis.andre.kampbell@orange.fr> * Use standard release Signed-off-by: Francis ANDRE <francis.andre.kampbell@orange.fr> * Updated mkdoc configuration Signed-off-by: Francis ANDRE <francis.andre.kampbell@orange.fr> * Remove lines guarded by POCO_ENABLE_CPP11 Signed-off-by: Francis ANDRE <francis.andre.kampbell@orange.fr> * Merge remote-tracking branch 'origin/develop' into develop * Fix NuGet & Wix input dependencies file set. Signed-off-by: Francis ANDRE <francis.andre.kampbell@orange.fr> * Remaining fixes for Data2SQL switch. * Use $global:LastExitCode instead of a local LastExitCode
This commit is contained in:
committed by
Aleksandar Fabijanic
parent
22ddce7c9d
commit
5fa3d6094e
104
SQL/MySQL/build.gradle
Normal file
104
SQL/MySQL/build.gradle
Normal file
@@ -0,0 +1,104 @@
|
||||
model {
|
||||
repositories {
|
||||
libs(PrebuiltLibraries) {
|
||||
mysql {
|
||||
headers.srcDir "$mysql32Home/include"
|
||||
binaries.withType(StaticLibraryBinary) {
|
||||
def libName = "foobar"
|
||||
if (buildType == buildTypes.debug) {
|
||||
libName = 'libmysqld.lib'
|
||||
if (targetPlatform.name == 'win32') {
|
||||
staticLibraryFile = file("$mysql32Home/lib/$libName")
|
||||
} else
|
||||
if (targetPlatform.name == 'win64') {
|
||||
headers.srcDir "$mysql64Home/include"
|
||||
staticLibraryFile = file("$mysql64Home/lib/$libName")
|
||||
}
|
||||
} else
|
||||
if (buildType == buildTypes.release) {
|
||||
libName = 'libmysql.lib'
|
||||
if (targetPlatform.name == 'win32') {
|
||||
headers.srcDir "$mysql32Home/include"
|
||||
staticLibraryFile = file("$mysql32Home/lib/$libName")
|
||||
} else
|
||||
if (targetPlatform.name == 'win64') {
|
||||
headers.srcDir "$mysql64Home/include"
|
||||
staticLibraryFile = file("$mysql64Home/lib/$libName")
|
||||
}
|
||||
} else {
|
||||
throw new GradleException("Unknown buildType" + buildType)
|
||||
}
|
||||
}
|
||||
binaries.withType(SharedLibraryBinary) {
|
||||
def dllName
|
||||
def linkName
|
||||
if (buildType == buildTypes.debug) {
|
||||
dllName = 'libmysqld.dll'
|
||||
linkName = 'libmysqld.lib'
|
||||
if (targetPlatform.name == 'win32') {
|
||||
headers.srcDir "$mysql32Home/include"
|
||||
sharedLibraryFile = file("$mysql32Home/lib/$dllName")
|
||||
sharedLibraryLinkFile = file("$mysql32Home/lib/$linkName")
|
||||
} else
|
||||
if (targetPlatform.name == 'win64') {
|
||||
headers.srcDir "$mysql64Home/include"
|
||||
sharedLibraryFile = file("$mysql64Home/lib/$dllName")
|
||||
sharedLibraryLinkFile = file("$mysql64Home/lib/$linkName")
|
||||
}
|
||||
} else
|
||||
if (buildType == buildTypes.release) {
|
||||
dllName = 'libmysql.dll'
|
||||
linkName = 'libmysql.lib'
|
||||
if (targetPlatform.name == 'win32') {
|
||||
headers.srcDir "$mysql32Home/include"
|
||||
sharedLibraryFile = file("$mysql32Home/lib/$dllName")
|
||||
sharedLibraryLinkFile = file("$mysql32Home/lib/$linkName")
|
||||
} else
|
||||
if (targetPlatform.name == 'win64') {
|
||||
headers.srcDir "$mysql64Home/include"
|
||||
sharedLibraryFile = file("$mysql64Home/lib/$dllName")
|
||||
sharedLibraryLinkFile = file("$mysql64Home/lib/$linkName")
|
||||
}
|
||||
} else {
|
||||
throw new GradleException("Unknown buildType" + buildType)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
components {
|
||||
SQLMySQL(NativeLibrarySpec) {
|
||||
sources {
|
||||
cpp {
|
||||
source {
|
||||
srcDir 'src'
|
||||
include '**/*.cpp'
|
||||
}
|
||||
exportedHeaders {
|
||||
srcDir 'include'
|
||||
}
|
||||
lib library: 'mysql'
|
||||
lib project: ':SQL', library: 'SQL'
|
||||
lib project: ':Foundation', library: 'Foundation'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
binaries {
|
||||
all {
|
||||
cppCompiler.define "THREADSAFE"
|
||||
cppCompiler.define "__LCC__"
|
||||
cppCompiler.define "WINVER=0x0600"
|
||||
}
|
||||
withType(SharedLibraryBinarySpec) {
|
||||
if (toolChain in VisualCpp) {
|
||||
cppCompiler.define "MySQL_EXPORTS"
|
||||
}
|
||||
}
|
||||
withType(StaticLibraryBinarySpec) {
|
||||
}
|
||||
}
|
||||
}
|
||||
task poco { dependsOn "assemble" }
|
||||
|
||||
|
||||
73
SQL/MySQL/testsuite/build.gradle
Normal file
73
SQL/MySQL/testsuite/build.gradle
Normal file
@@ -0,0 +1,73 @@
|
||||
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: ':SQL:MySQL', library: 'mysql', linkage: 'shared'
|
||||
lib project: ':SQL:MySQL', library: 'SQLMySQL', linkage: 'shared'
|
||||
lib project: ':SQL', library: 'SQL', linkage: 'shared'
|
||||
lib project: ':Util', library: 'Util'
|
||||
lib project: ':JSON', library: 'JSON'
|
||||
lib project: ':XML', library: 'XML'
|
||||
lib project: ':Foundation', library: 'Foundation', linkage: 'shared'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
testSuites {
|
||||
MySQLTestSuite(org.gradle.nativeplatform.test.cppunit.CppUnitTestSuiteSpec) {
|
||||
testing $.components.TestSuite
|
||||
}
|
||||
}
|
||||
binaries {
|
||||
all {
|
||||
cppCompiler.define "THREADSAFE"
|
||||
cppCompiler.define "__LCC__"
|
||||
cppCompiler.define "WINVER=0x0600"
|
||||
}
|
||||
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" }
|
||||
|
||||
Reference in New Issue
Block a user