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

Subsystems: the rest

DORMANTno replies

2 messages, 2 authors, 2016-06-15 · open the first message on its own page

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

From: Pavel Roskin <hidden>
Date: 2016-06-15 22:42:27

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 <redacted>

Signed-off-by: Pavel Roskin <redacted>
---

 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)
 ])

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

From: Marco Costalba <hidden>
Date: 2016-06-15 22:42:27

On 5/27/06, Pavel Roskin [off-list ref] wrote:
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.
Thanks, patch applied.

Please note that qgit public repository has changed. It is now
git://git.kernel.org/pub/scm/qgit/qgit.git

   Marco
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help