blob: ce2e6bd207bc0fd3dfe4b04668928827e02ad3a0 (
plain) (
tree)
|
|
apply plugin: 'c'
apply from: "$rootDir/gradle/publish.gradle"
apply from: "$rootDir/gradle/etGenerator.gradle"
def models = [
'model/PInterrupt.room',
'model/TcpService.room',
'model/TimingService.room'
]
createGeneratorTask('generate', 'c', models, 'src-gen', '-lib')
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', '-std=c99' }
}
}
}
}
clean.delete 'src-gen'
task zipModellib(type: Zip, dependsOn: generate) {
archiveName = project.name + "-${version}.zip"
destinationDir = buildDir
from projectDir
include 'src-gen/**', 'model/**/*.room'
includeEmptyDirs false
}
build.dependsOn zipModellib
publishing {
publications {
etrice(MavenPublication) {
artifact zipModellib
}
}
repositories publishRepos
}
|