[BLFS Trac] #1785: libexif problem if Doxygen is not installed

BLFS Trac trac at linuxfromscratch.org
Sun Mar 12 15:29:25 PST 2006


#1785: libexif problem if Doxygen is not installed
----------------------------------------+-----------------------------------
 Reporter:  randy at linuxfromscratch.org  |        Owner:  dnicholson at linuxfromscratch.org
     Type:  defect                      |       Status:  assigned                       
 Priority:  high                        |    Milestone:  future                         
Component:  BOOK                        |      Version:  a-SVN                          
 Severity:  normal                      |   Resolution:                                 
 Keywords:                              |  
----------------------------------------+-----------------------------------
Comment (by dnicholson at linuxfromscratch.org):

 So, here's the error:

 {{{
 Making install in doc
 make[1]: Entering directory `/usr/src/libexif-0.6.13/doc'
 make[2]: Entering directory `/usr/src/libexif-0.6.13/doc'
 make[2]: Nothing to be done for `install-exec-am'.
 make[2]: *** No rule to make target `install-apidocs', needed by `install-
 data-local'.  Stop.
 make[2]: Leaving directory `/usr/src/libexif-0.6.13/doc'
 }}}

 What happens is that doc/Makefile.am is poorly written in that most of the
 rules are surrounded in `if HAVE_DOXYGEN`.  This results in the
 Makefile.in targets looking like this:

 {{{
 @HAVE_DOXYGEN_TRUE at install-apidocs: $(HTML_APIDOC_DIR).stamp
 @HAVE_DOXYGEN_TRUE@ $(INSTALL) -m 0755 -d
 $(DESTDIR)$(docdir)/$(DOC_APIDOC_HTML)
 @HAVE_DOXYGEN_TRUE@ $(INSTALL) -m 0644
 $(DOXYGEN_OUTPUT_DIR)/$(HTML_APIDOC_DIR)/*
 $(DESTDIR)$(docdir)/$(DOC_APIDOC_HTML)/
 }}}

 In the actual Makefile, if you don't have Doxygen, these turn to comments:

 {{{ #install-apidocs: $(HTML_APIDOC_DIR).stamp }}}

 Unfortunately, the `install-data-local` target is not part of the `if
 HAVE_DOXYGEN` set.  So, when you run `make install` without Doxygen, it
 chokes at `install-data-local` because there's an undefined target
 `install-apidocs` which is commented out.

 Solution: add `install-data-local` to the HAVE_DOXYGEN set with

 {{{
 sed -i 's/^install-data-local/@HAVE_DOXYGEN_TRUE@&/' doc/Makefile.in
 }}}

-- 
Ticket URL: <http://wiki.linuxfromscratch.org/blfs/ticket/1785>
BLFS Trac <http://wiki.linuxfromscratch.org/blfs>
Beyond Linux From Scratch



More information about the blfs-book mailing list