summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--configure.ac70
-rw-r--r--libmediaart/extractqt.cpp29
2 files changed, 79 insertions, 20 deletions
diff --git a/configure.ac b/configure.ac
index 2cf04e2..81777b4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -139,7 +139,8 @@ CFLAGS="$CFLAGS"
# Library required versions
GLIB_REQUIRED=2.35.1
GDKPIXBUF_REQUIRED=2.12.0
-QT_REQUIRED=4.7.1
+QT5_REQUIRED=5.0.0
+QT4_REQUIRED=4.7.1
# Check requirements for libmediaart
LIBMEDIAART_REQUIRED="glib-2.0 >= $GLIB_REQUIRED
@@ -213,30 +214,51 @@ selected_for_media_art="no (disabled)"
##################################################################
if test "x$enable_qt" != "xno" && test "x$enable_gdkpixbuf" != "xyes"; then
- PKG_CHECK_MODULES(QT,
- [QtGui >= $QT_REQUIRED],
- [have_qt=yes],
- [have_qt=no])
-
- LIBMEDIAART_CFLAGS="$LIBMEDIAART_CFLAGS $QT_CFLAGS"
- LIBMEDIAART_LIBS="$LIBMEDIAART_LIBS $QT_LIBS"
-
- if test "x$have_qt" = "xyes"; then
+ PKG_CHECK_MODULES(QT5,
+ [Qt5Gui >= $QT5_REQUIRED],
+ [have_qt5=yes],
+ [have_qt5=no])
+ PKG_CHECK_MODULES(QT4,
+ [QtGui >= $QT4_REQUIRED],
+ [have_qt4=yes],
+ [have_qt4=no])
+
+ if test "x$have_qt5" = "xyes"; then
+ LIBMEDIAART_CFLAGS="$LIBMEDIAART_CFLAGS $QT5_CFLAGS -fPIC"
+ LIBMEDIAART_LIBS="$LIBMEDIAART_LIBS $QT5_LIBS"
+
+ AC_DEFINE(HAVE_QT5, [], [Define if we have Qt5])
AC_DEFINE(HAVE_QT, [], [Define if we have Qt])
LIBMEDIAART_BACKEND=QtGui
- selected_for_media_art="yes (qt)"
+
+ selected_for_media_art="yes (qt5)"
+ else
+ if test "x$have_qt4" = "xyes"; then
+ LIBMEDIAART_CFLAGS="$LIBMEDIAART_CFLAGS $QT4_CFLAGS -fPIC"
+ LIBMEDIAART_LIBS="$LIBMEDIAART_LIBS $QT4_LIBS"
+
+ AC_DEFINE(HAVE_QT4, [], [Define if we have Qt4])
+ AC_DEFINE(HAVE_QT, [], [Define if we have Qt])
+
+ selected_for_media_art="yes (qt4)"
+ fi
fi
else
- have_qt="no (disabled)"
+ have_qt4="no (disabled)"
+ have_qt5="no (disabled)"
fi
if test "x$enable_qt" = "xyes"; then
- if test "x$have_qt" != "xyes"; then
- AC_MSG_ERROR([Couldn't find Qt >= $QT_REQUIRED.])
+ if test "x$have_qt5" != "xyes"; then
+ if test "x$have_qt4" != "xyes"; then
+ AC_MSG_ERROR([Couldn't find Qt4 >= $QT4_REQUIRED or Qt5 >= $QT5_REQUIRED.])
+ fi
fi
fi
-AM_CONDITIONAL(HAVE_QT, test "x$have_qt" = "xyes")
+AM_CONDITIONAL(HAVE_QT4, test "x$have_qt4" = "xyes")
+AM_CONDITIONAL(HAVE_QT5, test "x$have_qt5" = "xyes")
+AM_CONDITIONAL(HAVE_QT, test "x$have_qt5" = "xyes" || test "x$have_qt4" = "xyes")
if test "x$enable_gdkpixbuf" != "xno" && test "x$enable_quill" != "xyes"; then
PKG_CHECK_MODULES(GDKPIXBUF,
@@ -266,6 +288,22 @@ AM_CONDITIONAL(HAVE_GDKPIXBUF, test "x$have_gdkpixbuf" = "xyes")
AC_SUBST(LIBMEDIAART_BACKEND)
+#################################################################
+# Check if we should install nemo specific features
+#################################################################
+
+AC_ARG_ENABLE(nemo,
+ AS_HELP_STRING([--enable-nemo],
+ [enable nemo specific [[default=no]]]),
+ [enable_nemo="$enableval"],
+ [enable_nemo=no])
+
+AM_CONDITIONAL(HAVE_NEMO, test "x$enable_nemo" = "xyes")
+
+if test "x$enable_nemo" = "xyes" ; then
+ AC_DEFINE(HAVE_NEMO, 1, [Define if we enable Nemo specific features])
+fi
+
####################################################################
# Should we build GLib based unit tests
####################################################################
@@ -319,4 +357,6 @@ Build Configuration:
Enable documentation: $enable_gtk_doc
Support media art processing: $selected_for_media_art
+
+ Support Nemo $enable_nemo
"
diff --git a/libmediaart/extractqt.cpp b/libmediaart/extractqt.cpp
index 7651189..d41cc10 100644
--- a/libmediaart/extractqt.cpp
+++ b/libmediaart/extractqt.cpp
@@ -20,31 +20,50 @@
* Philip Van Hoof <philip@codeminded.be>
*/
-#include "tracker-main.h"
+#include "config.h"
#include <QFile>
#include <QBuffer>
#include <QImageReader>
#include <QImageWriter>
+#ifdef HAVE_QT5
+#include <QCoreApplication>
+#else
#include <QApplication>
+#endif
#include <QColor>
#include <QPainter>
#include <glib.h>
-#include "tracker-media-art-generic.h"
+#ifdef HAVE_NEMO
+#include <stdlib.h>
+#endif
G_BEGIN_DECLS
+#ifdef HAVE_QT5
+static QGuiApplication *app = NULL;
+#else /* HAVE_QT4 (we fallback to Qt4) */
static QApplication *app = NULL;
+#endif /* HAVE_QT5 */
void
media_art_plugin_init (void)
{
- int argc = 0;
- char *argv[2] = { NULL, NULL };
+ int argc = 1;
+ char *argv[2] = { (char*) "libmediaart", NULL };
- app = new QApplication (argc, argv, QApplication::Tty);
+#ifdef HAVE_QT5
+
+#ifdef HAVE_NEMO
+ setenv("QT_QPA_PLATFORM", "minimal", 1);
+#endif /* HAVE_NEMO */
+
+ app = new QGuiApplication (argc, argv);
+#else /* HAVE_QT4 (we fallback to Qt4) */
+ app = new QApplication (argc, argv, QApplication::Tty);
+#endif /* HAVE_QT5 */
}
void