[kde-freebsd] Building with a LOCALBASE
Adriaan de Groot
groot at kde.org
Thu Aug 6 21:32:12 UTC 2015
I'm building kde5 (or parts of it) from area51 branch plasma5 on a 10.1 system
with LOCALBASE set to $HOME/local . The machine I'm building on has almost no
system ports or packages installed (/usr/local contains bash, x server things,
twm, and python). I realise this is a somewhat peculiar build configuration.
Anyway, the build fails in kf5-kconfigwidgets. The error is that meinproc5
can't find certain files and is looking in 3 different directories:
[ 87%] [ 88%] Generating preparetips5.1
Automatic moc for target KF5ConfigWidgets
Could not locate file "kf5/kdoctools/customization" in
("/var/tmp/ports/home/adridg/src/ports/x11-toolkits/kf5-kconfigwidgets/work",
"/usr/local/share", "/usr/share")
Could not locate file "kf5/kdoctools/customization" in
("/var/tmp/ports/home/adridg/src/ports/x11-toolkits/kf5-kconfigwidgets/work",
"/usr/local/share", "/usr/share")
Error: Could not find kdoctools catalogs
docs/preparetips/CMakeFiles/docs-preparetips-preparetips5-1.dir/build.make:52:
recipe for target 'docs/preparetips/preparetips5.1' failed
Those three directories are the ones defined by QStandardPaths [1], in
particular the directories defined for GenericDataLocation. As far as I can
tell, these three come from: $XDG_DATA_HOME and two hard-coded
(/usr/local/share and /usr/share). By setting XDG_DATA_HOME to a suitable
value (i.e. $LOCALBASE/share) I can make the build complete by running gmake
in the build-directory. But bsd.port.mk sets that environment variable to the
work-directory during the build.
So I guess my questions are these:
1. Does the usual value of QStandardPaths here make sense? Shouldn't
$LOCALBASE/share be in there as well, when Qt is built and installed in that
alternate LOCALBASE?
2. (if 1 is answered yes, no respectively) Is there a way to force
XDG_DATA_HOME to $LOCALBASE/share during compilation (perhaps only for that
one step) so that the build can complete normally?
3. Should this stuff build with a different LOCALBASE?
For now it's not blocking me, since I know how to work around any invocations
of meinproc that need this set.
[ade]
[1] http://doc.qt.io/qt-5/qstandardpaths.html
More information about the kde-freebsd
mailing list