Hi all,
this small patch changes FindTest.gmk to only include TEST.ROOT files
that actually are present. The motivation for this change is that both
Git and Mercurial supports so called "sparse" checkouts [0][1] (still
somewhat experimental for both, but actively worked on). While
experimenting with these features I noticed that FindTests.gmk demands
that test/{jtreg,jdk,langtools,nashorn,jaxp}/TEST.ROOT are present even
if you are only trying to run e.g. `make hotspot`. This small patch
ensures that we only include TEST.ROOT files that actually exist on disk.
Webrev:
https://cr.openjdk.java.net/~ehelin/8237566/00/
Issue:
https://bugs.openjdk.java.net/browse/JDK-8237566
Testing:
- Tier 1,2,3 on Linux, macOS, Windows (all x64)
Thanks,
Erik
[0]: https://www.mercurial-scm.org/repo/hg/file/tip/hgext/sparse.py
[1]:
https://github.blog/2020-01-17-bring-your-monorepo-down-to-size-with-sparse-checkout/
PS. For the curious, I did manage to create a minimal working directory
for hotspot using git version 2.25 (with this patch applied):
$ git clone https://github.com/openjdk/jdk --no-checkout
$ cd jdk
$ git sparse-checkout init --cone
$ git sparse-checkout set make src/java.base src/hotspot
$ curl https://cr.openjdk.java.net/~ehelin/8237566/00/JDK-8237566.patch
| git apply
$ bash configure
$ make hotspot