building docs on cygwin, and finding fop.sh..
brianlsmith at gmail.com
Thu May 26 18:33:51 EDT 2005
With the attached patch to build/suffix.mk, I can build the CVS
versions of all these modules, plus their HTML documentation using
MingGW (no cygwin):
The only things that need to be downloaded and installed before
running configure are:
* MinGW 3.1 (into c:\software\mingw-3.1)
* MSYS 1.0.10 (into c:\software\msys-1.0)
(point it at MinGW during the post-install step)
* msysDTK 1.0.1 (into c:\software\msys-1.0)
* GHC 6.2.2 (into c:\software\ghc-6.2.2)
* libxml and libxslt from  (copied into c:\software\msys-1.0\local\bin).
GHC does not need be in the path before building. You don't have to
download and install pre-built Alex or Happy either.
The build process is then just:
$ ./configure --enable-src-tree-alex --enable-src-tree-happy
$ make install
$ make html
$ make install-docs XMLDocWays=html
With this patch, the build works (slowly) even if you don't have
docbook-dtd and docbook-xsl installed, by downloading the stylesheets
and DTD's over the Internet. It works faster (and without requiring
Internet access) if you download docbook-xsl and docbook-dtd and set
your XML catalog to correctly include their catalogs:
"./configure" says that the documentation cannot be built because it
cannot find Docbook XSL. You can safely ignore this warning as the
changes to suffix.mk cause the path to Docbook XSL found by configure
to be ignored.
see also the discussion at:
On 5/24/05, Claus Reinke <claus.reinke at talk21.com> wrote:
> thought this might interest someone:-)
> as mentioned in earlier emails, building html docs seemed unproblematic
> with the cygwin dependencies given.
> but now, I've installed MikTeX (2.4), and configure promptly thinks it
> will be able to build docs in other formats as well, using xmltex (perhaps
> it should check first whether passivetex is available as well..?). but even
> after adding passivetex and other dependents, I still got problems via
> that route.
> [for those still interested in that route:
> - there are lots of other missing dependencies in a small mixtex
> installation, but apparently miktex can install those on the fly,
> as needed (provided you have downloaded the packages, and
> set the package manager to look in your local download dir..)
> - xmltex does not seem to like underscores in file names,
> 'xmltex users_guide.fo' complains about not finding 'users.tex'
> - the generated .fo file has lines some 40k chars long!
> (the tools may be able to handle that, but as I was looking for
> bugs, I had to apply sed to make the file readable for me)
> + sed 's/<fo:/\n<fo:/g' <users_guide.fo >users-guide.fo
> takes care of these two probs, so debugging can begin
> - there are mysterious error messages of the kind
> "something is wrong, perhaps a missing \item?"
> + turns out that the .fo file contains lots of computed lengths
> (things like "10em * 0.60+1em"; wasn't there a tex package
> to permit those?), which one can get rid of by means of perl
> and s///ge
> - that still leaves lots of "missing number, inserting 0", and
> if one ignores those, the output looks far from useful, so I
> gave up on this route at that point..
> recalling Sven recommending fop in some context, I installed that,
> and this route is somewhat more practical (if one has java installed..),
> but still needs a couple of fixes:
> installation is simple unpacking (I used fop-0.20.5-bin.tar.gz, and put
> it in C:\fop) and setting an environment variable JAVA_HOME.
> - as my jre happens to sit in Program\ Files .. (mind the gap;)
> + cd c:\fop
> ln -s ../Program\ Files/Java/jre1.5.0
> export JAVA_HOME=/cygdrive/c/fop/jre1.5.0
> [or whatever it is called on your machine]
> + export PATH=/cygdrive/c/fop/fop-0.20.5:$PATH
> [there are fop.bat and fop.sh in that dir, but no fop or fop.exe]
> - configure doesn't want to find fop, even after trying to help
> it along by setting FopCmd1=fop.sh ..
> turns out that configure only searches for fop in $PATH,
> or for fop.sh in /usr/share/fop
> + changing configure line 4660 from
> "for ac_prog in fop" to
> "for ac_prog in fop fop.sh"
> seems to take care of that problem (the real fix would then be
> in aclocal.m4, line 982, where FopCmd1 is set?)
> - there are tons of errors and warnings when running fop over
> the users_guide.fo, e.g.:
> [ERROR] Unknown enumerated value for property
> 'relative-align': baseline
> [WARNING] Some static content could not fit in the area
> [INFO] area contents overflows area in line
> [WARNING] table-layout-auto is not supported, using fixed!
> [ERROR] At least one of minimum, optimum, or maximum IPD
> must be specified on table.
> : some docs are still generated via latex (ext-core), some are not
> built by default (ghci.tex, fptools/docs)? - interesting variety
> of options:)
> - the generated users_guide.pdf looks a lot more useable than
> with the other route, but not really nice:
> - no toc bookmarks, though toc entries are hyperlinked at least;
> - no clickable urls (ah sorry, some are, those on page 2);
> - often horrendous formatting/compression/overprinting of
> verbatim, e.g. the urls on page 2, or section 4.8.4 end, or
> 4.14.5, 4.16.1, ..)
> so I'm no docbook convert yet (the only advantage I can see
> over latex is easy html generation - am I missing something?)
> but anyway, it seems quite possible to generate docs (both
> html and other formats) even on windows, if fptools/aclocal.m4
> is fixed to look for fop *or* fop.sh in PATH, and perhaps the
> errors in processing the users_guide.fo are attended to.
> so the comment in the building guide "don't try to build docs"
> is a bit too pessimistic (probably guided by the passivetex
> Cvs-ghc mailing list
> Cvs-ghc at haskell.org
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 1945 bytes
Desc: not available
Url : http://www.haskell.org//pipermail/cvs-ghc/attachments/20050526/80d3e0cd/suffix.mk.obj
More information about the Cvs-ghc