[PATCH] Fix creation of handbooks from index.docbook referencing other *.docbook files

Matt Rogers mattr at kde.org
Mon Dec 31 16:30:50 GMT 2007


On Dec 31, 2007, at 7:38 AM, Ingo Klöcker wrote:

> Hi,
>
> I don't think this is related to the fact that I'm currently building
> KDE with spaces in all possible paths. OTOH, I'm wondering why I  
> seem to
> be the first to notice that the creation of handbooks from  
> index.docbook
> files referencing other *.docbook files in <!ENTITY > tags in the
> <!DOCTYPE > tag does not work. Anyway, ...
>
> Example:
> kdebase/workspace/doc/kdm/index.docbook references kdmrc- 
> ref.docbook and
> theme-ref.docbook.
>
> Trying to build the handbook of kdm leads to:
>
> =====
> ingo at thufir:~/compiled/kde 4/trunk/KDE/kdebase/workspace/doc/kdm> make
> makeobj[0]: Entering directory `/home/ingo/compiled/kde
> 4/trunk/KDE/kdebase/workspace/doc/kdm'
> cd /home/ingo/compiled/kde\ 4/trunk/KDE/kdebase
> && /usr/bin/cmake -H/home/ingo/svn/kde\
> 4/trunk/KDE/kdebase -B/home/ingo/compiled/kde\
> 4/trunk/KDE/kdebase --check-build-system CMakeFiles/Makefile.cmake 0
> cd /home/ingo/compiled/kde\ 4/trunk/KDE/kdebase && /usr/bin/cmake -E
> cmake_progress_start /home/ingo/compiled/kde\
> 4/trunk/KDE/kdebase/CMakeFiles 0
> cd /home/ingo/compiled/kde\ 4/trunk/KDE/kdebase && /usr/bin/make -f
> CMakeFiles/Makefile2 workspace/doc/kdm/all
> make[1]: Entering directory `/home/ingo/compiled/kde
> 4/trunk/KDE/kdebase'
> /usr/bin/make -f workspace/doc/kdm/CMakeFiles/handbook.dir/build.make
> workspace/doc/kdm/CMakeFiles/handbook.dir/build
> make[2]: Entering directory `/home/ingo/compiled/kde
> 4/trunk/KDE/kdebase'
> /usr/bin/cmake -E cmake_progress_report /home/ingo/compiled/kde\
> 4/trunk/KDE/kdebase/CMakeFiles
> Generating index.cache.bz2
> cd /home/ingo/compiled/kde\ 4/trunk/KDE/kdebase/workspace/doc/kdm
> && /opt/kde4\
> svn/bin/meinproc4 --check --cache /home/ingo/compiled/kde\
> 4/trunk/KDE/kdebase/workspace/doc/kdm/index.cache.bz2 /home/ingo/ 
> svn/kde\
> 4/trunk/KDE/kdebase/workspace/doc/kdm/index.docbook
> I/O warning : failed to load external entity "kdmrc-ref.docbook"
> /home/ingo/svn/kde
> 4/trunk/KDE/kdebase/workspace/doc/kdm/index.docbook:681: parser  
> error :
> Failure to process entity kdmrc-ref
> &kdmrc-ref;
>            ^
> /home/ingo/svn/kde
> 4/trunk/KDE/kdebase/workspace/doc/kdm/index.docbook:681: parser  
> error :
> Entity 'kdmrc-ref' not defined
> &kdmrc-ref;
>            ^
> I/O warning : failed to load external entity "theme-ref.docbook"
> /home/ingo/svn/kde
> 4/trunk/KDE/kdebase/workspace/doc/kdm/index.docbook:683: parser  
> error :
> Failure to process entity theme-ref
> &theme-ref;
>            ^
> /home/ingo/svn/kde
> 4/trunk/KDE/kdebase/workspace/doc/kdm/index.docbook:683: parser  
> error :
> Entity 'theme-ref' not defined
> &theme-ref;
>            ^
> make[2]: Leaving directory `/home/ingo/compiled/kde 4/trunk/KDE/ 
> kdebase'
> make[1]: Leaving directory `/home/ingo/compiled/kde 4/trunk/KDE/ 
> kdebase'
> /usr/bin/cmake -E cmake_progress_start /home/ingo/compiled/kde\
> 4/trunk/KDE/kdebase/CMakeFiles 0
> makeobj[0]: Leaving directory `/home/ingo/compiled/kde
> 4/trunk/KDE/kdebase/workspace/doc/kdm'
> =====
>
> The problem is that meinproc4 is run in the build directory and
> therefore does not find the referenced *.docbook files. Running
> meinproc4 in the source directory fixes the problem. The attached  
> patch
> fixes this in the KDE4_CREATE_HANDBOOK macro by setting the working
> directory for meinproc4 to the source directory.
>
> Is this the correct fix? Or am I missing something?
>
>
> Regards,
> Ingo


I don't see any problems with it. If it makes it work and still puts  
the build output where it needs to be, I say commit.
--
Matt


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20071231/f580499d/attachment.htm>


More information about the kde-core-devel mailing list