February 11, 2016
On 11/02/2016 3:37 PM, Jonathan M Davis wrote:
>
> It's also a pain to edit. It's been suggested several times that we
> change the build system (e.g. to use
> https://github.com/atilaneves/reggae), but IIRC, Walter and Andrei have
> generally been opposed to the idea of changing it. It's one of those
> things that frequent contributors have more or less sorted out and don't
> usually worry about much anymore (aside perhaps from the rare occasions
> when they need to edit the makefiles), whereas it definitely tends to
> bite folks who aren't familiar with it. And building the documentation
> is that much worse.
>
> Personally, I'd love to see it changed to something more maintainable,
> but we'd  have to be sure that what we were switching to really was
> better. As it is, I wrote a program that I use to update the source and
> do builds on my machine so that building is semi-sane, and I suspect
> that other contributors have done similar.
>

There is a non-zero possibility that we'll switch to dub eventually.

February 11, 2016
On 2/10/2016 11:18 PM, Daniel Kozak via Digitalmars-d wrote:
>
>
> Dne 11.2.2016 v 05:52 Walter Bright via Digitalmars-d napsal(a):
>> On 2/10/2016 6:07 PM, Etienne wrote:
>>> It took me way more than 2 hours to grasp how this build process works. It
>>> wasn't until I had read through the whole source code actually.
>>
>> These are opportunities to improve things. If you could issue PRs to improve
>> the documentation at the pain points, it'll help the next traveler. Or at
>> least open a bugzilla issue for it.
>
> Documentation is only one part of problem.

Improving any part of the problem is good progress.

February 11, 2016
On Thursday, 11 February 2016 at 07:23:26 UTC, Jonathan M Davis wrote:
> On Thursday, 11 February 2016 at 06:57:39 UTC, Daniel Kozak wrote:
>> Dne 11.2.2016 v 01:20 Adam D. Ruppe via Digitalmars-d napsal(a):
>>> IMO it is a denial of reality to put them in three separate repositories since they are so strongly coupled in practice - their makefiles reference each other!
>> Yes, this is the main reason why I  does not do dmd and druntime development much often. I really hate when I try to bisect regressions.
>
> That's what digger is for: https://github.com/CyberShadow/Digger
>
> But yes, having everything in one repo would make some things easier.
>
> - Jonathan M Davis

Is there a practical reason why they are not in the same repo? It seems only logical to me that you'd grab everything at once since since they are always in sync anyways...

Thanks for the help guys! I will give it another spin when I have an opportunity again.

Meanwhile would be good to add a little note to the makefiles warning about this. Perhaps at the end of a build it could issue this a warning saying: "Note you need to build Phobos as well!"
February 11, 2016
On Thursday, 11 February 2016 at 10:55:12 UTC, Márcio Martins wrote:
> Is there a practical reason why they are not in the same repo?

No, other than trying to put them into one would grind everything to a halt for a while and would probably cost us more than we'd win. (All pull requests would need to be recreated, for one, and a lot of tools will break.)

February 11, 2016
On Thursday, 11 February 2016 at 05:02:40 UTC, Adam D. Ruppe wrote:
> On Thursday, 11 February 2016 at 04:37:39 UTC, Jonathan M Davis wrote:
>> And building the documentation is that much worse.
>
>
> I'm fixing that at least! My docs: http://dpldocs.info/experimental-docs/std.stdio.html
>
> are built with a single simple command:
>
> docs path/to/phobos
>
> done. No need to install several repos of crap.

Digger can do it in one command too, without any changes in the current build process.

Does your command also build the PDF, CHM and eBook?
February 11, 2016
On Thursday, 11 February 2016 at 11:47:23 UTC, Vladimir Panteleev wrote:
> On Thursday, 11 February 2016 at 10:55:12 UTC, Márcio Martins wrote:
>> Is there a practical reason why they are not in the same repo?
>
> No, other than trying to put them into one would grind everything to a halt for a while and would probably cost us more than we'd win. (All pull requests would need to be recreated, for one, and a lot of tools will break.)

Would at having them as submodules of dmd ease everything?
They could be separate repos, but the makefiles would try to find them in the submodule location and if there, great, otherwise, keep business.

On a separate topic: are the official DMD releases compiled with the previous version of DMD or GDC? How does that work?
February 11, 2016

Dne 11.2.2016 v 09:44 Walter Bright via Digitalmars-d napsal(a):
> On 2/10/2016 11:18 PM, Daniel Kozak via Digitalmars-d wrote:
>>
>>
>> Dne 11.2.2016 v 05:52 Walter Bright via Digitalmars-d napsal(a):
>>> On 2/10/2016 6:07 PM, Etienne wrote:
>>>> It took me way more than 2 hours to grasp how this build process works. It
>>>> wasn't until I had read through the whole source code actually.
>>>
>>> These are opportunities to improve things. If you could issue PRs to improve
>>> the documentation at the pain points, it'll help the next traveler. Or at
>>> least open a bugzilla issue for it.
>>
>> Documentation is only one part of problem.
>
> Improving any part of the problem is good progress.
>
Yes, I agree :)
February 11, 2016
On Thursday, 11 February 2016 at 07:31:10 UTC, Daniel Kozak wrote:
> Dne 11.2.2016 v 08:23 Jonathan M Davis via Digitalmars-d napsal(a):
>> On Thursday, 11 February 2016 at 06:57:39 UTC, Daniel Kozak wrote:
>>> Dne 11.2.2016 v 01:20 Adam D. Ruppe via Digitalmars-d napsal(a):
>>>> IMO it is a denial of reality to put them in three separate repositories since they are so strongly coupled in practice - their makefiles reference each other!
>>> Yes, this is the main reason why I  does not do dmd and druntime development much often. I really hate when I try to bisect regressions.
>>
>> That's what digger is for: https://github.com/CyberShadow/Digger
>>
>> - Jonathan M Davis
>
> Yeah I know it there is a some tool, but I can not find it last time. I just find dustmite and dvm. Thanks :)

Maybe the wiki should explain how to use digger and have the more detailed explanation as an appendix: "the hard way".

February 11, 2016
On Thursday, 11 February 2016 at 05:02:40 UTC, Adam D. Ruppe wrote:
> On Thursday, 11 February 2016 at 04:37:39 UTC, Jonathan M Davis wrote:
>> And building the documentation is that much worse.
>
>
> I'm fixing that at least! My docs: http://dpldocs.info/experimental-docs/std.stdio.html
>
> are built with a single simple command:
>
> docs path/to/phobos
>
> done. No need to install several repos of crap.

at the beginning i was opposing having alternative docs somewhere else but i get to like it. when reading phobos source number of wtfs i say is reducing with the help of your docs. thanks adam.
February 11, 2016
On Thursday, 11 February 2016 at 12:08:53 UTC, Márcio Martins wrote:
> On Thursday, 11 February 2016 at 11:47:23 UTC, Vladimir Panteleev wrote:
>> On Thursday, 11 February 2016 at 10:55:12 UTC, Márcio Martins wrote:
>>> Is there a practical reason why they are not in the same repo?
>>
>> No, other than trying to put them into one would grind everything to a halt for a while and would probably cost us more than we'd win. (All pull requests would need to be recreated, for one, and a lot of tools will break.)
>
> Would at having them as submodules of dmd ease everything?
> They could be separate repos, but the makefiles would try to find them in the submodule location and if there, great, otherwise, keep business.

The makefiles already assume that all components are cloned in one repository (but this can be overridden with make variables).

> On a separate topic: are the official DMD releases compiled with the previous version of DMD or GDC? How does that work?

Yes, with a previous DMD version. IIRC, there is a makefile target which downloads an older DMD, if necessary.