]> git.lyx.org Git - lyx.git/blobdiff - config/qt4.m4
Fix #11552 in a different way
[lyx.git] / config / qt4.m4
index 306ffe85524894003bd8e72a3df3ac86d1b4c3e3..75abd3360a18379ddfb59b00eaf286a50f05c325 100644 (file)
@@ -4,7 +4,8 @@ AC_DEFUN([QT_TRY_LINK],
        SAVE_LIBS="$LIBS"
        LIBS="$LIBS $1"
        AC_TRY_LINK([
-       #include <QtCore/QString>
+       #include <qglobal.h>
+       #include <qstring.h>
                ],
        [
        QString s("mangle_failure");
@@ -55,8 +56,12 @@ AC_DEFUN([QT_CHECK_COMPILE],
        ])
 
        if test -z "$qt_cv_libname"; then
-               AC_MSG_RESULT([failed])
-               AC_MSG_ERROR([cannot compile a simple Qt executable. Check you have the right \$QTDIR.])
+               if test x$USE_QT5 = xyes ; then
+                       AC_MSG_RESULT([failed, retrying with Qt4])
+               else
+                       AC_MSG_RESULT([failed])
+                       AC_MSG_ERROR([cannot compile a simple Qt executable. Check you have the right \$QTDIR.])
+               fi
        else
                AC_MSG_RESULT([$qt_cv_libname])
        fi
@@ -103,7 +108,7 @@ AC_DEFUN([QT_GET_VERSION],
                cat > conftest.$ac_ext <<EOF
 #line __oline__ "configure"
 #include "confdefs.h"
-#include <QtCore/qglobal.h>
+#include <qglobal.h>
 "%%%"QT_VERSION_STR"%%%"
 EOF
                lyx_cv_qtversion=`(eval "$ac_cpp conftest.$ac_ext") 2>&5 | \
@@ -169,7 +174,22 @@ AC_DEFUN([QT_DO_IT_ALL],
        fi
 
        if test -z "$QT_LIB"; then
-         AC_MSG_ERROR([cannot find qt libraries.])
+         dnl Try again with Qt4 if configuring for Qt5 fails
+         if test x$USE_QT5 = xyes ; then
+               USE_QT5=no
+               AC_SUBST([USE_QT5])
+               if test -n "$PKG_CONFIG" ; then
+                 QT_DO_PKG_CONFIG
+               fi
+               if test "$pkg_failed" != "no" ; then
+                 QT_DO_MANUAL_CONFIG
+               fi
+               if test -z "$QT_LIB"; then
+                 AC_MSG_ERROR([cannot find qt libraries.])
+               fi
+         else
+               AC_MSG_ERROR([cannot find qt libraries.])
+         fi
        fi
 
        dnl Check qt version
@@ -192,7 +212,7 @@ AC_DEFUN([QT_DO_IT_ALL],
            [AC_MSG_RESULT(no)])
        else
          AC_PREPROC_IFELSE([AC_LANG_SOURCE([
-           [#include <QtCore/qglobal.h>],
+           [#include <qglobal.h>],
            [#ifndef Q_WS_X11],
            [#error Fail],
            [#endif]])],
@@ -210,7 +230,7 @@ AC_DEFUN([QT_DO_IT_ALL],
        QT_FIND_TOOL([QT_RCC], [rcc])
 
        dnl Safety check
-       mocqtver=`$QT_MOC -v 2>&1 | sed -e 's/.*\([[0-9]]\.[[0-9]]\.[[0-9]]\).*/\1/'`
+       mocqtver=`$QT_MOC -v 2>&1 | sed -e 's/.*\([[0-9]]\.[[0-9]]*\.[[0-9]]\).*/\1/'`
        if test "x$mocqtver" != "x$QTLIB_VERSION"; then
                LYX_WARNING([The found moc compiler is for Qt $mocqtver but the Qt library version is $QTLIB_VERSION.])
        fi