pinentry: Fix pinentry-qt4 build failure
PATCH 1/1 pinentry: Fix pinentry-qt4 build failure
- pinentry-qt4 needs Qt with accessibility support, so remove the '-no-accessibility' configure option in the 'package/qt/qt.mk' file to build Qt with accessibility support. Otherwise the build process will fail showing errors like these ones:
pinentrydialog.moc:9:52: fatal error:../../../s/pinentry/qt4/pinentrydialog.h: No such file or directory
main.cpp: In function 'int qt_cmd_handler(pinentry_t)':
main.cpp:220:51: error: 'class QAbstractButton' has no member named 'setAccessibleDescription'
- The options to disable pinentry-gtk(1) and pinentry-qt(3) are no longer needed.
- The include paths in the .moc files under the 'pinentry-0.9.0/qt4' directory are wrong. Add a patch to fix it so we avoid a build failure like this one:
In file included from pinentryconfirm.cpp:52:0:
pinentryconfirm.moc:9:53: fatal error:../../../s/pinentry/qt4/pinentryconfirm.h: No such file or directory
#include "../../../s/pinentry/qt4/pinentryconfirm.h"
This issue has been reported upstream:
https://bugs.g10code.com/gnupg/issue1784
Fixes:
http://autobuild.buildroot.org/results/314/314de324a09f64f8b95882ca169c77847d75680c/
--- .../0001-fix-the-include-paths-in-moc-files.patch | 43 ++++++++++++++++++++ package/pinentry/pinentry.mk | 4 +- package/qt/qt.mk | 1 - 3 files changed, 44 insertions(+), 4 deletions(-) create mode 100644 package/pinentry/0001-fix-the-include-paths-in-moc-files.patch
package/pinentry/0001-fix-the-include-paths-in-moc-files.patch new file +43 -0
@@ -0,0 +1,43 @@ +Fix the include paths in moc files + +Reported upstream: + https://bugs.g10code.com/gnupg/issue1784 + +Signed-off-by: Vicente Olivert Riera <[email protected]> + +diff -rup a/qt4/pinentryconfirm.moc b/qt4/pinentryconfirm.moc +--- a/qt4/pinentryconfirm.moc 2014-09-18 09:35:48.000000000 +0100 ++++ b/qt4/pinentryconfirm.moc 2014-12-08 10:58:24.632153123 +0000 +@@ -6,7 +6,7 @@ + ** WARNING! All changes made in this file will be lost! + *****************************************************************************/ + +-#include "../../../s/pinentry/qt4/pinentryconfirm.h" ++#include "pinentryconfirm.h" + #if !defined(Q_MOC_OUTPUT_REVISION) + #error "The header file 'pinentryconfirm.h' doesn't include <QObject>." + #elif Q_MOC_OUTPUT_REVISION != 63 +diff -rup a/qt4/pinentrydialog.moc b/qt4/pinentrydialog.moc +--- a/qt4/pinentrydialog.moc 2014-09-18 09:35:48.000000000 +0100 ++++ b/qt4/pinentrydialog.moc 2014-12-08 10:58:34.360322276 +0000 +@@ -6,7 +6,7 @@ + ** WARNING! All changes made in this file will be lost! + *****************************************************************************/ + +-#include "../../../s/pinentry/qt4/pinentrydialog.h" ++#include "pinentrydialog.h" + #if !defined(Q_MOC_OUTPUT_REVISION) + #error "The header file 'pinentrydialog.h' doesn't include <QObject>." + #elif Q_MOC_OUTPUT_REVISION != 63 +diff -rup a/qt4/qsecurelineedit.moc b/qt4/qsecurelineedit.moc +--- a/qt4/qsecurelineedit.moc 2014-09-18 09:35:48.000000000 +0100 ++++ b/qt4/qsecurelineedit.moc 2014-12-08 10:58:45.000507284 +0000 +@@ -6,7 +6,7 @@ + ** WARNING! All changes made in this file will be lost! + *****************************************************************************/ + +-#include "../../../s/pinentry/qt4/qsecurelineedit.h" ++#include "qsecurelineedit.h" + #if !defined(Q_MOC_OUTPUT_REVISION) + #error "The header file 'qsecurelineedit.h' doesn't include <QObject>." + #elif Q_MOC_OUTPUT_REVISION != 63
package/pinentry/pinentry.mk +1 -3
@@ -10,9 +10,7 @@ PINENTRY_SITE = ftp://ftp.gnupg.org/gcrypt/pinentry PINENTRY_LICENSE = GPLv2+ PINENTRY_LICENSE_FILES = COPYING PINENTRY_DEPENDENCIES = $(if $(BR2_PACKAGE_LIBICONV),libiconv) -PINENTRY_CONF_OPTS = --disable-pinentry-gtk # gtk1 -PINENTRY_CONF_OPTS += --disable-pinentry-qt # qt3 -PINENTRY_CONF_OPTS += --without-libcap # requires PAM +PINENTRY_CONF_OPTS = --without-libcap # requires PAM # build with X if available ifeq ($(BR2_PACKAGE_XORG7),y)
package/qt/qt.mk +0 -1
@@ -513,7 +513,6 @@ define QT_CONFIGURE_CMDS -no-xinerama \ -no-cups \ -no-nis \ - -no-accessibility \ -no-separate-debug-info \ -prefix /usr \ -plugindir /usr/lib/qt/plugins \
Signature · 1 line
1.7.1
PATCH 1/1 pinentry: Fix pinentry-qt4 build failure
Vicente, All,
On 2014-12-08 15:41 +0000, Vicente Olivert Riera spake thusly:
Quoted 24 lines
- pinentry-qt4 needs Qt with accessibility support, so remove the '-no-accessibility' configure option in the '
package/qt/qt.mk' file to build Qt with accessibility support. Otherwise the build process will fail showing errors like these ones:pinentrydialog.moc:9:52: fatal error:
../../../s/pinentry/qt4/pinentrydialog.h: No such file or directorymain.cpp: In function 'int
qt_cmd_handler(pinentry_t)':
main.cpp:220:51: error: 'class QAbstractButton' has no member named 'setAccessibleDescription'- The options to disable pinentry-gtk(1) and pinentry-qt(3) are no longer needed.
- The include paths in the .moc files under the 'pinentry-0.9.0/qt4' directory are wrong. Add a patch to fix it so we avoid a build failure like this one:
In file included from pinentryconfirm.cpp:52:0:
pinentryconfirm.moc:9:53: fatal error:../../../s/pinentry/qt4/pinentryconfirm.h: No such file or directory
#include "../../../s/pinentry/qt4/pinentryconfirm.h"
Quoted 5 lines
This issue has been reported upstream:
https://bugs.g10code.com/gnupg/issue1784Fixes:
http://autobuild.buildroot.org/results/314/314de324a09f64f8b95882ca169c77847d75680c/
I was working on those build failures that happen since pinentry was bumped to 0.9.0.
I was about to send my patches when I decided to look at the mailing list, and found this mail of yours.
Well, I'm OK with the changes, since I've done the same.
However, this patch is doing many different things:
- fixes the incorrect include paths;
- fixes the build without Qt accessibility;
- does not disable accessibility in Qt;
- removes superfluous configure options
This should be two separate patches.
I'll shortly send what I have, and you can take them and respin if you think I forgot something.
For one, I have included your no-accessibility patch that was since accepted upstream, so I'll use that instead of forcefully enabling accessibility in Qt. And as you previously discussed with Thomas P., this should probably be an option in Qt; accessib8ility should not always be enabled.
Regards,
Yann E. MORIN.
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------'