Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.debian.maint.java > #11411

Re: Status of sbt package

From Thomas Finneid <tfinneid@fcon.no>
Newsgroups linux.debian.maint.java
Subject Re: Status of sbt package
Date 2019-09-27 14:30 +0200
Message-ID <yKXxM-4r4-3@gated-at.bofh.it> (permalink)
References (8 earlier) <yKlVw-5Tw-7@gated-at.bofh.it> <yKHCG-2Hu-5@gated-at.bofh.it> <yKHCG-2Hu-3@gated-at.bofh.it> <yKL3A-4XK-3@gated-at.bofh.it> <yKXxM-4r4-5@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


Hi Andrius,

Den 27.09.2019 10:15, skrev merkys@debian.org:
> I have managed to get around Scala FTBFS problem [1] for now, will
> continue looking into your script.
> 
> [1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=941211

Are you trying to compile scala 2.11.12 from the source debian package 
or from the scalateams 2.11.12 src tar ball? Are you doing that to use 
it as the base to compile 2.12.0-M1, to be able to compile sbt or just 
to get expereience with build script build-2.12.0-M1.sh?

The bug report mentioned maven? I am nort familiar with the build 
procedure described, are you using maven to start the ant build script? 
Or have I got it all wrong?

> jline v2.14.6 is in Debian as libjline2-java, wouldn't this work? 

I experimented with using the jline from /usr/share/scala/lib, but it 
did not work, I think the problem is not jline in it self, but rather 
that the bootclasspath is different in the debian package than the local 
installation of scala 2.11.12 I used when writing the initial script.

By the
> way, how are the jars under $BUILDMODULEPATH built?

The short answer is its the release library jars that comes with the 
scala release of 2.11.12, so its precompiled. Also some of the jars I 
just copied from the release tarball to be able to test if it I can 
compile a test scala class and run it. Specifically jline, scala-xml, 
config and a few others.

The long answer is, in two parts  (I appologise if this is obvious...)
1- I downloaded from efpl the release of 2.11.12 and used that as the 
compiler for the build. So when setting up the booclasspath I had to 
control which jars were included at the different stages of the 
compilation script. The next answer explains why.
2- Since we are compiling a compiler, we need to incrementally exchange 
the old version of the scala jar files with the newly compiled version, 
otherwise the new scala version wont run (abstract method error). This 
means overriding the complete bootclasspath for the jvm, not just scala 
booclasspath.

So the strategy is simple, but technically confusing at times, by 
manually creating a new and complete javabootclasspath:
- get all jars from the jre, they are put last on the bootCP
- get all jars from the scala libs, they are put second to last on the 
bootCP
- first use all this to build the first module of the new scala version: 
scala-library
- replace old scala-library jar (from 2.11.12) with newly compiled 
library-jar (2.12.0-M1) on the bootCP (put first on bootCP to guarantee 
shadowing of the old version)
- as the modules are built, keep replacing the old with the new, in the 
order of asm, forkjoin, library, reflect, compiler, scalap, repl, 
interactive

The jars the script produces ar not package exactly the same as the efpl 
release jars are, so that might be a bit configusing


Btw, maybe we should start a new thread about the scala compilation 
stuff so its easier for all to see what the discussions are actually about?

Back to linux.debian.maint.java | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Re: Status of sbt package Emmanuel Bourg <ebourg@apache.org> - 2019-08-08 09:40 +0200
  Re: Status of sbt package Emmanuel Bourg <ebourg@apache.org> - 2019-08-08 16:50 +0200
    Re: Status of sbt package Frédéric Bonnard <frediz@debian.org> - 2019-08-14 12:00 +0200
      Re: Status of sbt package Thomas Finneid <tfinneid@fcon.no> - 2019-08-17 07:10 +0200
        Re: Status of sbt package Thomas Finneid <tfinneid@fcon.no> - 2019-09-25 22:20 +0200
          Re: Status of sbt package Thomas Finneid <tfinneid@fcon.no> - 2019-09-26 21:30 +0200
            Re: Status of sbt package Thomas Finneid <tfinneid@fcon.no> - 2019-09-27 01:10 +0200
              Re: Status of sbt package Thomas Finneid <tfinneid@fcon.no> - 2019-09-27 14:30 +0200
              Re: Status of sbt package Thomas Finneid <tfinneid@fcon.no> - 2019-09-28 00:00 +0200

csiph-web