Building the docs with own changes

Joseph Rushton Wakeling via Digitalmars-d digitalmars-d at puremagic.com
Sat Jun 13 01:10:33 PDT 2015


On 08/06/15 21:53, Joseph Rushton Wakeling via Digitalmars-d wrote:
> On 08/06/15 19:06, Joseph Rushton Wakeling via Digitalmars-d wrote:
>> Well, just for one, I tried building phobos docs a couple of days ago while
>> disconnected from the internet; the whole thing failed because the clones of
>> stable release repos couldn't be done.
>>
>> No doubt I'm missing a trick, but it didn't seem very obvious, on browsing the
>> makefile, what would get me the simple case of building the development phobos
>> docs using my development dmd, without needing to worry about any of the other
>> options out there.
>
> Well, whaddayaknow, make -f posix.mak clean; make -f posix.mak phobos-prerelease
> just worked.  I'd swear I was trying to build the phobos-prerelease target
> before, but maybe forgetting the 'clean' first had some kind of weird effect on
> how build targets interacted.

Ho hum, spoken too soon.  I don't know what was going on, but I fear I was using 
some weird checkout of dlang.org at the time I wrote the above.

After upgrading to latest master, I couldn't even issue 'make -f posix.mak 
clean' without generating a network-connectivity-related error:

-----------------
$ make -f posix.mak clean
fatal: unable to access 'https://github.com/D-Programming-Language/dmd/': Could 
not resolve host: github.com
LATEST= <-- place in the command line to skip network traffic.
posix.mak:69: *** Could not fetch latest version, place LATEST=2.xxx.y in the 
command line. Stop.
-----------------

Adding LATEST=2.067.1 to the command indeed allows clean to run, but then -- 
joy! -- I can no longer rebuild anything, because the cached DMD 2.067 is 
deleted and I need internet connectivity to get it back.  It's also a major 
"WTF??!!" that 'make clean' should need network connectivity in any circumstances.

The bottom line of this for me is that I have dmd, druntime, phobos and tools 
repos all in the "standard" locations relative to my dlang.org repo; all of 
those are built (or I can build them).  It's therefore really baffling to me 
that I should need more than that in order to be able to issue 'make 
phobos-prerelease' and see what my updated docs look like.  Force me to add 
LATEST=dev or something like that to the command if necessary, but _don't_ force 
me to either download or already have cached a separate copy of the compiler.

I cannot speak to how infuriating it was to be on a plane with hours to spare to 
work on phobos material, only to find myself flying blind unable to validate my 
documentation work, because the doc build system assumes network connectivity 
and has no obvious fallback or workaround.

Sorry if the above sounds abrasive, but take it as a measure of how much I was 
enjoying working on phobos again :-)


More information about the Digitalmars-d mailing list