aboutsummaryrefslogtreecommitdiffstats
path: root/subprojects/language-model
diff options
context:
space:
mode:
authorLibravatar Kristóf Marussy <kristof@marussy.com>2023-04-08 22:56:44 +0200
committerLibravatar Kristóf Marussy <kristof@marussy.com>2023-04-08 22:58:21 +0200
commit561fac70fd3dc3ebe1cfbc50146757495fb828d5 (patch)
tree20aa72bbe438aaa70c8de264ff0d366758e7772d /subprojects/language-model
parentrefactor: remove TupleLike (diff)
downloadrefinery-561fac70fd3dc3ebe1cfbc50146757495fb828d5.tar.gz
refinery-561fac70fd3dc3ebe1cfbc50146757495fb828d5.tar.zst
refinery-561fac70fd3dc3ebe1cfbc50146757495fb828d5.zip
build: convert Gradle scripts to Kotlin
Improves IDE support build scripts in IntelliJ. There is no Eclipse IDE support, but Eclipse didn't have support for Groovy either, so there is no degradation of functionality.
Diffstat (limited to 'subprojects/language-model')
-rw-r--r--subprojects/language-model/build.gradle55
-rw-r--r--subprojects/language-model/build.gradle.kts53
2 files changed, 53 insertions, 55 deletions
diff --git a/subprojects/language-model/build.gradle b/subprojects/language-model/build.gradle
deleted file mode 100644
index 275db188..00000000
--- a/subprojects/language-model/build.gradle
+++ /dev/null
@@ -1,55 +0,0 @@
1plugins {
2 id 'refinery-java-library'
3 id 'refinery-mwe2'
4 id 'refinery-sonarqube'
5}
6
7dependencies {
8 api libs.ecore
9 api libs.ecore.xmi
10 mwe2 libs.ecore.codegen
11 mwe2 libs.mwe.utils
12 mwe2 libs.mwe2.lib
13 mwe2 libs.xtext.core
14 mwe2 libs.xtext.xbase
15}
16
17sourceSets {
18 main {
19 java.srcDirs += ['src/main/emf-gen']
20 }
21}
22
23def generateEPackage = tasks.register('generateEPackage', JavaExec) {
24 mainClass = 'org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher'
25 classpath = configurations.mwe2
26 inputs.file 'src/main/java/tools/refinery/language/model/GenerateProblemModel.mwe2'
27 inputs.file 'src/main/resources/model/problem.ecore'
28 inputs.file 'src/main/resources/model/problem.genmodel'
29 outputs.dir 'src/main/emf-gen'
30 args += 'src/main/java/tools/refinery/language/model/GenerateProblemModel.mwe2'
31 args += '-p'
32 args += "rootPath=/${projectDir}"
33}
34
35for (taskName in ['compileJava', 'processResources', 'generateEclipseSourceFolders']) {
36 tasks.named(taskName) {
37 dependsOn generateEPackage
38 }
39}
40
41tasks.named('clean') {
42 delete 'src/main/emf-gen'
43}
44
45sonarqube.properties {
46 properties['sonar.exclusions'] += [
47 'src/main/emf-gen/**',
48 ]
49}
50
51eclipse.project.natures += [
52 'org.eclipse.sirius.nature.modelingproject',
53 'org.eclipse.pde.PluginNature',
54 'org.eclipse.xtext.ui.shared.xtextNature'
55]
diff --git a/subprojects/language-model/build.gradle.kts b/subprojects/language-model/build.gradle.kts
new file mode 100644
index 00000000..2804c698
--- /dev/null
+++ b/subprojects/language-model/build.gradle.kts
@@ -0,0 +1,53 @@
1import tools.refinery.buildsrc.SonarPropertiesUtils
2
3plugins {
4 id("refinery-java-library")
5 id("refinery-mwe2")
6 id("refinery-sonarqube")
7}
8
9dependencies {
10 api(libs.ecore)
11 api(libs.ecore.xmi)
12 mwe2(libs.ecore.codegen)
13 mwe2(libs.mwe.utils)
14 mwe2(libs.mwe2.lib)
15 mwe2(libs.xtext.core)
16 mwe2(libs.xtext.xbase)
17}
18
19sourceSets {
20 main {
21 java.srcDir("src/main/emf-gen")
22 }
23}
24
25val generateEPackage by tasks.registering(JavaExec::class) {
26 mainClass.set("org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher")
27 classpath(configurations.mwe2)
28 inputs.file("src/main/java/tools/refinery/language/model/GenerateProblemModel.mwe2")
29 inputs.file("src/main/resources/model/problem.ecore")
30 inputs.file("src/main/resources/model/problem.genmodel")
31 outputs.dir("src/main/emf-gen")
32 args("src/main/java/tools/refinery/language/model/GenerateProblemModel.mwe2", "-p", "rootPath=/$projectDir")
33}
34
35for (taskName in listOf("compileJava", "processResources", "generateEclipseSourceFolders")) {
36 tasks.named(taskName) {
37 dependsOn(generateEPackage)
38 }
39}
40
41tasks.clean {
42 delete("src/main/emf-gen")
43}
44
45sonarqube.properties {
46 SonarPropertiesUtils.addToList(properties, "sonar.exclusions", "src/main/emf-gen/**")
47}
48
49eclipse.project.natures.plusAssign(listOf(
50 "org.eclipse.sirius.nature.modelingproject",
51 "org.eclipse.pde.PluginNature",
52 "org.eclipse.xtext.ui.shared.xtextNature",
53))