By default, Bugzilla does not search the list of RESOLVED bugs.
You can force it to do so by putting the upper-case word ALL in front of your search query, e.g.: ALL tdelibs
We recommend searching for bugs this way, as you may discover that your bug has already been resolved and fixed in a later release.
Bug 1446 - Build issue: Configuration is using KDE4 /usr/share/apps/ksgmltools2/customization/kde-chunk.xsl
Summary: Build issue: Configuration is using KDE4 /usr/share/apps/ksgmltools2/customiz...
Status: RESOLVED FIXED
Alias: None
Product: TDE
Classification: Unclassified
Component: other (any) (show other bugs)
Version: R14.0.0 [Trinity]
Hardware: Other Linux
: P1 blocker
Assignee: Darrell
URL:
Depends on:
Blocks:
 
Reported: 2013-04-10 17:28 CDT by Darrell
Modified: 2013-07-27 02:49 CDT (History)
5 users (show)

See Also:
Compiler Version:
TDE Version String:
Application Version:
Application Name:


Attachments
Proposed patch for fixing KDE_XSL_STYLESHEET (904 bytes, patch)
2013-04-10 17:51 CDT, Darrell
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Darrell 2013-04-10 17:28:49 CDT
I ran across this just today after an odd build failure with kmymoney. A little snooping indicates the problem is global. The configuration file admin/acinclude.m4.in has the following:

kde_sharedirs="/usr/share/kde /usr/local/share /usr/share /opt/trinity/share /opt/trinity/share /opt/kde/share $prefix/share"
  test -n "$TDEDIR" && kde_sharedirs="$TDEDIR/share $kde_sharedirs"
  AC_FIND_FILE(apps/ksgmltools2/customization/kde-chunk.xsl, $kde_sharedirs, KDE_XSL_STYLESHEET)
if test "$KDE_XSL_STYLESHEET" = "NO"; then
  KDE_XSL_STYLESHEET=""
else
  KDE_XSL_STYLESHEET="$KDE_XSL_STYLESHEET/apps/ksgmltools2/customization/kde-chunk.xsl"
fi

In the past I always built Trinity in a "clean" environment, meaning no KDE4 apps were installed. With our project focus of ensuring no conflicts with KDE4, I have KDE4 installed concurrently along with Trinity and likewise in my build environment. Thus, with KDE4 apps installed in my build environment, the above snippet always grabs the path from KDE4 rather than Trinity.

I could revert my build environment back to being KDE4-free, but I suspect as time moves forward others will trip over this same configuration bug. As currently Trinity and KDE4 cannot be installed both to the same $PREFIX directory, that means project members typically build Trinity to install to /opt/trinity to avoid upstream distro conflicts with the default KDE4. My guess is the following change will resolve the problem:

AS IS:

kde_sharedirs="/usr/share/kde /usr/local/share /usr/share /opt/trinity/share /opt/trinity/share /opt/kde/share $prefix/share"

CHANGE TO:

kde_sharedirs="$prefix/share /opt/trinity/share /opt/trinity/share /opt/kde/share /usr/share/kde /usr/local/share /usr/share"

Perhaps a more robust solution exists, but any change needs to be applied to the master admin directory.
Comment 1 Darrell 2013-04-10 17:51:50 CDT
Created attachment 1150 [details]
Proposed patch for fixing KDE_XSL_STYLESHEET

I ran a patch against kymoney and the proposed change in acinclude.m4.in succeeds.

Tim, I'll let you decide whether this is an optimal solution. I'm attaching the patch from kmymoney.
Comment 2 Timothy Pearson 2013-04-12 16:58:22 CDT
Wouldn't it be more appropriate to rename kde-chunk.xsl to tde-chunk.xsl?
Comment 3 Darrell 2013-04-12 17:28:02 CDT
>Wouldn't it be more appropriate to rename kde-chunk.xsl to tde-chunk.xsl?
Possibly and that sounds like a reasonable long-term idea, but I'm nowhere near enough of a docbook expert to envision how such a simple change will affect everything. There are several files involved affecting the docbook process.

I'm not resisting, just saying that without a docbook expert looking over our shoulders, we might wade fairly deep into trial and error to get the renaming correct. I'll take a look but my initial guess is if we rename the file (and other files in that same directory), then we need to propagate the name change throughout the entire source tree.

At the moment the problem is the way the acinclude file selects /usr before $PREFIX.

I've been indirectly testing the proposed patch by globally changing the acinclude file using sed in my master wrapper build script. So far no problems noticed.
Comment 4 Darrell 2013-04-12 20:55:33 CDT
Renaming kde-chunk.xsl (and the other files in that same tdelibs directory) might work. Grepping the sources reveals we would need to rename the files in tdelibs and then update two files in common/admin. There are other admin files in individual modules needing attention too, but that is the basics. As long as we don't touch the contents of the files this might work.

That said, I think we should also reorder the search string in common/admin/acinclude.m4.in. That is the easiest short-term fix to keep us going. The other approach could be more long-term, although I hope to try to test that.
Comment 5 Timothy Pearson 2013-04-12 23:47:08 CDT
(In reply to comment #4)
> Renaming kde-chunk.xsl (and the other files in that same tdelibs directory)
> might work. Grepping the sources reveals we would need to rename the files in
> tdelibs and then update two files in common/admin. There are other admin files
> in individual modules needing attention too, but that is the basics. As long as
> we don't touch the contents of the files this might work.
> 
> That said, I think we should also reorder the search string in
> common/admin/acinclude.m4.in. That is the easiest short-term fix to keep us
> going. The other approach could be more long-term, although I hope to try to
> test that.

If it is feasible to just rename kde-chunk.xsl I would prefer to do that for two reasons:
1.) The prefix hack does not actually address the KDE/TDE conflict.
2.) Even if the prefix hack works on 80% or 90% of systems, there will still be some fraction that it does not work with.  Once you and I do not experience this bug anymore on our systems, all serious motivation will be gone to deal with it on other systems. ;-)
Comment 6 Darrell 2013-04-13 08:31:24 CDT
I need to tinker with the renaming. I'll have to run a full build set to ensure no build failures and test the handbook files after building.
Comment 7 Darrell 2013-04-13 10:12:26 CDT
I'm prepping my way through this for a trial build run. So far so good, but if we do this then let's do this correctly for the long run and change the names of several files as well as internal coding references to those renamed files.

While grepping the sources for possible snippets that need patching, I ran across a handful of Makefiles that are hard-coded to /usr. For example:

KDE_XSL_STYLESHEET = /usr/share/apps/ksgmltools2/customization/kde-chunk.xsl

What is the correct variable to use in a Makefile so the line changes to:

KDE_XSL_STYLESHEET = ($prefix)/share/apps/ksgmltools2/customization/kde-chunk.xsl

Or something similar?

Here are the hard-coded Makefiles:

applications/kdiff3/kdiff3plugin/po/Makefile
applications/kmyfirewall/kmyfirewall/installer/openbsd/Makefile
applications/kmyfirewall/doc/kmyfirewall/Makefile
applications/kmyfirewall/doc/Makefile
applications/ksystemlog/ksystemlog/po/Makefile
applications/ksystemlog/ksystemlog/doc/en/Makefile
applications/ksystemlog/ksystemlog/doc/Makefile
applications/tderadio/tderadio3/convert-presets/po/Makefile
applications/kaffeine/kaffeine/src/player-parts/dummy-part/Makefile

BTW, those same files contain other hard-coded instances to /usr that also should be changed to ($prefix) or whatever is correct.
Comment 8 Darrell 2013-04-13 22:12:47 CDT
Tim, this is looking good to go live and I have a punch list ready for pushing commits.

Only remaining tidbit is how to use a variable for the Makefiles listed in the previous comment. The hard-coded paths used in those Makefiles point to the KDE4 files and there is no guarantee those files are still compatible with Trinity or will remain compatible. Best to fix them all now.

Thanks!
Comment 9 Timothy Pearson 2013-04-13 22:48:17 CDT
<snip>
> KDE_XSL_STYLESHEET =
> ($prefix)/share/apps/ksgmltools2/customization/kde-chunk.xsl

Try $kde_libs_prefix

Tim
Comment 10 Timothy Pearson 2013-04-13 22:49:02 CDT
(In reply to comment #9)
> <snip>
> > KDE_XSL_STYLESHEET =
> > ($prefix)/share/apps/ksgmltools2/customization/kde-chunk.xsl
> 
> Try $kde_libs_prefix
> 
> Tim

Actually, even better is:
$datarootdir/apps/ksgmltools2/customization/kde-chunk.xsl
Comment 11 Timothy Pearson 2013-04-13 22:49:32 CDT
(In reply to comment #10)
> (In reply to comment #9)
> > <snip>
> > > KDE_XSL_STYLESHEET =
> > > ($prefix)/share/apps/ksgmltools2/customization/kde-chunk.xsl
> > 
> > Try $kde_libs_prefix
> > 
> > Tim
> 
> Actually, even better is:
> $datarootdir/apps/ksgmltools2/customization/kde-chunk.xsl

Sorry about the bug spam; that should actually be:
$kde_datadir/ksgmltools2/customization/kde-chunk.xsl
Comment 12 Darrell 2013-04-18 19:15:49 CDT
Patches pushed to GIT 2013-04-18.
Comment 13 Timothy Pearson 2013-04-18 23:25:08 CDT
Can you please post a list of all the files renamed in the last commits?  I need to update the packaging files before rebuilding but do not have a comprehensive list...

Thanks!
Comment 14 Darrell 2013-04-18 23:30:39 CDT
The list is in the dev mail list "Friendly notice" I posted before pushing the commits.

http://trinity-devel.pearsoncomputing.net/?0::10984
Comment 15 Timothy Pearson 2013-04-18 23:37:07 CDT
(In reply to comment #14)
> The list is in the dev mail list "Friendly notice" I posted before pushing the
> commits.
> 
> http://trinity-devel.pearsoncomputing.net/?0::10984

Ah, thanks.  That got buried in my Email box and therefore was left unread. :-)
Comment 16 Darrell 2013-04-18 23:39:42 CDT
Oh wait, you wrote renamed files. Here:

tdelibs/doc/common:

kde-common.css -> tde-common.css
kde-default.css -> tde-default.css
kde-web.css -> tde-web.css
kde-localised.css.template -> tde-localised.css.template
kde.css -> tde.css

tdelibs/kdoctools/customization:

kde-chunk-online.xsl -> tde-chunk-online.xsl
kde-chunk.xsl -> tde-chunk.xsl
kde-man.xsl -> tde-man.xsl
kde-navig-online.xsl -> tde-navig-online.xsl
kde-navig.xsl -> tde-navig.xsl
kde-nochunk.xsl -> tde-nochunk.xsl
kde-style.xsl -> tde-style.xsl
kde-ttlpg-online.xsl -> tde-ttlpg-online.xsl
kde-ttlpg.xsl -> tde-ttlpg.xsl
kde-web-navig.xsl -> tde-web-navig.xsl
kde-web.xsl -> tde-web.xsl
Comment 17 Timothy Pearson 2013-04-18 23:44:09 CDT
(In reply to comment #16)
> Oh wait, you wrote renamed files. Here:
> 
> tdelibs/doc/common:
> 
> kde-common.css -> tde-common.css
> kde-default.css -> tde-default.css
> kde-web.css -> tde-web.css
> kde-localised.css.template -> tde-localised.css.template
> kde.css -> tde.css
> 
> tdelibs/kdoctools/customization:
> 
> kde-chunk-online.xsl -> tde-chunk-online.xsl
> kde-chunk.xsl -> tde-chunk.xsl
> kde-man.xsl -> tde-man.xsl
> kde-navig-online.xsl -> tde-navig-online.xsl
> kde-navig.xsl -> tde-navig.xsl
> kde-nochunk.xsl -> tde-nochunk.xsl
> kde-style.xsl -> tde-style.xsl
> kde-ttlpg-online.xsl -> tde-ttlpg-online.xsl
> kde-ttlpg.xsl -> tde-ttlpg.xsl
> kde-web-navig.xsl -> tde-web-navig.xsl
> kde-web.xsl -> tde-web.xsl

That looks more like what I was looking for--the Email message gave me the impression that only kde-chunk* files were renamed, resulting in two bad build sets.  Oh well.
Comment 18 Darrell 2013-04-19 14:38:14 CDT
After a full merge of all patches to GIT, a subsequent full rebuild with no build failures, and several spot checks of help handbook files after installation, I'm not noticing any problems.

I'm tagging this as resolved although anybody can reopen should a related problem appear.
Comment 19 Timothy Pearson 2013-04-20 18:52:21 CDT
For some reason this was coming up CONFIRMED instead of RESOLVED FIXED...
Comment 20 Francois Andriot 2013-07-27 02:49:29 CDT
Quick question: I see there is some human readable text at bottom of "tde-navig.xsl".
How are we supposed to make translation of this text ?
Should'nt there be some kind of variable that would be declared in each language subfolder ?