Jump to page: 1 2
Thread overview
[phobos] How to build the Phobos docs?
Feb 03, 2011
Jonathan M Davis
Feb 03, 2011
Jonathan M Davis
Feb 04, 2011
Jonathan M Davis
Feb 07, 2011
Jonathan M Davis
Feb 07, 2011
Jonathan M Davis
Feb 08, 2011
Jonathan M Davis
February 03, 2011
When I run "make -f posix.mak html" I now get the message

         make: *** No rule to make target
        `../web/phobos-prerelease/phobos.html', needed by `html'. Stop.

If I create the file manually, I get more of the same:

        make: *** No rule to make target
        `../web/phobos-prerelease/std_algorithm.html', needed by `html'.
        Stop.

Is the makefile broken, or is there something I need to do before running make?

-Lars

February 03, 2011
On Thursday 03 February 2011 03:16:26 Lars Tandle Kyllingstad wrote:
> When I run "make -f posix.mak html" I now get the message
> 
>          make: *** No rule to make target
>         `../web/phobos-prerelease/phobos.html', needed by `html'. Stop.
> 
> If I create the file manually, I get more of the same:
> 
>         make: *** No rule to make target
>         `../web/phobos-prerelease/std_algorithm.html', needed by `html'.
>         Stop.
> 
> Is the makefile broken, or is there something I need to do before running make?

I believe that the Makefile is broken. It relies on files that used to be in another subdirectory of the parent directory that Phobos is in. However, with the move to git, there is no parent directory in the repository. So, there is no adjacent directory with the necessary files. So, the html build doesn't work.

Supposedly, Andrei is going to fix it, but I don't believe that he's checked in a fix thus far. So, for the moment, building the docs doesn't work. I'm not sure what Andrei is getting it to work on his machine (since he's obviously been doing it), but until he fixes the Makefile, you can't just run make html and build the docs like you should be able to.

- Jonathan M Davis
February 03, 2011
On Thu, 2011-02-03 at 03:24 -0800, Jonathan M Davis wrote:
> On Thursday 03 February 2011 03:16:26 Lars Tandle Kyllingstad wrote:
> > When I run "make -f posix.mak html" I now get the message
> > 
> >          make: *** No rule to make target
> >         `../web/phobos-prerelease/phobos.html', needed by `html'. Stop.
> > 
> > If I create the file manually, I get more of the same:
> > 
> >         make: *** No rule to make target
> >         `../web/phobos-prerelease/std_algorithm.html', needed by `html'.
> >         Stop.
> > 
> > Is the makefile broken, or is there something I need to do before running make?
> 
> I believe that the Makefile is broken. It relies on files that used to be in another subdirectory of the parent directory that Phobos is in. However, with the move to git, there is no parent directory in the repository. So, there is no adjacent directory with the necessary files. So, the html build doesn't work.
> 
> Supposedly, Andrei is going to fix it, but I don't believe that he's checked in a fix thus far. So, for the moment, building the docs doesn't work. I'm not sure what Andrei is getting it to work on his machine (since he's obviously been doing it), but until he fixes the Makefile, you can't just run make html and build the docs like you should be able to.

I just realised that we don't have access to the changelog anymore either...

-Lars

February 03, 2011
Sorry, wasn't aware of the breakage. Will fix.

Andrei

On 2/3/11 5:16 AM, Lars Tandle Kyllingstad wrote:
> When I run "make -f posix.mak html" I now get the message
>
>           make: *** No rule to make target
>          `../web/phobos-prerelease/phobos.html', needed by `html'. Stop.
>
> If I create the file manually, I get more of the same:
>
>          make: *** No rule to make target
>          `../web/phobos-prerelease/std_algorithm.html', needed by `html'.
>          Stop.
>
> Is the makefile broken, or is there something I need to do before running make?
>
> -Lars
>
> _______________________________________________
> phobos mailing list
> phobos at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/phobos
February 03, 2011
I looked into this and I don't know what the best way is.

Essentially it makes little sense to build Phobos without having the site around. Practically this is because std.ddoc is in the d-programming-language.org repository (as I think it should).

If you have this structure:

somedir/
   phobos/
   d-programming-language.org/

it all works automatically. If you have d-programming-language.org elsewhere, do this:

make html DOCSRC=/path/to/d-programming-language.org

Suggestions for improving this are welcome.

Andrei

On 2/3/11 5:16 AM, Lars Tandle Kyllingstad wrote:
> When I run "make -f posix.mak html" I now get the message
>
>           make: *** No rule to make target
>          `../web/phobos-prerelease/phobos.html', needed by `html'. Stop.
>
> If I create the file manually, I get more of the same:
>
>          make: *** No rule to make target
>          `../web/phobos-prerelease/std_algorithm.html', needed by `html'.
>          Stop.
>
> Is the makefile broken, or is there something I need to do before running make?
>
> -Lars
>
> _______________________________________________
> phobos mailing list
> phobos at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/phobos
February 03, 2011
On Thursday, February 03, 2011 11:28:47 Andrei Alexandrescu wrote:
> I looked into this and I don't know what the best way is.
> 
> Essentially it makes little sense to build Phobos without having the site around. Practically this is because std.ddoc is in the d-programming-language.org repository (as I think it should).
> 
> If you have this structure:
> 
> somedir/
>    phobos/
>    d-programming-language.org/
> 
> it all works automatically. If you have d-programming-language.org elsewhere, do this:
> 
> make html DOCSRC=/path/to/d-programming-language.org
> 
> Suggestions for improving this are welcome.

That seems reasonable. The other option is to just have it build with the default settings if ../d-programming-language.org isn't there and DOCSRC isn't set, but that's of limited use, since the default settings look very different from what you get when building with std.ddoc.

- Jonathan M Davis
February 03, 2011
On Thursday 03 February 2011 11:28:47 Andrei Alexandrescu wrote:
> I looked into this and I don't know what the best way is.
> 
> Essentially it makes little sense to build Phobos without having the site around. Practically this is because std.ddoc is in the d-programming-language.org repository (as I think it should).
> 
> If you have this structure:
> 
> somedir/
>    phobos/
>    d-programming-language.org/
> 
> it all works automatically. If you have d-programming-language.org elsewhere, do this:
> 
> make html DOCSRC=/path/to/d-programming-language.org
> 
> Suggestions for improving this are welcome.

Okay. I'm just totally confused now. make -f posix.mak html in Phobos just plain doesn't work. It always gives this error:

make: *** No rule to make target `../web/phobos-prerelease/phobos.html', needed by `html'.  Stop.

It's looking for ../web, which doesn't exist. If I run make -f linux.mak in d- programming-language.org, then ../web gets created, but there's still no phobos.html file, and telling Phobos to make html still fails. And it's not like d-programming-language.org went and created all of Phobos' html files either. ../web-phobos-prerelease/ is completely empty.

So, I really don't know what I'm supposed to do to build the docs. I was pretty much expecting make -f posix.mak html in phobos to work (which it used to) - even if it required ../d-programming-language.org to be there. But it doesn't work, and I don't know what to do. Either I'm totally misunderstanding something here, or you have something on your machine which isn't in the repositories.

- Jonathan M Davis
February 07, 2011
On Thursday 03 February 2011 23:12:53 Jonathan M Davis wrote:
> On Thursday 03 February 2011 11:28:47 Andrei Alexandrescu wrote:
> > I looked into this and I don't know what the best way is.
> > 
> > Essentially it makes little sense to build Phobos without having the site around. Practically this is because std.ddoc is in the d-programming-language.org repository (as I think it should).
> > 
> > If you have this structure:
> > 
> > somedir/
> > 
> >    phobos/
> >    d-programming-language.org/
> > 
> > it all works automatically. If you have d-programming-language.org elsewhere, do this:
> > 
> > make html DOCSRC=/path/to/d-programming-language.org
> > 
> > Suggestions for improving this are welcome.
> 
> Okay. I'm just totally confused now. make -f posix.mak html in Phobos just plain doesn't work. It always gives this error:
> 
> make: *** No rule to make target `../web/phobos-prerelease/phobos.html', needed by `html'.  Stop.
> 
> It's looking for ../web, which doesn't exist. If I run make -f linux.mak in d- programming-language.org, then ../web gets created, but there's still no phobos.html file, and telling Phobos to make html still fails. And it's not like d-programming-language.org went and created all of Phobos' html files either. ../web-phobos-prerelease/ is completely empty.
> 
> So, I really don't know what I'm supposed to do to build the docs. I was pretty much expecting make -f posix.mak html in phobos to work (which it used to) - even if it required ../d-programming-language.org to be there. But it doesn't work, and I don't know what to do. Either I'm totally misunderstanding something here, or you have something on your machine which isn't in the repositories.

Any update or clarification on this? I'd really like to be able to build the phobos docs. It's a lot harder to edit documentation and verify how it looks when building the documentation doesn't work.

- Jonathan M Davis
February 07, 2011
On Mon, 2011-02-07 at 04:13 -0800, Jonathan M Davis wrote:
> On Thursday 03 February 2011 23:12:53 Jonathan M Davis wrote:
> > On Thursday 03 February 2011 11:28:47 Andrei Alexandrescu wrote:
> > > I looked into this and I don't know what the best way is.
> > > 
> > > Essentially it makes little sense to build Phobos without having the site around. Practically this is because std.ddoc is in the d-programming-language.org repository (as I think it should).
> > > 
> > > If you have this structure:
> > > 
> > > somedir/
> > > 
> > >    phobos/
> > >    d-programming-language.org/
> > > 
> > > it all works automatically. If you have d-programming-language.org elsewhere, do this:
> > > 
> > > make html DOCSRC=/path/to/d-programming-language.org
> > > 
> > > Suggestions for improving this are welcome.
> > 
> > Okay. I'm just totally confused now. make -f posix.mak html in Phobos just plain doesn't work. It always gives this error:
> > 
> > make: *** No rule to make target `../web/phobos-prerelease/phobos.html', needed by `html'.  Stop.
> > 
> > It's looking for ../web, which doesn't exist. If I run make -f linux.mak in d- programming-language.org, then ../web gets created, but there's still no phobos.html file, and telling Phobos to make html still fails. And it's not like d-programming-language.org went and created all of Phobos' html files either. ../web-phobos-prerelease/ is completely empty.
> > 
> > So, I really don't know what I'm supposed to do to build the docs. I was pretty much expecting make -f posix.mak html in phobos to work (which it used to) - even if it required ../d-programming-language.org to be there. But it doesn't work, and I don't know what to do. Either I'm totally misunderstanding something here, or you have something on your machine which isn't in the repositories.
> 
> Any update or clarification on this? I'd really like to be able to build the phobos docs. It's a lot harder to edit documentation and verify how it looks when building the documentation doesn't work.

Here's a workaround, assuming the directory structure suggested by Andrei:

  cd d-programming-language.org
  make -f linux.mak
  cd ..
  mkdir web/phobos-prerelease
  touch web/phobos-prerelease/phobos.html
  cd phobos
  make -f posix.mak html

-Lars

February 07, 2011
On Monday 07 February 2011 04:25:49 Lars Tandle Kyllingstad wrote:
> On Mon, 2011-02-07 at 04:13 -0800, Jonathan M Davis wrote:
> > On Thursday 03 February 2011 23:12:53 Jonathan M Davis wrote:
> > > On Thursday 03 February 2011 11:28:47 Andrei Alexandrescu wrote:
> > > > I looked into this and I don't know what the best way is.
> > > > 
> > > > Essentially it makes little sense to build Phobos without having the site around. Practically this is because std.ddoc is in the d-programming-language.org repository (as I think it should).
> > > > 
> > > > If you have this structure:
> > > > 
> > > > somedir/
> > > > 
> > > >    phobos/
> > > >    d-programming-language.org/
> > > > 
> > > > it all works automatically. If you have d-programming-language.org elsewhere, do this:
> > > > 
> > > > make html DOCSRC=/path/to/d-programming-language.org
> > > > 
> > > > Suggestions for improving this are welcome.
> > > 
> > > Okay. I'm just totally confused now. make -f posix.mak html in Phobos just plain doesn't work. It always gives this error:
> > > 
> > > make: *** No rule to make target `../web/phobos-prerelease/phobos.html', needed by `html'.  Stop.
> > > 
> > > It's looking for ../web, which doesn't exist. If I run make -f linux.mak in d- programming-language.org, then ../web gets created, but there's still no phobos.html file, and telling Phobos to make html still fails. And it's not like d-programming-language.org went and created all of Phobos' html files either. ../web-phobos-prerelease/ is completely empty.
> > > 
> > > So, I really don't know what I'm supposed to do to build the docs. I was pretty much expecting make -f posix.mak html in phobos to work (which it used to) - even if it required ../d-programming-language.org to be there. But it doesn't work, and I don't know what to do. Either I'm totally misunderstanding something here, or you have something on your machine which isn't in the repositories.
> > 
> > Any update or clarification on this? I'd really like to be able to build the phobos docs. It's a lot harder to edit documentation and verify how it looks when building the documentation doesn't work.
> 
> Here's a workaround, assuming the directory structure suggested by Andrei:
> 
>   cd d-programming-language.org
>   make -f linux.mak
>   cd ..
>   mkdir web/phobos-prerelease
>   touch web/phobos-prerelease/phobos.html
>   cd phobos
>   make -f posix.mak html

That does work. Thanks. Though I do think that this needs to be fixed so that a fresh fork of d-programing-language.org, phobos, and druntime can produce the documentation with just their makefiles and without needing to create extra directories or empty files.

By the way, I noticed that @property shows up almost not at all in the documentation when I build it that way. The same goes for the docs on www.d- programming-language.org (which presumably generated in pretty much the same manner). So, it looks like the changes to std.ddoc and/or whatever else affects the look of the documentation has resulted in some stuff not showing up. I don't know what else has been affected, but @property certainly has.

- Jonathan M Davis
« First   ‹ Prev
1 2