On Saturday March 14 2015 13:00:51 Ian Wadham wrote:

Hi,

>Well, I think we really are (getting somewhere).  Keep pushing! :-)

>I have read through the patch in detail and it looks great.  A couple of 
>points:
>
>    a. Is it necessary to initialise QStandardPaths::usingXDGLocations in every
>        platform file (android, blackberry, etc.)?  Could it be done in 
> conditional
>        code in qstandardpaths.cpp?

No, and yes but no :) I've already changed the patch with a bunch of #ifdefs 
such that it injects my code only on OS X. I think it's better to initialise 
the state variable in the platform-specific implementation (if not only for 
readability) so it's remained in qsp_mac.mm (and only in that file).

>    b. How does the qstandardpaths_use_xdg.cpp component work?  I guess
>        it is intended to be loaded with any build that wants to use Qt with 
> XDG
>        paths (e.g. all KF5 Frameworks and apps), but what actually makes it
>        execute and when?

Yes. That part still needs work. Ideally that file would be built along with 
the rest on Qt on OS X, to yield a link-time object.
The various buildsystems that expose QtCore to applications could then provide 
a way to link that object through a flag, or it could be left to the KF5 build 
system.
The object itself could be a static lib (requiring -force_load because it 
doesn't contain anything that's referenced) or possibly a shared lib (which 
could use the shared-lib initialisation feature to ensure it actually does 
something?). But it it's sufficiently transparent there may not even be a point 
in trying to hide a lowly .o file from the user :)
And in that latter case it could be built from Qt's configure script, which 
will be way easier to do than to hack its qmake build system. Because the one 
inside Qt seems to work not exactly the same way as it does "outside" of Qt.

>So perhaps it does make sense to re-use ${prefix}/etc/xdg in Qt5/KF5.

I have nothing against that...

R.
_______________________________________________
macports-dev mailing list
macports-dev@lists.macosforge.org
https://lists.macosforge.org/mailman/listinfo/macports-dev

Reply via email to