Skip to content
Snippets Groups Projects
Commit 7191cd3e authored by René Schöne's avatar René Schöne
Browse files

Using packaged relast and preprocessor

parent 572432c0
No related branches found
No related tags found
No related merge requests found
Pipeline #13152 failed
preprocessor_version = 0.1.0-41
...@@ -11,20 +11,28 @@ plugins { ...@@ -11,20 +11,28 @@ plugins {
id 'com.github.ben-manes.versions' id 'com.github.ben-manes.versions'
id 'java' id 'java'
id 'idea' id 'idea'
id 'org.jastadd'
id 'application' id 'application'
id 'java-library' id 'java-library'
id 'maven-publish' id 'maven-publish'
} }
apply plugin: 'jastadd'
// --- Dependencies --- // --- Dependencies ---
repositories { repositories {
mavenCentral() mavenCentral()
maven {
name 'gitlab-maven'
url 'https://git-st.inf.tu-dresden.de/api/v4/groups/jastadd/-/packages/maven'
}
}
configurations {
relast
} }
dependencies { dependencies {
api project(':relast.preprocessor') relast group: 'org.jastadd', name: 'relast', version: "0.3.0-137"
implementation group: 'org.jastadd', name: 'relast-preprocessor', version: "${preprocessor_version}"
implementation group: 'net.sourceforge.plantuml', name: 'plantuml', version: '1.2022.2' implementation group: 'net.sourceforge.plantuml', name: 'plantuml', version: '1.2022.2'
...@@ -38,13 +46,35 @@ dependencies { ...@@ -38,13 +46,35 @@ dependencies {
} }
// --- Preprocessors --- // --- Preprocessors ---
ext {
extractLocation = "src/gen/jastadd-sources/relast.preprocessor"
}
File genSrc = file("src/gen/java") File genSrc = file("src/gen/java")
sourceSets.main.java.srcDir genSrc sourceSets.main.java.srcDir genSrc
idea.module.generatedSourceDirs += genSrc idea.module.generatedSourceDirs += genSrc
task extractJastAddSources(type: Sync) {
dependsOn configurations.runtimeClasspath
configurations.runtimeClasspath.asFileTree.filter { it.toString().endsWith("relast-preprocessor-${preprocessor_version}.jar") }.collect {
from(zipTree(it)) {
include "**/*.jrag"
include "**/*.jadd"
include "**/*.ast"
include "**/*.relast"
include "**/*.flex"
include "**/*.parser"
}
}
includeEmptyDirs false
into file("${extractLocation}")
}
task relast(type: JavaExec) { task relast(type: JavaExec) {
group = 'Build' group = 'Build'
main = "-jar" classpath = configurations.relast
mainClass = 'org.jastadd.relast.compiler.Compiler'
dependsOn extractJastAddSources
doFirst { doFirst {
delete "src/gen/jastadd/*" delete "src/gen/jastadd/*"
...@@ -53,8 +83,8 @@ task relast(type: JavaExec) { ...@@ -53,8 +83,8 @@ task relast(type: JavaExec) {
args = [ args = [
"../libs/relast.jar", "../libs/relast.jar",
'../relast.preprocessor/src/main/jastadd/RelAst.relast', "${extractLocation}/RelAst.relast",
'../relast.preprocessor/src/main/jastadd/mustache/Mustache.relast', "${extractLocation}/mustache/Mustache.relast",
'./src/main/jastadd/Grammar2Uml.relast', './src/main/jastadd/Grammar2Uml.relast',
'./src/main/jastadd/MustacheNodes.relast', './src/main/jastadd/MustacheNodes.relast',
"--listClass=java.util.ArrayList", "--listClass=java.util.ArrayList",
...@@ -74,35 +104,35 @@ jastadd { ...@@ -74,35 +104,35 @@ jastadd {
module("Grammar2Uml") { module("Grammar2Uml") {
jastadd { jastadd {
basedir ".." basedir "."
include "relast.preprocessor/src/main/jastadd/**/*.jadd" include "src/gen/jastadd-sources/relast.preprocessor/**/*.jadd"
include "relast.preprocessor/src/main/jastadd/**/*.jrag" include "src/gen/jastadd-sources/relast.preprocessor/**/*.jrag"
include "grammar2uml/src/main/jastadd/**/*.jadd" include "src/main/jastadd/**/*.jadd"
include "grammar2uml/src/main/jastadd/**/*.jrag" include "src/main/jastadd/**/*.jrag"
include "grammar2uml/src/gen/jastadd/**/*.ast" include "src/gen/jastadd/**/*.ast"
include "grammar2uml/src/gen/jastadd/**/*.jadd" include "src/gen/jastadd/**/*.jadd"
include "grammar2uml/src/gen/jastadd/**/*.jrag" include "src/gen/jastadd/**/*.jrag"
} }
scanner { scanner {
basedir ".." basedir "."
include "grammar2uml/src/main/jastadd/scanner/Header.flex", [-5] include "src/main/jastadd/scanner/Header.flex", [-5]
include "relast.preprocessor/src/main/jastadd/scanner/Preamble.flex", [-4] include "src/gen/jastadd-sources/relast.preprocessor/scanner/Preamble.flex", [-4]
include "relast.preprocessor/src/main/jastadd/scanner/Macros.flex", [-3] include "src/gen/jastadd-sources/relast.preprocessor/scanner/Macros.flex", [-3]
include "grammar2uml/src/main/jastadd/scanner/Macros.flex", [-3] include "src/main/jastadd/scanner/Macros.flex", [-3]
include "relast.preprocessor/src/main/jastadd/scanner/RulesPreamble.flex", [-2] include "src/gen/jastadd-sources/relast.preprocessor/scanner/RulesPreamble.flex", [-2]
include "grammar2uml/src/main/jastadd/scanner/MappingContent.flex", [-1] include "src/main/jastadd/scanner/MappingContent.flex", [-1]
include "grammar2uml/src/main/jastadd/scanner/Keywords.flex" include "src/main/jastadd/scanner/Keywords.flex"
include "relast.preprocessor/src/main/jastadd/scanner/Keywords.flex" include "src/gen/jastadd-sources/relast.preprocessor/scanner/Keywords.flex"
include "relast.preprocessor/src/main/jastadd/scanner/Symbols.flex", [1] include "src/gen/jastadd-sources/relast.preprocessor/scanner/Symbols.flex", [1]
include "relast.preprocessor/src/main/jastadd/scanner/RulesPostamble.flex", [2] include "src/gen/jastadd-sources/relast.preprocessor/scanner/RulesPostamble.flex", [2]
} }
parser { parser {
basedir ".." basedir "."
include "grammar2uml/src/main/jastadd/parser/Preamble.parser" include "src/main/jastadd/parser/Preamble.parser"
include "relast.preprocessor/src/main/jastadd/parser/RelAst.parser" include "src/gen/jastadd-sources/relast.preprocessor/parser/RelAst.parser"
include "grammar2uml/src/main/jastadd/parser/Grammar2Uml.parser" include "src/main/jastadd/parser/Grammar2Uml.parser"
} }
} }
} }
...@@ -219,5 +249,4 @@ publishing { ...@@ -219,5 +249,4 @@ publishing {
// --- Task order --- // --- Task order ---
generateAst.dependsOn relast generateAst.dependsOn relast
jar.dependsOn ":relast.preprocessor:jar"
publish.dependsOn jar publish.dependsOn jar
...@@ -5,6 +5,4 @@ pluginManagement { ...@@ -5,6 +5,4 @@ pluginManagement {
} }
rootProject.name = 'grammar2uml' rootProject.name = 'grammar2uml'
include 'relast.preprocessor'
include 'grammar2uml' include 'grammar2uml'
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment