I don't know about java, but the python portgroup deliberately disables the
ability to download dependencies. We don't want ports to download things except
during the fetch phase. And if a port has dependencies on other ports, it
should declare them. It looks like py-tensorflow already declares a dependency
on py-six, so there should be no reason for it to need to download six again.
If its build system is hardcoded to do so anyway, you could patch it to stop it
from doing that.
I would like to be able to do this but the bazel build system that
py-tensorflow uses is not designed to allow it easily. It positively insists on
controlling all aspects of the build, including dependencies. It was enough of
a battle to get it to use macports provided compilers, when needed….
I am not saying it is impossible, I just do not know how. See for instance
https://docs.bazel.build/versions/master/external.html
Its just really really complicated and frankly I don’t have the enthusiasm to
work out how to do it…
bazel and py-tensorflow currently build fine, albeit with their own
dependencies, when Oracle’s JDK 10+ is installed. I am just looking at the
moment to allow OpenJDK to be used as well.
Ah, ok. I'm not familiar with bazel. Here's how downloading dependencies was
disabled in the python portgroup:
https://github.com/macports/macports-ports/commit/a0833320f5342a0876a8a5c59320feedc8d87411
What you're seeing is probably unrelated then, but you could try reverting that
change to make sure.
As it turns out I think the issue is specific to OpenJDK 10. Using
OpenJDK 11 this issue goes away..
Chris