diff options
Diffstat (limited to 'pkgs/development/libraries/qt-5/5.3/0001-dlopen-gtkstyle.patch')
-rw-r--r-- | pkgs/development/libraries/qt-5/5.3/0001-dlopen-gtkstyle.patch | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/pkgs/development/libraries/qt-5/5.3/0001-dlopen-gtkstyle.patch b/pkgs/development/libraries/qt-5/5.3/0001-dlopen-gtkstyle.patch new file mode 100644 index 00000000000..3f411139f5b --- /dev/null +++ b/pkgs/development/libraries/qt-5/5.3/0001-dlopen-gtkstyle.patch @@ -0,0 +1,63 @@ +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 + |