www.digitalmars.com         C & C++   DMDScript  

D.gnu - Should gdmd be included with gdc?

reply Chris Piker <chris hoopjump.com> writes:
Hi GDC

Attempting to use meson I found that I probably need dub, but 
building dub requires dmd command line emulation. The external 
gdmd perl script to handles this course, but should there be a 
gdmd binary that is built while producing gdc?  Pulling in a 
whole extra language interpreter seems like a big dependency when 
bootstrapping the toolchain.

On the other hand, maybe dub's build.d should be updated to 
understand native gdc command lines, not sure which option is 
best.
May 24 2022
parent reply Iain Buclaw <ibuclaw gdcproject.org> writes:
On Tuesday, 24 May 2022 at 08:22:30 UTC, Chris Piker wrote:
 Hi GDC

 Attempting to use meson I found that I probably need dub, but 
 building dub requires dmd command line emulation. The external 
 gdmd perl script to handles this course, but should there be a 
 gdmd binary that is built while producing gdc?  Pulling in a 
 whole extra language interpreter seems like a big dependency 
 when bootstrapping the toolchain.

 On the other hand, maybe dub's build.d should be updated to 
 understand native gdc command lines, not sure which option is 
 best.
There have been a few attempts to rewrite it in D, all have stalled really due to whoever took the initiative running out of time or moving onto other things. https://github.com/d-Programming-GDC/gdmd/tree/dport https://github.com/D-Programming-GDC/gdmd/tree/gdmd-neo I think the best route to go may be to just pick one and run with it, then push it into a dtools or gdctools directory on the gcc tree.
May 24 2022
parent reply max haughton <maxhaton gmail.com> writes:
On Tuesday, 24 May 2022 at 10:32:14 UTC, Iain Buclaw wrote:
 On Tuesday, 24 May 2022 at 08:22:30 UTC, Chris Piker wrote:
 Hi GDC

 Attempting to use meson I found that I probably need dub, but 
 building dub requires dmd command line emulation. The external 
 gdmd perl script to handles this course, but should there be a 
 gdmd binary that is built while producing gdc?  Pulling in a 
 whole extra language interpreter seems like a big dependency 
 when bootstrapping the toolchain.

 On the other hand, maybe dub's build.d should be updated to 
 understand native gdc command lines, not sure which option is 
 best.
There have been a few attempts to rewrite it in D, all have stalled really due to whoever took the initiative running out of time or moving onto other things. https://github.com/d-Programming-GDC/gdmd/tree/dport https://github.com/D-Programming-GDC/gdmd/tree/gdmd-neo I think the best route to go may be to just pick one and run with it, then push it into a dtools or gdctools directory on the gcc tree.
One thing I'd like to note about gdmd (the version of it that I have on my machine at least) is that it doesn't pass through arguments it can't recognize (whereas ldmd2 does do this). Not passing them through is subtly really annoying.
May 24 2022
parent kdevel <kdevel vogtner.de> writes:
On Tuesday, 24 May 2022 at 18:21:40 UTC, max haughton wrote:
[...]
 I think the best route to go may be to just pick one and run 
 with it, then push it into a dtools or gdctools directory on 
 the gcc tree.
One thing I'd like to note about gdmd (the version of it that I have on my machine at least) is that it doesn't pass through arguments it can't recognize (whereas ldmd2 does do this). Not passing them through is subtly really annoying.
For ldmd I augmented the command line with `-i=-ldc`. dmd accepts this -i switch. Into what GDC-option does it translate?
May 27 2022