[dmd-internals] Create a dmd-cxx branch on dlang/dmd

Diederik de Groot ddegroot at talon.nl
Wed Dec 13 12:15:07 UTC 2017


On Wednesday, 13 December 2017 at 05:11:38 UTC, Sebastian 
Wilzbach wrote:
> On 2017-12-12 02:17, Diederik de Groot via dmd-internals wrote:
>> @Iain: as dmd-cxx is not able to compile the current 'master' 
>> and
>> '2.068.2' is, would it make sense to replace the current 
>> dmd-cxx with
>> the LDC version c++ based of 2.068.2 ? I know you did quite a 
>> bit of
>> work backporting several patches to dmd-cxx.
>
> FWIW we do have Travis and auto-tester configured to run the 
> dmd-cxx branch, see e.g.:
>
> https://auto-tester.puremagic.com/?projectid=17 (one some 
> platforms we can even build druntime)

Because it was the only 'active' c++ based branch that was seemed 
to be maintained, i choose it in my first attempt to port dmd to 
dragonflybsd.
>
> It's just that Iain is the only one so far who showed interest 
> in the dmd-cxx branch.
> As you can see it's based on 2.068.2 and contains all commits 
> until last-cdmd:
>
> https://github.com/dlang/dmd/pull/7014
> https://github.com/dlang/dmd/pull/7015
>
> And a few backports from gdc:
>
> https://github.com/dlang/dmd/pull/7017
> https://github.com/dlang/dmd/pull/7227
>
> There are similar dmd-cxx branches at druntime and Phobos.
> Of course, work to improve the status quo is very welcome ;-)

I have now (mostly) finished my port, currently waiting for the 
original poster of the DragonFlyBSD post 
(http://forum.dlang.org/post/CAG2UyHqsa7tv5cVMZWOrZXo5QQus66X5fmbBixxJLooH2J=eWw@mail.gmail.com), to give it a test run), before creating a PR.

After this project is done, i will have another look at dmd-cxx 
to see what is causing the issues i have been seeing when 
compiling on linux (x86_64).
For example: '/usr/bin/ld: 
/data/develop/dmd/dmd-cxx/druntime/lib/libdruntime-linux64.a(config.o): relocation R_X86_64_32 against undefined symbol `__dmd_personality_v0' can not be used when making a shared object; recompile with -fPIC'
The travis build (7f7dd83) mentioned above passes cleanly, when i 
do the exact same steps on current version of ubuntu (artful), i 
get different results. This might also explain why the 
auto-tester is having some issues.

I think having a working reference bootstrap compiler which 
passes all it's unittests is something worthwhile.

Regards,

Diederik


More information about the dmd-internals mailing list