python-pyside2/nix_compile_cflags.patch

32 lines
1.6 KiB
Diff

Index: pyside-setup-opensource-src-5.15.7/sources/shiboken2/ApiExtractor/clangparser/compilersupport.cpp
===================================================================
--- pyside-setup-opensource-src-5.15.7.orig/sources/shiboken2/ApiExtractor/clangparser/compilersupport.cpp
+++ pyside-setup-opensource-src-5.15.7/sources/shiboken2/ApiExtractor/clangparser/compilersupport.cpp
@@ -345,17 +345,15 @@ QByteArrayList emulatedCompilerOptions()
appendClangBuiltinIncludes(&headerPaths);
# endif // NEED_CLANG_BUILTIN_INCLUDES
- // Append the c++ include paths since Clang is unable to find <list> etc
- // on RHEL 7 with g++ 6.3 or CentOS 7.2.
- // A fix for this has been added to Clang 5.0, so, the code can be removed
- // once Clang 5.0 is the minimum version.
- if (needsGppInternalHeaders()) {
- const HeaderPaths gppPaths = gppInternalIncludePaths(compilerFromCMake(QStringLiteral("g++")));
- for (const HeaderPath &h : gppPaths) {
- if (h.path.contains("c++")
- || h.path.contains("sysroot")) { // centOS
- headerPaths.append(h);
- }
+ const HeaderPaths gppPaths = gppInternalIncludePaths(QStringLiteral("g++"));
+ for (const HeaderPath &h : gppPaths) {
+ // PySide2 requires that Qt headers are not -isystem
+ // https://bugreports.qt.io/browse/PYSIDE-787
+ if (!h.path.contains("-qt")) {
+ // add using -isystem
+ headerPaths.append(h);
+ } else {
+ headerPaths.append({h.path, HeaderType::Standard});
}
}
#else