whizard is hosted by Hepforge, IPPP Durham

Opened 14 years ago

Closed 14 years ago

Last modified 7 years ago

#357 closed defect (fixed)

O'Mega fails to build without ocamlweb

Reported by: Christian Speckner Owned by: kilian
Priority: P3 Milestone: v3.0.0
Component: core Version: 2.0.2
Severity: normal Keywords:
Cc:

Description

See description. Insists on building omega.pdf, which inevitably fails in the absence of ocamlweb.

Change History (13)

comment:1 Changed 14 years ago by Juergen Reuter

I could not reproduce this with the actual 2.0.3 tar ball.

comment:2 Changed 14 years ago by Juergen Reuter

I cannot reproduce this with the 2.0.2 tarball neither.

Well, one obvious problem is if one does make clean. As in share/doc/Makefile.am *.pdf is included for the target clean-local, the manuals and docus are erased with a make clean and cannot be restored. As the user might want to do a make clean, we should not include *.pdf here. Comments?

comment:3 Changed 14 years ago by Juergen Reuter

Ok, this seems to happen only when builddir=srcdir. (which most users will do!)

comment:4 Changed 14 years ago by Juergen Reuter

Confirmed the last statement. So we should move the "*.pdf" from clean-local to distclean-local, right?

comment:5 Changed 14 years ago by Christian Speckner

This happened to me and Lisa when building in separate builddirs. make clean sounds more like a potential cause - I remember doing a make clean in the src/omega subdir of the builddir after downgrading ocaml; this might have triggered the thing. However, I'd consider this a bug which has to be fixed, so I definitely advocade moving *pdf as JR suggests.

comment:6 in reply to:  4 Changed 14 years ago by ohl

Replying to jr_reuter:

Confirmed the last statement. So we should move the "*.pdf" from clean-local to distclean-local, right?

Why would this help? The automake manual suggests If configure built it, then distclean should delete it., which is not what we need, since we distribute the *.pdf so that people who lack the tools don't have to build it.

Since the automake manual also says If the maintainer built it (for instance, a .info file), then maintainer-clean should delete it., I suggest to move it to maintainer-clean-local.

comment:7 Changed 14 years ago by Juergen Reuter

My fear is that this problem is not solvable. We presumably have to forbid make clean and make distclean for the user, which is somehow against the autotools paradigm. OR: we forbid strictly (if this is possible???) to do builddir = srcdir. This problem happens only (as far as I could reproduce) if one uses the tarball and then has builddir = srcdir and then uses either make clean or make distclean. Then the .pdf's are erased and could not be rebuilt. WK for the whizard.pdf has chosen to deliver the source whizard.tex in that case such that the whizard.pdf could be rebuilt. Now: (!) for circe2.pdf and omega.pdf the file index.tex is needed (the O'Caml index files) which is used via an include from the main TeX source. However, if builddir != srcdir, index.tex is not created (because it is present in the srcdir !) and so pdflatex complains that the file index.tex could not be found. If I do the configure trick by copying over the stuff in the same way as the LaTeX style files then this works fine for CIRCE2, but O'Mega tries to rebuilt index.tex (why the f*ing hell???) and then (at least in the make distcheck context) produces a Permission denied when trying to pipe the ocamlweb output into builddir/share/doc/index.tex because this file already exists. Is there any thinkable solution of this desastrous problem?

comment:8 Changed 14 years ago by Juergen Reuter

The Permission denied problem arises because index.tex as all files in the make distcheck case which are coming out of the distribution are having only rrr permissions. We need rw-r-r.

comment:9 Changed 14 years ago by Juergen Reuter

I'm playing with a chmod +w statement in the configure.ac but this might open up security holes. (???)

comment:10 Changed 14 years ago by Juergen Reuter

My intent is more and more to close this ticket as invalid. It's something which needs weeks for checking and does not buy anything. A simple entry in the manual and on the webpage does solve it quickly.

comment:11 Changed 14 years ago by Juergen Reuter

Milestone: v2.0.3v3.0

Ok. Noone is answering me. Postponing this ticket to 3.0.

comment:12 Changed 14 years ago by Juergen Reuter

Resolution: fixed
Status: newclosed

Done in r2748. At least, the part where PDFs get erased when doing make (dist)clean and srdir and builddir are the same. If there is any other problem (WHIZARD trying to re-make PDFs although neither noweb nor ocamlweb are there, this ticket might be reopened.

comment:13 Changed 7 years ago by Juergen Reuter

Milestone: v3.0v3.0.0

Milestone renamed

Note: See TracTickets for help on using tickets.