On 1/14/15 9:01 AM, H. S. Teoh via Digitalmars-d wrote:
On Wed, Jan 14, 2015 at 04:27:10PM +0100, Jacob Carlborg via Digitalmars-d
wrote:
On 2015-01-14 00:20, Andrei Alexandrescu wrote:
[...]
I think it's time to reduce clutter and duplication by migrating such
common stuff into one common.mak file. Question is, where should that
file sit? One candidate is tools/ but it's not really a tool. Another
candidate is dmd/src/ because that would be the first thing anyone
depends on.
Oh God, please no. I really, really hate that the makefiles are are
looking in folders outside of the repositories.
+1. Makefiles that reference paths outside the repo are really really
evil. They only ever work for the specific setup the author has, and
breaks for everybody else.
Currently there must be a place where druntime finds dmd for building
purposes. Also phobos needs to find druntime. Also dlang.ord needs to
find the source of both phobos and druntime.
There's no specific setup of one person as much as a boring:
/some/dir/
dmd
druntime
phobos
dlang.org
tools
I have a hard time making it any simpler.
Ideas?
If you really want to do something like this I would recommend
creating a new repository, acting like a super repository, including
the other repositories as submodules. Then you can create a new
makefile that builds everything. Although, I still don't want the
makefiles in the existing repositories be dependent on the new
repository.
[...]
+1, this is a much better approach than introducing yet more extra-repo
hard-coded paths into the makefiles. There are too many of those
already.
Where would that super-repo sit?
Andrei