On Wednesday, 20 June 2018 at 07:25:37 UTC, makedgreatagain wrote:
On Wednesday, 20 June 2018 at 05:26:25 UTC, Joakim wrote:
Do you mean ltsmaster or master? There shouldn't be much
change with the former.
master branch.
The TLS patches shouldn't be needed after llvm 3.8 or so, ie
you should be able to use a stock llvm for iOS:
https://forum.dlang.org/thread/[email protected]
this is great.
That makes no sense: there are no C++ files in the runtime,
only C and D. Anyway, if you only care about betterC, you
don't want to build the runtime, so doesn't matter.
My suggestion is that you simply build his working ldc for iOS
project, but with the betterC patch I linked you backported.
Once you're sure that's working, you can try these more
advanced steps. Have you tried that? It's not clear.
the origin ldc with your patch is working. but I find it is
very limit betterC support with old version(some code will not
work, and fixed at late dmd/ldc version).
The patched ldc not build because a lot old code Dan Olson
write is not working any more( ldc cpp interface changed, or
llvm cpp interface changed). I try to fix but never get it
working. (I patch all 36 files)
Looking at his commits diffed against ltsmaster, there isn't much
to port, particularly once you throw out the TLS commits and the
floating-point cross-compilation code that has since been added
in the official repo, maybe 500-800 lines largely in his new iOS
ABI files:
https://github.com/ldc-developers/ldc/compare/ltsmaster...smolt:ios
Of course, adapting that diff to upstream takes careful knowledge
of ABI details and how llvm and LDC handle them, which you may
not be familiar with. You may want to see if one of the LDC devs
is interested in porting this patch upstream, by posting in their
forum:
https://forum.dlang.org/group/ldc
Some of them do consulting work for companies, maybe you could
pay one of them to do it.