I got to the bottom of the problem after some debugging. The short summary is - I was using "devel2" flavor which disables doc targets. The problem was it only disables them partially not fully. So even though I was able to invoke the targets I got these errors and the guide is mostly built except for the flags refs.

The long story:

devel2.mk sets: BUILD_SPHINX_HTML  = NO

But we 'include rules/sphinx.mk' in ghc.mk unconditionally. Now, since BUILD_SPHINX_HTML is not set we filter out mkUserGuidePart from build targets:

BUILD_DIRS := $(filter-out utils/mkUserGuidePart,$(BUILD_DIRS))

This results in an inconsistent state of the doc targets being available but not the mkUserGuidePart rules. So even though I was able build the docs partially I was getting these errors.

-harendra


On 23 August 2016 at 22:31, Harendra Kumar <harendra.kumar@gmail.com> wrote:
>
> Well, I tried 'make' and 'make all' (I suppose they are both same) but that did not make any difference.
>
> -harendra
>
> On 23 August 2016 at 21:37, Ben Gamari <ben@smart-cactus.org> wrote:
>>
>> Harendra Kumar <harendra.kumar@gmail.com> writes:
>>
>> > I see errors like this when using 'make html' in the topdir of the ghc repo:
>> >
>> Hmm, it looks like there is a missing dependency in the build system.
>> The users guide depends upon a number of ReST source files generated by
>> utils/mkUserGuidePart. I'd guess that you haven't built these. I'll look
>> in to why this is but in the meantime the workaround is just to `make
>> all` before attempting to `make html`. Sorry for the inconvenience!
>>
>> Cheers,
>>
>> - Ben
>
>