blob: f7574ecc3e5affb92f24ef4af7d6073d6bc80a8b (
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
plugins {
id 'java-test-fixtures'
id 'refinery-java-library'
id 'refinery-mwe2'
id 'refinery-sonarqube'
id 'refinery-xtend'
id 'refinery-xtext-conventions'
}
dependencies {
api platform(libs.xtext.bom)
api libs.ecore
api libs.xtext.core
api libs.xtext.xbase
api project(':refinery-language-model')
testFixturesApi libs.xtext.testing
testFixturesApi testFixtures(project(':refinery-language-model'))
mwe2 libs.xtext.generator
mwe2 libs.xtext.generator.antlr
}
sourceSets {
testFixtures {
java.srcDirs += ['src/testFixtures/xtext-gen']
resources.srcDirs += ['src/testFixtures/xtext-gen']
}
}
tasks.named('jar') {
from(sourceSets.main.allSource) {
include '**/*.xtext'
}
}
def generateXtextLanguage = tasks.register('generateXtextLanguage', JavaExec) {
mainClass = 'org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher'
classpath = configurations.mwe2
inputs.file 'src/main/java/tools/refinery/language/GenerateProblem.mwe2'
inputs.file 'src/main/java/tools/refinery/language/Problem.xtext'
outputs.dir 'src/main/xtext-gen'
outputs.dir 'src/testFixtures/xtext-gen'
outputs.dir '../language-ide/src/main/xtext-gen'
outputs.dir '../language-web/src/main/xtext-gen'
args += 'src/main/java/tools/refinery/language/GenerateProblem.mwe2'
args += '-p'
args += "rootPath=/${projectDir}/.."
}
for (taskName in ['compileJava', 'processResources', 'generateXtext', 'generateEclipseSourceFolders']) {
tasks.named(taskName) {
dependsOn generateXtextLanguage
}
}
tasks.named('clean') {
delete 'src/main/xtext-gen'
delete 'src/testFixtures/xtext-gen'
delete '../language-ide/src/main/xtext-gen'
delete '../language-web/src/main/xtext-gen'
}
sonarqube.properties {
properties['sonar.exclusions'] += [
'src/testFixtures/xtext-gen/**',
]
}
|