qt4: Update to 4.8.3
This commit is contained in:
parent
46b05945e0
commit
bf1b2e9c2e
@ -7,13 +7,13 @@
|
|||||||
, perl, coreutils, libXi
|
, perl, coreutils, libXi
|
||||||
, buildMultimedia ? true, alsaLib, gstreamer, gst_plugins_base
|
, buildMultimedia ? true, alsaLib, gstreamer, gst_plugins_base
|
||||||
, buildWebkit ? true
|
, buildWebkit ? true
|
||||||
, flashplayerFix ? true, gdk_pixbuf
|
, flashplayerFix ? false, gdk_pixbuf
|
||||||
, gtkStyle ? false, libgnomeui, gtk, GConf, gnome_vfs
|
, gtkStyle ? false, libgnomeui, gtk, GConf, gnome_vfs
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
with stdenv.lib;
|
||||||
v = "4.8.2";
|
|
||||||
in
|
let v = "4.8.3"; in
|
||||||
|
|
||||||
# TODO:
|
# TODO:
|
||||||
# * move some plugins (e.g., SQL plugins) to dedicated derivations to avoid
|
# * move some plugins (e.g., SQL plugins) to dedicated derivations to avoid
|
||||||
@ -24,27 +24,26 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "http://releases.qt-project.org/qt4/source/qt-everywhere-opensource-src-${v}.tar.gz";
|
url = "http://releases.qt-project.org/qt4/source/qt-everywhere-opensource-src-${v}.tar.gz";
|
||||||
sha256 = "0y93vkkn44md37gyg4y8sc9ylk27xkniaimfcpdcwd090qnjl6wj";
|
sha256 = "0a67riy4i0xj6j7vmckd0nakras3rl3rzx0r83h1p1i4z5s2kxzi";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [ ./glib-2.32.patch ( substituteAll {
|
patches =
|
||||||
|
[ ./glib-2.32.patch
|
||||||
|
(substituteAll {
|
||||||
src = ./dlopen-absolute-paths.diff;
|
src = ./dlopen-absolute-paths.diff;
|
||||||
inherit cups icu libXfixes;
|
inherit cups icu libXfixes;
|
||||||
glibc = stdenv.gcc.libc;
|
glibc = stdenv.gcc.libc;
|
||||||
})
|
})
|
||||||
] ++ stdenv.lib.optional gtkStyle (
|
] ++ stdenv.lib.optional gtkStyle (substituteAll {
|
||||||
substituteAll {
|
|
||||||
src = ./dlopen-gtkstyle.diff;
|
src = ./dlopen-gtkstyle.diff;
|
||||||
# substituteAll ignores env vars starting with capital letter
|
# substituteAll ignores env vars starting with capital letter
|
||||||
gconf = GConf;
|
gconf = GConf;
|
||||||
inherit gnome_vfs libgnomeui gtk;
|
inherit gnome_vfs libgnomeui gtk;
|
||||||
}
|
})
|
||||||
) ++ stdenv.lib.optional flashplayerFix (
|
++ stdenv.lib.optional flashplayerFix (substituteAll {
|
||||||
substituteAll {
|
|
||||||
src = ./dlopen-webkit-nsplugin.diff;
|
src = ./dlopen-webkit-nsplugin.diff;
|
||||||
inherit gtk gdk_pixbuf;
|
inherit gtk gdk_pixbuf;
|
||||||
}
|
});
|
||||||
);
|
|
||||||
|
|
||||||
preConfigure =
|
preConfigure =
|
||||||
''
|
''
|
||||||
@ -81,18 +80,16 @@ stdenv.mkDerivation rec {
|
|||||||
[ libXrender libXrandr libXinerama libXcursor libXext libXfixes
|
[ libXrender libXrandr libXinerama libXcursor libXext libXfixes
|
||||||
libXv libXi libSM
|
libXv libXi libSM
|
||||||
]
|
]
|
||||||
++ (stdenv.lib.optional (stdenv.lib.lists.elem stdenv.system
|
++ optional (stdenv.lib.lists.elem stdenv.system stdenv.lib.platforms.mesaPlatforms) mesa
|
||||||
stdenv.lib.platforms.mesaPlatforms)
|
++ optional (buildWebkit || buildMultimedia) alsaLib
|
||||||
mesa)
|
|
||||||
++ (stdenv.lib.optional (buildWebkit || buildMultimedia) alsaLib)
|
|
||||||
++ [ zlib libpng openssl dbus.libs freetype fontconfig glib ]
|
++ [ zlib libpng openssl dbus.libs freetype fontconfig glib ]
|
||||||
++ (stdenv.lib.optionals (buildWebkit || buildMultimedia)
|
++ optionals (buildWebkit || buildMultimedia) [ gstreamer gst_plugins_base ];
|
||||||
[ gstreamer gst_plugins_base ]);
|
|
||||||
|
|
||||||
# The following libraries are only used in plugins
|
# The following libraries are only used in plugins
|
||||||
buildInputs = [ cups # Qt dlopen's libcups instead of linking to it
|
buildInputs =
|
||||||
|
[ cups # Qt dlopen's libcups instead of linking to it
|
||||||
mysql postgresql sqlite libjpeg libmng libtiff icu ]
|
mysql postgresql sqlite libjpeg libmng libtiff icu ]
|
||||||
++ stdenv.lib.optionals gtkStyle [ gtk gdk_pixbuf ];
|
++ optionals gtkStyle [ gtk gdk_pixbuf ];
|
||||||
|
|
||||||
buildNativeInputs = [ perl pkgconfig which ];
|
buildNativeInputs = [ perl pkgconfig which ];
|
||||||
|
|
||||||
@ -119,7 +116,7 @@ stdenv.mkDerivation rec {
|
|||||||
-no-svg
|
-no-svg
|
||||||
-make qmake -make libs -nomake tools
|
-make qmake -make libs -nomake tools
|
||||||
-nomake demos -nomake examples -nomake docs
|
-nomake demos -nomake examples -nomake docs
|
||||||
'' + stdenv.lib.optionalString isMingw " -xplatform win32-g++-4.6";
|
'' + optionalString isMingw " -xplatform win32-g++-4.6";
|
||||||
patches = [];
|
patches = [];
|
||||||
preConfigure = ''
|
preConfigure = ''
|
||||||
sed -i -e 's/ g++/ ${stdenv.cross.config}-g++/' \
|
sed -i -e 's/ g++/ ${stdenv.cross.config}-g++/' \
|
||||||
@ -136,12 +133,11 @@ stdenv.mkDerivation rec {
|
|||||||
'';
|
'';
|
||||||
dontSetConfigureCross = true;
|
dontSetConfigureCross = true;
|
||||||
dontStrip = true;
|
dontStrip = true;
|
||||||
} // (if isMingw then
|
} // optionalAttrs isMingw {
|
||||||
{
|
|
||||||
propagatedBuildInputs = [ ];
|
propagatedBuildInputs = [ ];
|
||||||
} else {});
|
};
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = {
|
||||||
homepage = http://qt.nokia.com/products;
|
homepage = http://qt.nokia.com/products;
|
||||||
description = "A cross-platform application framework for C++";
|
description = "A cross-platform application framework for C++";
|
||||||
license = "GPL/LGPL";
|
license = "GPL/LGPL";
|
||||||
|
@ -1,5 +1,27 @@
|
|||||||
--- a/src/gui/painting/qcups.cpp 2011-12-08 09:06:02.000000000 +0400
|
diff -ru qt-everywhere-opensource-src-4.8.3-orig/src/corelib/tools/qlocale_icu.cpp qt-everywhere-opensource-src-4.8.3/src/corelib/tools/qlocale_icu.cpp
|
||||||
+++ b/src/gui/painting/qcups.cpp 2011-12-18 12:17:07.000000000 +0400
|
--- qt-everywhere-opensource-src-4.8.3-orig/src/corelib/tools/qlocale_icu.cpp 2012-09-10 21:36:50.000000000 -0400
|
||||||
|
+++ qt-everywhere-opensource-src-4.8.3/src/corelib/tools/qlocale_icu.cpp 2012-09-28 22:57:40.764153828 -0400
|
||||||
|
@@ -81,7 +81,7 @@
|
||||||
|
if (status == NotLoaded) {
|
||||||
|
|
||||||
|
// resolve libicui18n
|
||||||
|
- QLibrary lib(QLatin1String("icui18n"), QLatin1String(U_ICU_VERSION_SHORT));
|
||||||
|
+ QLibrary lib(QLatin1String("@icu@/lib/libicui18n"), QLatin1String(U_ICU_VERSION_SHORT));
|
||||||
|
lib.setLoadHints(QLibrary::ImprovedSearchHeuristics);
|
||||||
|
if (!lib.load()) {
|
||||||
|
qWarning() << "Unable to load library icui18n" << lib.errorString();
|
||||||
|
@@ -111,7 +111,7 @@
|
||||||
|
}
|
||||||
|
|
||||||
|
// resolve libicuuc
|
||||||
|
- QLibrary ucLib(QLatin1String("icuuc"), QLatin1String(U_ICU_VERSION_SHORT));
|
||||||
|
+ QLibrary ucLib(QLatin1String("@icu@/lib/libicuuc"), QLatin1String(U_ICU_VERSION_SHORT));
|
||||||
|
ucLib.setLoadHints(QLibrary::ImprovedSearchHeuristics);
|
||||||
|
if (!ucLib.load()) {
|
||||||
|
qWarning() << "Unable to load library icuuc" << ucLib.errorString();
|
||||||
|
diff -ru qt-everywhere-opensource-src-4.8.3-orig/src/gui/painting/qcups.cpp qt-everywhere-opensource-src-4.8.3/src/gui/painting/qcups.cpp
|
||||||
|
--- qt-everywhere-opensource-src-4.8.3-orig/src/gui/painting/qcups.cpp 2012-09-10 21:36:51.000000000 -0400
|
||||||
|
+++ qt-everywhere-opensource-src-4.8.3/src/gui/painting/qcups.cpp 2012-09-28 18:08:26.600720491 -0400
|
||||||
@@ -87,7 +87,7 @@
|
@@ -87,7 +87,7 @@
|
||||||
|
|
||||||
static void resolveCups()
|
static void resolveCups()
|
||||||
@ -9,8 +31,9 @@
|
|||||||
if(cupsLib.load()) {
|
if(cupsLib.load()) {
|
||||||
_cupsGetDests = (CupsGetDests) cupsLib.resolve("cupsGetDests");
|
_cupsGetDests = (CupsGetDests) cupsLib.resolve("cupsGetDests");
|
||||||
_cupsFreeDests = (CupsFreeDests) cupsLib.resolve("cupsFreeDests");
|
_cupsFreeDests = (CupsFreeDests) cupsLib.resolve("cupsFreeDests");
|
||||||
--- a/src/gui/painting/qprinterinfo_unix.cpp 2011-12-08 09:06:02.000000000 +0400
|
diff -ru qt-everywhere-opensource-src-4.8.3-orig/src/gui/painting/qprinterinfo_unix.cpp qt-everywhere-opensource-src-4.8.3/src/gui/painting/qprinterinfo_unix.cpp
|
||||||
+++ b/src/gui/painting/qprinterinfo_unix.cpp 2011-12-23 16:22:15.000000000 +0400
|
--- qt-everywhere-opensource-src-4.8.3-orig/src/gui/painting/qprinterinfo_unix.cpp 2012-09-10 21:36:51.000000000 -0400
|
||||||
|
+++ qt-everywhere-opensource-src-4.8.3/src/gui/painting/qprinterinfo_unix.cpp 2012-09-28 18:08:26.601720488 -0400
|
||||||
@@ -454,7 +454,7 @@
|
@@ -454,7 +454,7 @@
|
||||||
char *domain;
|
char *domain;
|
||||||
int err;
|
int err;
|
||||||
@ -20,39 +43,21 @@
|
|||||||
typedef int (*ypGetDefaultDomain)(char **);
|
typedef int (*ypGetDefaultDomain)(char **);
|
||||||
ypGetDefaultDomain _ypGetDefaultDomain = (ypGetDefaultDomain)lib.resolve("yp_get_default_domain");
|
ypGetDefaultDomain _ypGetDefaultDomain = (ypGetDefaultDomain)lib.resolve("yp_get_default_domain");
|
||||||
typedef int (*ypAll)(const char *, const char *, const struct ypall_callback *);
|
typedef int (*ypAll)(const char *, const char *, const struct ypall_callback *);
|
||||||
--- a/src/network/kernel/qhostinfo_unix.cpp 2011-12-23 16:26:07.000000000 +0400
|
diff -ru qt-everywhere-opensource-src-4.8.3-orig/src/network/kernel/qhostinfo_unix.cpp qt-everywhere-opensource-src-4.8.3/src/network/kernel/qhostinfo_unix.cpp
|
||||||
+++ b/src/network/kernel/qhostinfo_unix.cpp 2011-12-23 16:25:55.000000000 +0400
|
--- qt-everywhere-opensource-src-4.8.3-orig/src/network/kernel/qhostinfo_unix.cpp 2012-09-10 21:36:51.000000000 -0400
|
||||||
|
+++ qt-everywhere-opensource-src-4.8.3/src/network/kernel/qhostinfo_unix.cpp 2012-09-28 18:08:53.186643755 -0400
|
||||||
@@ -95,7 +95,7 @@
|
@@ -95,7 +95,7 @@
|
||||||
static void resolveLibrary()
|
static void resolveLibrary()
|
||||||
{
|
{
|
||||||
#ifndef QT_NO_LIBRARY
|
#ifndef QT_NO_LIBRARY
|
||||||
- QLibrary lib(QLatin1String("resolv"));
|
- QLibrary lib(QLatin1String("resolv"));
|
||||||
+ QLibrary lib(QLatin1String("@glibc@/lib/libresolv"));
|
+ QLibrary lib(QLatin1String("@glibc@/lib/libresolv"));
|
||||||
|
lib.setLoadHints(QLibrary::ImprovedSearchHeuristics);
|
||||||
if (!lib.load())
|
if (!lib.load())
|
||||||
return;
|
return;
|
||||||
|
diff -ru qt-everywhere-opensource-src-4.8.3-orig/src/plugins/platforms/xlib/qxlibstatic.cpp qt-everywhere-opensource-src-4.8.3/src/plugins/platforms/xlib/qxlibstatic.cpp
|
||||||
--- a/src/corelib/tools/qlocale_icu.cpp 2011-12-08 09:06:03.000000000 +0400
|
--- qt-everywhere-opensource-src-4.8.3-orig/src/plugins/platforms/xlib/qxlibstatic.cpp 2012-09-10 21:36:51.000000000 -0400
|
||||||
+++ b/src/corelib/tools/qlocale_icu.cpp 2011-12-23 16:29:15.000000000 +0400
|
+++ qt-everywhere-opensource-src-4.8.3/src/plugins/platforms/xlib/qxlibstatic.cpp 2012-09-28 18:08:26.601720488 -0400
|
||||||
@@ -81,7 +81,7 @@
|
|
||||||
if (status == NotLoaded) {
|
|
||||||
|
|
||||||
// resolve libicui18n
|
|
||||||
- QLibrary lib(QLatin1String("icui18n"), QLatin1String(U_ICU_VERSION_SHORT));
|
|
||||||
+ QLibrary lib(QLatin1String("@icu@/lib/libicui18n"), QLatin1String(U_ICU_VERSION_SHORT));
|
|
||||||
if (!lib.load()) {
|
|
||||||
qWarning() << "Unable to load library icui18n" << lib.errorString();
|
|
||||||
status = ErrorLoading;
|
|
||||||
@@ -110,7 +110,7 @@
|
|
||||||
}
|
|
||||||
|
|
||||||
// resolve libicuuc
|
|
||||||
- QLibrary ucLib(QLatin1String("icuuc"), QLatin1String(U_ICU_VERSION_SHORT));
|
|
||||||
+ QLibrary ucLib(QLatin1String("@icu@/lib/libicuuc"), QLatin1String(U_ICU_VERSION_SHORT));
|
|
||||||
if (!ucLib.load()) {
|
|
||||||
qWarning() << "Unable to load library icuuc" << ucLib.errorString();
|
|
||||||
status = ErrorLoading;
|
|
||||||
--- a/src/plugins/platforms/xlib/qxlibstatic.cpp 2011-12-08 09:06:02.000000000 +0400
|
|
||||||
+++ b/src/plugins/platforms/xlib/qxlibstatic.cpp 2011-12-23 20:38:49.000000000 +0400
|
|
||||||
@@ -242,7 +242,7 @@
|
@@ -242,7 +242,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -10,15 +10,3 @@ diff -Naur qt-everywhere-opensource-src-4.8.2-orig/src/3rdparty/javascriptcore/J
|
|||||||
typedef struct _GCond GCond;
|
typedef struct _GCond GCond;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
diff -Naur qt-everywhere-opensource-src-4.8.2-orig/src/3rdparty/webkit/Source/JavaScriptCore/wtf/gobject/GTypedefs.h qt-everywhere-opensource-src-4.8.2/src/3rdparty/webkit/Source/JavaScriptCore/wtf/gobject/GTypedefs.h
|
|
||||||
--- qt-everywhere-opensource-src-4.8.2-orig/src/3rdparty/webkit/Source/JavaScriptCore/wtf/gobject/GTypedefs.h 2012-04-26 15:46:14.000000000 -0400
|
|
||||||
+++ qt-everywhere-opensource-src-4.8.2/src/3rdparty/webkit/Source/JavaScriptCore/wtf/gobject/GTypedefs.h 2012-07-14 22:46:24.671138454 -0400
|
|
||||||
@@ -52,7 +52,7 @@
|
|
||||||
typedef struct _GHashTable GHashTable;
|
|
||||||
typedef struct _GInputStream GInputStream;
|
|
||||||
typedef struct _GList GList;
|
|
||||||
-typedef struct _GMutex GMutex;
|
|
||||||
+typedef union _GMutex GMutex;
|
|
||||||
typedef struct _GPatternSpec GPatternSpec;
|
|
||||||
typedef struct _GPollableOutputStream GPollableOutputStream;
|
|
||||||
typedef struct _GSocketClient GSocketClient;
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user