dmd -c behaviour doesn't take account of packages.

H. S. Teoh hsteoh at quickfur.ath.cx
Wed Feb 22 16:28:45 PST 2012


On Wed, Feb 22, 2012 at 07:15:37PM -0500, Jonathan M Davis wrote:
> On Wednesday, February 22, 2012 16:08:20 H. S. Teoh wrote:
[...]
> > The real solution is that when creating object files, dmd should put
> > the .o files in the modules' respective subdirectories. I.e., it
> > should keep the pathname component of every source file and use that
> > for the object file. Then you have a 1-to-1 mapping between source
> > files and object files.
> 
> Yuck. Yuck. Source should _always_ be separated from object files.
> It's incredibly messy otherwise.

Not really. You just have .d's with their corresponding .o's sitting
side-by-side. It's a 1-to-1 correspondence. No mess.


> > Either that, or duplicate the source tree structure in an object
> > tree (if you like that kind of compile structure -- some projects do
> > that).
> 
> That's definitely the way to organize things.
[...]

To each his own. :)

But either way, the point is that the source tree structure *must* be
reflected by the object files. Otherwise you break the 1-to-1
correspondence and all sorts of nasty bugs show up.


T

-- 
It only takes one twig to burn down a forest.


More information about the Digitalmars-d mailing list