| import static org.apache.tools.ant.taskdefs.condition.Os.* |
| |
| plugins { |
| id 'c' |
| } |
| |
| apply from: "$rootDir/gradle/etUnitConverter.gradle" |
| |
| model { |
| components { |
| etrice_runtime_c_tests(NativeExecutableSpec) { |
| sources.c { |
| source { |
| srcDirs = ['src'] |
| include '**/*.c' |
| } |
| exportedHeaders { |
| srcDirs = ['src'] |
| } |
| lib project: ':runtime:org.eclipse.etrice.runtime.c', library: 'etrice_runtime_c', linkage: 'static' |
| } |
| binaries { |
| all { |
| cCompiler.args '-g3' |
| if(isFamily(FAMILY_UNIX)) { linker.args '-lpthread', '-lrt', '-lm' } |
| } |
| } |
| } |
| } |
| } |
| |
| def exeFile = "$buildDir/exe/etrice_runtime_c_tests/etrice_runtime_c_tests" |
| def etuFileRuntimeTest = 'log/TestCRuntime.etu' |
| def etuFileEtUnitTest = 'log/TestEtUnitSpecial.etu' |
| |
| clean.delete 'log' |
| |
| task run(type: Exec, dependsOn: assemble, group: 'verification') { |
| commandLine exeFile |
| inputs.file exeFile |
| outputs.files etuFileRuntimeTest, etuFileEtUnitTest |
| |
| doFirst { file('log').mkdirs() } |
| } |
| |
| createEtUnitConverterTask('convert', [etuFileRuntimeTest, etuFileEtUnitTest]) |
| convert.dependsOn run |
| |
| check.dependsOn convert |