]> git.lyx.org Git - lyx.git/commitdiff
Give error if a required Qt6 module is missing
authorEnrico Forestieri <forenr@lyx.org>
Sat, 15 Jul 2023 13:25:33 +0000 (15:25 +0200)
committerEnrico Forestieri <forenr@lyx.org>
Sat, 15 Jul 2023 13:28:17 +0000 (15:28 +0200)
Configure would not stop in such cases and a subsequent make would fail.

config/qt.m4

index aa90d56348b3205473189b0eed99ce86c7cb7c4a..e73872347f954c56d11f6cc5d274c69bced915e0 100644 (file)
@@ -414,12 +414,13 @@ EOF1
                AC_SUBST(QT_CORE_LDFLAGS)
                AC_SUBST(QT_CORE_LIB)
                cat > $lyx_test_qt_pro << EOF2
-qtHaveModule(core):            QT += core
-qtHaveModule(concurrent):      QT += concurrent
-qtHaveModule(gui):             QT += gui gui-private
-qtHaveModule(svg):             QT += svg
-qtHaveModule(svgwidgets):      QT += svgwidgets
-qtHaveModule(widgets):         QT += widgets
+QMAKE_EXTRA_VARIABLES = MISSING
+qtHaveModule(core)             {QT += core} else {MISSING += core}
+qtHaveModule(concurrent)       {QT += concurrent} else {MISSING += concurrent}
+qtHaveModule(gui)              {QT += gui gui-private} else {MISSING += gui}
+qtHaveModule(svg)              {QT += svg} else {MISSING += svg}
+qtHaveModule(svgwidgets)       {QT += svgwidgets} else {MISSING += svgwidgets}
+qtHaveModule(widgets)          {QT += widgets} else {MISSING += widgets}
 percent.target = %
 percent.commands = @echo -n "\$(\$(@))\ "
 QMAKE_EXTRA_TARGETS += percent
@@ -439,6 +440,10 @@ EOF2
                if test -z "$QT_LIB"; then
                    AC_MSG_RESULT(no)
                else
+                   QT_MISSING=`cd $lyx_test_qt_dir; make -s -f $lyx_test_qt_mak EXPORT_MISSING | sed 's/^ *//'`
+                   if test -n "$QT_MISSING"; then
+                           AC_MSG_ERROR([Qt6 module(s) $QT_MISSING not found.])
+                   fi
                    AC_MSG_RESULT(yes)
                    AC_SUBST(QT_INCLUDES)
                    AC_SUBST(QT_LDFLAGS)