diff options
author | Marius Bakke <mbakke@fastmail.com> | 2020-03-29 11:35:04 +0200 |
---|---|---|
committer | Marius Bakke <mbakke@fastmail.com> | 2020-03-29 11:35:04 +0200 |
commit | 26e92a3025513ec8e2b243cf819a7526a5d8d7c3 (patch) | |
tree | 8d959ac00ca31a6960e90cdc6c33a1e08889e3fc | |
parent | 58f705c18ebfafc4e291ba3be2ceeeead9e2a289 (diff) | |
download | guix-26e92a3025513ec8e2b243cf819a7526a5d8d7c3.tar guix-26e92a3025513ec8e2b243cf819a7526a5d8d7c3.tar.gz |
gnu: qtbase: Patch the 'moc' executable to cope with GCCs C++ headers.
* gnu/packages/patches/qtbase-moc-ignore-gcc-macro.patch: New file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/qt.scm (qtbase)[source](patches): Add it.
-rw-r--r-- | gnu/local.mk | 1 | ||||
-rw-r--r-- | gnu/packages/patches/qtbase-moc-ignore-gcc-macro.patch | 17 | ||||
-rw-r--r-- | gnu/packages/qt.scm | 1 |
3 files changed, 19 insertions, 0 deletions
diff --git a/gnu/local.mk b/gnu/local.mk index b0b72e6349..46e2936567 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1385,6 +1385,7 @@ dist_patch_DATA = \ %D%/packages/patches/qemu-fix-documentation-build-failure.patch \ %D%/packages/patches/qrcodegen-cpp-make-install.patch \ %D%/packages/patches/qt4-ldflags.patch \ + %D%/packages/patches/qtbase-moc-ignore-gcc-macro.patch \ %D%/packages/patches/qtbase-use-TZDIR.patch \ %D%/packages/patches/qtbase-QTBUG-81715.patch \ %D%/packages/patches/qtscript-disable-tests.patch \ diff --git a/gnu/packages/patches/qtbase-moc-ignore-gcc-macro.patch b/gnu/packages/patches/qtbase-moc-ignore-gcc-macro.patch new file mode 100644 index 0000000000..b296cf0b72 --- /dev/null +++ b/gnu/packages/patches/qtbase-moc-ignore-gcc-macro.patch @@ -0,0 +1,17 @@ +The moc executable loops through headers on CPLUS_INCLUDE_PATH and stumbles +on the GCC internal _GLIBCXX_VISIBILITY macro. Tell it to ignore it as it is +not supposed to be looking there to begin with. + +Upstream report: https://bugreports.qt.io/browse/QTBUG-83160 + +diff --git a/src/tools/moc/main.cpp b/src/tools/moc/main.cpp +--- a/src/tools/moc/main.cpp ++++ b/src/tools/moc/main.cpp +@@ -188,6 +188,7 @@ int runMoc(int argc, char **argv) + dummyVariadicFunctionMacro.arguments += Symbol(0, PP_IDENTIFIER, "__VA_ARGS__"); + pp.macros["__attribute__"] = dummyVariadicFunctionMacro; + pp.macros["__declspec"] = dummyVariadicFunctionMacro; ++ pp.macros["_GLIBCXX_VISIBILITY"] = dummyVariadicFunctionMacro; + + QString filename; + QString output; diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm index 81989f68c3..368cfb7e15 100644 --- a/gnu/packages/qt.scm +++ b/gnu/packages/qt.scm @@ -352,6 +352,7 @@ developers using C++ or QML, a CSS & JavaScript like language.") "0pb68d30clksdhgy8n6rrs838bb3qcsfq4pv463yy2nr4p5kk2di")) ;; Use TZDIR to avoid depending on package "tzdata". (patches (search-patches "qtbase-use-TZDIR.patch" + "qtbase-moc-ignore-gcc-macro.patch" "qtbase-QTBUG-81715.patch")) (modules '((guix build utils))) (snippet |