[
SAVE_LIBS="$LIBS"
LIBS="$LIBS $1"
- AC_TRY_LINK([
+ AC_LINK_IFELSE([AC_LANG_PROGRAM([[
#include <qglobal.h>
#include <qstring.h>
- ],
- [
+ ]], [[
QString s("mangle_failure");
#if (QT_VERSION < 400)
break_me_(\\\);
#endif
- ],
- qt_cv_libname=$1,
- )
+ ]])],[qt_cv_libname=$1],[])
LIBS="$SAVE_LIBS"
])
AC_CACHE_VAL(qt_cv_libname,
[
- AC_LANG_CPLUSPLUS
SAVE_CXXFLAGS=$CXXFLAGS
CXXFLAGS="$CXXFLAGS $QT_INCLUDES $QT_LDFLAGS"
qt_corelibs="-lQtCore -lQtCore4"
])
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
if test -n "$qt_cv_bin" ; then
AC_PATH_PROGS($1, [$2], [], $qt_cv_bin)
elif qtchooser -l 2>/dev/null | grep -q ^$qt_ext\$ >/dev/null ; then
- AC_CHECK_PROG($1, $2, [$2 -qt=$qt_ext],, [$PATH])
+ AC_PATH_PROG(qtc_path, qtchooser, [], [$PATH])
+ AC_PATH_PROG($2_path, $2, [], [$PATH])
+ qtc_path=`dirname "$qtc_path"`
+ $2_path=`dirname "$$2_path"`
+ if test "$qtc_path" = "$$2_path" ; then
+ AC_CHECK_PROG($1, $2, [$2 -qt=$qt_ext],, [$PATH])
+ fi
fi
if test -z "$$1"; then
AC_CHECK_PROGS($1, [$2-$qt_ext $2],[],$PATH)
[
AC_CACHE_CHECK([Qt version],lyx_cv_qtversion,
[
- AC_LANG_CPLUSPLUS
SAVE_CPPFLAGS=$CPPFLAGS
CPPFLAGS="$CPPFLAGS $QT_INCLUDES"
dnl this variable is precious
AC_ARG_VAR(QTDIR, [the place where the Qt files are, e.g. /usr/lib/qt4])
- AC_ARG_WITH(qt-dir, [AC_HELP_STRING([--with-qt-dir], [where the root of Qt is installed])],
+ AC_ARG_WITH(qt-dir, [AS_HELP_STRING([--with-qt-dir], [where the root of Qt is installed])],
[ qt_cv_dir=`eval echo "$withval"/` ])
- AC_ARG_WITH(qt-includes, [AC_HELP_STRING([--with-qt-includes], [where the Qt includes are])],
+ AC_ARG_WITH(qt-includes, [AS_HELP_STRING([--with-qt-includes], [where the Qt includes are])],
[ qt_cv_includes=`eval echo "$withval"` ])
- AC_ARG_WITH(qt-libraries, [AC_HELP_STRING([--with-qt-libraries], [where the Qt library is installed])],
+ AC_ARG_WITH(qt-libraries, [AS_HELP_STRING([--with-qt-libraries], [where the Qt library is installed])],
[ qt_cv_libraries=`eval echo "$withval"` ])
dnl pay attention to $QTDIR unless overridden
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
])
save_CPPFLAGS=$CPPFLAGS
- AC_MSG_CHECKING([whether Qt uses the X Window system])
CPPFLAGS="$save_CPPFLAGS $QT_CORE_INCLUDES"
+ AC_CHECK_HEADER(QtGui/qtgui-config.h,
+ [lyx_qt5_config=QtGui/qtgui-config.h],
+ [lyx_qt5_config=qconfig.h],[-])
+ AC_MSG_CHECKING([whether Qt uses the X Window system])
if test x$USE_QT5 = xyes ; then
AC_EGREP_CPP(xcb,
- [#include <qconfig.h>
+ [#include <$lyx_qt5_config>
QT_QPA_DEFAULT_PLATFORM_NAME],
[AC_MSG_RESULT(yes)
AC_DEFINE(QPA_XCB, 1, [Define if Qt uses the X Window System])],
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