On Tuesday, 16 January 2018 at 22:11:46 UTC, H. S. Teoh wrote:
On Tue, Jan 16, 2018 at 10:13:31PM +0000, Johan Engelen via
Digitalmars-d wrote: [...]
We shouldn't bump the required dlang version while knowing
that it will break current distribution packaging. Before
bumping the dlang version to something that would require more
than one bootstrap step from C++, let's make sure that the
distributions that we care about have something set up
_already_ that meets the new dlang version requirement.
[...]
Is there currently a viable cross-compiler for D? That would
solve, in theory anyway, the bootstrapping problem. I suppose
to be truly viable, we'd need dmd to be able to cross-compile,
which AFAIK it can't just yet.
Ldc has proven to be very viable. kinke has demonstrated using
it on linux/x64 to cross-compile for Windows:
https://github.com/ldc-developers/ldc/releases/tag/v1.3.0
The ldc package for Android/ARM in the Termux app is
cross-compiled from linux/x64:
https://github.com/termux/termux-packages/blob/master/packages/ldc/build.sh
However, while this makes it easier to do the initial port to a
new platform, you still come up against the bootstrapping from
source requirements of source package repositories, as I pointed
out above.