Skip to main content
aboutsummaryrefslogtreecommitdiffstats
blob: 399088d2ff22a527198a0675f35d694b6fbf9b29 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25

evaluationDependsOn(':plugins:org.eclipse.etrice.generator.c')
evaluationDependsOn(':plugins:org.eclipse.etrice.generator.cpp')
evaluationDependsOn(':plugins:org.eclipse.etrice.generator.java')

/**
 * Creates an eTrice generator task
 * @param name: The name of the new task
 * @param models: A list of models passed to the generator
 * @param genDir: The generation directory
 * @param options: The eTrice generator options
 */
ext.createGeneratorTask = { name, lang, models, genDir = 'src-gen', options = [] ->
	def generator = ":plugins:org.eclipse.etrice.generator.$lang"

	return tasks.create(name: name, type: JavaExec, dependsOn: "$generator:classes") {
		main = project(generator).mainClassName
		classpath = project(generator).sourceSets.main.runtimeClasspath
		args '-msc_instr', '-genDir', genDir
		args options
		args models
		inputs.files models
		outputs.dir genDir
	}
}

Back to the top