X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=config%2Fqt4.m4;h=2ac6d70f7d9c1e526f351349d22bea83bab1617f;hb=1b1f8dd235ba8e168348cd23c824063f2595a0c5;hp=0a88f1220cc52f8e8ba4f55df14bbbd15b056ea2;hpb=b6bc406d56eef202f0865f30d269151025cef191;p=lyx.git diff --git a/config/qt4.m4 b/config/qt4.m4 index 0a88f1220c..2ac6d70f7d 100644 --- a/config/qt4.m4 +++ b/config/qt4.m4 @@ -28,7 +28,7 @@ AC_DEFUN([QT4_CHECK_COMPILE], AC_LANG_CPLUSPLUS SAVE_CXXFLAGS=$CXXFLAGS CXXFLAGS="$CXXFLAGS $QT4_INCLUDES $QT4_LDFLAGS" - for libname in -lQtCore -lQtCore4 + for libname in -lQtCore -lQtCore4 '-framework QtCore' do QT4_TRY_LINK($libname) if test -n "$qt4_cv_libname"; then @@ -38,7 +38,9 @@ AC_DEFUN([QT4_CHECK_COMPILE], done qt4_cv_libname= for libname in '-lQtCore -lQtGui' \ - '-lQtCore4 -lQtGui4' + '-lQtCore4 -lQtGui4' \ + '-framework QtCore -framework QtConcurrent -framework QtWidgets -framework QtGui'\ + '-framework QtCore -framework QtGui' do QT4_TRY_LINK($libname) if test -n "$qt4_cv_libname"; then @@ -50,9 +52,7 @@ AC_DEFUN([QT4_CHECK_COMPILE], if test -z "$qt4_cv_libname"; then AC_MSG_RESULT([failed]) - if test "$FATAL" = 1 ; then - AC_MSG_ERROR([Cannot compile a simple Qt 4 executable. Check you have the right \$QT4DIR !]) - fi + AC_MSG_ERROR([cannot compile a simple Qt 4 executable. Check you have the right \$QT4DIR.]) else AC_MSG_RESULT([$qt4_cv_libname]) fi @@ -90,17 +90,13 @@ AC_DEFUN([QT4_DO_IT_ALL], dnl this variable is precious AC_ARG_VAR(QT4DIR, [the place where the Qt 4 files are, e.g. /usr/lib/qt4]) - dnl Please leave this alone. I use this file in - dnl oprofile. - FATAL=0 - - AC_ARG_WITH(qt4-dir, [ --with-qt4-dir where the root of Qt 4 is installed ], + AC_ARG_WITH(qt4-dir, [AC_HELP_STRING([--with-qt4-dir], [where the root of Qt 4 is installed])], [ qt4_cv_dir=`eval echo "$withval"/` ]) - AC_ARG_WITH(qt4-includes, [ --with-qt4-includes where the Qt 4 includes are. ], + AC_ARG_WITH(qt4-includes, [AC_HELP_STRING([--with-qt4-includes], [where the Qt 4 includes are])], [ qt4_cv_includes=`eval echo "$withval"` ]) - AC_ARG_WITH(qt4-libraries, [ --with-qt4-libraries where the Qt 4 library is installed.], + AC_ARG_WITH(qt4-libraries, [AC_HELP_STRING([--with-qt4-libraries], [where the Qt 4 library is installed])], [ qt4_cv_libraries=`eval echo "$withval"` ]) dnl pay attention to $QT4DIR unless overridden @@ -124,35 +120,54 @@ AC_DEFUN([QT4_DO_IT_ALL], fi dnl Preprocessor flags - QT4_CPPFLAGS="-DQT_CLEAN_NAMESPACE -DQT_GENUINE_STR -DQT_NO_STL -DQT_NO_KEYWORDS" + QT4_CPPFLAGS="-DQT_NO_STL -DQT_NO_KEYWORDS" case ${host} in *mingw*) QT4_CPPFLAGS="-DQT_DLL $QT4_CPPFLAGS";; - *cygwin*) - if test "x$with_x" = xno ; then - QT4_CPPFLAGS="$QT4_CPPFLAGS -DQ_CYGWIN_WIN" - fi;; esac AC_SUBST(QT4_CPPFLAGS) dnl Check if it possible to do a pkg-config - QT4_DO_PKG_CONFIG + PKG_PROG_PKG_CONFIG + if test -n "$PKG_CONFIG" ; then + QT4_DO_PKG_CONFIG + fi if test "$pkg_failed" != "no" ; then QT4_DO_MANUAL_CONFIG fi + + if test -z "$QT4_LIB"; then + AC_MSG_ERROR([cannot find qt4 library.]) + fi + + dnl Check qt version + AS_VERSION_COMPARE($QT4_VERSION, $1, + [AC_MSG_ERROR([LyX requires at least version $1 of Qt. Only version $QT4_VERSION has been found.]) + ]) + AC_PATH_PROGS(MOC4, [moc-qt4 moc],[],$qt4_cv_bin:$PATH) + if test -z "$MOC4"; then + AC_MSG_ERROR([cannot find moc binary.]) + fi AC_PATH_PROGS(UIC4, [uic-qt4 uic],[],$qt4_cv_bin:$PATH) + if test -z "$UIC4"; then + AC_MSG_ERROR([cannot find uic binary.]) + fi + AC_PATH_PROGS(RCC4, [rcc-qt4 rcc],[],$qt4_cv_bin:$PATH) + if test -z "$RCC4"; then + AC_MSG_ERROR([cannot find rcc binary.]) + fi ]) AC_DEFUN([QT4_DO_PKG_CONFIG], [ - PKG_PROG_PKG_CONFIG + dnl tell pkg-config to look also in $qt4_cv_dir/lib. save_PKG_CONFIG_PATH=$PKG_CONFIG_PATH if test -n "$qt4_cv_dir" ; then PKG_CONFIG_PATH=$qt4_cv_dir/lib:$qt4_cv_dir/lib/pkgconfig:$PKG_CONFIG_PATH export PKG_CONFIG_PATH fi PKG_CHECK_MODULES(QT4_CORE, QtCore,,[:]) - if test "$pkg_failed" == "no" ; then + if test "$pkg_failed" = "no" ; then QT4_CORE_INCLUDES=$QT4_CORE_CFLAGS AC_SUBST(QT4_CORE_INCLUDES) QT4_CORE_LDFLAGS=`$PKG_CONFIG --libs-only-L QtCore` @@ -161,7 +176,7 @@ AC_DEFUN([QT4_DO_PKG_CONFIG], AC_SUBST(QT4_CORE_LIB) fi PKG_CHECK_MODULES(QT4_FRONTEND, QtCore QtGui,,[:]) - if test "$pkg_failed" == "no" ; then + if test "$pkg_failed" = "no" ; then QT4_INCLUDES=$QT4_FRONTEND_CFLAGS dnl QT4_LDFLAGS=$QT4_FRONTEND_LIBS QT4_LDFLAGS=`$PKG_CONFIG --libs-only-L QtCore QtGui` @@ -171,12 +186,23 @@ AC_DEFUN([QT4_DO_PKG_CONFIG], AC_SUBST(QT4_VERSION) QT4_LIB=`$PKG_CONFIG --libs-only-l QtCore QtGui` AC_SUBST(QT4_LIB) + LIBS="$LIBS `$PKG_CONFIG --libs-only-other QtCore QtGui`" fi PKG_CONFIG_PATH=$save_PKG_CONFIG_PATH ]) AC_DEFUN([QT4_DO_MANUAL_CONFIG], [ + dnl Check for X libraries + AC_PATH_X + AC_PATH_XTRA + case $have_x in + yes) LIBS="$X_PRE_LIBS $LIBS $X_LIBS -lX11 $X_EXTRA_LIBS" + CPPFLAGS="$CPPFLAGS $X_CFLAGS";; + no) AC_MSG_ERROR([cannot find X window libraries and/or headers.]);; + disable) ;; + esac + dnl flags for compilation QT4_INCLUDES= QT4_LDFLAGS= @@ -184,15 +210,23 @@ AC_DEFUN([QT4_DO_MANUAL_CONFIG], QT4_CORE_LDFLAGS= if test -n "$qt4_cv_includes"; then QT4_INCLUDES="-I$qt4_cv_includes" - for i in Qt QtCore QtGui; do + for i in Qt QtCore QtGui QtWidgets QtConcurrent; do QT4_INCLUDES="$QT4_INCLUDES -I$qt4_cv_includes/$i" done QT4_CORE_INCLUDES="-I$qt4_cv_includes -I$qt4_cv_includes/QtCore" fi - if test -n "$qt4_cv_libraries"; then + case "$qt4_cv_libraries" in + *framework*) + QT4_LDFLAGS="-F$qt4_cv_libraries" + QT4_CORE_LDFLAGS="-F$qt4_cv_libraries" + ;; + "") + ;; + *) QT4_LDFLAGS="-L$qt4_cv_libraries" QT4_CORE_LDFLAGS="-L$qt4_cv_libraries" - fi + ;; + esac AC_SUBST(QT4_INCLUDES) AC_SUBST(QT4_CORE_INCLUDES) AC_SUBST(QT4_LDFLAGS)