summaryrefslogtreecommitdiff
path: root/build.xml
Commit message (Collapse)AuthorAgeFilesLines
* Remove distribution building from ant build, see scala/scala-dist.Adriaan Moors2014-03-031-177/+60
| | | | | | | | | | | | | | | | | | | | | | | The only result of all this duplication was bitrot. The main build is responsible for building, testing, documenting and publishing. (It publishes everything needed to build a distribution to maven in `pack-maven.dist`.) The sbt build over at scala/scala-dist handles distribution building for the various platforms. Note: after `ant build`, `build/pack` will have a pretty complete distribution. (The only thing missing are the docs: see targets `pack.doc` and `docs.done`.) To build your own distribution, do, e.g.: ``` ant publish-local-opt -Dmaven.version.suffix="-foo" cd ~/git hub clone scala/scala-dist cd scala-dist sbt 'set version := "2.11.0-foo"' 'set resolvers += Resolver.mavenLocal' universal:package-bin ```
* No longer generate deprecated dists/maven/latest/build.xmlAdriaan Moors2014-03-031-33/+7
| | | | | The distpack-maven-* targets no longer create said dir/build. Use the publish tasks directly instead.
* Check library/reflect bincompat against 2.11.0-RC1Adriaan Moors2014-03-031-8/+3
| | | | Changes in the package scala.reflect.internals are ignored.
* Update ant build's update.versions mechanism.Adriaan Moors2014-02-271-12/+22
|
* Revert "SI-7624 Fix -feature warnings in scala/tools/scalap"Grzegorz Kossakowski2014-02-261-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit f2de2c4ec43180351ef1f306bcc5f24643ba5477 because it broke both lift-json and json4s libraries that depend on scalap's APIs. Arguably, those libraries shouldn't depend on unofficial APIs but they do because they had no better alternative at the time (no Scala reflection). The cost of breaking them is not worth minor change of the package. The f2de2c4ec43180351ef1f306bcc5f24643ba5477 mixed two things: 1. Fixing feature warnings 2. Changing package name When reverting (and resolving conflicts) I tried to keep 1. and revert just 2. However, there were also some questionable changes related to 1. that got reverted. In particular, a package object with implicit members that enable language features is an anti-pattern because members of package object are visible both _within_ and _outside_ of the package. Therefore, user could use wildcard import for importing everything from scalap package and enabled postfixOps language feature unknowingly. I went for just adding imports in just those few files where they were needed. Amended by Adriaan: To allow faster turn around, I re-enabled resolving partest from sonatype, as its version needs to be bumped and I don't want to wait for maven central synch. Conflicts: src/partest/scala/tools/partest/nest/Runner.scala src/scalap/scala/tools/scalap/scalax/rules/Memoisable.scala src/scalap/scala/tools/scalap/scalax/rules/Rule.scala src/scalap/scala/tools/scalap/scalax/rules/Rules.scala src/scalap/scala/tools/scalap/scalax/rules/scalasig/ClassFileParser.scala src/scalap/scala/tools/scalap/scalax/rules/scalasig/ScalaSig.scala
* Fix ./build/<stage>/bin/scaladocJason Zaugg2014-02-221-0/+1
| | | | | | | | | | | | | | | | | Was: ./build/quick/bin/scaladoc -version Exception in thread "main" java.lang.NoClassDefFoundError: scala/tools/nsc/ScalaDoc Caused by: java.lang.ClassNotFoundException: scala.tools.nsc.ScalaDoc Now: % for tool in ./build/quick/bin/{fsc,scala,scalac,scaladoc,scalap}; do $tool -version; done Fast Scala compiler version 2.11.0-20140222-144307-b0dcf79875 -- Copyright 2002-2013, LAMP/EPFL Scala code runner version 2.11.0-20140222-144307-b0dcf79875 -- Copyright 2002-2013, LAMP/EPFL Scala compiler version 2.11.0-20140222-144307-b0dcf79875 -- Copyright 2002-2013, LAMP/EPFL Scaladoc version 2.11.0-20140222-144307-b0dcf79875 -- Copyright 2002-2013, LAMP/EPFL Scala classfile decoder version 2.0.1 -- (c) 2002-2013 LAMP/EPFL
* Merge pull request #3395 from adriaanm/dist-cleanupJason Zaugg2014-02-061-1/+1
|\ | | | | Dist cleanup
| * Scaladoc jars should go to /api.Adriaan Moors2014-01-211-1/+1
| |
* | Merge pull request #3404 from gkossakowski/java8-supportGrzegorz Kossakowski2014-01-241-0/+4
|\ \ | | | | | | Preliminary support for building and testing with Java 8
| * | Add support for Java 8 in our build.Grzegorz Kossakowski2014-01-211-0/+4
| |/ | | | | | | | | We explicitly check for supported Java versions in our build. Add Java 8 to the list of supported versions.
* | fix to partest.crossAntonio Cunei2014-01-221-2/+2
| |
* | Add cross suffix customizability for modulesAntonio Cunei2014-01-221-7/+17
|/ | | | | | | | | | For each module whose version can be specified using the property "xxx.version.number", it is now possible to specify its cross version suffix by using an optional property "xxx.cross.suffix". If such a property is not defined, then continue to use the string "_${scala.binary.version}", as before.
* Merge pull request #3277 from adriaanm/scala-dist-mavenAdriaan Moors2014-01-091-114/+125
|\ | | | | Scala dist maven
| * Always copy man/* and doc/tools/*.Adriaan Moors2013-12-201-13/+14
| |
| * scala-library-all: dependency for those who want it allAdriaan Moors2013-12-191-1/+7
| | | | | | | | | | | | | | If you'd rather depend on all Scala has to offer, module-wise, depend on scala-library-all. This dependency determines the jars that ship with the Scala distribution. To achieve parity via maven resolution, this is the artifact to depend on.
| * scala-dist: all you need to roll your own scala distributionAdriaan Moors2013-12-191-14/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We now publish a scala-dist artifact every time we publish to maven. It captures everything needed to build a Scala distribution. The packager should resolve all transitive dependencies of scala-dist, put the class-file jars in the lib/ directory, the scaladoc jars in the api/ directory, and the source jars in the src/ directory, in addition to unpacking the scala-dist jar itself, which contains the bin/, doc/ and man/ directories, which previously weren't available on maven. This also removes the `@{dir}` abstraction, which was used to package the continuations plugin. Since it's moved out, we can go back to hard-coding it.
| * Prepare maven-based distribution building.Adriaan Moors2013-12-191-99/+85
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | NOTE: `maven/latest/build.xml` is now deprecated. To publish a Scala build, simply call `ant publish` or `ant publish-local`. `maven/latest/build.xml` will soon disappear from `dists/` The idea is that a Scala distribution is a simple repackaging of artifacts already available on maven. Already available: typical jars for the artifacts (classes, sources, scaladoc). To add: the bin/, doc/, and man/ directories. Thus, move the contents that should end up in the distribution from docs/ to doc/, create the man/ directory with the manpages, and include the scripts in bin/. Next up: package these directories in a jar and publish to maven, with a dependency on scala-library-all, scala-reflect and scala-compiler, for the jars that should end up in the distribution. Refactorings: - Pull filter-pom out from deploy-one. - Rename maven-base to dist.maven. - Set all properties in the init target (dist.maven)
| * Remove the unused test.continuations.suite.Adriaan Moors2013-12-181-4/+0
| |
* | Invalidate <uptodate> checks on edits to build-ant-macros.xmlJason Zaugg2013-12-221-0/+2
| | | | | | | | | | This was recently refactored from build.xml. Changing either file should invalidate caches.
* | Fix Ant uptodate checking in OSGI JAR creationJason Zaugg2013-12-221-24/+31
|/ | | | | | | | | | | | | | | | | Changes to the compiler or library were not triggering recreation of the OSGI JARs, which are used in the local maven deployment tasks. Reason: this Ant-ipattern: <fileset base="/foo"> <include name="/foo/bar.baz"/> </fileset> Instead, we should use a <filelist/>, which doesn't require a base directory. This can be composed into a <srcresources/> element in the <uptodate/>. Phew!
* Modularize the swing library.Adriaan Moors2013-12-131-42/+17
| | | | | The Scala Swing library will still ship with 2.11 (albeit unsupported). It now resides at https://github.com/scala/scala-swing.
* Modularize continuations plugin.Adriaan Moors2013-12-131-88/+39
| | | | | The continuations plugin and library will still ship with 2.11 (albeit unsupported). They now reside at https://github.com/scala/scala-continuations.
* Fixup for #3265Adriaan Moors2013-12-131-3/+0
|
* Merge commit '9cdbe28' into merge/2.10.x-to-masterJason Zaugg2013-12-111-16/+19
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: build.examples.xml build.xml docs/examples/actors/pingpong.scala docs/examples/fors.scala docs/examples/iterators.scala docs/examples/jolib/Ref.scala docs/examples/jolib/parallelOr.scala docs/examples/monads/callccInterpreter.scala docs/examples/monads/directInterpreter.scala docs/examples/monads/errorInterpreter.scala docs/examples/monads/simpleInterpreter.scala docs/examples/monads/stateInterpreter.scala docs/examples/parsing/ArithmeticParser.scala docs/examples/patterns.scala docs/examples/pilib/elasticBuffer.scala docs/examples/pilib/handover.scala docs/examples/pilib/piNat.scala docs/examples/typeinf.scala src/build/pack.xml
| * Update README, include doc/licenses in distroAdriaan Moors2013-12-101-9/+14
| | | | | | | | | | | | | | | | | | | | | | We forgot to copy the licenses directory to the dists/ directory, so that they weren't included in the binary distribution. I did some house cleaning while I was at it. We no longer distribute ant as far as I can see (we used to for the sbt build, but that was long since removed). Added license for ASM, and Jansi (just to be sure).
| * Remove docs/examples; they reside at scala/scala-distAdriaan Moors2013-12-091-6/+1
| |
| * Do not distribute partest and its dependencies.Adriaan Moors2013-12-091-8/+0
| |
| * Upgrade pax-url-aether to 1.6.0.Adriaan Moors2013-11-111-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Since our jenkins uses mirrors with passwords, we needed a fix for https://ops4j1.jira.com/browse/PAXURL-217 in order to run osgi.test on jenkins, now that we use maven more. We didn't hit this bug before because we were using a standard location for the maven local repository, but that causes problems with concurrent jenkins jobs accessing it. Also, upgrade STARR because Jenkins is using `skip.locker` now. See https://groups.google.com/d/msg/scala-internals/7R-Y5txP8NI/DX_JWFO2fu4J for a discussion of the problem this should fix.
| * Allow retrieving STARR from non-standard repo for PR validationAdriaan Moors2013-11-061-0/+3
| |
| * Render relevant properties to buildcharacter.propertiesAdriaan Moors2013-11-061-0/+11
| |
| * [nomaster] SI-7862: MANIFEST.MF file for Scala sourcesIulian Dragos2013-09-231-6/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In order to be able to use published Scala jars as OSGi bundles in the Eclipse build, Eclipse needs to match sources and binaries. That is done by making source jars *source bundles*. This PR adds the required manifest entries. Nothing else should be affected (file names remain the same). Cherry picked from 655b7d2601d7db9e98bb405da0a67c9068c98626 Conflicts: build.xml After this commit: ``` % ant -q dist.src % for f in dists/scala-2.10.3-20130921-144112-892aa93cf7/src/*.jar; do \ echo $f \ unzip -p $f META-INF/MANIFEST.MF \ done dists/scala-2.10.3-20130921-144112-892aa93cf7/src/fjbg-src.jar Manifest-Version: 1.0 Ant-Version: Apache Ant 1.8.4 Created-By: 1.6.0_37-b06-434-11M4509 (Apple Inc.) dists/scala-2.10.3-20130921-144112-892aa93cf7/src/msil-src.jar Manifest-Version: 1.0 Ant-Version: Apache Ant 1.8.4 Created-By: 1.6.0_37-b06-434-11M4509 (Apple Inc.) dists/scala-2.10.3-20130921-144112-892aa93cf7/src/scala-actors-src.jar Manifest-Version: 1.0 Ant-Version: Apache Ant 1.8.4 Created-By: 1.6.0_37-b06-434-11M4509 (Apple Inc.) Bundle-Name: Scala Actors Sources Bundle-SymbolicName: org.scala-lang.scala-actors.source Bundle-Version: 2.10.3.v20130921-144112-892aa93cf7 Eclipse-SourceBundle: org.scala-lang.scala-actors;version="2.10.3.v201 30921-144112-892aa93cf7";roots:="." dists/scala-2.10.3-20130921-144112-892aa93cf7/src/scala-compiler-src.jar Manifest-Version: 1.0 Ant-Version: Apache Ant 1.8.4 Created-By: 1.6.0_37-b06-434-11M4509 (Apple Inc.) Bundle-Name: Scala Compiler Sources Bundle-SymbolicName: org.scala-lang.scala-compiler.source Bundle-Version: 2.10.3.v20130921-144112-892aa93cf7 Eclipse-SourceBundle: org.scala-lang.scala-compiler;version="2.10.3.v2 0130921-144112-892aa93cf7";roots:="." dists/scala-2.10.3-20130921-144112-892aa93cf7/src/scala-library-src.jar Manifest-Version: 1.0 Ant-Version: Apache Ant 1.8.4 Created-By: 1.6.0_37-b06-434-11M4509 (Apple Inc.) Bundle-Name: Scala Library Sources Bundle-SymbolicName: org.scala-lang.scala-library.source Bundle-Version: 2.10.3.v20130921-144112-892aa93cf7 Eclipse-SourceBundle: org.scala-lang.scala-library;version="2.10.3.v20 130921-144112-892aa93cf7";roots:="." dists/scala-2.10.3-20130921-144112-892aa93cf7/src/scala-partest-src.jar Manifest-Version: 1.0 Ant-Version: Apache Ant 1.8.4 Created-By: 1.6.0_37-b06-434-11M4509 (Apple Inc.) dists/scala-2.10.3-20130921-144112-892aa93cf7/src/scala-reflect-src.jar Manifest-Version: 1.0 Ant-Version: Apache Ant 1.8.4 Created-By: 1.6.0_37-b06-434-11M4509 (Apple Inc.) Bundle-Name: Scala Reflect Sources Bundle-SymbolicName: org.scala-lang.scala-reflect.source Bundle-Version: 2.10.3.v20130921-144112-892aa93cf7 Eclipse-SourceBundle: org.scala-lang.scala-reflect;version="2.10.3.v20 130921-144112-892aa93cf7";roots:="." dists/scala-2.10.3-20130921-144112-892aa93cf7/src/scala-swing-src.jar Manifest-Version: 1.0 Ant-Version: Apache Ant 1.8.4 Created-By: 1.6.0_37-b06-434-11M4509 (Apple Inc.) Bundle-Name: Scala Swing Sources Bundle-SymbolicName: org.scala-lang.scala-swing.source Bundle-Version: 2.10.3.v20130921-144112-892aa93cf7 Eclipse-SourceBundle: org.scala-lang.scala-swing;version="2.10.3.v2013 0921-144112-892aa93cf7";roots:="." dists/scala-2.10.3-20130921-144112-892aa93cf7/src/scalap-src.jar Manifest-Version: 1.0 Ant-Version: Apache Ant 1.8.4 Created-By: 1.6.0_37-b06-434-11M4509 (Apple Inc.) ```
| * Merge pull request #2893 from adriaanm/backport-2880-2.10.xGrzegorz Kossakowski2013-09-111-2/+2
| |\ | | | | | | update typesafe.artifactory-online.com to private-repo
| | * update typesafe.artifactory-online.com to private-repoFrançois Garillot2013-08-291-2/+2
| | |
* | | Merge pull request #3198 from adriaanm/update-versionsAdriaan Moors2013-12-041-0/+21
|\ \ \ | | | | | | | | Use -Dupdate.versions to update versions.properties
| * | | Use -Dupdate.versions to update versions.propertiesAdriaan Moors2013-11-261-0/+21
| | | |
* | | | Rename build-support.xml to build-ant-macros.xml.Adriaan Moors2013-11-261-1/+1
| | | |
* | | | No longer support unreleased STARR.Adriaan Moors2013-11-251-199/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The STARR ("stable reference") compiler is used to bootstrap the compiler. It is now always resolved from maven, based on the `starr.version` property (stored in `versions.properties`). Before, we used the `.desired.sha1` mechanism to pull a set of jars that define the compiler used to build locker ("local reference"), which then builds quick. From now on, we only support officially released versions of STARR. Milestones are allowed of course, which means that, instead of breaking change, STARR evolution must support old and new behavior for at least one milestone cycle. For local development, use the `replacestarr` target as before. It builds quick (core only) and publishes it to your local maven repo with a generated version number, which is saved as `starr.version` in `build.properties` for convenience (overriding `versions.properties`), so that your next build will use this version of the compiler for STARR. You may now think of STARR as STAble Reference Release -- if you will.
* | | | Move all macros in build.xml to build-support.xml.Adriaan Moors2013-11-251-517/+3
|/ / / | | | | | | | | | No functional changes -- in an effort to separate state from behavior.
* | | Merge pull request #3147 from som-snytt/issue/repl-columnsAdriaan Moors2013-11-251-0/+1
|\ \ \ | | | | | | | | SI-7969 REPL -C columnar output
| * | | SI-7969 Refactor to trait with testSom Snytt2013-11-151-0/+1
| | | | | | | | | | | | | | | | Make REPL classes testable in junit. Test the Tabulator.
* | | | Merge pull request #3187 from som-snytt/issue/test-suite-quickAdriaan Moors2013-11-251-0/+17
|\ \ \ \ | | | | | | | | | | Test in quick mode for ant build
| * | | | Test in quick mode for ant buildSom Snytt2013-11-231-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a target `test.suite.quick`. Let test.quick depend only on init and quick.done, and load the task using the quick path (with non-core deps).
* | | | | 2.11.0-M7 starr, 1.11.1 scalacheck, bump modules.Adriaan Moors2013-11-201-2/+3
|/ / / / | | | | | | | | | | | | | | | | Also consult `extra-repo` more liberally to make it easier to test e.g., a staged scalacheck while releasing modules.
* | | | Merge pull request #3129 from adriaanm/pr-rebase-3001Adriaan Moors2013-11-131-11/+8
|\ \ \ \ | | | | | | | | | | [rebase] blackbox and whitebox macros
| * | | | blackbox and whitebox macrosEugene Burmako2013-11-121-11/+8
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is the first commit in the series. This commit only: 1) Splits Context into BlackboxContext and WhiteboxContext 2) Splits Macro into BlackboxMacro and WhiteboxMacro 3) Introduces the isBundle property in the macro impl binding Here we just teach the compiler that macros can now be blackbox and whitebox, without actually imposing any restrictions on blackbox macros. These restrictions will come in subsequent commits. For description and documentation of the blackbox/whitebox separation see the official macro guide at the scaladoc website: http://docs.scala-lang.org/overviews/macros/blackbox-whitebox.html Some infrastructure work to make evolving macros easier: compile partest-extras with quick so they can use latest library/reflect/...
* / / / Refactoring to prepare modularization of the compiler.Adriaan Moors2013-11-121-16/+108
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Actual modularization is delayed until 2.12. The one big (one-line) change is to make the interactive compiler independent of scaladoc. We have one "integration test": `MemoryLeaksTest`. This commit adds a bunch of comments marked `TODO: modularize the compiler`, that should be uncommented when we're ready to continue the modularization effort. I decided to merge them commented out to avoid having to rebase xml patches. There's still some chance of bitrot, but I'm willing to take my chances. I previously refactored the build to make it easier to add jars in a coherent way, which hinges on the `init-project-prop` mechanism, so the relevant properties are already injected there.
* | | Filter dependencies from partest and scalacheck.Adriaan Moors2013-11-111-3/+25
| | | | | | | | | | | | | | | | | | | | | | | | I previously messed this up in a24e7fa, which caused partest classpath again to include multiple version of scala-library and friends. We should really automate enforcing uniqueness of packages.
* | | M6 modules, partest depends on scala as provided.Adriaan Moors2013-11-111-32/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The new partest now marks its scala dependencies as provided. This is much more robust than before, and it breaks ugly cycles. Updated the build for partest-extras to provide the required scala-compiler dependency. Also, upgrade pax-url-aether to 1.6.0. Since our jenkins uses mirrors with passwords, we needed a fix for https://ops4j1.jira.com/browse/PAXURL-217 in order to run osgi.test on jenkins, now that we use maven more. We didn't hit this bug before because we were using a standard location for the maven local repository, but that causes problems with concurrent jenkins jobs accessing it. So, I added the following to `~/.m2/settings`, and then ran into the issue described above. Also removed some non-essential uses of the extra-repo (slows stuff down), and added a comment of how to make the osgi tests look in a certain local m2 repo (for /some/ operations...) ``` <!-- Maven repos are not safe for concurrent access, thus give each job its own. The WORKSPACE env var is set by jenkins to the path of the current job's workspace. This settings file will cause ant/maven to break if WORKSPACE is not set (to a writeable directory). I don't know how to encode a fall back, but I assume it's not needed as this is ~jenkins/.m2/settings.xml --> <localRepository>${WORKSPACE}/m2repo</localRepository> ```
* | | IDE needs actors/swing/continuations publish for validation.Adriaan Moors2013-11-071-0/+8
| | | | | | | | | | | | | | | As soon as they are also modularized, we can go back to only building/publishing the core (lib/reflect/compiler).
* | | More useful ant targets for faster pr validationAdriaan Moors2013-11-071-9/+5
| | |