Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/org.eclipse.etrice.modellib.c/build.gradle')
-rw-r--r--runtime/org.eclipse.etrice.modellib.c/build.gradle40
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

Back to the top