Bug 341311

Summary: shouldn't use private qt headers
Product: [Frameworks and Libraries] QtCurve Reporter: Harald Sitter <sitter>
Component: qt5Assignee: Yichao Yu <yyc1992>
Status: RESOLVED INTENTIONAL    
Severity: normal CC: hein
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed In:

Description Harald Sitter 2014-11-26 23:44:52 UTC
../../../qt5/style/argbhelper.cpp:26:31: fatal error: private/qwidget_p.h: No such file or directory

^ Private headers should not be used outside Qt. Would be very awesome if that include could be removed or the relevant API be moved in Qt to be public.

Reproducible: Always
Comment 1 Yichao Yu 2014-11-27 00:01:52 UTC
That private header is used in order to support transparent background in Qt5. I would prefer to keep it unless it actually break things.

I believe the private headers are also necessary for building some plugins etc and their path are available in the CMake module provided by Qt5 so the distributions should have packages that installs these headers. (I checked ArchLinux, Debian and OpenSUSE).
Comment 2 Harald Sitter 2014-11-27 00:22:12 UTC
the problem is when qt changes internals around to cause binary incompatibility that would affect qtcurve eeeeeeeeeeevery distribution in the world will
a) have to know that qtcurve would be affected (which of course is not often very obvious)
b) take actions to mitigate the 

source users are screwed by default, so all of those also get to figure out that there was a BIC and rebuild qtcurve.

all very avoidable I'd say.