Commit Graph

8 Commits

Author SHA1 Message Date
Reinier Zwitserloot 476a43b970 [build] sped up the build considerable.
We used to use the mango SPI processor, but this had two major issues:
* ecj wouldn't run annotation processors, requiring a separate proc:only compile run with javac
* mangoSPI couldn't do incremental compilation, so this required a full rebuild just to generate SPI files, every time.

Addressed by updating to IPP40 which does support explicit annotation processors even for ecj, and
adding our own SPI generating annotation processor to the build which can deal with incrementals.

There are some limits; removing a `@Provides` annotation on an existing type will need a full clean to pick that up, for example.
These limits seem quite exotic, though.
2021-03-16 17:09:13 +01:00
Reinier Zwitserloot f6a6f9deb5 [trivial] [typo] 2020-09-18 03:43:42 +02:00
Reinier Zwitserloot 9d45a506b1 [build] eclipse test target for Javac8 fixed
javac8 has a bizarre dependency situation: we need the stubs in src/stubs there to compile, but if they are there
at runtime during a test run of javac8, they take precedence over the JDK's javac (because we include this
as a separate cp entry, and thus it is not a bootclasspath item), and messes everything up.
The fix is to tell eclipse to compile various src/X folders to different 'bin' targets, which required
an update to ivyplusplus as well.

also it was just broken in general, fixed that too :)
2020-09-18 01:00:24 +02:00
Reinier Zwitserloot 2f397d7c95 [tests] only add agent VM args for ECJ/Eclipse tests 2020-07-23 23:40:33 +02:00
Reinier Zwitserloot 88d4c1e54c [build] [wip] the eclipse debug targets still aren't entirely correct. 2020-07-03 17:50:44 +02:00
Reinier Zwitserloot cb7e4a9ef3 [build] propagate chosen bootclasspath into eclipse test targets 2020-07-03 05:34:30 +02:00
Reinier Zwitserloot 0f1c950b77 [build] [mapstructBinding] 2020-06-25 23:31:13 +02:00
Reinier Zwitserloot 0bbedd092a [build] rewriting the build system 2020-06-23 15:55:18 +02:00