https://dev.gnupg.org/T6161 https://bugs.gentoo.org/819939 https://bugs.gentoo.org/837719 --- a/configure.ac +++ b/configure.ac @@ -514,8 +514,12 @@ fi dnl dnl Check for libX11 library dnl +AC_ARG_WITH(x, + AS_HELP_STRING([--with-x],[use libX11]), + [want_x11=$withval], [want_x11=maybe]) + have_x11=no -if test "$have_w32_system" != "yes"; then +AS_IF([test "$have_w32_system" != "yes" && test "$want_x11" != "no"], [ PKG_CHECK_MODULES( LIBX11, [x11], @@ -525,18 +529,20 @@ if test "$have_w32_system" != "yes"; then have_x11=no ] ) +]) - if test "$have_x11" = "yes"; then - AC_DEFINE(HAVE_X11, 1, - [The pinentries can optionally use x11.]) - fi -fi +AS_IF([test "$have_x11" = "yes"], [AC_DEFINE(HAVE_X11, 1, [The pinentries can optionally use x11.])]) dnl dnl Check for KF5WaylandClient library dnl + +AC_ARG_ENABLE(kf5-wayland, + AS_HELP_STRING([--enable-kf5-wayland],[use KF5WaylandClient for capslock indication on Wayland]), + [want_kf5_wayland=$enableval], [want_kf5_wayland=maybe]) + have_kf5waylandclient=no -if test "$have_w32_system" != "yes"; then +AS_IF([test "$have_w32_system" != "yes" && test "$want_kf5_wayland" != "no"], [ PKG_CHECK_MODULES( KF5WAYLANDCLIENT, [KF5WaylandClient >= 5.60], @@ -546,13 +552,18 @@ if test "$have_w32_system" != "yes"; then have_kf5waylandclient=no ] ) -fi +]) dnl dnl Check for KF6GuiAddons library dnl + +AC_ARG_ENABLE(kf6-wayland, + AS_HELP_STRING([--enable-kf6-wayland],[use KF6GuiAddons for capslock indication and KF6WindowSystem for window parenting on Wayland]), + [want_kf6_wayland=$enableval], [want_kf6_wayland=maybe]) + have_kf6guiaddons=no -if test "$have_w32_system" != "yes"; then +AS_IF([test "$have_w32_system" != "yes" && test "$want_kf6_wayland" != "no"], [ PKG_CHECK_MODULES( KF6GUIADDONS, [KF6GuiAddons >= 5.240], @@ -562,7 +573,7 @@ if test "$have_w32_system" != "yes"; then have_kf6guiaddons=no ] ) -fi +]) dnl dnl Check for Qt5 pinentry program. @@ -663,7 +674,8 @@ dnl dnl Check for KF6WindowSystem library dnl have_kf6windowsystem=no -if test "$have_w32_system" != "yes" && test "$pinentry_qt6" = "yes"; then + +AS_IF([test "$have_w32_system" != "yes" && test "$want_kf6_wayland" != "no"], [ PKG_CHECK_MODULES( KF6WINDOWSYSTEM, [KF6WindowSystem >= 5.240], @@ -673,7 +685,7 @@ if test "$have_w32_system" != "yes" && test "$pinentry_qt6" = "yes"; then have_kf6windowsystem=no ] ) -fi +]) if test "$have_kf6windowsystem" = "yes"; then PINENTRY_QT6_CFLAGS="$KF6WINDOWSYSTEM_CFLAGS $PINENTRY_QT6_CFLAGS" --- a/m4/qt5.m4 +++ b/m4/qt5.m4 @@ -33,6 +33,10 @@ AC_DEFUN([FIND_QT5], enable_pinentry_qt5=$enableval, enable_pinentry_qt5="try") + AC_ARG_ENABLE(qtx11extras, + AS_HELP_STRING([--enable-qtx11extras],[use Qt5X11Extras for capslock indication on X11]), + [want_qtx11extras=$enableval], [want_qtx11extras=maybe]) + have_qt5_libs="no"; require_qt5_cpp11="no"; @@ -63,20 +67,22 @@ AC_DEFUN([FIND_QT5], fi fi - if test "$have_x11" = "yes"; then + have_qt5_x11extras=no + AS_IF([test "$have_x11" = "yes" && test "$want_qtx11extras" != "no"], [ PKG_CHECK_MODULES( PINENTRY_QT5_X11_EXTRAS, Qt5X11Extras >= 5.1.0, [have_qt5_x11extras="yes"], - [ - AC_MSG_WARN([pinentry-qt will be built without Caps Lock warning on X11]) - have_qt5_x11extras="no" - ]) - if test "$have_qt5_x11extras" = "yes"; then - PINENTRY_QT5_CFLAGS="$LIBX11_CFLAGS $PINENTRY_QT5_CFLAGS $PINENTRY_QT5_X11_EXTRAS_CFLAGS" - PINENTRY_QT5_LIBS="$LIBX11_LIBS $PINENTRY_QT5_LIBS $PINENTRY_QT5_X11_EXTRAS_LIBS" - fi - fi + [have_qt5_x11extras="no"] + ) + ]) + + AS_IF([test "$have_qt5_x11extras" = "yes"], [ + PINENTRY_QT5_CFLAGS="$LIBX11_CFLAGS $PINENTRY_QT5_CFLAGS $PINENTRY_QT5_X11_EXTRAS_CFLAGS" + PINENTRY_QT5_LIBS="$LIBX11_LIBS $PINENTRY_QT5_LIBS $PINENTRY_QT5_X11_EXTRAS_LIBS" + ], [ + AC_MSG_WARN([pinentry-qt will be built without Caps Lock warning on X11]) + ]) AC_CHECK_TOOL(MOC5, moc) AC_MSG_CHECKING([moc version])