Merge pull request #9943 from ttuegel/remove-qt-5.3

Remove Qt 5.3
This commit is contained in:
Thomas Tuegel 2015-09-19 11:42:20 -05:00
commit a23b96c74d
22 changed files with 67 additions and 917 deletions

@ -0,0 +1,43 @@
From e57f22a5089f194013534c9a9bbc42ee639297f1 Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@gmail.com>
Date: Sat, 19 Sep 2015 11:10:32 -0500
Subject: [PATCH] unbundled qwt
---
linssid-app/linssid-app.pro | 4 +---
linssid.pro | 4 +---
2 files changed, 2 insertions(+), 6 deletions(-)
diff --git a/linssid-app/linssid-app.pro b/linssid-app/linssid-app.pro
index 26f61e7..7b80b60 100644
--- a/linssid-app/linssid-app.pro
+++ b/linssid-app/linssid-app.pro
@@ -19,13 +19,11 @@ QMAKE_CC = gcc
QMAKE_CXX = g++
DEFINES +=
INCLUDEPATH += /usr/include/qt5
-# /usr/local/qwt-6.1.0/include
-INCLUDEPATH += ../qwt-lib/src
# LIBS += /usr/lib/x86_64-linux-gnu/libboost_regex.a
# LIBS += -lboost_regex
LIBS += -l:libboost_regex.a
# /usr/local/qwt-6.1.0/lib/libqwt.a
-LIBS += ../qwt-lib/lib/libqwt.a
+LIBS += -lqwt
QMAKE_CXXFLAGS += -std=c++11
#
TARGET = linssid
diff --git a/linssid.pro b/linssid.pro
index 42dc277..26d1a2c 100644
--- a/linssid.pro
+++ b/linssid.pro
@@ -1,5 +1,3 @@
TEMPLATE = subdirs
CONFIG += ordered
-SUBDIRS = qwt-lib \
- linssid-app
-linssid-app.depends = qwt-lib
+SUBDIRS = linssid-app
--
2.5.2

@ -1,4 +1,4 @@
{ stdenv, fetchurl, qt5, pkgconfig, boost, wirelesstools, iw }:
{ stdenv, fetchurl, qt5, pkgconfig, boost, wirelesstools, iw, qwt6 }:
stdenv.mkDerivation rec {
name = "linssid-${version}";
@ -9,7 +9,9 @@ stdenv.mkDerivation rec {
sha256 = "13d35rlcjncd8lx3khkgn9x8is2xjd5fp6ns5xsn3w6l4xj9b4gl";
};
buildInputs = [ qt5 pkgconfig boost ];
buildInputs = [ qt5.base qt5.svg pkgconfig boost qwt6 ];
patches = [ ./0001-unbundled-qwt.patch ];
postPatch = ''
sed -e "s|/usr/include/|/nonexistent/|g" -i linssid-app/*.pro
@ -20,6 +22,9 @@ stdenv.mkDerivation rec {
sed -e "s|iwlist|${wirelesstools}/sbin/iwlist|g" -i linssid-app/Getter.cpp
sed -e "s|iw dev|${iw}/sbin/iw dev|g" -i linssid-app/MainForm.cpp
# Remove bundled qwt
rm -fr qwt-lib
'';
configurePhase = "qmake linssid.pro";

@ -605,7 +605,7 @@ self: super: {
configuration-tools = dontCheck super.configuration-tools;
# Test suite wants to connect to $DISPLAY.
hsqml = dontCheck (super.hsqml.override { qt5 = pkgs.qt53; });
hsqml = dontCheck (addExtraLibrary (super.hsqml.override { qt5 = pkgs.qt5Full; }) pkgs.mesa);
# HsColour: Language/Unlambda.hs: hGetContents: invalid argument (invalid byte sequence)
unlambda = dontHyperlinkSource super.unlambda;

@ -1,63 +0,0 @@
From 35d5995a58c86a6addbf0aaf0d1be64d39182872 Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@gmail.com>
Date: Mon, 1 Dec 2014 17:21:58 -0600
Subject: [PATCH] dlopen-gtkstyle
---
qtbase/src/widgets/styles/qgtk2painter.cpp | 2 +-
qtbase/src/widgets/styles/qgtkstyle_p.cpp | 12 ++++++------
2 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/qtbase/src/widgets/styles/qgtk2painter.cpp b/qtbase/src/widgets/styles/qgtk2painter.cpp
index 7b9bd97..075947a 100644
--- a/qtbase/src/widgets/styles/qgtk2painter.cpp
+++ b/qtbase/src/widgets/styles/qgtk2painter.cpp
@@ -104,7 +104,7 @@ static void initGtk()
static bool initialized = false;
if (!initialized) {
// enforce the "0" suffix, so we'll open libgtk-x11-2.0.so.0
- QLibrary libgtk(QLS("gtk-x11-2.0"), 0, 0);
+ QLibrary libgtk(QLS("@gtk@/lib/libgtk-x11-2.0"), 0, 0);
QGtk2PainterPrivate::gdk_pixmap_new = (Ptr_gdk_pixmap_new)libgtk.resolve("gdk_pixmap_new");
QGtk2PainterPrivate::gdk_pixbuf_get_from_drawable = (Ptr_gdk_pixbuf_get_from_drawable)libgtk.resolve("gdk_pixbuf_get_from_drawable");
diff --git a/qtbase/src/widgets/styles/qgtkstyle_p.cpp b/qtbase/src/widgets/styles/qgtkstyle_p.cpp
index 2c64225..3343d32 100644
--- a/qtbase/src/widgets/styles/qgtkstyle_p.cpp
+++ b/qtbase/src/widgets/styles/qgtkstyle_p.cpp
@@ -334,7 +334,7 @@ void QGtkStylePrivate::gtkWidgetSetFocus(GtkWidget *widget, bool focus)
void QGtkStylePrivate::resolveGtk() const
{
// enforce the "0" suffix, so we'll open libgtk-x11-2.0.so.0
- QLibrary libgtk(QLS("gtk-x11-2.0"), 0, 0);
+ QLibrary libgtk(QLS("@gtk@/lib/libgtk-x11-2.0"), 0, 0);
gtk_init = (Ptr_gtk_init)libgtk.resolve("gtk_init");
gtk_window_new = (Ptr_gtk_window_new)libgtk.resolve("gtk_window_new");
@@ -432,8 +432,8 @@ void QGtkStylePrivate::resolveGtk() const
pango_font_description_get_family = (Ptr_pango_font_description_get_family)libgtk.resolve("pango_font_description_get_family");
pango_font_description_get_style = (Ptr_pango_font_description_get_style)libgtk.resolve("pango_font_description_get_style");
- gnome_icon_lookup_sync = (Ptr_gnome_icon_lookup_sync)QLibrary::resolve(QLS("gnomeui-2"), 0, "gnome_icon_lookup_sync");
- gnome_vfs_init= (Ptr_gnome_vfs_init)QLibrary::resolve(QLS("gnomevfs-2"), 0, "gnome_vfs_init");
+ gnome_icon_lookup_sync = (Ptr_gnome_icon_lookup_sync)QLibrary::resolve(QLS("@libgnomeui@/lib/libgnomeui-2"), 0, "gnome_icon_lookup_sync");
+ gnome_vfs_init= (Ptr_gnome_vfs_init)QLibrary::resolve(QLS("@gnome_vfs@/lib/libgnomevfs-2"), 0, "gnome_vfs_init");
}
/* \internal
@@ -601,9 +601,9 @@ void QGtkStylePrivate::cleanupGtkWidgets()
static bool resolveGConf()
{
if (!QGtkStylePrivate::gconf_client_get_default) {
- QGtkStylePrivate::gconf_client_get_default = (Ptr_gconf_client_get_default)QLibrary::resolve(QLS("gconf-2"), 4, "gconf_client_get_default");
- QGtkStylePrivate::gconf_client_get_string = (Ptr_gconf_client_get_string)QLibrary::resolve(QLS("gconf-2"), 4, "gconf_client_get_string");
- QGtkStylePrivate::gconf_client_get_bool = (Ptr_gconf_client_get_bool)QLibrary::resolve(QLS("gconf-2"), 4, "gconf_client_get_bool");
+ QGtkStylePrivate::gconf_client_get_default = (Ptr_gconf_client_get_default)QLibrary::resolve(QLS("@gconf@/lib/libgconf-2"), 4, "gconf_client_get_default");
+ QGtkStylePrivate::gconf_client_get_string = (Ptr_gconf_client_get_string)QLibrary::resolve(QLS("@gconf@/lib/libgconf-2"), 4, "gconf_client_get_string");
+ QGtkStylePrivate::gconf_client_get_bool = (Ptr_gconf_client_get_bool)QLibrary::resolve(QLS("@gconf@/lib/libgconf-2"), 4, "gconf_client_get_bool");
}
return (QGtkStylePrivate::gconf_client_get_default !=0);
}
--
2.1.3

@ -1,53 +0,0 @@
From 8c30f72dbe11752e8ed25f292c6e5695d7733f72 Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@gmail.com>
Date: Mon, 1 Dec 2014 17:22:23 -0600
Subject: [PATCH] dlopen-webkit-nsplugin
---
qtwebkit/Source/WebCore/plugins/qt/PluginPackageQt.cpp | 2 +-
qtwebkit/Source/WebCore/plugins/qt/PluginViewQt.cpp | 2 +-
.../WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/qtwebkit/Source/WebCore/plugins/qt/PluginPackageQt.cpp b/qtwebkit/Source/WebCore/plugins/qt/PluginPackageQt.cpp
index 679480b..2c373cc 100644
--- a/qtwebkit/Source/WebCore/plugins/qt/PluginPackageQt.cpp
+++ b/qtwebkit/Source/WebCore/plugins/qt/PluginPackageQt.cpp
@@ -132,7 +132,7 @@ static void initializeGtk(QLibrary* module = 0)
}
}
- QLibrary library(QLatin1String("libgtk-x11-2.0"), 0);
+ QLibrary library(QLatin1String("@gtk@/lib/libgtk-x11-2.0"), 0);
if (library.load()) {
typedef void *(*gtk_init_check_ptr)(int*, char***);
gtk_init_check_ptr gtkInitCheck = (gtk_init_check_ptr)library.resolve("gtk_init_check");
diff --git a/qtwebkit/Source/WebCore/plugins/qt/PluginViewQt.cpp b/qtwebkit/Source/WebCore/plugins/qt/PluginViewQt.cpp
index de06a2f..363bde5 100644
--- a/qtwebkit/Source/WebCore/plugins/qt/PluginViewQt.cpp
+++ b/qtwebkit/Source/WebCore/plugins/qt/PluginViewQt.cpp
@@ -697,7 +697,7 @@ static Display *getPluginDisplay()
// support gdk based plugins (like flash) that use a different X connection.
// The code below has the same effect as this one:
// Display *gdkDisplay = gdk_x11_display_get_xdisplay(gdk_display_get_default());
- QLibrary library(QLatin1String("libgdk-x11-2.0"), 0);
+ QLibrary library(QLatin1String("@gdk_pixbuf@/lib/libgdk-x11-2.0"), 0);
if (!library.load())
return 0;
diff --git a/qtwebkit/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp b/qtwebkit/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp
index d734ff6..62a2197 100644
--- a/qtwebkit/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp
+++ b/qtwebkit/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp
@@ -64,7 +64,7 @@ static Display* getPluginDisplay()
// The code below has the same effect as this one:
// Display *gdkDisplay = gdk_x11_display_get_xdisplay(gdk_display_get_default());
- QLibrary library(QLatin1String("libgdk-x11-2.0"), 0);
+ QLibrary library(QLatin1String("@gdk_pixbuf@/libgdk-x11-2.0"), 0);
if (!library.load())
return 0;
--
2.1.3

@ -1,25 +0,0 @@
From a41c3e3a3a1ce4b373b1bbb98f3a835e9e8a0718 Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@gmail.com>
Date: Mon, 1 Dec 2014 17:22:39 -0600
Subject: [PATCH] glib-2.32
---
qtscript/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/qtscript/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h b/qtscript/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h
index 1f6d25e..087c3fb 100644
--- a/qtscript/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h
+++ b/qtscript/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h
@@ -81,7 +81,7 @@
#include <pthread.h>
#elif PLATFORM(GTK)
#include <wtf/gtk/GOwnPtr.h>
-typedef struct _GMutex GMutex;
+typedef union _GMutex GMutex;
typedef struct _GCond GCond;
#endif
--
2.1.3

@ -1,39 +0,0 @@
From 63af41c6eeca28c911c13b1a77afeaf860863c2d Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@gmail.com>
Date: Mon, 1 Dec 2014 17:22:55 -0600
Subject: [PATCH] dlopen-resolv
---
qtbase/src/network/kernel/qdnslookup_unix.cpp | 2 +-
qtbase/src/network/kernel/qhostinfo_unix.cpp | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/qtbase/src/network/kernel/qdnslookup_unix.cpp b/qtbase/src/network/kernel/qdnslookup_unix.cpp
index 8c5a0eb..27ebf16 100644
--- a/qtbase/src/network/kernel/qdnslookup_unix.cpp
+++ b/qtbase/src/network/kernel/qdnslookup_unix.cpp
@@ -87,7 +87,7 @@ static void resolveLibrary()
if (!lib.load())
#endif
{
- lib.setFileName(QLatin1String("resolv"));
+ lib.setFileName(QLatin1String("@glibc/lib/resolv"));
if (!lib.load())
return;
}
diff --git a/qtbase/src/network/kernel/qhostinfo_unix.cpp b/qtbase/src/network/kernel/qhostinfo_unix.cpp
index df8c8b1..613d0e0 100644
--- a/qtbase/src/network/kernel/qhostinfo_unix.cpp
+++ b/qtbase/src/network/kernel/qhostinfo_unix.cpp
@@ -103,7 +103,7 @@ static void resolveLibrary()
if (!lib.load())
#endif
{
- lib.setFileName(QLatin1String("resolv"));
+ lib.setFileName(QLatin1String("@glibc@/lib/libresolv"));
if (!lib.load())
return;
}
--
2.1.3

@ -1,25 +0,0 @@
From 6aaf6858bf817172a4c503158e1701c4837ee790 Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@gmail.com>
Date: Mon, 1 Dec 2014 17:23:08 -0600
Subject: [PATCH] dlopen-gl
---
qtbase/src/plugins/platforms/xcb/qglxintegration.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/qtbase/src/plugins/platforms/xcb/qglxintegration.cpp b/qtbase/src/plugins/platforms/xcb/qglxintegration.cpp
index 67235e0..2220a2e 100644
--- a/qtbase/src/plugins/platforms/xcb/qglxintegration.cpp
+++ b/qtbase/src/plugins/platforms/xcb/qglxintegration.cpp
@@ -434,7 +434,7 @@ void (*QGLXContext::getProcAddress(const QByteArray &procName)) ()
{
extern const QString qt_gl_library_name();
// QLibrary lib(qt_gl_library_name());
- QLibrary lib(QLatin1String("GL"));
+ QLibrary lib(QLatin1String("@openglDriver@/lib/libGL"));
glXGetProcAddressARB = (qt_glXGetProcAddressARB) lib.resolve("glXGetProcAddressARB");
}
}
--
2.1.3

@ -1,52 +0,0 @@
From 775fd74351faaabd45f6751618b28e2b05812d05 Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@gmail.com>
Date: Mon, 1 Dec 2014 17:23:22 -0600
Subject: [PATCH] tzdir
---
qtbase/src/corelib/tools/qtimezoneprivate_tz.cpp | 21 +++++++++++++++------
1 file changed, 15 insertions(+), 6 deletions(-)
diff --git a/qtbase/src/corelib/tools/qtimezoneprivate_tz.cpp b/qtbase/src/corelib/tools/qtimezoneprivate_tz.cpp
index b4ea91e..a56a245 100644
--- a/qtbase/src/corelib/tools/qtimezoneprivate_tz.cpp
+++ b/qtbase/src/corelib/tools/qtimezoneprivate_tz.cpp
@@ -68,7 +68,10 @@ typedef QHash<QByteArray, QTzTimeZone> QTzTimeZoneHash;
// Parse zone.tab table, assume lists all installed zones, if not will need to read directories
static QTzTimeZoneHash loadTzTimeZones()
{
- QString path = QStringLiteral("/usr/share/zoneinfo/zone.tab");
+ QString path = qgetenv("TZDIR");
+ path += "/zone.tab";
+ if (!QFile::exists(path))
+ path = QStringLiteral("/usr/share/zoneinfo/zone.tab");
if (!QFile::exists(path))
path = QStringLiteral("/usr/lib/zoneinfo/zone.tab");
@@ -559,12 +562,18 @@ void QTzTimeZonePrivate::init(const QByteArray &ianaId)
if (!tzif.open(QIODevice::ReadOnly))
return;
} else {
- // Open named tz, try modern path first, if fails try legacy path
- tzif.setFileName(QLatin1String("/usr/share/zoneinfo/") + QString::fromLocal8Bit(ianaId));
+ // Try TZDIR first
+ QString zoneinfoDir = qgetenv("TZDIR");
+ zoneinfoDir += "/" + QString::fromLocal8Bit(ianaId);
+ tzif.setFileName(zoneinfoDir);
if (!tzif.open(QIODevice::ReadOnly)) {
- tzif.setFileName(QLatin1String("/usr/lib/zoneinfo/") + QString::fromLocal8Bit(ianaId));
- if (!tzif.open(QIODevice::ReadOnly))
- return;
+ // Open named tz, try modern path first, if fails try legacy path
+ tzif.setFileName(QLatin1String("/usr/share/zoneinfo/") + QString::fromLocal8Bit(ianaId));
+ if (!tzif.open(QIODevice::ReadOnly)) {
+ tzif.setFileName(QLatin1String("/usr/lib/zoneinfo/") + QString::fromLocal8Bit(ianaId));
+ if (!tzif.open(QIODevice::ReadOnly))
+ return;
+ }
}
}
--
2.1.3

@ -1,25 +0,0 @@
From 089db8835c80bf2b7dd91a97a5c6eb26636b6ab9 Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@gmail.com>
Date: Mon, 1 Dec 2014 17:26:39 -0600
Subject: [PATCH] dlopen-webkit-gtk
---
qtwebkit/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/qtwebkit/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp b/qtwebkit/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp
index 8de6521..0b25748 100644
--- a/qtwebkit/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp
+++ b/qtwebkit/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp
@@ -53,7 +53,7 @@ static void messageHandler(QtMsgType type, const QMessageLogContext&, const QStr
static bool initializeGtk()
{
- QLibrary gtkLibrary(QLatin1String("libgtk-x11-2.0"), 0);
+ QLibrary gtkLibrary(QLatin1String("@gtk@/lib/libgtk-x11-2.0"), 0);
if (!gtkLibrary.load())
return false;
typedef void* (*gtk_init_ptr)(void*, void*);
--
2.1.3

@ -1,31 +0,0 @@
From 25d2922cce383fcaa4c138e0cc6c8d92328eeacb Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@gmail.com>
Date: Mon, 1 Dec 2014 17:30:41 -0600
Subject: [PATCH] dlopen-webkit-udev
---
qtwebkit/Source/WebCore/platform/qt/GamepadsQt.cpp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/qtwebkit/Source/WebCore/platform/qt/GamepadsQt.cpp b/qtwebkit/Source/WebCore/platform/qt/GamepadsQt.cpp
index 60ff317..da8ac69 100644
--- a/qtwebkit/Source/WebCore/platform/qt/GamepadsQt.cpp
+++ b/qtwebkit/Source/WebCore/platform/qt/GamepadsQt.cpp
@@ -111,12 +111,12 @@ private:
bool load()
{
m_libUdev.setLoadHints(QLibrary::ResolveAllSymbolsHint);
- m_libUdev.setFileNameAndVersion(QStringLiteral("udev"), 1);
+ m_libUdev.setFileNameAndVersion(QStringLiteral("@udev@/lib/libudev"), 1);
m_loaded = m_libUdev.load();
if (resolveMethods())
return true;
- m_libUdev.setFileNameAndVersion(QStringLiteral("udev"), 0);
+ m_libUdev.setFileNameAndVersion(QStringLiteral("@udev@/lib/libudev"), 0);
m_loaded = m_libUdev.load();
return resolveMethods();
}
--
2.1.3

@ -1,28 +0,0 @@
From 17c7257e54c00ea2121f2cf95fb2be5e5db6b4ad Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@gmail.com>
Date: Mon, 1 Dec 2014 17:31:03 -0600
Subject: [PATCH] dlopen-serialport-udev
---
qtserialport/src/serialport/qtudev_p.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/qtserialport/src/serialport/qtudev_p.h b/qtserialport/src/serialport/qtudev_p.h
index 09940ab..45460f9 100644
--- a/qtserialport/src/serialport/qtudev_p.h
+++ b/qtserialport/src/serialport/qtudev_p.h
@@ -119,9 +119,9 @@ inline void *resolveSymbol(QLibrary *udevLibrary, const char *symbolName)
inline bool resolveSymbols(QLibrary *udevLibrary)
{
if (!udevLibrary->isLoaded()) {
- udevLibrary->setFileNameAndVersion(QStringLiteral("udev"), 1);
+ udevLibrary->setFileNameAndVersion(QStringLiteral("@udev@/lib/libudev"), 1);
if (!udevLibrary->load()) {
- udevLibrary->setFileNameAndVersion(QStringLiteral("udev"), 0);
+ udevLibrary->setFileNameAndVersion(QStringLiteral("@udev@/lib/libudev"), 0);
if (!udevLibrary->load()) {
qWarning("Failed to load the library: %s, supported version(s): %i and %i", qPrintable(udevLibrary->fileName()), 1, 0);
return false;
--
2.1.3

@ -1,29 +0,0 @@
From b56e3737ca97e3de664603976989da4419297eb3 Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@gmail.com>
Date: Mon, 1 Dec 2014 17:33:51 -0600
Subject: [PATCH] dlopen-libXcursor
---
qtbase/src/plugins/platforms/xcb/qxcbcursor.cpp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/qtbase/src/plugins/platforms/xcb/qxcbcursor.cpp b/qtbase/src/plugins/platforms/xcb/qxcbcursor.cpp
index 6dbac90..4b23fc2 100644
--- a/qtbase/src/plugins/platforms/xcb/qxcbcursor.cpp
+++ b/qtbase/src/plugins/platforms/xcb/qxcbcursor.cpp
@@ -305,10 +305,10 @@ QXcbCursor::QXcbCursor(QXcbConnection *conn, QXcbScreen *screen)
#ifdef XCB_USE_XLIB
static bool function_ptrs_not_initialized = true;
if (function_ptrs_not_initialized) {
- QLibrary xcursorLib(QLatin1String("Xcursor"), 1);
+ QLibrary xcursorLib(QLatin1String("@libXcursor@/lib/libXcursor"), 1);
bool xcursorFound = xcursorLib.load();
if (!xcursorFound) { // try without the version number
- xcursorLib.setFileName(QLatin1String("Xcursor"));
+ xcursorLib.setFileName(QLatin1String("@libXcursor@/lib/Xcursor"));
xcursorFound = xcursorLib.load();
}
if (xcursorFound) {
--
2.1.3

@ -1,38 +0,0 @@
From 99d458c93698b2d4f16ff164ed54237279ffbb64 Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@gmail.com>
Date: Mon, 1 Dec 2014 17:35:21 -0600
Subject: [PATCH] dlopen-openssl
---
qtbase/src/network/ssl/qsslsocket_openssl_symbols.cpp | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/qtbase/src/network/ssl/qsslsocket_openssl_symbols.cpp b/qtbase/src/network/ssl/qsslsocket_openssl_symbols.cpp
index 4e6200f..d9c3e7d 100644
--- a/qtbase/src/network/ssl/qsslsocket_openssl_symbols.cpp
+++ b/qtbase/src/network/ssl/qsslsocket_openssl_symbols.cpp
@@ -585,8 +585,8 @@ static QPair<QLibrary*, QLibrary*> loadOpenSsl()
#endif
#if defined(SHLIB_VERSION_NUMBER) && !defined(Q_OS_QNX) // on QNX, the libs are always libssl.so and libcrypto.so
// first attempt: the canonical name is libssl.so.<SHLIB_VERSION_NUMBER>
- libssl->setFileNameAndVersion(QLatin1String("ssl"), QLatin1String(SHLIB_VERSION_NUMBER));
- libcrypto->setFileNameAndVersion(QLatin1String("crypto"), QLatin1String(SHLIB_VERSION_NUMBER));
+ libssl->setFileNameAndVersion(QLatin1String("@openssl@/lib/libssl"), QLatin1String(SHLIB_VERSION_NUMBER));
+ libcrypto->setFileNameAndVersion(QLatin1String("@openssl@/lib/libcrypto"), QLatin1String(SHLIB_VERSION_NUMBER));
if (libcrypto->load() && libssl->load()) {
// libssl.so.<SHLIB_VERSION_NUMBER> and libcrypto.so.<SHLIB_VERSION_NUMBER> found
return pair;
@@ -597,8 +597,8 @@ static QPair<QLibrary*, QLibrary*> loadOpenSsl()
#endif
// second attempt: find the development files libssl.so and libcrypto.so
- libssl->setFileNameAndVersion(QLatin1String("ssl"), -1);
- libcrypto->setFileNameAndVersion(QLatin1String("crypto"), -1);
+ libssl->setFileNameAndVersion(QLatin1String("@openssl@/lib/libssl"), -1);
+ libcrypto->setFileNameAndVersion(QLatin1String("@openssl@/lib/libcrypto"), -1);
if (libcrypto->load() && libssl->load()) {
// libssl.so.0 and libcrypto.so.0 found
return pair;
--
2.1.3

@ -1,25 +0,0 @@
From eec8a79c6cc9e2c65fd43db48ca2347de3ae0c5e Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@gmail.com>
Date: Mon, 1 Dec 2014 17:38:04 -0600
Subject: [PATCH] dlopen-dbus
---
qtbase/src/dbus/qdbus_symbols.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/qtbase/src/dbus/qdbus_symbols.cpp b/qtbase/src/dbus/qdbus_symbols.cpp
index a7a1b67..661baf1 100644
--- a/qtbase/src/dbus/qdbus_symbols.cpp
+++ b/qtbase/src/dbus/qdbus_symbols.cpp
@@ -93,7 +93,7 @@ bool qdbus_loadLibDBus()
static int majorversions[] = { 3, 2, -1 };
lib->unload();
- lib->setFileName(QLatin1String("dbus-1"));
+ lib->setFileName(QLatin1String("@dbus_libs@/lib/libdbus-1"));
for (uint i = 0; i < sizeof(majorversions) / sizeof(majorversions[0]); ++i) {
lib->setFileNameAndVersion(lib->fileName(), majorversions[i]);
if (lib->load() && lib->resolve("dbus_connection_open_private"))
--
2.1.3

@ -1,232 +0,0 @@
From f8485382e319da57abea99797387ee9f6f94d32e Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@gmail.com>
Date: Wed, 13 May 2015 12:42:07 -0500
Subject: [PATCH] glib mutexlocker
---
.../gstreamer/WebKitWebSourceGStreamer.cpp | 48 +++++++++++-----------
1 file changed, 24 insertions(+), 24 deletions(-)
diff --git a/qtwebkit/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp b/qtwebkit/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp
index 5625873..a6d961f 100644
--- a/qtwebkit/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp
+++ b/qtwebkit/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp
@@ -354,7 +354,7 @@ static void webKitWebSrcSetProperty(GObject* object, guint propID, const GValue*
switch (propID) {
case PROP_IRADIO_MODE: {
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
priv->iradioMode = g_value_get_boolean(value);
break;
}
@@ -376,7 +376,7 @@ static void webKitWebSrcGetProperty(GObject* object, guint propID, GValue* value
WebKitWebSrc* src = WEBKIT_WEB_SRC(object);
WebKitWebSrcPrivate* priv = src->priv;
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
switch (propID) {
case PROP_IRADIO_MODE:
g_value_set_boolean(value, priv->iradioMode);
@@ -429,7 +429,7 @@ static gboolean webKitWebSrcStop(WebKitWebSrc* src)
ASSERT(isMainThread());
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
bool seeking = priv->seekID;
@@ -493,7 +493,7 @@ static gboolean webKitWebSrcStart(WebKitWebSrc* src)
ASSERT(isMainThread());
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
priv->startID = 0;
@@ -584,7 +584,7 @@ static GstStateChangeReturn webKitWebSrcChangeState(GstElement* element, GstStat
return ret;
}
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
switch (transition) {
case GST_STATE_CHANGE_READY_TO_PAUSED:
GST_DEBUG_OBJECT(src, "READY->PAUSED");
@@ -615,7 +615,7 @@ static gboolean webKitWebSrcQueryWithParent(GstPad* pad, GstObject* parent, GstQ
gst_query_parse_duration(query, &format, NULL);
GST_DEBUG_OBJECT(src, "duration query in format %s", gst_format_get_name(format));
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
if (format == GST_FORMAT_BYTES && src->priv->size > 0) {
gst_query_set_duration(query, format, src->priv->size);
result = TRUE;
@@ -623,7 +623,7 @@ static gboolean webKitWebSrcQueryWithParent(GstPad* pad, GstObject* parent, GstQ
break;
}
case GST_QUERY_URI: {
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
gst_query_set_uri(query, src->priv->uri);
result = TRUE;
break;
@@ -668,7 +668,7 @@ static gchar* webKitWebSrcGetUri(GstURIHandler* handler)
WebKitWebSrc* src = WEBKIT_WEB_SRC(handler);
gchar* ret;
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
ret = g_strdup(src->priv->uri);
return ret;
}
@@ -683,7 +683,7 @@ static gboolean webKitWebSrcSetUri(GstURIHandler* handler, const gchar* uri, GEr
return FALSE;
}
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
g_free(priv->uri);
priv->uri = 0;
@@ -719,7 +719,7 @@ static const gchar* webKitWebSrcGetUri(GstURIHandler* handler)
WebKitWebSrc* src = WEBKIT_WEB_SRC(handler);
gchar* ret;
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
ret = g_strdup(src->priv->uri);
return ret;
}
@@ -734,7 +734,7 @@ static gboolean webKitWebSrcSetUri(GstURIHandler* handler, const gchar* uri)
return FALSE;
}
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
g_free(priv->uri);
priv->uri = 0;
@@ -772,7 +772,7 @@ static gboolean webKitWebSrcNeedDataMainCb(WebKitWebSrc* src)
ASSERT(isMainThread());
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
// already stopped
if (!priv->needDataID)
return FALSE;
@@ -793,7 +793,7 @@ static void webKitWebSrcNeedDataCb(GstAppSrc*, guint length, gpointer userData)
GST_DEBUG_OBJECT(src, "Need more data: %u", length);
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
if (priv->needDataID || !priv->paused) {
return;
}
@@ -807,7 +807,7 @@ static gboolean webKitWebSrcEnoughDataMainCb(WebKitWebSrc* src)
ASSERT(isMainThread());
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
// already stopped
if (!priv->enoughDataID)
return FALSE;
@@ -828,7 +828,7 @@ static void webKitWebSrcEnoughDataCb(GstAppSrc*, gpointer userData)
GST_DEBUG_OBJECT(src, "Have enough data");
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
if (priv->enoughDataID || priv->paused) {
return;
}
@@ -842,7 +842,7 @@ static gboolean webKitWebSrcSeekMainCb(WebKitWebSrc* src)
ASSERT(isMainThread());
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
// already stopped
if (!priv->seekID)
return FALSE;
@@ -860,7 +860,7 @@ static gboolean webKitWebSrcSeekDataCb(GstAppSrc*, guint64 offset, gpointer user
WebKitWebSrcPrivate* priv = src->priv;
GST_DEBUG_OBJECT(src, "Seeking to offset: %" G_GUINT64_FORMAT, offset);
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
if (offset == priv->offset && priv->requestedOffset == priv->offset)
return TRUE;
@@ -879,7 +879,7 @@ static gboolean webKitWebSrcSeekDataCb(GstAppSrc*, guint64 offset, gpointer user
void webKitWebSrcSetMediaPlayer(WebKitWebSrc* src, WebCore::MediaPlayer* player)
{
ASSERT(player);
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
src->priv->player = player;
s_cachedResourceLoader = player->cachedResourceLoader();
}
@@ -906,7 +906,7 @@ char* StreamingClient::createReadBuffer(size_t requestedSize, size_t& actualSize
mapGstBuffer(buffer);
#endif
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
priv->buffer = adoptGRef(buffer);
locker.unlock();
@@ -921,7 +921,7 @@ void StreamingClient::handleResponseReceived(const ResourceResponse& response)
GST_DEBUG_OBJECT(src, "Received response: %d", response.httpStatusCode());
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
// If we seeked we need 206 == PARTIAL_CONTENT
if (priv->requestedOffset && response.httpStatusCode() != 206) {
@@ -1020,7 +1020,7 @@ void StreamingClient::handleDataReceived(const char* data, int length)
WebKitWebSrc* src = WEBKIT_WEB_SRC(m_src.get());
WebKitWebSrcPrivate* priv = src->priv;
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
GST_LOG_OBJECT(src, "Have %d bytes of data", priv->buffer ? getGstBufferSize(priv->buffer.get()) : length);
@@ -1074,7 +1074,7 @@ void StreamingClient::handleNotifyFinished()
GST_DEBUG_OBJECT(src, "Have EOS");
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
if (!priv->seekID) {
locker.unlock();
gst_app_src_end_of_stream(priv->appsrc);
@@ -1210,7 +1210,7 @@ void ResourceHandleStreamingClient::wasBlocked(ResourceHandle*)
GST_ERROR_OBJECT(src, "Request was blocked");
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
uri.set(g_strdup(src->priv->uri));
locker.unlock();
@@ -1224,7 +1224,7 @@ void ResourceHandleStreamingClient::cannotShowURL(ResourceHandle*)
GST_ERROR_OBJECT(src, "Cannot show URL");
- GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
+ WebCore::GMutexLocker locker(GST_OBJECT_GET_LOCK(src));
uri.set(g_strdup(src->priv->uri));
locker.unlock();
--
2.3.6

@ -1,15 +0,0 @@
Ensure Qt knows where libGL is.
Author: Bjørn Forsman <bjorn.forsman@gmail.com>
diff -uNr qt-everywhere-opensource-src-5.3.2.orig/qtbase/mkspecs/common/linux.conf qt-everywhere-opensource-src-5.3.2/qtbase/mkspecs/common/linux.conf
--- qt-everywhere-opensource-src-5.3.2.orig/qtbase/mkspecs/common/linux.conf 2014-09-11 12:48:07.000000000 +0200
+++ qt-everywhere-opensource-src-5.3.2/qtbase/mkspecs/common/linux.conf 2015-08-23 13:03:30.617473019 +0200
@@ -13,7 +13,7 @@
QMAKE_INCDIR_X11 =
QMAKE_LIBDIR_X11 =
QMAKE_INCDIR_OPENGL =
-QMAKE_LIBDIR_OPENGL =
+QMAKE_LIBDIR_OPENGL = @mesa@/lib
QMAKE_INCDIR_OPENGL_ES2 = $$QMAKE_INCDIR_OPENGL
QMAKE_LIBDIR_OPENGL_ES2 = $$QMAKE_LIBDIR_OPENGL
QMAKE_INCDIR_EGL =

@ -1,210 +0,0 @@
{ stdenv, fetchurl, substituteAll, libXrender, libXext
, libXfixes, freetype, fontconfig, zlib, libjpeg, libpng
, mesaSupported, mesa, mesa_glu, openssl, dbus, cups, pkgconfig
, libtiff, glib, icu, mysql, postgresql, sqlite, perl, coreutils, libXi
, gdk_pixbuf, python, gdb, xlibs, libX11, libxcb, xcbutil, xcbutilimage
, xcbutilkeysyms, xcbutilwm, udev, libxml2, libxslt, pcre, libxkbcommon
, alsaLib, gstreamer, gst_plugins_base
, libpulseaudio, bison, flex, gperf, ruby, libwebp, libXcursor
, flashplayerFix ? false
, gtkStyle ? false, libgnomeui, gtk, GConf, gnome_vfs
, buildDocs ? false
, buildExamples ? false
, buildTests ? false
, developerBuild ? false
}:
with stdenv.lib;
let
v_maj = "5.3";
v_min = "2";
ver = "${v_maj}.${v_min}";
in
let system-x86_64 = elem stdenv.system platforms.x86_64; in
stdenv.mkDerivation rec {
name = "qt-${ver}";
src = fetchurl {
url = "http://download.qt-project.org/official_releases/qt/"
+ "${v_maj}/${ver}/single/qt-everywhere-opensource-src-${ver}.tar.gz";
sha256 = "0b98n2jl62dyqxwn1gdj9xmk8wrrdxnazr65fdk5qw1hmlpgvly8";
};
# The version property must be kept because it will be included into the QtSDK package name
version = ver;
prePatch = ''
substituteInPlace configure --replace /bin/pwd pwd
substituteInPlace qtbase/configure --replace /bin/pwd pwd
substituteInPlace qtbase/src/corelib/global/global.pri --replace /bin/ls ${coreutils}/bin/ls
substituteInPlace qtbase/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp \
--replace /usr/share/X11/locale ${libX11}/share/X11/locale \
--replace /usr/lib/X11/locale ${libX11}/share/X11/locale
sed -e 's@/\(usr\|opt\)/@/var/empty/@g' -i config.tests/*/*.test -i qtbase/mkspecs/*/*.conf
'';
patches =
optional gtkStyle
(substituteAll {
src = ./0001-dlopen-gtkstyle.patch;
# substituteAll ignores env vars starting with capital letter
gconf = GConf;
inherit gnome_vfs libgnomeui gtk;
})
++ optional flashplayerFix
(substituteAll {
src = ./0002-dlopen-webkit-nsplugin.patch;
inherit gtk gdk_pixbuf;
})
++ optional flashplayerFix
(substituteAll {
src = ./0007-dlopen-webkit-gtk.patch;
inherit gtk;
})
++ [
./0003-glib-2.32.patch
(substituteAll {
src = ./0004-dlopen-resolv.patch;
glibc = stdenv.cc.libc;
})
(substituteAll {
src = ./0005-dlopen-gl.patch;
openglDriver = if mesaSupported then mesa.driverLink else "/no-such-path";
})
./0006-tzdir.patch
(substituteAll { src = ./0008-dlopen-webkit-udev.patch; inherit udev; })
(substituteAll { src = ./0009-dlopen-serialport-udev.patch; inherit udev; })
(substituteAll { src = ./0010-dlopen-libXcursor.patch; inherit libXcursor; })
(substituteAll { src = ./0011-dlopen-openssl.patch; inherit openssl; })
(substituteAll { src = ./0012-dlopen-dbus.patch; dbus_libs = dbus; })
./0013-qtwebkit-glib-2.44.patch
] ++ optional mesaSupported
(substituteAll { src = ./0014-mkspecs-libgl.patch; inherit mesa; });
preConfigure = ''
export LD_LIBRARY_PATH="$PWD/qtbase/lib:$PWD/qtbase/plugins/platforms:$PWD/qttools/lib:$LD_LIBRARY_PATH"
export MAKEFLAGS=-j$NIX_BUILD_CORES
export configureFlags+="-plugindir $out/lib/qt5/plugins -importdir $out/lib/qt5/imports -qmldir $out/lib/qt5/qml"
export configureFlags+=" -docdir $out/share/doc/qt5"
'';
prefixKey = "-prefix ";
# -no-eglfs, -no-directfb, -no-linuxfb and -no-kms because of the current minimalist mesa
# TODO Remove obsolete and useless flags once the build will be totally mastered
configureFlags = ''
-verbose
-confirm-license
-opensource
-release
-shared
-c++11
${optionalString developerBuild "-developer-build"}
-largefile
-accessibility
-rpath
-optimized-qmake
-strip
-reduce-relocations
-system-proxies
-gui
-widgets
-opengl desktop
-qml-debug
-nis
-iconv
-icu
-pch
-glib
-xcb
-qpa xcb
-${optionalString (cups == null) "no-"}cups
-${optionalString (!gtkStyle) "no-"}gtkstyle
-no-eglfs
-no-directfb
-no-linuxfb
-no-kms
${optionalString (!system-x86_64) "-no-sse2"}
-no-sse3
-no-ssse3
-no-sse4.1
-no-sse4.2
-no-avx
-no-avx2
-no-mips_dsp
-no-mips_dspr2
-system-zlib
-system-libpng
-system-libjpeg
-system-xcb
-system-xkbcommon
-openssl-linked
-dbus-linked
-system-sqlite
-${if mysql != null then "plugin" else "no"}-sql-mysql
-${if postgresql != null then "plugin" else "no"}-sql-psql
-make libs
-make tools
-${optionalString (buildExamples == false) "no"}make examples
-${optionalString (buildTests == false) "no"}make tests
'';
# PostgreSQL autodetection fails sporadically because Qt omits the "-lpq" flag
# if dependency paths contain the string "pq", which can occur in the hash.
# To prevent these failures, we need to override PostgreSQL detection.
PSQL_LIBS = optionalString (postgresql != null) "-L${postgresql}/lib -lpq";
propagatedBuildInputs = [
xlibs.libXcomposite libX11 libxcb libXext libXrender libXi
fontconfig freetype openssl dbus.libs glib udev libxml2 libxslt pcre
zlib libjpeg libpng libtiff sqlite icu
libwebp alsaLib gstreamer gst_plugins_base libpulseaudio
xcbutil xcbutilimage xcbutilkeysyms xcbutilwm libxkbcommon
]
# Qt doesn't directly need GLU (just GL), but many apps use, it's small and
# doesn't remain a runtime-dep if not used
++ optionals mesaSupported [ mesa mesa_glu ]
++ optional (cups != null) cups
++ optional (mysql != null) mysql.lib
++ optional (postgresql != null) postgresql
++ optionals gtkStyle [gnome_vfs libgnomeui gtk GConf];
buildInputs =
[ bison flex gperf ruby ]
++ optional developerBuild gdb;
nativeBuildInputs = [ python perl pkgconfig ];
# freetype-2.5.4 changed signedness of some struct fields
NIX_CFLAGS_COMPILE = "-Wno-error=sign-compare";
postInstall =
''
${optionalString buildDocs ''
make docs && make install_docs
''}
# Don't retain build-time dependencies like gdb and ruby.
sed '/QMAKE_DEFAULT_.*DIRS/ d' -i $out/mkspecs/qconfig.pri
'';
enableParallelBuilding = true; # often fails on Hydra, as well as qt4
meta = {
homepage = http://qt-project.org;
description = "A cross-platform application framework for C++";
license = "GPL/LGPL";
maintainers = with maintainers; [ bbenoist qknight ttuegel ];
platforms = platforms.linux;
};
}

@ -16,16 +16,15 @@ Qml2Imports = lib/qt5/qml
Documentation = share/doc/qt5
EOF
for path in $paths; do
if [[ -d "$path/mkspecs" ]]; then
${lndir}/bin/lndir -silent "$path/mkspecs" "$out/mkspecs"
for pkg in $paths $qtbase; do
if [[ -d "$pkg/mkspecs" ]]; then
${lndir}/bin/lndir -silent "$pkg/mkspecs" "$out/mkspecs"
for dir in bin include lib share; do
if [[ -d "$path/$dir" ]]; then
${lndir}/bin/lndir -silent "$path/$dir" "$out/$dir"
if [[ -d "$pkg/$dir" ]]; then
${lndir}/bin/lndir -silent "$pkg/$dir" "$out/$dir"
fi
done
fi
done
''

@ -1,14 +1,14 @@
{ stdenv, fetchurl, qt4 }:
{ stdenv, fetchurl, qt5 }:
stdenv.mkDerivation rec {
name = "qwt-6.1.0";
name = "qwt-6.1.2";
src = fetchurl {
url = "mirror://sourceforge/qwt/${name}.tar.bz2";
sha256 = "00klw6jsn8z3dnhxg52pqg3hg5mw2sih8prwjxm1hzcivgqxkqx7";
sha256 = "031x4hz1jpbirv9k35rqb52bb9mf2w7qav89qv1yfw1r3n6z221b";
};
propagatedBuildInputs = [ qt4 ];
propagatedBuildInputs = [ qt5.base qt5.svg qt5.tools ];
postPatch = ''
sed -e "s|QWT_INSTALL_PREFIX.*=.*|QWT_INSTALL_PREFIX = $out|g" -i qwtconfig.pri

@ -1,4 +1,4 @@
{ stdenv, fetchurl, cmake, ffmpeg, imagemagick, libzip, pkgconfig, qt53, SDL2 }:
{ stdenv, fetchurl, cmake, ffmpeg, imagemagick, libzip, pkgconfig, qt5, SDL2 }:
stdenv.mkDerivation rec {
name = "mgba-0.3.0";
@ -7,7 +7,10 @@ stdenv.mkDerivation rec {
sha256 = "02zz6bdcwr1fx7i7dacff0s8mwp0pvabycp282qvhhx44x44q7fm";
};
buildInputs = [ cmake ffmpeg imagemagick libzip pkgconfig qt53 SDL2 ];
buildInputs = [
cmake ffmpeg imagemagick libzip pkgconfig qt5.base qt5.multimedia
SDL2
];
enableParallelBuilding = true;

@ -7882,14 +7882,6 @@ let
developerBuild = true;
});
qt53 = callPackage ../development/libraries/qt-5/5.3 {
mesa = mesa_noglu;
cups = if stdenv.isLinux then cups else null;
# GNOME dependencies are not used unless gtkStyle == true
inherit (gnome) libgnomeui GConf gnome_vfs;
bison = bison2; # error: too few arguments to function 'int yylex(...
};
qt54 = recurseIntoAttrs (callPackage ../development/libraries/qt-5/5.4 {});
qt5 = qt54;
@ -7898,7 +7890,7 @@ let
qt5Full = appendToName "full" (qtEnv {
qtbase = qt5.base;
paths = lib.filter (x: !(builtins.isFunction x)) (lib.attrValues qt5);
paths = lib.filter lib.isDerivation (lib.attrValues qt5);
});
qtcreator = callPackage ../development/qtcreator {
@ -11454,9 +11446,7 @@ let
libquvi = callPackage ../applications/video/quvi/library.nix { };
linssid = callPackage ../applications/networking/linssid {
qt5 = qt53;
};
linssid = callPackage ../applications/networking/linssid { };
mi2ly = callPackage ../applications/audio/mi2ly {};