From fd9f3acfd2832180285ef351dc7d1b441b3714e9 Mon Sep 17 00:00:00 2001
From: rschoene <rene.schoene@tu-dresden.de>
Date: Fri, 27 Nov 2020 16:41:43 +0100
Subject: [PATCH] Fix build of eraser-base

---
 buildSrc/src/.gitignore                       |  2 +
 .../eraser.java-jastadd-conventions.gradle    | 10 ++--
 eraser-base/build.gradle                      | 50 +++++++++++++++----
 eraser-base/jastadd_modules                   | 24 ---------
 eraser-base/src/main/jastadd/.gitignore       |  2 -
 5 files changed, 45 insertions(+), 43 deletions(-)
 create mode 100644 buildSrc/src/.gitignore
 delete mode 100644 eraser-base/jastadd_modules
 delete mode 100644 eraser-base/src/main/jastadd/.gitignore

diff --git a/buildSrc/src/.gitignore b/buildSrc/src/.gitignore
new file mode 100644
index 00000000..9f2a0788
--- /dev/null
+++ b/buildSrc/src/.gitignore
@@ -0,0 +1,2 @@
+build/
+.gradle/
diff --git a/buildSrc/src/main/groovy/eraser.java-jastadd-conventions.gradle b/buildSrc/src/main/groovy/eraser.java-jastadd-conventions.gradle
index a3cbca53..0bfe8d90 100644
--- a/buildSrc/src/main/groovy/eraser.java-jastadd-conventions.gradle
+++ b/buildSrc/src/main/groovy/eraser.java-jastadd-conventions.gradle
@@ -1,12 +1,8 @@
 plugins {
-  id 'java'
-  id 'jastadd'
-}
-
-repositories {
-  mavenCentral()
+  id 'eraser.java-common-conventions'
+  id 'java-library'
 }
 
 dependencies {
-  implementation group: 'org.jastadd', name: 'jastaddgradle', version: '1.13.2'
+  api group: 'net.sf.beaver', name: 'beaver-rt', version: '0.9.11'
 }
diff --git a/eraser-base/build.gradle b/eraser-base/build.gradle
index 4c5f4127..c0df8732 100644
--- a/eraser-base/build.gradle
+++ b/eraser-base/build.gradle
@@ -2,23 +2,21 @@ buildscript {
     repositories.mavenLocal()
     repositories.mavenCentral()
     dependencies {
-        classpath group: 'org.jastadd', name: 'jastaddgradle', version: '1.13.2'
+        classpath group: 'org.jastadd', name: 'jastaddgradle', version: '1.13.3'
     }
 }
 
 plugins {
     id 'eraser.java-application-conventions'
-    id 'java-library'
-    id 'com.github.ben-manes.versions'
+    id 'eraser.java-jastadd-conventions'
     id 'jacoco'
-    id 'distribution'
 }
 
 apply plugin: 'jastadd'
 
 dependencies {
+    jastadd2 "org.jastadd:jastadd:2.3.4"
     api group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: "${jackson_version}"
-    api group: 'net.sf.beaver', name: 'beaver-rt', version: '0.9.11'
     api group: 'org.fusesource.mqtt-client', name: 'mqtt-client', version: '1.15'
     implementation group: 'org.influxdb', name: 'influxdb-java', version: '2.15'
     testImplementation group: 'org.testcontainers', name: 'testcontainers', version: '1.11.2'
@@ -26,7 +24,9 @@ dependencies {
     testImplementation group: 'org.apache.logging.log4j', name: 'log4j-slf4j-impl', version: '2.11.2'
 }
 
-application.mainClass = 'de.tudresden.inf.st.eraser.Main'
+application {
+    mainClass = 'de.tudresden.inf.st.eraser.Main'
+}
 
 test {
     testLogging {
@@ -46,7 +46,7 @@ def relastFiles = fileTree('src/main/jastadd/') {
     include '**/*.relast' }.toList().toArray()
 String[] relastArguments = [
         "libs/relast.jar",
-        "--grammarName=./src/main/jastadd/mainGen",
+        "--grammarName=./src/gen/jastadd/mainGen",
         "--useJastAddNames",
         "--listClass=RefList",
         "--jastAddList=JastAddList",
@@ -58,15 +58,45 @@ task preprocess(type: JavaExec) {
     args relastArguments + relastFiles
 
     inputs.files relastFiles
-    outputs.files file("./src/main/jastadd/mainGen.ast"), file("./src/main/jastadd/mainGen.jadd")
+    outputs.files(file("./src/gen/jastadd/mainGen.ast"),
+            file("./src/gen/jastadd/mainGen.jadd"))
 }
 
 jastadd {
     configureModuleBuild()
-    modules "jastadd_modules"
+    modules {
+        //noinspection GroovyAssignabilityCheck
+        module("eraser") {
+
+            java {
+                basedir "src/"
+                include "main/**/*.java"
+                include "gen/**/*.java"
+            }
+
+            jastadd {
+                basedir "src/"
+                include "main/jastadd/**/*.ast"
+                include "main/jastadd/**/*.jadd"
+                include "main/jastadd/**/*.jrag"
+                include "gen/jastadd/**/*.ast"
+                include "gen/jastadd/**/*.jadd"
+                include "gen/jastadd/**/*.jrag"
+            }
+
+            scanner {
+                include "src/main/jastadd/eraser.flex"
+            }
+
+            parser {
+                include "src/main/jastadd/eraser.parser"
+            }
+
+        }
+    }
     module = "eraser"
 
-    extraJastAddOptions = ['--List=JastAddList']
+    extraJastAddOptions = ["--lineColumnNumbers", "--List=JastAddList"]
 
     astPackage = 'de.tudresden.inf.st.eraser.jastadd.model'
     genDir = 'src/gen/java'
diff --git a/eraser-base/jastadd_modules b/eraser-base/jastadd_modules
deleted file mode 100644
index 49d87af1..00000000
--- a/eraser-base/jastadd_modules
+++ /dev/null
@@ -1,24 +0,0 @@
-module("eraser") {
-
-	java {
-		basedir "src/"
-		include "main/**/*.java"
-		include "gen/**/*.java"
-	}
-
-	jastadd {
-		basedir "src/main/jastadd/"
-		include "**/*.ast"
-		include "**/*.jadd"
-		include "**/*.jrag"
-	}
-
-	scanner {
-	    include "src/main/jastadd/eraser.flex"
-	}
-
-	parser {
-	    include "src/main/jastadd/eraser.parser"
-	}
-
-}
diff --git a/eraser-base/src/main/jastadd/.gitignore b/eraser-base/src/main/jastadd/.gitignore
deleted file mode 100644
index c1777578..00000000
--- a/eraser-base/src/main/jastadd/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-mainGen.ast
-mainGen.jadd
-- 
GitLab