OPM / opm-core

Collection of utilities, solvers and other components.
http://www.opm-project.org
GNU General Public License v3.0
44 stars 50 forks source link

Howto build the documentation. #271

Closed blattms closed 11 years ago

blattms commented 11 years ago

Can somebody tell me what the recommend way to build the doxygen documentation is?

rolk commented 11 years ago

make doc

You need TeXLive and Ghostscript installed in addition to Doxygen if I recall correctly. (I see that an error has snuck into the Doxyfile, though)

blattms commented 11 years ago

On Wed, Jul 03, 2013 at 04:51:53PM -0700, Roland Kaufmann wrote:

make doc

Works nicely for opm-core, but in dune-cornerpoint it tells me that there is nothing to do. Is it possible that I switched this off accidentally using some dunecontrol magic?

rolk commented 11 years ago

in dune-cornerpoint it tells me that there is nothing to do. Is it possible that I switched this off accidentally

There shouldn't be any such switch... What happens if you run

pushd doc/doxygen; doxygen $(readlink -f Doxyfile); popd

There should now be a file doc/doxygen/html/classDune_1_1CpGrid.html at least.

blattms commented 11 years ago

On Thu, Jul 04, 2013 at 02:21:45AM -0700, Roland Kaufmann wrote:

There shouldn't be any such switch... What happens if you run

pushd doc/doxygen; doxygen $(readlink -f Doxyfile); popd

It builds the documentation, of course ;)

rolk commented 11 years ago

But what does

make doc VERBOSE=1

print out that it does?

bska commented 11 years ago

pushd

Blech ;-)

What happened to using portable techniques where possible?

(cd doc/doxygen; doxygen $(readlink -f Doxyfile))
rolk commented 11 years ago

Hey, don't bash my shell! ;-)

blattms commented 11 years ago

On Thu, Jul 04, 2013 at 02:30:00AM -0700, Roland Kaufmann wrote:

But what does

make doc VERBOSE=1

print out that it does?

Shame on me. This is just embarassing:

It turns out that I am not able to use build systems correctly. I called make doc in the source tree instead of the build tree. If I use it as I am supposed to be, it works like exspected.

I am awfully sorry for the noise (again).

rolk commented 11 years ago

I called make doc in the source tree

But is there a Makefile in the source tree? (if there is one, isn't it generated by the same configuration script?)

blattms commented 11 years ago

But is there a Makefile in the source tree? (if there is one, isn't it generated by the same configuration script?)

No. And aparrently one can call make doc wherever one wants. You just get "No rule to make target ..."

bska commented 11 years ago

aparrently one can call make doc wherever one wants

As an aside, the BSD edition of make(1) has--or at least used to have--a built-in target love...

Saying

make love

would illicit

not war?

or something of the kind.

rolk commented 11 years ago

That's right! If you just issue make you get:

make: *** No targets specified and no makefile found.  Stop.

which (half at least) indicates that the makefile is missing. But make doc only gives

make: *** No rule to make target `doc'.  Stop.

Now the hint about the missing makefile is gone. (And in conjuction with the one above you may infer that it was the target that was missing, not the file). As Bård alludes to, there is probably some "implicit" targets which makes it valid to not have a file. Quite a gotcha!

blattms commented 11 years ago

I am closing this.

Just one comment: It is not about implicite targets. One can use any target, e.g. bla, foo, or bar.