trinity-devel@lists.pearsoncomputing.net

Message: previous - next
Month: April 2012

Re: [trinity-devel] No documentation in KHelpCenter... Build issue?

From: Darrell Anderson <humanreadable@...>
Date: Tue, 3 Apr 2012 12:40:03 -0700 (PDT)
>   The K Help Center has no documentation in it. It
> shows all the apps installed, but there is no documentation for any of it. Is that a build
> time issue (i.e. DOCPATH), or is there a problem with the generation of help
> files? Here is a screenshot of khelpcenter:
> 
> http://www.3111skyline.com/dl/dt/trinity/ss/tde-no-documentation.jpg
> 
>   Is there an internal setting that will fix this?  I just let the build put the
> documentation in its default location after setting prefix=/opt/trinity (TDEDIR).

Refer to bug report 660. This has been a long-standing issue.

Do not use the patch attached to that bug report (I need to remove the patch).

I resolve the problem here locally by using a different method. In my master build script I run a function to modify all the files on-the-fly. On my to do list is creating individual patches through this method so I can update each module through GIT. Also tdelibs has to be patched. The location in tdelibs controls whether you see any help files.

In tdelibs I run the following patch:

====================================================
diff -urN tdelibs/tdecore/kstandarddirs.cpp tdelibs.new/tdecore/kstandarddirs.cpp
--- tdelibs/tdecore/kstandarddirs.cpp 2011-08-20 23:15:32.000000000 -0500
+++ tdelibs.new/tdecore/kstandarddirs.cpp 2011-11-26 17:33:31.148545755 -0600
@@ -1030,7 +1030,7 @@
     if (!strcmp(type, "html-bundle"))
  return "share/doc-bundle/HTML/";
     if (!strcmp(type, "html"))
- return "share/doc/kde/HTML/";
+ return "share/doc/tde/HTML/";
     if (!strcmp(type, "icon"))
  return "share/icons/";
     if (!strcmp(type, "config"))
====================================================


In my master build script I run the following against every package I build:

====================================================
# Note: tdelibs/tdecore/kstandarddirs.cpp is fixed with a patch in tdelibs.
find $APP_SOURCES_DIR -name TDESetupPaths.cmake -exec sed -i 's|\${SHARE_INSTALL_PREFIX}/doc/kde/HTML|\${SHARE_INSTALL_PREFIX}/doc/tde/HTML|g' {} \;
find $APP_SOURCES_DIR -name debianrules -exec sed -i 's|\$kde_prefix/share/doc/kde/HTML|\$kde_prefix/share/doc/tde/HTML|g' {} \;
find $APP_SOURCES_DIR -name am_edit -exec sed -i 's|\$kde_prefix/share/doc/kde/HTML|\$kde_prefix/share/doc/tde/HTML|g' {} \;
find $APP_SOURCES_DIR -type f -exec sed -i 's|{datadir}/doc/HTML|{datadir}/doc/tde/HTML|g' {} \;
find $APP_SOURCES_DIR -type f -exec sed -i 's|share/doc/HTML|share/doc/tde/HTML|g' {} \;
====================================================

I do not build anything inside my local source tree. I copy each module to $TMP and patch and build there, just like with a tarball. Therefore $APP_SOURCES_DIR refers to my copied location, not to my local repository.

The final directory location of $PREFIX/share/doc/tde/HTML avoids potential conflicts with KDE4.

I have not yet started to patch each module individually because I have been testing this method. Thus far everything is building as I expect, all help files are now install in the same location, and there are no help center problems.

Although I build most of the additional apps, I don't build them all and I need to update those packages too.

I should start patching each module because this bug is a thorn. The big challenge is any final changes need to be pushed in one effort. When I do that I'll post a warning.

Darrell