diff options
Diffstat (limited to 'runtime/org.eclipse.etrice.modellib.c/build.gradle')
-rw-r--r-- | runtime/org.eclipse.etrice.modellib.c/build.gradle | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/runtime/org.eclipse.etrice.modellib.c/build.gradle b/runtime/org.eclipse.etrice.modellib.c/build.gradle new file mode 100644 index 000000000..23ad8e2b0 --- /dev/null +++ b/runtime/org.eclipse.etrice.modellib.c/build.gradle @@ -0,0 +1,40 @@ +plugins { + id 'c' +} + +def generator = ':plugins:org.eclipse.etrice.generator.c' + +task generate(type: JavaExec, group: 'build', dependsOn: "$generator:classes") { + main = project(generator).mainClassName + classpath = project(generator).classpath + inputs.dir 'model' + outputs.dir 'src-gen' + args '-lib', '-msc_instr', '-genDir', 'src-gen', + 'model/PInterrupt.room', + 'model/TcpService.room', + 'model/TimingService.room' +} + +model { + components { + etrice_modellib_c(NativeLibrarySpec) { + sources.c { + builtBy generate + source { + srcDirs = ['src-gen'] + include '**/*.c' + } + exportedHeaders { + srcDirs = ['src-gen'] + } + lib project: ':runtime:org.eclipse.etrice.runtime.c', library: 'etrice_runtime_c', linkage: 'api' + } + binaries { + withType(SharedLibraryBinarySpec) { buildable = false } + all { cCompiler.args '-g3' } + } + } + } +} + +clean.delete 'src-gen'
\ No newline at end of file |