[PATCH] Actually support embedded Qt, make configuration code more robust

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Add -DQWS and -fno-rtti flags for embedded Qt.

Don't add X11 flags for embedded Qt and threading specific flags for
non-multithreaded Qt.

Before checking for the Qt library, make sure it actually exists in the
Qt library path and not elsewhere.

Fix missing ";;" before "esac" (potentially non-portable).

Signed-off-by: Pavel Roskin <proski@xxxxxxx>

Signed-off-by: Pavel Roskin <proski@xxxxxxx>
---

 config/gwqt.m4 |   40 ++++++++++++++++++++++++++--------------
 1 files changed, 26 insertions(+), 14 deletions(-)

diff --git a/config/gwqt.m4 b/config/gwqt.m4
index 78bed1d..cccccfe 100644
--- a/config/gwqt.m4
+++ b/config/gwqt.m4
@@ -91,17 +91,19 @@ fi
 
 # Checking for possible dependencies of the Qt library
 gwqt_save_LDFLAGS="$LDFLAGS"
-QT_LIBS="$X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
-AC_CHECK_LIB(pthread, pthread_exit, [QT_LIBS="-lpthread $QT_LIBS"])
+QT_LIBS_X="$X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
+AC_CHECK_LIB(pthread, pthread_exit, [QT_LIBS_MT="-lpthread $QT_LIBS"])
 
 LDFLAGS="$LDFLAGS $X_LIBS"
-AC_CHECK_LIB(Xft, XftFontOpen, [QT_LIBS="-lXft $QT_LIBS"], , [$QT_LIBS])
+AC_CHECK_LIB(Xft, XftFontOpen, [QT_LIBS_X="-lXft $QT_LIBS_X"], , [$QT_LIBS_X])
 
 
 # Checking for the Qt library
 LDFLAGS="$LDFLAGS -L$QTLIBDIR"
 for i in qt-mt qt qte-mt qte qt-gl; do
-    AC_CHECK_LIB([$i], Get_Class, [qtlib="$i"; break], , [$QT_LIBS])
+    set X "$QTLIBDIR/lib$i."*
+    test "$[2]" = "$QTLIBDIR/lib$i.*" && continue
+    AC_CHECK_LIB([$i], main, [qtlib="$i"; break], , [$QT_LIBS_X $QT_LIBS_MT])
 done
 
 if test -z "$qtlib"; then
@@ -110,30 +112,40 @@ fi
 
 LDFLAGS="$gwqt_save_LDFLAGS"
 
-# Calculate QT_CPPFLAGS
+# Calculate QT_CPPFLAGS, QT_LDFLAGS and QT_LIBS
+QT_LIBS="-l$qtlib"
 case "$qtlib" in
-    *-mt) QT_CPPFLAGS="-D_REENTRANT -DQT_THREAD_SUPPORT";;
+    *-mt)
+	QT_CPPFLAGS="-D_REENTRANT -DQT_THREAD_SUPPORT"
+	QT_LIBS="$QT_LIBS $QT_LIBS_MT";;
 esac
 
+case "$qtlib" in
+    qte*)
+	QT_CPPFLAGS="-DQWS -fno-rtti";;
+    *)
+	QT_LIBS="$QT_LIBS $QT_LIBS_X"
+	QT_LDFLAGS="$X_LIBS";;
+esac
+
+# Add Qt include path
 if test "$QTINCDIR" != "/usr/include"; then
     QT_CPPFLAGS="-I$QTINCDIR $QT_CPPFLAGS"
 fi
-AC_MSG_NOTICE([QT_CPPFLAGS = $QT_CPPFLAGS])
-AC_SUBST(QT_CPPFLAGS)
 
-# Calculate QT_LDFLAGS
-QT_LDFLAGS="$X_LIBS"
+# Add Qt library path
 case "$QTLIBDIR" in
     /usr/lib) ;;
     /usr/lib64) ;;
     /usr/X11R6/lib) ;;
-    *) QT_LDFLAGS="$QT_LDFLAGS -L$QTLIBDIR";
+    *) QT_LDFLAGS="$QT_LDFLAGS -L$QTLIBDIR";;
 esac
+
+# Report the results
+AC_MSG_NOTICE([QT_CPPFLAGS = $QT_CPPFLAGS])
+AC_SUBST(QT_CPPFLAGS)
 AC_MSG_NOTICE([QT_LDFLAGS = $QT_LDFLAGS])
 AC_SUBST(QT_LDFLAGS)
-
-# Calculate QT_LIBS
-QT_LIBS="-l$qtlib $QT_LIBS"
 AC_MSG_NOTICE([QT_LIBS = $QT_LIBS])
 AC_SUBST(QT_LIBS)
 ])

-
: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]