X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=config%2Fqt4.m4;h=c3d6e4b6b570414a88f8034cd27d05cb4bca5762;hb=6b651f2ad9f698c01993dcc6e340682c279f1c55;hp=8277692c37e5d7aedc40680e57641697855450c5;hpb=96313cdcb5ff4cfb9eaad5ebf4d338e22c897772;p=lyx.git diff --git a/config/qt4.m4 b/config/qt4.m4 index 8277692c37..c3d6e4b6b5 100644 --- a/config/qt4.m4 +++ b/config/qt4.m4 @@ -1,67 +1,3 @@ -dnl find a binary in the path -AC_DEFUN([QT4_FIND_PATH], -[ - AC_MSG_CHECKING([for $1]) - AC_CACHE_VAL(qt4_cv_path_$1, - [ - qt4_cv_path_$1="NONE" - if test -n "$$2"; then - qt4_cv_path_$1="$$2"; - else - dirs="$3" - qt_save_IFS=$IFS - IFS=':' - for dir in $PATH; do - dirs="$dirs $dir" - done - IFS=$qt_save_IFS - - for dir in $dirs; do - if test -x "$dir/$1"; then - if test -n "$5"; then - evalstr="$dir/$1 $5 2>&1 " - if eval $evalstr; then - qt4_cv_path_$1="$dir/$1" - break - fi - else - qt4_cv_path_$1="$dir/$1" - break - fi - fi - done - fi - ]) - - if test -z "$qt4_cv_path_$1" || test "$qt4_cv_path_$1" = "NONE"; then - AC_MSG_RESULT(not found) - $4 - else - AC_MSG_RESULT($qt4_cv_path_$1) - $2=$qt4_cv_path_$1 - fi -]) - -dnl Find the uic compiler on the path or in qt_cv_dir -AC_DEFUN([QT_FIND_UIC4], -[ - QT4_FIND_PATH(uic, ac_uic4, $qt4_cv_dir/bin) - - if test -z "$ac_uic4" -a "$FATAL" = 1; then - AC_MSG_ERROR([uic 4 binary not found in \$PATH or $qt4_cv_dir/bin !]) - fi -]) - -dnl Find the right moc in path/qt_cv_dir -AC_DEFUN([QT_FIND_MOC4], -[ - QT4_FIND_PATH(moc, ac_moc4, $qt4_cv_dir/bin) - - if test -z "$ac_moc4" -a "$FATAL" = 1; then - AC_MSG_ERROR([moc 4 binary not found in \$PATH or $qt4_cv_dir/bin !]) - fi -]) - dnl check a particular libname AC_DEFUN([QT4_TRY_LINK], [ @@ -92,6 +28,15 @@ AC_DEFUN([QT4_CHECK_COMPILE], AC_LANG_CPLUSPLUS SAVE_CXXFLAGS=$CXXFLAGS CXXFLAGS="$CXXFLAGS $QT4_INCLUDES $QT4_LDFLAGS" + for libname in -lQtCore -lQtCore4 + do + QT4_TRY_LINK($libname) + if test -n "$qt4_cv_libname"; then + QT4_CORE_LIB="$qt4_cv_libname" + break; + fi + done + qt4_cv_libname= for libname in '-lQtCore -lQtGui' \ '-lQtCore4 -lQtGui4' do @@ -141,42 +86,6 @@ EOF dnl start here AC_DEFUN([QT4_DO_IT_ALL], -[ - dnl Check if it possible to do a pgk-config - PKG_PROG_PKG_CONFIG - if test -n "$PKG_CONFIG" ; then - QT4_DO_PKG_CONFIG - else - QT4_DO_MANUAL_CONFIG - fi -]) - -AC_DEFUN([QT4_DO_PKG_CONFIG], -[ - PKG_CHECK_MODULES(QT4_FRONTEND, QtCore QtGui) - 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` - AC_SUBST(QT4_INCLUDES) - AC_SUBST(QT4_LDFLAGS) - QT4_VERSION=`$PKG_CONFIG --modversion QtCore` - AC_SUBST(QT4_VERSION) - QT4_LIB=`$PKG_CONFIG --libs-only-l QtCore QtGui` - AC_SUBST(QT4_LIB) - QT4_CPPFLAGS="-DQT_CLEAN_NAMESPACE -DQT_GENUINE_STR -DQT_NO_STL -DQT3_SUPPORT -DQT_NO_KEYWORDS" - case ${host} in - *mingw*) QT4_CPPFLAGS="-DQT_DLL $QT4_CPPFLAGS";; - esac - AC_SUBST(QT4_CPPFLAGS) - AC_CHECK_PROGS(MOC4, moc-qt4 moc) - AC_CHECK_PROGS(UIC4, uic-qt4 uic) - else - QT4_DO_MANUAL_CONFIG - fi -]) - -AC_DEFUN([QT4_DO_MANUAL_CONFIG], [ dnl this variable is precious AC_ARG_VAR(QT4DIR, [the place where the Qt 4 files are, e.g. /usr/lib/qt4]) @@ -209,43 +118,96 @@ AC_DEFUN([QT4_DO_MANUAL_CONFIG], fi fi + dnl compute the binary dir too + if test -n "$qt4_cv_dir"; then + qt4_cv_bin=$qt4_cv_dir/bin + fi + + dnl Preprocessor flags + QT4_CPPFLAGS="-DQT_CLEAN_NAMESPACE -DQT_GENUINE_STR -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 + 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 + AC_PATH_PROGS(MOC4, [moc-qt4 moc],[],$qt4_cv_bin:$PATH) + AC_PATH_PROGS(UIC4, [uic-qt4 uic],[],$qt4_cv_bin:$PATH) + AC_PATH_PROGS(RCC4, [rcc-qt4 rcc],[],$qt4_cv_bin:$PATH) +]) + +AC_DEFUN([QT4_DO_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 + QT4_CORE_INCLUDES=$QT4_CORE_CFLAGS + AC_SUBST(QT4_CORE_INCLUDES) + QT4_CORE_LDFLAGS=`$PKG_CONFIG --libs-only-L QtCore` + AC_SUBST(QT4_CORE_LDFLAGS) + QT4_CORE_LIB=`$PKG_CONFIG --libs-only-l QtCore` + AC_SUBST(QT4_CORE_LIB) + fi + PKG_CHECK_MODULES(QT4_FRONTEND, QtCore QtGui,,[:]) + 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` + AC_SUBST(QT4_INCLUDES) + AC_SUBST(QT4_LDFLAGS) + QT4_VERSION=`$PKG_CONFIG --modversion QtCore` + 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 flags for compilation QT4_INCLUDES= QT4_LDFLAGS= + QT4_CORE_INCLUDES= + QT4_CORE_LDFLAGS= if test -n "$qt4_cv_includes"; then QT4_INCLUDES="-I$qt4_cv_includes" for i in Qt QtCore QtGui; 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 QT4_LDFLAGS="-L$qt4_cv_libraries" + QT4_CORE_LDFLAGS="-L$qt4_cv_libraries" fi AC_SUBST(QT4_INCLUDES) + AC_SUBST(QT4_CORE_INCLUDES) AC_SUBST(QT4_LDFLAGS) - - dnl Preprocessor flags - QT4_CPPFLAGS="-DQT_CLEAN_NAMESPACE -DQT_GENUINE_STR -DQT_NO_STL -DQT3_SUPPORT -DQT_NO_KEYWORDS" - case ${host} in - *mingw*) QT4_CPPFLAGS="-DQT_DLL $QT4_CPPFLAGS";; - esac - AC_SUBST(QT4_CPPFLAGS) - - if test -z "$MOC4"; then - QT_FIND_MOC4 - MOC4=$ac_moc4 - fi - AC_SUBST(MOC4) - if test -z "$UIC4"; then - QT_FIND_UIC4 - UIC4=$ac_uic4 - fi - AC_SUBST(UIC4) + AC_SUBST(QT4_CORE_LDFLAGS) QT4_CHECK_COMPILE QT4_LIB=$qt4_cv_libname; AC_SUBST(QT4_LIB) + AC_SUBST(QT4_CORE_LIB) if test -n "$qt4_cv_libname"; then QT4_GET_VERSION