[Buildroot] [PATCH v4 5/6] qt5base: Fix inconsistencies when overriding qmake properties
arnout at mind.be
Mon Apr 15 08:55:57 UTC 2019
On 15/04/2019 08:34, Andreas Naumann wrote:
> Hi Arnout,
> Am 14.04.19 um 12:12 schrieb Arnout Vandecappelle:
>> On 22/03/2019 19:39, Andreas Naumann wrote:
>>> When querying the qmake properties with our custom qt.conf present, I noticed
>>> that they were different from the built-in ones (without qt.conf).
>>> Most notably QT_INSTALL_PREFIX was a concatenated string of two absolute pathes
>>> (hostdir + sysroot).
>>> This is due to Prefix being set to our HOST_DIR and HostPrefix not being set at
>>> all. I guess this was also the root cause of the initial problem with
>>> qt.conf.in, because once Prefix and HostPrefix were set to their correct values,
>>> re-setting all the other default pathes became obsolete. (However, since our
>>> pathes for Headers, Plugins and Examples are non-default, they still have to be
>>> explicitely set.)
>>> There is one additional exception to this: Omitting 'Settings' leads to the
>>> CONFIGURATION path being plain /usr, whereas the default without qt.conf is
>>> /usr/etc/xdg. Thus 'Settings' is now also explicitely set, in order to keep
>>> behaviour with/without qt.conf as similar as possible.
>> Since you said this patch is indeed independent of the rest, I was about to
>> apply, but then I noticed this...
>> In the original qt.conf.in, Settings was explicitly set to /usr. Now, you
>> change it back to /usr/etc/xdg, which is indeed the Qt default. However, would
>> this not lead to runtime problems for people who actually use the settings
>> directory, because it will have changed location after Buildroot upgrade? If we
>> had the Qt default overridden before, I think we should keep that override (even
>> if it is maybe not such a great idea to override it).
> I agree and actually was a bit unsure if changing the value would create issues
> for anybody. However within buildroot I have not found a package that actually
> deploys anything to /usr/etc/xdg, which could also mean I didnt look hard enough.
I can't say I *really* know what this Settings configuration is doing, but I
*think* it is used by applications (and we don't ship many qt5-based
applications, mainly libraries). Also I think it will typically not be populated
during installation, but it will be used at runtime to read and save global
> I will try to finally prepare v5 of the set tonight. If I dont hear anything
> else, I'll set the value back to /usr.
>>> Signed-off-by: Andreas Naumann <anaumann at ultratronik.de>
>>> package/qt5/qt5base/qt.conf.in | 17 +++--------------
>>> 1 file changed, 3 insertions(+), 14 deletions(-)
>>> diff --git a/package/qt5/qt5base/qt.conf.in b/package/qt5/qt5base/qt.conf.in
>>> index 9a0b9cd53b..46ebe61614 100644
>>> --- a/package/qt5/qt5base/qt.conf.in
>>> +++ b/package/qt5/qt5base/qt.conf.in
>>> @@ -1,19 +1,8 @@
>> This is the original setting of Settings.
More information about the buildroot