Commit 8c375210 authored by Sebastian Kuckuk's avatar Sebastian Kuckuk
Browse files

- update sbt configs to use newer versions of sbt, scala and plug-ins

- update project name
- fix issues arsing after updating and switching to jdk 11
parent b15ca32e
......@@ -2,7 +2,9 @@ name := "Compiler"
version := "1.0"
scalaVersion := "2.12.4"
sbtVersion := "1.3.2"
scalaVersion := "2.12.10"
scalaSource in Compile := baseDirectory.value / "src"
......@@ -11,4 +13,4 @@ resourceDirectory in Compile := baseDirectory.value / "resources"
unmanagedBase in Compile := baseDirectory.value / "lib"
libraryDependencies += "org.scala-lang" % "scala-reflect" % scalaVersion.value
libraryDependencies += "org.scala-lang.modules" %% "scala-parser-combinators" % "1.0.6"
libraryDependencies += "org.scala-lang.modules" %% "scala-parser-combinators" % "1.1.2"
package exastencils.parsers.config
import scala.collection.immutable.PagedSeq
import scala.collection.mutable._
import scala.util.parsing.combinator.lexical.StdLexical
import scala.util.parsing.input.PagedSeqReader
import scala.util.parsing.input._
import exastencils.config.Settings
import exastencils.core._
import exastencils.logger._
import exastencils.parsers._
......
package exastencils.parsers.l1
import scala.collection.immutable.PagedSeq
import scala.collection.mutable._
import scala.util.parsing.combinator._
import scala.util.parsing.input._
......
package exastencils.parsers.l2
import scala.collection.immutable.PagedSeq
import scala.collection.mutable._
import scala.util.parsing.combinator._
import scala.util.parsing.input._
......
package exastencils.parsers.l3
import scala.collection.immutable.PagedSeq
import scala.collection.mutable._
import scala.util.parsing.combinator._
import scala.util.parsing.input._
......
package exastencils.parsers.l4
import scala.collection.immutable.PagedSeq
import scala.collection.mutable._
import scala.util.parsing.combinator.PackratParsers
import scala.util.parsing.input.PagedSeqReader
import scala.util.parsing.input._
import exastencils.base.l4._
import exastencils.baseExt.l4._
......
......@@ -2,7 +2,9 @@ name := "CompilerMacros"
version := "1.0"
scalaVersion := "2.12.4"
sbtVersion := "1.3.2"
scalaVersion := "2.12.10"
scalaSource in Compile := baseDirectory.value / "src"
......
......@@ -2,7 +2,9 @@ name := "ConfigEvaluator"
version := "1.0"
scalaVersion := "2.12.4"
sbtVersion := "1.3.2"
scalaVersion := "2.12.10"
scalaSource in Compile := baseDirectory.value / "src"
......
......@@ -2,7 +2,9 @@ name := "ConfigRunner"
version := "1.0"
scalaVersion := "2.12.4"
sbtVersion := "1.3.2"
scalaVersion := "2.12.10"
scalaSource in Compile := baseDirectory.value / "src"
......
package exastencils.parsers.config
import scala.collection.immutable.PagedSeq
import scala.collection.mutable._
import scala.util.parsing.combinator.lexical.StdLexical
import scala.util.parsing.input.PagedSeqReader
import scala.util.parsing.input._
import exastencils.parsers._
import exastencils.runner._
......
......@@ -2,6 +2,8 @@ name := "Meta"
version := "1.0"
scalaVersion := "2.12.4"
sbtVersion := "1.3.2"
scalaVersion := "2.12.10"
scalaSource in Compile := baseDirectory.value / "src"
package meta
import scala.collection.JavaConverters._
import java.util.stream.Collectors
object WrapWithProgressLocation {
def apply(input : String) : String = {
// check if early exit is possible
......@@ -9,7 +13,7 @@ object WrapWithProgressLocation {
var processed = ""
var closeNextLine = false
input.lines.foreach {
input.lines.collect(Collectors.toList()).asScala.foreach {
case s if closeNextLine =>
closeNextLine = false
processed += s + '\n'
......@@ -97,7 +101,7 @@ object WrapWithProgressLocation {
var importAdded = false
input.lines.foreach {
input.lines.collect(Collectors.toList()).asScala.foreach {
case s if importAdded => output += s + '\n'
case "" => output += '\n'
case s if s.startsWith("package") => output += s + '\n'
......
......@@ -13,6 +13,9 @@ The source is available here: https://hackmd.io/_HIHDpfEQ5-JQKSCucw2Sg?both
# The ExaStencils Code Generator
For building the generator, a JDK is required.
We recommend using version 11.
## IDE Support
We recommend using IntelliJ IDEA (the community edition is fine).
......@@ -47,11 +50,6 @@ If you are used to Eclipse, setting the keymap to Eclipse style may be helpful:
* check that everything works: Build -> Build Project
* **note** in some configurations it might be necessary to add the Scala SDK under Project Structure -> Global Libraries. Otherwise no files will be compiled (build still succeeds).
*Alternatively*, provided project files can be used directly (not recommended):
* copy Documentation/IntelliJ/Compiler.iml to /Compiler
* copy Documentation/IntelliJ/CompilerMacros.iml to /CompilerMacros
* Import both in IntelliJ starting with CompilerMacros
### Creating a JAR
Inside the IDE do the following to create a task to assemble the jar:
......
name := "ScalaExaStencils"
name := "ExaStencils"
version := "1.0"
scalaVersion := "2.12.4"
sbtVersion := "1.3.2"
scalaVersion := "2.12.10"
disablePlugins(sbtassembly.AssemblyPlugin)
......
FROM nvidia/cuda:10.1-devel-ubuntu18.04
ARG SBT_VERSION=1.2.8
ARG SBT_VERSION=1.3.2
RUN \
apt-get update && apt-get install -y build-essential curl git openjdk-11-jdk python3 openmpi-bin openmpi-common libopenmpi-dev libopenmpi2 ant mlocate && \
......
addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.6")
addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.10")
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment