diff options
-rw-r--r-- | .SRCINFO | 36 | ||||
-rw-r--r-- | 02_fix_pkg-config_paths.patch | 49 | ||||
-rw-r--r-- | 04_initialize_dbus_glib_threading.patch | 51 | ||||
-rw-r--r-- | PKGBUILD | 40 |
4 files changed, 148 insertions, 28 deletions
@@ -1,19 +1,20 @@ -# Generated by mksrcinfo v8 -# Thu Nov 9 18:24:31 UTC 2017 pkgbase = gnome-sharp pkgver = 2.24.4 - pkgrel = 5 + pkgrel = 6 url = http://gtk-sharp.sourceforge.net - arch = i686 - arch = x86_64 + arch = any license = LGPL makedepends = gtk-sharp-2 makedepends = libgnomeui makedepends = monodoc source = https://github.com/mono/gnome-sharp/archive/2.24.4.tar.gz source = 06_fix_mono_path.patch + source = 02_fix_pkg-config_paths.patch + source = 04_initialize_dbus_glib_threading.patch md5sums = c3da83bfaa81eb8bac39d7b2232e2604 md5sums = 923434786ec049eed71a68a0825a3d60 + md5sums = a8c1bf57a384f5fc20a5890f9f1cef5a + md5sums = 90cd7ea88aaa3011522376153433d115 pkgname = gnome-sharp pkgdesc = GNOME bindings for C# @@ -23,24 +24,31 @@ pkgname = gnome-sharp depends = libgnome-sharp depends = gnome-vfs-sharp +pkgname = gnome-vfs-sharp + pkgdesc = Mono bindings for GNOME-VFS + depends = gtk-sharp-2 + depends = gnome-vfs + +pkgname = gconf-sharp + pkgdesc = Mono bindings for GConf + depends = gtk-sharp-2 + depends = gconf + pkgname = art-sharp pkgdesc = Mono bindings for libart depends = gtk-sharp-2 depends = libart-lgpl -pkgname = gconf-sharp-peditors - pkgdesc = Mono bindings for GConf - Property Editing classes - depends = gconf-sharp - depends = libgnome-sharp - pkgname = libgnome-sharp pkgdesc = Mono bindings for libgnome + arch = i686 + arch = x86_64 depends = art-sharp depends = gnome-vfs-sharp depends = libgnomeui -pkgname = gnome-vfs-sharp - pkgdesc = Mono bindings for GNOME-VFS - depends = gtk-sharp-2 - depends = gnome-vfs +pkgname = gconf-sharp-peditors + pkgdesc = Mono bindings for GConf - Property Editing classes + depends = gconf-sharp + depends = libgnome-sharp diff --git a/02_fix_pkg-config_paths.patch b/02_fix_pkg-config_paths.patch new file mode 100644 index 000000000000..d8e239032733 --- /dev/null +++ b/02_fix_pkg-config_paths.patch @@ -0,0 +1,49 @@ +## 02_fix_pkg-config_paths.dpatch by Mirco Bauer <meebey@debian.org> +## +## Modified by Archlinux: removed libdir change + +diff -urNad gnome-sharp-2.24.1~/art/art-sharp-2.0.pc.in gnome-sharp-2.24.1/art/art-sharp-2.0.pc.in +--- gnome-sharp-2.24.1~/art/art-sharp-2.0.pc.in 2009-03-21 19:02:54.000000000 +0100 ++++ gnome-sharp-2.24.1/art/art-sharp-2.0.pc.in 2009-03-21 19:03:32.000000000 +0100 +@@ -1,4 +1,4 @@ +-prefix=${pcfiledir}/../.. ++prefix=@prefix@ + exec_prefix=${prefix} + libdir=${exec_prefix}/lib + gapidir=${prefix}/share/gapi-2.0 +diff -urNad gnome-sharp-2.24.1~/gconf/GConf/gconf-sharp-2.0.pc.in gnome-sharp-2.24.1/gconf/GConf/gconf-sharp-2.0.pc.in +--- gnome-sharp-2.24.1~/gconf/GConf/gconf-sharp-2.0.pc.in 2009-03-21 19:02:54.000000000 +0100 ++++ gnome-sharp-2.24.1/gconf/GConf/gconf-sharp-2.0.pc.in 2009-03-21 19:03:26.000000000 +0100 +@@ -1,4 +1,4 @@ +-prefix=${pcfiledir}/../.. ++prefix=@prefix@ + exec_prefix=${prefix} + libdir=${exec_prefix}/lib + +diff -urNad gnome-sharp-2.24.1~/gconf/GConf.PropertyEditors/gconf-sharp-peditors-2.0.pc.in gnome-sharp-2.24.1/gconf/GConf.PropertyEditors/gconf-sharp-peditors-2.0.pc.in +--- gnome-sharp-2.24.1~/gconf/GConf.PropertyEditors/gconf-sharp-peditors-2.0.pc.in 2009-03-21 19:02:54.000000000 +0100 ++++ gnome-sharp-2.24.1/gconf/GConf.PropertyEditors/gconf-sharp-peditors-2.0.pc.in 2009-03-21 19:03:20.000000000 +0100 +@@ -1,4 +1,4 @@ +-prefix=${pcfiledir}/../.. ++prefix=@prefix@ + exec_prefix=${prefix} + libdir=${exec_prefix}/lib + +diff -urNad gnome-sharp-2.24.1~/gnome/gnome-sharp-2.0.pc.in gnome-sharp-2.24.1/gnome/gnome-sharp-2.0.pc.in +--- gnome-sharp-2.24.1~/gnome/gnome-sharp-2.0.pc.in 2009-03-21 19:02:54.000000000 +0100 ++++ gnome-sharp-2.24.1/gnome/gnome-sharp-2.0.pc.in 2009-03-21 19:03:07.000000000 +0100 +@@ -1,4 +1,4 @@ +-prefix=${pcfiledir}/../.. ++prefix=@prefix@ + exec_prefix=${prefix} + libdir=${exec_prefix}/lib + gapidir=${prefix}/share/gapi-2.0 +diff -urNad gnome-sharp-2.24.1~/gnomevfs/gnome-vfs-sharp-2.0.pc.in gnome-sharp-2.24.1/gnomevfs/gnome-vfs-sharp-2.0.pc.in +--- gnome-sharp-2.24.1~/gnomevfs/gnome-vfs-sharp-2.0.pc.in 2009-03-21 19:02:54.000000000 +0100 ++++ gnome-sharp-2.24.1/gnomevfs/gnome-vfs-sharp-2.0.pc.in 2009-03-21 19:03:12.000000000 +0100 +@@ -1,4 +1,4 @@ +-prefix=${pcfiledir}/../.. ++prefix=@prefix@ + exec_prefix=${prefix} + libdir=${exec_prefix}/lib + gapidir=${prefix}/share/gapi-2.0 diff --git a/04_initialize_dbus_glib_threading.patch b/04_initialize_dbus_glib_threading.patch new file mode 100644 index 000000000000..a7f8417181c8 --- /dev/null +++ b/04_initialize_dbus_glib_threading.patch @@ -0,0 +1,51 @@ +From e9d06b56a54dcd399d1d3eaaf62bdacb7e07084d Mon Sep 17 00:00:00 2001 +From: Mirco Bauer <meebey@meebey.net> +Date: Sat, 2 Mar 2013 13:44:46 +0100 +Subject: [PATCH] Explicitly initialize D-Bus GLib threading + +When gconf was switched from orbit to dbus it was no longer thread-safe by +default. This behavior can only get back by explicitly initializing dbus-glib's +threads. This issue affects multi-threaded GConf# users like Banshee leading +them to SEGVs. + +For more details see: +https://bugzilla.gnome.org/show_bug.cgi?id=683830 +--- + gconf/GConf/Client.cs | 11 +++++++++++ + gconf/GConf/gconf-sharp.dll.config.in | 1 + + 2 files changed, 12 insertions(+) + +diff --git a/gconf/GConf/Client.cs b/gconf/GConf/Client.cs +index b8cc881..64efc9f 100644 +--- a/gconf/GConf/Client.cs ++++ b/gconf/GConf/Client.cs +@@ -31,6 +31,17 @@ namespace GConf + [DllImport("gconf-2")] + static extern IntPtr gconf_client_get_default (); + ++ [DllImport("dbus-glib-1")] ++ static extern void dbus_g_thread_init (); ++ ++ static Client () ++ { ++ // HACK: we have to initialize dbus' threading else GConf with its ++ // dbus backend will not be thread safe and SEGVs in our face, see: ++ // https://bugzilla.gnome.org/show_bug.cgi?id=683830 ++ dbus_g_thread_init(); ++ } ++ + public Client () + { + Initialize (); +diff --git a/gconf/GConf/gconf-sharp.dll.config.in b/gconf/GConf/gconf-sharp.dll.config.in +index 9fb7d15..f20ddae 100644 +--- a/gconf/GConf/gconf-sharp.dll.config.in ++++ b/gconf/GConf/gconf-sharp.dll.config.in +@@ -1,3 +1,4 @@ + <configuration> + <dllmap dll="gconf-2" target="libgconf-2@LIB_PREFIX@.4@LIB_SUFFIX@"/> ++ <dllmap dll="dbus-glib-1" target="libdbus-glib-1@LIB_PREFIX@.2@LIB_SUFFIX@"/> + </configuration> +-- +1.7.10.4 + @@ -2,20 +2,31 @@ # Contributor: tobias <tobias@archlinux.org> pkgbase=gnome-sharp -pkgname=('gnome-sharp' 'art-sharp' 'gconf-sharp-peditors' 'libgnome-sharp' 'gnome-vfs-sharp') +pkgname=({gnome{,-vfs},gconf,art,libgnome}-sharp 'gconf-sharp-peditors') pkgvermajor=2 pkgverminor=24 pkgverpatch=4 pkgver=${pkgvermajor}.${pkgverminor}.${pkgverpatch} -pkgrel=5 -arch=(i686 x86_64) +pkgrel=6 +arch=(any) license=(LGPL) url="http://gtk-sharp.sourceforge.net" makedepends=('gtk-sharp-2' 'libgnomeui' 'monodoc') source=(https://github.com/mono/${pkgbase}/archive/${pkgver}.tar.gz - 06_fix_mono_path.patch) + 06_fix_mono_path.patch + 02_fix_pkg-config_paths.patch + 04_initialize_dbus_glib_threading.patch) md5sums=('c3da83bfaa81eb8bac39d7b2232e2604' - '923434786ec049eed71a68a0825a3d60') + '923434786ec049eed71a68a0825a3d60' + 'a8c1bf57a384f5fc20a5890f9f1cef5a' + '90cd7ea88aaa3011522376153433d115') + +prepare() { + cd "${srcdir}/${pkgbase}-${pkgver}" + patch -Np1 < ../06_fix_mono_path.patch + patch -Np1 < ../04_initialize_dbus_glib_threading.patch + patch -Np1 < ../02_fix_pkg-config_paths.patch +} build() { # get rid of that .wapi errors; thanks to brice @@ -23,7 +34,7 @@ build() { mkdir -p "${MONO_SHARED_DIR}" cd "${srcdir}/${pkgbase}-${pkgver}" - patch -Np1 -i ../06_fix_mono_path.patch + ./bootstrap-${pkgvermajor}.${pkgverminor} --prefix=/usr --sysconfdir=/etc make } @@ -41,14 +52,14 @@ package_art-sharp() { make -C art install DESTDIR="${pkgdir}" } -#package_gconf-sharp() { -# pkgdesc="Mono bindings for GConf" -# depends=('gtk-sharp-2' 'gconf') -# -# cd "${srcdir}/${pkgbase}-${pkgver}" -# make -C gconf/GConf install DESTDIR="${pkgdir}" -# make -C gconf/tools install DESTDIR="${pkgdir}" -#} +package_gconf-sharp() { + pkgdesc="Mono bindings for GConf" + depends=('gtk-sharp-2' 'gconf') + + cd "${srcdir}/${pkgbase}-${pkgver}" + make -C gconf/GConf install DESTDIR="${pkgdir}" + make -C gconf/tools install DESTDIR="${pkgdir}" +} package_gconf-sharp-peditors() { pkgdesc="Mono bindings for GConf - Property Editing classes" @@ -59,6 +70,7 @@ package_gconf-sharp-peditors() { } package_libgnome-sharp() { + arch=(i686 x86_64) pkgdesc="Mono bindings for libgnome" depends=('art-sharp' 'gnome-vfs-sharp' 'libgnomeui') |