Bug 1704474

Summary: CMake generates wrong -isystem /usr/include compilations flags with Qt5::Gui
Product: [Fedora] Fedora Reporter: Ivan Romanov <drizt72>
Component: qt5-qtbaseAssignee: Rex Dieter <rdieter>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 29CC: jgrulich, jreznik, kde-sig, rdieter, than
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: qt5-qtbase-5.12.1-5.fc30 qt5-qtbase-5.11.3-2.fc29 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-05-07 05:41:33 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
patch for Qt5GuiConfigExtras.cmake none

Description Ivan Romanov 2019-04-29 21:19:19 UTC
Created attachment 1560074 [details]
patch for Qt5GuiConfigExtras.cmake

CMake in some cases generates -isystem /usr/include with Qt5::Gui. This option breaks compilation. I got this problem when tried to add in my application PCH support with nanoant CMakePCHCompiler. CMakePCHCompiler "introduce" a new language CXXPCH. With standard CXX language CMake internally strip /usr/include and it not appears in compilation process. But CMake do it only for own languages. So for details see issue https://github.com/nanoant/CMakePCHCompiler/issues/33.

Also I added a patch which resolve this problem.

P.S. the same problem actuals for Qt4 package in Fedora.

Comment 1 Rex Dieter 2019-04-29 21:28:22 UTC
That file may not be easily patchable, it's dynamically generated at (qt) build-time.

I do recall running into similar issues in the past, I'll try to find how/what we fixed it last time.

Comment 2 Rex Dieter 2019-04-29 21:35:02 UTC
Found this in comment message when updating to 5.9.1 in the past:

# Remove /usr/include from .qmake.stash to fix build with gcc 6
# (gcc can't find <stdlib.h> if -isystem /usr/include is present,
# and Qt for some reason generates it
mv .qmake.stash .qmake.stash.old
cat .qmake.stash.old | sed -e 's@\(/usr/local/include\) \\@\1@g'| sed -e '/\/usr\/include$/ { d; }' > .qmake.stash


We'll see if something similar still needs to be done here.

Comment 3 Rex Dieter 2019-04-29 21:41:58 UTC
I guess I was wrong, that particular .cmake.in (template) file is under src/gui/ in sources

Comment 4 Rex Dieter 2019-04-30 20:27:32 UTC
Initial try at a patched build,
https://koji.fedoraproject.org/koji/taskinfo?taskID=34552534

Comment 5 Fedora Update System 2019-05-01 15:31:23 UTC
qt5-qtbase-5.11.3-2.fc29 has been submitted as an update to Fedora 29. https://bodhi.fedoraproject.org/updates/FEDORA-2019-4b456bd710

Comment 6 Fedora Update System 2019-05-01 21:37:02 UTC
qt5-qtbase-5.12.1-4.fc30 has been submitted as an update to Fedora 30. https://bodhi.fedoraproject.org/updates/FEDORA-2019-2a32961472

Comment 7 Fedora Update System 2019-05-02 02:38:26 UTC
qt5-qtbase-5.11.3-2.fc29 has been pushed to the Fedora 29 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-4b456bd710

Comment 8 Fedora Update System 2019-05-02 02:59:44 UTC
qt5-qtbase-5.12.1-4.fc30 has been pushed to the Fedora 30 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-2a32961472

Comment 9 Ivan Romanov 2019-05-02 16:59:52 UTC
Thanks! This works.

Comment 10 Fedora Update System 2019-05-02 17:59:31 UTC
qt5-qtbase-5.12.1-5.fc30 has been submitted as an update to Fedora 30. https://bodhi.fedoraproject.org/updates/FEDORA-2019-2a32961472

Comment 11 Fedora Update System 2019-05-03 04:12:04 UTC
qt5-qtbase-5.12.1-5.fc30 has been pushed to the Fedora 30 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-2a32961472

Comment 12 Fedora Update System 2019-05-07 05:41:33 UTC
qt5-qtbase-5.12.1-5.fc30 has been pushed to the Fedora 30 stable repository. If problems still persist, please make note of it in this bug report.

Comment 13 Fedora Update System 2019-05-07 14:23:41 UTC
qt5-qtbase-5.11.3-2.fc29 has been pushed to the Fedora 29 stable repository. If problems still persist, please make note of it in this bug report.