ghidra/Ghidra/Debug/Framework-Debugging/build.gradle
2020-12-16 13:06:53 -05:00

108 lines
3.1 KiB
Groovy

apply from: "${rootProject.projectDir}/gradle/javaProject.gradle"
apply from: "${rootProject.projectDir}/gradle/jacocoProject.gradle"
apply from: "${rootProject.projectDir}/gradle/javaTestProject.gradle"
apply from: "${rootProject.projectDir}/gradle/nativeProject.gradle"
apply from: "${rootProject.projectDir}/gradle/distributableGhidraModule.gradle"
apply plugin: 'eclipse'
eclipse.project.name = 'Debug Framework-Debugging'
dependencies {
compile project(':Framework-AsyncComm')
compile project(':Generic')
compile project(':SoftwareModeling')
compile project(':ProposedUtils')
testCompile project(path: ':Framework-AsyncComm', configuration: 'testArtifacts')
}
task testSpecimenWin64 {
dependsOn 'expCreateProcessWin64Executable'
dependsOn 'expCreateThreadExitWin64Executable'
dependsOn 'expCreateThreadSpinWin64Executable'
dependsOn 'expPrintWin64Executable'
dependsOn 'expSpinWin64Executable'
}
task testSpecimenLinux64 {
dependsOn 'expCloneExecExecutable'//Linux64Executable'
dependsOn 'expCloneExitExecutable'//Linux64Executable'
dependsOn 'expCloneSpinExecutable'//Linux64Executable'
dependsOn 'expForkExecutable'//Linux64Executable'
dependsOn 'expPrintLinux64Executable'
dependsOn 'expTypesExecutable'//Linux64Executable'
}
model {
platforms {
/*linux32 {
architecture "x86"
operatingSystem "linux"
}*/
}
components {
expCreateProcess(NativeExecutableSpec) {
targetPlatform "win64"
targetPlatform "win32" // TODO: Test on these
}
expCreateThreadExit(NativeExecutableSpec) {
targetPlatform "win64"
targetPlatform "win32" // TODO: Test on these
}
expCreateThreadSpin(NativeExecutableSpec) {
targetPlatform "win64"
targetPlatform "win32" // TODO: Test on these
}
expCloneExec(NativeExecutableSpec) {
targetPlatform "linux64"
//targetPlatform "linux32" // TODO: Test on these
}
expCloneExit(NativeExecutableSpec) {
targetPlatform "linux64"
//targetPlatform "linux32" // TODO: Test on these
}
expCloneSpin(NativeExecutableSpec) {
targetPlatform "linux64"
//targetPlatform "linux32" // TODO: Test on these
}
expFork(NativeExecutableSpec) {
targetPlatform "linux64"
//targetPlatform "linux32" // TODO: Test on these
}
expPrint(NativeExecutableSpec) {
targetPlatform "linux64"
//targetPlatform "linux32" // TODO: Test on these
targetPlatform "win64"
targetPlatform "win32" // TODO: Test on these
}
expSpin(NativeExecutableSpec) {
targetPlatform "win64"
targetPlatform "win32" // TODO: Test on these
}
expTypes(NativeExecutableSpec) {
targetPlatform "linux64"
//targetPlatform "linux32" // TODO: Test on these
}
}
binaries {
withType(NativeExecutableBinarySpec) {
if (toolChain in Gcc) {
cCompiler.args("-gdwarf-2", "-std=c99")
linker.args("-lpthread")
linker.args("-lutil")
}
if (toolChain in VisualCpp) {
cppCompiler.define("VS_PROJECT")
linker.args("/SUBSYSTEM:CONSOLE", "/DYNAMICBASE", "/NXCOMPAT")
}
if (targetPlatform.name.startsWith("win")) {
cppCompiler.define("WIN32")
cppCompiler.define("_WINDOWS")
cppCompiler.define("UNICODE")
cppCompiler.define("_UNICODE")
}
}
}
}