summaryrefslogtreecommitdiff
path: root/build.xml
Commit message (Collapse)AuthorAgeFilesLines
* 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
|
* 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
| | |
* | | Extra repository hook via `extra.repo.url` varAdriaan Moors2013-11-071-4/+4
| | | | | | | | | | | | | | | | | | Previously defaulted to 'https://oss.sonatype.org/content/repositories/releases', now must be set manually. PR validation uses it to configure the repository that has the artifacts published during validation.
* | | Render relevant properties to buildcharacter.propertiesAdriaan Moors2013-11-061-0/+11
| | |
* | | Enforce consistency of pack, docs, osgi, maven tasks.Adriaan Moors2013-11-061-141/+201
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of scattering properties all over invocations of staged-docs, staged-pack, make-bundle, copy-bundle and mvn-package, these are now all fully determined by the project they act on. The varying arguments to these macros are all centralized. They are named like `project.prop`, where `prop` is one of: description, package, dir, name, namesuffix, version, targetdir, targetjar, jar, docroot, skipPackage, srcdir, src, srcjar. The defaults for these properties are computed using `init-project-prop`.
* | | Bundle source and class file bundling in osgi bundling.Adriaan Moors2013-10-251-85/+59
| | | | | | | | | | | | Fix oversight in not skipping scalap's ad-hoc published docs on docs.skip.
* | | Build cleanup. Prepare for scaladoc module build.Adriaan Moors2013-10-221-38/+42
| | |
* | | Targets for publishing core to maven.Adriaan Moors2013-10-221-11/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `ant publish-core-signed-opt-nodocs` creates and publishes the smallest possible set of jars (library/reflect/compiler) we can send to maven. It uploads jars with class files and sources, but no docs (so that we don't need to build scaladoc or any other modules). `ant publish-core-signed-opt` is similar, but also publishes docs. For local experimentation: `ant publish-core-local-nodocs`. With a little bit more work, this can be used instead of `replacestarr`.
* | | Towards minimal build for publishing core to maven.Adriaan Moors2013-10-221-239/+251
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use `unless` attribute in targets so that `docs.skip` influences dependency graph. Create `scaladoc` task in `pack.core` so that we don't need `pack.done` for publishing the core. Move source bundle creation from `dist.src` to `osgi.core`/`osgi.done`. Split dependencies of maven publishing into core/all variants: `osgi.core` creates osgi bundles for just lib/reflect/comp.
* | | Support publishing to maven from main buildAdriaan Moors2013-10-221-0/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Publish to maven with `ant publish.local`, `ant publish`, or `ant publish.signed`. For now, we must keep copying `src/build/maven/maven-deploy.xml` to `dists/maven/latest.build.xml`, along with its dependencies, as it's used by jenkins jobs and PR validation. TODO: `inline src/build/maven/maven-deploy.xml` into `build.xml`.
* | | Simplify packing, align maven-deploy and pack-maven.Adriaan Moors2013-10-211-173/+101
| | |
* | | Inline src/build/pack.xml into build.xml.Adriaan Moors2013-10-211-10/+233
| | | | | | | | | | | | It tended too easily to get out of synch with build.xml.
* | | Continuations plugin gets its own osgi source bundle.Adriaan Moors2013-10-211-9/+14
| | |
* | | Generate scaladoc for each subproject.Adriaan Moors2013-10-211-68/+63
| | |
* | | Untangle classpaths related to doc targets.Adriaan Moors2013-10-211-16/+26
| | |
* | | Remove dead target: locker.actorsAdriaan Moors2013-10-211-8/+0
| | |
* | | Clarify comment.Adriaan Moors2013-10-211-1/+2
| | |
* | | Fix problem assembling sources and docs of modules.Jason Zaugg2013-10-201-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A recent commit added 'overwrite=true' to all usages of the Ant copy task. This was enough to show up a bug in our dist.src and dist.docs tasks, as was seen on the Windows build: Failed to copy: C:\Users\scala\.m2\repository\org\scala-lang\modules\scala-xml_2.11.0-M5\1.0-RC4\scala-xml_2.11.0-M5-1.0-RC4-javadoc.jar to H:\jenkins\workspace\scala-nightly-windows\dists\scala-2.11.0-20131019-064627-8848f24161\doc\scala-devel-docs\C:\Users\scala\.m2\repository\org\scala-lang\modules\scala-xml_2.11.0-M5\1.0-RC4\scala-xml_2.11.0-M5-1.0-RC4-javadoc.jar ... This commit uses a "flattening" copy to put the JARs directly into scala-devel-docs. The Ant docs note [1] this gotcha: > Note that some resources (for example the file resource) return > absolute paths as names and the result of using them without > using a nested mapper (or the flatten attribute) may not be what > you expect. These appear to be the only places we fell into the trap: ack '<file\b' --xml build.xml 1948: <file file="${scala-xml-javadoc}"/> 1949: <file file="${scala-parser-combinators-javadoc}"/> 1992: <file-sets/> 2007: <file file="${scala-xml-sources}"/> 2008: <file file="${scala-parser-combinators-sources}"/> [1] http://ant.apache.org/manual/Tasks/copy.html
* | | Merge pull request #3029 from xeno-by/ticket/6240Eugene Burmako2013-10-181-1/+3
|\ \ \ | | | | | | | | reflection sync
| * | | improves OSGi test runner in AntJason Zaugg2013-10-181-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - Include pack/lib/*.jar in the uptodatecheck - (Hopefully that saves the next guy a few hours) - Switch the the XML formatter (I couldn't find output from the other one) and mention the output directory.