[Bug 1973] Convert from texi2www to texi2html

bugzilla-daemon at rtems.org bugzilla-daemon at rtems.org
Tue Dec 6 10:39:50 UTC 2011


https://www.rtems.org/bugzilla/show_bug.cgi?id=1973

--- Comment #8 from Ralf Corsepius <ralf.corsepius at rtems.org> 2011-12-06 04:39:49 CST ---
Some more details:

1. the origin of the VPATH issues seems to be that texi2html, unlike texi2www
is implicitly picking up files from $PWD.

Appending -I . seems to help:

-- a/doc/main.am
+++ b/doc/main.am
@@ -5,4 +5,4 @@ endif
 TEXI2HTML_ARGS=\
 -D use-html --split node \
 --init-file=$(top_builddir)/texi2html_init \
--I $(srcdir) -I $(top_srcdir) -I $(top_builddir)
+-I $(srcdir) -I $(top_srcdir) -I $(top_builddir) -I .


2. Each doc-subdirectory currently carries a dependency on ./index.html.
If I recall correctly, texi2www generated this file, but texi2html doesn't do
so.

I.e. because ./index.html will never be generated, this dependency with never
be fulfilled, over all causing each "make" run to regenerate all html documents
in a subdirectory.

I don't know what to do about this.

A quick fix seems to be this:

diff --git a/doc/project.am b/doc/project.am
index 3924860..2774b71 100644
--- a/doc/project.am
+++ b/doc/project.am
@@ -42,7 +42,7 @@ MOSTLYCLEANFILES += $(PDF_IMAGES)
 ## HTML 
 SUFFIXES += .html

-index.html $(PROJECT)*.html: $(PROJECT).texi $($(PROJECT)_TEXINFOS)
+$(PROJECT)*.html: $(PROJECT).texi $($(PROJECT)_TEXINFOS)
        rm -rf $(PROJECT).html
        $(TEXI2HTML) $(TEXI2HTML_ARGS) --menu $< $<

@@ -50,7 +50,7 @@ MOSTLYCLEANFILES += index.html $(PROJECT)*.html

 ## Common installation points
 if USE_HTML
-html_project_DATA = index.html $(PROJECT)*.html
+html_project_DATA = $(PROJECT)*.html
 endif

 if USE_DVI



Completely unclear to me is how to handle $(top_builddir)/index.html, the only
index.html, which is still around and which texi2html seems to generate
automatically.

3. The texi2html rules clash with the automake's "makeinfo --html" rules and
cause (minor) problems:

This is visible, e.g. here:

BUILD/doc/started > make clean all
...
restore=: && backupdir=".am$$" && \
rm -rf $backupdir && mkdir $backupdir && \
if (/bin/sh /users/rtems/src/rtems-git/rtems.texi2html/missing --run makeinfo
--version) >/dev/null 2>&1; then \
  for f in started.info started.info-[0-9] started.info-[0-9][0-9]
started.i[0-9] started.i[0-9][0-9]; do \
    if test -f $f; then mv $f $backupdir; restore=mv; else :; fi; \
  done; \
else :; fi && \
if /bin/sh /users/rtems/src/rtems-git/rtems.texi2html/missing --run makeinfo -I
.. -I ../../../doc  -I ../../../doc/started \
 -o started.info `test -f 'started.texi' || echo
'../../../doc/started/'`started.texi; \
then \
  rc=0; \
else \
  rc=$?; \
  $restore $backupdir/* `echo "./started.info" | sed 's|[^/]*$||'`; \
fi; \
rm -rf $backupdir; exit $rc
rm -rf started.html
texi2html -D use-html --split node --init-file=../texi2html_init -I
../../../doc/started -I ../../../doc -I .. -I . --menu
../../../doc/started/started.texi ../../../doc/started/started.texi

Note the "overriding recipe" messages (make detects the clashing rules) 
and note the "restore"/"rm -rf started.html" section 
(originates from automake's makeinfo --html rules).

I recall we've also had this issue with texi2www and had to apply some tricks.
Unfortunately I don't recall these anymore at the moment.


4. texi2html creates subdirectories inside of each build subdirectory.
# find -type d
./develenv
./develenv/develenv
./cpu_supplement
./cpu_supplement/cpu_supplement
...

I am not sure, but it seems to me as if these are temporary directories it
internally uses. We need to do something about these. May-be we need to extend
the custom texi2html rule to automatically delete these? May-be texi2html has
an option to handle these (I don't know)?

-- 
Configure bugmail: https://www.rtems.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching all bug changes.



More information about the bugs mailing list