After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 126019 - make install fails, cannot stat `./html/index.sgml'
make install fails, cannot stat `./html/index.sgml'
Status: RESOLVED NOTABUG
Product: gtk-doc
Classification: Platform
Component: general
1.1
Other All
: Normal major
: ---
Assigned To: gtk-doc maintainers
gtk-doc maintainers
Depends on:
Blocks:
 
 
Reported: 2003-11-02 03:25 UTC by Boris Goldowsky
Modified: 2004-12-22 21:47 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Patch for Makefile.am including ChangeLog entry (1.67 KB, patch)
2003-11-04 15:11 UTC, Boris Goldowsky
none Details | Review

Description Boris Goldowsky 2003-11-02 03:25:55 UTC
Make install fails with the following error:
  /usr/bin/install: cannot stat `./html/index.sgml': No such file or directory

I can reproduce this simply with 'make clean; make install', always getting:

/bin/sh ../../mkinstalldirs /opt/gnome/share/gtk-doc/html/conglomerate
(installfiles=`echo ./html/*.html`; \
if test "$installfiles" = './html/*.html'; \
then echo '-- Nothing to install' ; \
else \
  for i in $installfiles; do \
    echo '-- Installing '$i ; \
    /usr/bin/install -c -m 644 $i /opt/gnome/share/gtk-doc/html/conglomerate; \
  done; \
  echo '-- Installing ./html/index.sgml' ; \
  /usr/bin/install -c -m 644 ./html/index.sgml
/opt/gnome/share/gtk-doc/html/conglomerate; \
fi)
-- Installing ./html/ch01.html
 [...many successful installs...]
-- Installing ./html/index.html
-- Installing ./html/index.sgml
/usr/bin/install: cannot stat `./html/index.sgml': No such file or directory
make[3]: *** [install-data-local] Error 1
make[3]: Leaving directory `/opt/gnome/src/conglomerate/doc/reference'
make[2]: *** [install-am] Error 2
make[2]: Leaving directory `/opt/gnome/src/conglomerate/doc/reference'
make[1]: *** [install-recursive] Error 1
make[1]: Leaving directory `/opt/gnome/src/conglomerate/doc'
make: *** [install-recursive] Error 1
Comment 1 Geert Stappers 2003-11-02 08:19:28 UTC
<info value="background">
  Retitled from "make install fails"
  into "make install fails, cannot stat `./html/index.sgml'".
  Compoment changed from "code" into "documentation",
  because the source code is fine. It should be "general",
  but it is an other gtkdoc issue (bug 125785)
  I think this the effect of
  "gtkdocize: GTK_DOC_CHECK not called in configure.in" (bug 125787).
<info>

Try the patch from bug 125736 and update this bugreport.
Comment 2 Boris Goldowsky 2003-11-03 15:27:15 UTC
The patch does not work for me.  It changes the error to this:

-- Installing ./html/index.sgml
/bin/sh: line 1: -/usr/bin/install: No such file or directory
make[3]: *** [install-data-local] Error 127

Comment 3 Geert Stappers 2003-11-03 21:24:31 UTC
Mmmm, not good. See bug 125736 for an other try.
Comment 4 Boris Goldowsky 2003-11-03 21:43:33 UTC
No, that just changes it to
-- Installing ./html/index.html
/bin/sh: line 1: -echo: command not found
/usr/bin/install: cannot stat `./html/index.sgml': No such file or
directory

If the absense of an index.sgml is allowable, I think what you want is
something like the following, which runs without errors on my system:

diff -u -r1.13 Makefile.am
--- doc/reference/Makefile.am   28 Oct 2003 22:49:40 -0000      1.13
+++ doc/reference/Makefile.am   3 Nov 2003 21:42:25 -0000
@@ -157,8 +157,11 @@
            echo '-- Installing '$$i ; \
            $(INSTALL_DATA) $$i $(DESTDIR)$(TARGET_DIR); \
          done; \
-         echo '-- Installing $(srcdir)/html/index.sgml' ; \
-         $(INSTALL_DATA) $(srcdir)/html/index.sgml
$(DESTDIR)$(TARGET_DIR); \
+         if test -f $(srcdir)/html/index.sgml; \
+           then echo '-- Installing $(srcdir)/html/index.sgml' ; \
+           $(INSTALL_DATA) $(srcdir)/html/index.sgml
$(DESTDIR)$(TARGET_DIR); \
+         else echo '-- No index.sgml to install'; \
+         fi; \
        fi)
  


Comment 5 Geert Stappers 2003-11-04 14:19:03 UTC
Over here I got it working with the

  -echo

The Boris patch is much cleaner. I will verify it over here.
Comment 6 Geert Stappers 2003-11-04 14:30:40 UTC
Boris, please attach a patch on doc/reference/ChangeLog
Comment 7 Boris Goldowsky 2003-11-04 15:11:48 UTC
Created attachment 21184 [details] [review]
Patch for Makefile.am including ChangeLog entry
Comment 8 Geert Stappers 2003-11-04 15:38:26 UTC
Thank you. Patch applied into CVS.
Comment 9 Geert Stappers 2003-11-04 15:46:14 UTC
Hello gtk-doc people,

What are the side effects when I apply this patch also into gtk-doc?
Comment 10 Owen Taylor 2003-11-05 15:33:18 UTC
I don't think such a fix should go into gtk-doc

 A) Tarballs should be distributed with the docs
 B) If the system has a gtk-doc setup, then the docs
    should be rebuilt
    If the system doesn't have a gtk-doc setup,
    then the docs should not be rebuilt

If the docs get "rebuilt" and index.sgml is missing,
what this means is that the distributed docs got trashed
because the user had gtk-doc installed but no working
SGML setup; the user won't get installed docs.

We largely fixed these problems for GTK+ by making
--disable-gtk-doc the default, so that users just compiling
GTK+ from tarballs just get the distributed docs and
don't need to worry about having a working SGML docbook
setup.

A real fix for this would probably require the 
GTK_DOC_CHECK() macro to do more extensive tests on the
installed SGML setup, but the possibilities for breakage
are so varied, that writing these checks would be
extremely hard.

(Things generally seem to work better with XML docbook, XSLT, 
and recent versions of gtk-doc.)
Comment 11 Matthias Clasen 2004-01-28 00:06:55 UTC
The patch is not appropriate; if index.sgml is missing, the doc build
failed. gtk-doc has just started to be a bit less gracious about
broken doc build setups. Either fix your doc build or --disable-gtk-doc.