diff options
Diffstat (limited to 'dev-libs/libgamin')
10 files changed, 489 insertions, 0 deletions
diff --git a/dev-libs/libgamin/Manifest b/dev-libs/libgamin/Manifest new file mode 100644 index 000000000000..9aaa623c6774 --- /dev/null +++ b/dev-libs/libgamin/Manifest @@ -0,0 +1,13 @@ +AUX libgamin-0.1.10-G_CONST_RETURN-removal.patch 2470 BLAKE2B d4676b57dc28efba8be335a50a0e8d27c65da0998f6a533cbe89f7cc166eb4a6aee2375b181fdc7596ce60677b675a8597cf177cab0b3655d425a7282f7db849 SHA512 56cf8439d64c3856cc768a0d6aa67e00e82579b0db60b1f25b195024eec1628f61013718f3139910735eafa15e05f4fabe4373ebac053778abb1c89201c6cf0c +AUX libgamin-0.1.10-armel-features.patch 1490 BLAKE2B 5fa50ed67cd357e5108db27e298f76f0b864f390a4b25d58c968697b67a46e6ad54ef4b799a448e86e44fddd61c90239745f7cbf56deb60e05371e85191fd5b1 SHA512 fe6365489428ca9206a36b8dea495d5c4beb381fe43dd49aa2fa022f8ea34d8068275ce42f41211ef7ce8bb2c1dce952673d4b2e72eec5be00161fa8f8bcb2a5 +AUX libgamin-0.1.10-compilewarnings.patch 526 BLAKE2B d070507a937b3d94e7cf276983134b2b4822bf7cfc62176d69f5075bd78602802839326c6e7b22a95232ab18783ffd00ef3531ad834319e1f2ecaf3fe605f91b SHA512 f413fbd5db1e0412d1fabe6b46e049d347735cf6db7a7ca1eecc9ede1b299a7e622be3c508df40990159e05470d285069a0fa4e2cfcf6fd80378d0aa2b69fd0f +AUX libgamin-0.1.10-crosscompile-fix.patch 764 BLAKE2B 7302b238724927ace5753b5103434533e60563e1d74d9ee9762b961d8e36ace465cb081639585dc7124be5bb0fb5c9f80832d1bfc09a3bb61869acec5abdbfca SHA512 11aca975f98d9364bfdd8e28162f922a96493012fb3c6c704115d33155b2a2e9bbd20aba64354db922f16c3589b88a07091590a5bd6aa806582b9b7875ba8e23 +AUX libgamin-0.1.10-deadlock.patch 2090 BLAKE2B 252b7551ca9ec48af631765ac0413c81c280c478cb9ed5b23efafc07f8c1dccd26305f4688842eed3e587c6bdc19b57c045922158026335e9c6af4abafc57287 SHA512 c0a4a318eb78b9666930e9d1a6fac5e7762f38796e5892d849c893df524310408020ea75fb02a4d79000be3440435ae640340cf2a3dd43fa031df5787762f8de +AUX libgamin-0.1.10-disable_python_static_library.patch 340 BLAKE2B ee1f0fc3ff33594a13603a0912d3b931eaa1d80957751ed60c94db66ef689ca6d75d64c62427371342938d3fdda00c2b7605966fe329a8bf97d4d79f1f021a8f SHA512 8d11f4b891bfc9e1aa6ba99aa485279b29c0a0f154742349035032c5122ae6ef29da5e5f0482791a7b1f7bceebd2bc871f14c3eb96f1947ad791b8036e488b00 +AUX libgamin-0.1.10-noinst-lib.patch 2207 BLAKE2B 28ebca731a16fb10c0f186c3eb75d731a18fd72c239a380a7bf97afacab65792003b433c9030e06c8d7748c0dabe84a92bbad8221d40c9fa9d33c6c00b0dd40d SHA512 ba7ce391f4da1a6b4c75941b8440a72f483b6f2597592f64ddca720bf46b1269e64a20a27da9c35b134100a121990d84e28ac737cffef48e90974a017ba3a4cb +DIST gamin-0.1.10.tar.bz2 452194 BLAKE2B 75537862c2b90734b616630b80103499f549fbab69f2417cc089b050a7e245d89701b0703a0916d6dc08a706785ee509ee4feed0375107f777fdf4248ff5f93b SHA512 ccdbc06eeb958ed2d888aee3fcadbadf00e9e6566802adee82035e0762ac3351ed2a2983eabe07503ddde2ddf035185c6cd98cbece2feadaaa36e8f656a38306 +DIST gamin-0.1.9-freebsd.patch.bz2 4635 BLAKE2B ea27afc7b978e15e9e957cbc1129b5bc8f0dfea7571e7bbfda981bc319929f8702d6a823bababb97af2b1da95c8403e9189c5ecaf599275e063f71d370526b89 SHA512 a9d9a8e4d85b289df6f87bf2b966ff262281db0d7e6094deb4f2c179f12c6cc3e387c1e1c28306a9fb54f2eb2837f9bdd3a34b2bb68db8abfdbecc7492e9730b +DIST libgamin-0.1.10-opensolaris.patch.bz2 16955 BLAKE2B a7c8466fbe9f6613108a6a1b450c47c69018f9f252c17647b07591cf9fba2ba3a08cc344ca54f4647a9c809cecaa18b42bf9f2eff9e253749518b68565024b48 SHA512 fd1cfc5a6b5ba429622f8d426cfba0e3c1c05c3677fb58c53af39b4030ae56f3f71caf63eb5ecb16169c2f7e8c79a32d7d440857c2c7fd3a259cf8312a9b2004 +DIST pkg-config-0.28.tar.gz 1931203 BLAKE2B bafdd4e838623965c6bd454421ddd9051fc43fc29948e1615b49fef463c3c3a18807aabe6416f96cfdf58d6b1c9e114d77f97bd985facee7c14284a8a64a768b SHA512 6eafa5ca77c5d44cd15f48457a5e96fcea2555b66d8e35ada5ab59864a0aa03d441e15f54ab9c6343693867b3b490f392c75b7d9312f024c9b7ec6a0194d8320 +EBUILD libgamin-0.1.10-r5.ebuild 4042 BLAKE2B 7422d4f2111861a4f023da426deb968c1d62dc9fb56ce2ffe4f013ef55c0cd69faa53d30be0401285f65fb6734819d63576445c37f63d18f212d5f293f3fc4e8 SHA512 baf40876d9af784cd793a14ab496057051d6e620af1d72d274b22dac4ed710e71297d0cbbd44ee88bc9e897df71a975782cb7950e9751a4f8c38bb75de405265 +MISC metadata.xml 224 BLAKE2B 50a08713f8b792454787823dd56f1dcc1a1970ded78fa6ddffc6fb7301e0de75018e1e7a8c7ed890b4910f2716d2588ad21c7ae88ad8013b51cab7ba401c46c9 SHA512 12da46d8052565f62c482e6bcc714d8c00cac256f85dc1602579c8d61e0b61af95da149d1a446e56b2eba918ab9d78b556f77c6fe034a2e578f57a9dbe62fc44 diff --git a/dev-libs/libgamin/files/libgamin-0.1.10-G_CONST_RETURN-removal.patch b/dev-libs/libgamin/files/libgamin-0.1.10-G_CONST_RETURN-removal.patch new file mode 100644 index 000000000000..087312f5baae --- /dev/null +++ b/dev-libs/libgamin/files/libgamin-0.1.10-G_CONST_RETURN-removal.patch @@ -0,0 +1,67 @@ +From 2a9d32734a2e5125ae77de6c75789e1c6ee24dbe Mon Sep 17 00:00:00 2001 +From: Maciej Piechotka <uzytkownik2@gmail.com> +Date: Tue, 13 Sep 2011 09:47:05 +0200 +Subject: [PATCH] Fix compilation of recent glib removing G_CONST_RETURN + +--- + server/gam_node.c | 2 +- + server/gam_node.h | 2 +- + server/gam_subscription.c | 2 +- + server/gam_subscription.h | 2 +- + 4 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/server/gam_node.c b/server/gam_node.c +index 02358ba..d0302d2 100644 +--- a/server/gam_node.c ++++ b/server/gam_node.c +@@ -122,7 +122,7 @@ gam_node_set_is_dir(GamNode * node, gboolean is_dir) + * it has finished with the string. If it must keep it longer, it + * should makes its own copy. The returned string must not be freed. + */ +-G_CONST_RETURN char * ++const char * + gam_node_get_path(GamNode * node) + { + g_assert(node); +diff --git a/server/gam_node.h b/server/gam_node.h +index 02c8692..83349a8 100644 +--- a/server/gam_node.h ++++ b/server/gam_node.h +@@ -58,7 +58,7 @@ gboolean gam_node_is_dir (GamNode *node); + void gam_node_set_is_dir (GamNode *node, + gboolean is_dir); + +-G_CONST_RETURN char *gam_node_get_path (GamNode *node); ++const char *gam_node_get_path (GamNode *node); + + GList *gam_node_get_subscriptions (GamNode *node); + +diff --git a/server/gam_subscription.c b/server/gam_subscription.c +index dfa3273..4675b34 100644 +--- a/server/gam_subscription.c ++++ b/server/gam_subscription.c +@@ -141,7 +141,7 @@ gam_subscription_pathlen(GamSubscription * sub) + * @param sub the GamSubscription + * @returns The path being monitored. It should not be freed. + */ +-G_CONST_RETURN char * ++const char * + gam_subscription_get_path(GamSubscription * sub) + { + if (sub == NULL) +diff --git a/server/gam_subscription.h b/server/gam_subscription.h +index d894fbe..e6b4e15 100644 +--- a/server/gam_subscription.h ++++ b/server/gam_subscription.h +@@ -21,7 +21,7 @@ int gam_subscription_pathlen (GamSubscription *sub); + + int gam_subscription_get_reqno (GamSubscription *sub); + +-G_CONST_RETURN char *gam_subscription_get_path (GamSubscription *sub); ++const char *gam_subscription_get_path (GamSubscription *sub); + + GamListener *gam_subscription_get_listener (GamSubscription *sub); + +-- +1.7.6.1 + diff --git a/dev-libs/libgamin/files/libgamin-0.1.10-armel-features.patch b/dev-libs/libgamin/files/libgamin-0.1.10-armel-features.patch new file mode 100644 index 000000000000..fdfcbd7e6db6 --- /dev/null +++ b/dev-libs/libgamin/files/libgamin-0.1.10-armel-features.patch @@ -0,0 +1,47 @@ +From 05dcfcd69848e119c6a30d363bc41e896029f8af Mon Sep 17 00:00:00 2001 +From: Sebastian Dröge <slomo@debian.org> +Date: Tue, 15 Dec 2009 12:24:25 +0000 +Subject: Bug 588338 - Enable linux specific features on armel + +--- +diff --git a/configure.in b/configure.in +index b0bbaec..e4b684e 100644 +--- a/configure.in ++++ b/configure.in +@@ -176,7 +176,7 @@ fi + + dnl check what OS we're on + #AM_CONDITIONAL(HAVE_LINUX, test x$target_os = xlinux-gnu) +-if test x$target_os = xlinux-gnu; then ++if test x$target_os = xlinux-gnu -o x$target_os = xlinux-gnueabi; then + AC_DEFINE([HAVE_LINUX],[],[Whether we are using linux or not]) + fi + +@@ -223,7 +223,7 @@ fi + dnl check if inotify backend is enabled + AM_CONDITIONAL(ENABLE_INOTIFY, test x$inotify = xtrue) + +-if test x$os = xlinux-gnu; then ++if test x$os = xlinux-gnu -o x$os = xlinux-gnueabi; then + AC_ARG_ENABLE(dnotify, + AC_HELP_STRING([--disable-dnotify], [Disable the DNotify backend]), + [dnotify="${enableval}"], [dnotify=true]) +@@ -297,10 +297,12 @@ else + fi + + dnl Use weak symbols on linux/gcc to avoid imposing libpthreads to apps +-if test x$os = xlinux-gnu -a x$WITH_THREADS = x1 ; then +- if test "${CC}" = "gcc" ; then +- echo Use weak symbols ! +- THREAD_LIBS= ++if test x$os = xlinux-gnu -o x$os = xlinux-gnueabi ; then ++ if test x$WITH_THREADS = x1 ; then ++ if test "${CC}" = "gcc" ; then ++ echo Use weak symbols ! ++ THREAD_LIBS= ++ fi + fi + fi + AC_SUBST(THREAD_LIBS) +-- +cgit v0.9.0.2 diff --git a/dev-libs/libgamin/files/libgamin-0.1.10-compilewarnings.patch b/dev-libs/libgamin/files/libgamin-0.1.10-compilewarnings.patch new file mode 100644 index 000000000000..d3e0931391a7 --- /dev/null +++ b/dev-libs/libgamin/files/libgamin-0.1.10-compilewarnings.patch @@ -0,0 +1,22 @@ +--- gamin-0.1.9/lib/gam_error.h.1 2007-08-15 01:09:13.000000000 +0200 ++++ gamin-0.1.9/lib/gam_error.h 2007-08-15 01:09:27.000000000 +0200 +@@ -47,6 +47,9 @@ + + int gam_errno(void); + ++void gam_error_init(void); ++void gam_error_check(void); ++ + #ifdef GAM_DEBUG_ENABLED + + #ifdef GAMIN_DEBUG_API +@@ -70,9 +73,6 @@ + const char* format, ...); + #define GAM_DEBUG if (gam_debug_active) gam_debug + +-void gam_error_init(void); +-void gam_error_check(void); +- + #else + /* + * no debug, redefine the macro empty content diff --git a/dev-libs/libgamin/files/libgamin-0.1.10-crosscompile-fix.patch b/dev-libs/libgamin/files/libgamin-0.1.10-crosscompile-fix.patch new file mode 100644 index 000000000000..ce3a15b5e160 --- /dev/null +++ b/dev-libs/libgamin/files/libgamin-0.1.10-crosscompile-fix.patch @@ -0,0 +1,38 @@ +--- configure.in.orig 2009-04-26 23:00:43.445135823 +0300 ++++ configure.in 2009-04-26 23:25:04.042489243 +0300 +@@ -389,8 +389,7 @@ + + AC_MSG_CHECKING(abstract socket namespace) + AC_LANG_PUSH(C) +-AC_RUN_IFELSE([AC_LANG_PROGRAM( +-[[ ++AC_TRY_RUN([ + #include <sys/types.h> + #include <stdlib.h> + #include <string.h> +@@ -398,8 +397,8 @@ + #include <sys/socket.h> + #include <sys/un.h> + #include <errno.h> +-]], +-[[ ++ ++int main() { + int listen_fd; + struct sockaddr_un addr; + +@@ -424,9 +423,11 @@ + } + else + exit (0); +-]])], +- [have_abstract_sockets=yes], +- [have_abstract_sockets=no]) ++} ++], ++have_abstract_sockets=yes, ++have_abstract_sockets=no, ++have_abstract_sockets=no) + AC_LANG_POP(C) + AC_MSG_RESULT($have_abstract_sockets) + diff --git a/dev-libs/libgamin/files/libgamin-0.1.10-deadlock.patch b/dev-libs/libgamin/files/libgamin-0.1.10-deadlock.patch new file mode 100644 index 000000000000..9f2b2a5150bd --- /dev/null +++ b/dev-libs/libgamin/files/libgamin-0.1.10-deadlock.patch @@ -0,0 +1,65 @@ +From cc14440eface093548cb3bc7814da11d9a99d283 Mon Sep 17 00:00:00 2001 +From: Anssi Hannula <anssi@mageia.org> +Date: Wed, 4 Jan 2012 00:23:55 +0200 +Subject: [PATCH] fix possible server deadlock in ih_sub_cancel + +ih_sub_foreach() calls ih_sub_cancel() while inotify_lock is locked. +However, ih_sub_cancel() locks it again, and locking GMutex recursively +causes undefined behaviour. + +Fix that by removing locking from ih_sub_cancel() as ih_sub_foreach() +is its only user. Also make the function static so that it won't +accidentally get used by other files without locking (inotify-helper.h +is an internal server header). + +This should fix the intermittent deadlocks I've been experiencing +causing KDE applications to no longer start, and probably also +http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=542361 +--- + server/inotify-helper.c | 7 ++----- + server/inotify-helper.h | 1 - + 2 files changed, 2 insertions(+), 6 deletions(-) + +diff --git a/server/inotify-helper.c b/server/inotify-helper.c +index d77203e..0789fa4 100644 +--- a/server/inotify-helper.c ++++ b/server/inotify-helper.c +@@ -123,13 +123,11 @@ ih_sub_add (ih_sub_t * sub) + + /** + * Cancels a subscription which was being monitored. ++ * inotify_lock must be held when calling. + */ +-gboolean ++static gboolean + ih_sub_cancel (ih_sub_t * sub) + { +- G_LOCK(inotify_lock); +- +- + if (!sub->cancelled) + { + IH_W("cancelling %s\n", sub->pathname); +@@ -140,7 +138,6 @@ ih_sub_cancel (ih_sub_t * sub) + sub_list = g_list_remove (sub_list, sub); + } + +- G_UNLOCK(inotify_lock); + return TRUE; + } + +diff --git a/server/inotify-helper.h b/server/inotify-helper.h +index 5d3b6d0..d36b5fd 100644 +--- a/server/inotify-helper.h ++++ b/server/inotify-helper.h +@@ -34,7 +34,6 @@ gboolean ih_startup (event_callback_t ecb, + found_callback_t fcb); + gboolean ih_running (void); + gboolean ih_sub_add (ih_sub_t *sub); +-gboolean ih_sub_cancel (ih_sub_t *sub); + + /* Return FALSE from 'f' if the subscription should be cancelled */ + void ih_sub_foreach (void *callerdata, gboolean (*f)(ih_sub_t *sub, void *callerdata)); +-- +1.7.7.2 + diff --git a/dev-libs/libgamin/files/libgamin-0.1.10-disable_python_static_library.patch b/dev-libs/libgamin/files/libgamin-0.1.10-disable_python_static_library.patch new file mode 100644 index 000000000000..562fc071eac7 --- /dev/null +++ b/dev-libs/libgamin/files/libgamin-0.1.10-disable_python_static_library.patch @@ -0,0 +1,13 @@ +--- python/Makefile.am ++++ python/Makefile.am +@@ -10,8 +10,9 @@ + python_LTLIBRARIES = _gamin.la + + _gamin_la_SOURCES = gamin.c ++_gamin_la_CFLAGS = -shared + _gamin_la_LIBADD = $(top_builddir)/libgamin/libgamin-1.la +-_gamin_la_LDFLAGS = -module -avoid-version ++_gamin_la_LDFLAGS = -module -avoid-version -shared + + python_PYTHON = gamin.py + diff --git a/dev-libs/libgamin/files/libgamin-0.1.10-noinst-lib.patch b/dev-libs/libgamin/files/libgamin-0.1.10-noinst-lib.patch new file mode 100644 index 000000000000..1f2fcff6f5b4 --- /dev/null +++ b/dev-libs/libgamin/files/libgamin-0.1.10-noinst-lib.patch @@ -0,0 +1,76 @@ +From e68aacc084d65fd0780991265444061b24422bd0 Mon Sep 17 00:00:00 2001 +From: Remi Cardona <remi@gentoo.org> +Date: Mon, 20 Oct 2008 19:17:36 +0200 +Subject: [PATCH] make libgamin_shared a "noinst" libtool helper lib + +--- + lib/Makefile.am | 4 ++-- + libgamin/Makefile.am | 15 ++------------- + server/Makefile.am | 2 +- + 3 files changed, 5 insertions(+), 16 deletions(-) + +diff --git a/lib/Makefile.am b/lib/Makefile.am +index 3e2289c..af2152a 100644 +--- a/lib/Makefile.am ++++ b/lib/Makefile.am +@@ -7,9 +7,9 @@ if GAMIN_DEBUG + INCLUDES += -DGAM_DEBUG_ENABLED + endif + +-lib_LIBRARIES = libgamin_shared.a ++noinst_LTLIBRARIES = libgamin_shared.la + +-libgamin_shared_a_SOURCES = \ ++libgamin_shared_la_SOURCES = \ + gam_event.c \ + gam_event.h \ + gam_error.c \ +diff --git a/libgamin/Makefile.am b/libgamin/Makefile.am +index 35aa740..14fc06b 100644 +--- a/libgamin/Makefile.am ++++ b/libgamin/Makefile.am +@@ -25,19 +25,9 @@ libgamin_1_la_SOURCES = \ + gam_data.h \ + gam_fork.c \ + gam_fork.h \ +- gam_protocol.h \ +- gam_error.c \ +- gam_event.c ++ gam_protocol.h + +-gam_error.c: $(top_srcdir)/lib/gam_error.c +- @(cp $(top_srcdir)/lib/gam_error.c gam_error.c) +- +-gam_event.c: $(top_srcdir)/lib/gam_event.c +- @(cp $(top_srcdir)/lib/gam_event.c gam_event.c) +- +-CLEANFILES=gam_error.c gam_event.c +- +-libgamin_1_la_LIBADD = ++libgamin_1_la_LIBADD = $(top_builddir)/lib/libgamin_shared.la + + libgamin_1_la_LDFLAGS = -Wl,--version-script=$(srcdir)/gamin_sym.version \ + -version-info @GAMIN_VERSION_INFO@ @THREAD_LIBS@ +@@ -54,6 +44,5 @@ noinst_PROGRAMS= gamin + + gamin_SOURCES = gamin.c + gamin_LDFLAGS = +-gamin_DEPENDENCIES = $(DEPS) libgamin-1.la + gamin_LDADD= $(LDADDS) libgamin-1.la + +diff --git a/server/Makefile.am b/server/Makefile.am +index 37aed8b..6aa5e02 100644 +--- a/server/Makefile.am ++++ b/server/Makefile.am +@@ -80,7 +80,7 @@ endif + + gam_server_LDFLAGS = + gam_server_DEPENDENCIES = $(DEPS) +-gam_server_LDADD= $(top_builddir)/lib/libgamin_shared.a $(LDADDS) $(DAEMON_LIBS) ++gam_server_LDADD= $(top_builddir)/lib/libgamin_shared.la $(LDADDS) $(DAEMON_LIBS) + + if ENABLE_HURD_MACH_NOTIFY + gam_server_LDADD += -lports -lthreads +-- +1.6.0.2 + diff --git a/dev-libs/libgamin/libgamin-0.1.10-r5.ebuild b/dev-libs/libgamin/libgamin-0.1.10-r5.ebuild new file mode 100644 index 000000000000..47206c41151e --- /dev/null +++ b/dev-libs/libgamin/libgamin-0.1.10-r5.ebuild @@ -0,0 +1,141 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI="5" + +PYTHON_COMPAT=( python2_7 ) +GNOME_ORG_MODULE="gamin" +GNOME_TARBALL_SUFFIX="bz2" + +inherit autotools eutils flag-o-matic libtool python-r1 gnome.org multilib-minimal + +DESCRIPTION="Library providing the FAM File Alteration Monitor API" +HOMEPAGE="https://www.gnome.org/~veillard/gamin/" +SRC_URI="${SRC_URI} + mirror://gentoo/gamin-0.1.9-freebsd.patch.bz2 + https://dev.gentoo.org/~grobian/patches/libgamin-0.1.10-opensolaris.patch.bz2 + https://pkgconfig.freedesktop.org/releases/pkg-config-0.28.tar.gz" # pkg.m4 for eautoreconf + +LICENSE="LGPL-2" +SLOT="0" +KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~x86-solaris" +IUSE="debug kernel_linux python static-libs" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +RESTRICT="test" # needs gam-server + +RDEPEND=" + python? ( ${PYTHON_DEPS} ) + !app-admin/fam + !<app-admin/gamin-0.1.10" +DEPEND="${RDEPEND}" + +src_prepare() { + mv "${WORKDIR}"/pkg-config-*/pkg.m4 "${WORKDIR}"/ || die + + # Fix QA warnings, bug #257281, upstream #466791 + epatch "${FILESDIR}"/${PN}-0.1.10-compilewarnings.patch + + if [[ ${CHOST} != *-solaris* ]] ; then + # Fix compile warnings; bug #188923 + epatch "${DISTDIR}"/gamin-0.1.9-freebsd.patch.bz2 + else + # (Open)Solaris necessary patches (changes configure.in), unfortunately + # conflicts with freebsd patch and breaks some linux installs so it must + # only be applied if on solaris. + epatch "${DISTDIR}"/${P}-opensolaris.patch.bz2 + fi + + # Fix collision problem due to intermediate library, upstream bug #530635 + epatch "${FILESDIR}"/${PN}-0.1.10-noinst-lib.patch + + # Fix compilation with latest glib, bug #382783 + epatch "${FILESDIR}/${PN}-0.1.10-G_CONST_RETURN-removal.patch" + + # Fix crosscompilation issues, bug #267604 + epatch "${FILESDIR}/${PN}-0.1.10-crosscompile-fix.patch" + + # Enable linux specific features on armel, upstream bug #588338 + epatch "${FILESDIR}/${P}-armel-features.patch" + + # Fix possible server deadlock in ih_sub_cancel, upstream bug #667230 + epatch "${FILESDIR}/${PN}-0.1.10-deadlock.patch" + + # Drop DEPRECATED flags + sed -i -e 's:-DG_DISABLE_DEPRECATED:$(NULL):g' server/Makefile.am || die + + # Build only shared version of Python module. + epatch "${FILESDIR}"/${PN}-0.1.10-disable_python_static_library.patch + + sed -i \ + -e 's:AM_CONFIG_HEADER:AC_CONFIG_HEADERS:' \ + -e 's:AM_PROG_CC_STDC:AC_PROG_CC:' \ + configure.in || die #466962 + + # autoconf is required as the user-cflags patch modifies configure.in + # however, elibtoolize is also required, so when the above patch is + # removed, replace the following call with a call to elibtoolize + AT_M4DIR="${WORKDIR}" eautoreconf +} + +multilib_src_configure() { + local myconf=( + $(use_enable static-libs static) + --disable-debug + --disable-server + $(use_enable kernel_linux inotify) + $(use_enable debug debug-api) + --without-python + ) + local ECONF_SOURCE=${S} + + econf "${myconf[@]}" + if multilib_is_native_abi && use python; then + python_configure() { + mkdir -p "${BUILD_DIR}" || die + cd "${BUILD_DIR}" || die + econf "${myconf[@]}" --with-python + } + + python_foreach_impl python_configure + fi +} + +multilib_src_compile() { + default + + if multilib_is_native_abi && use python; then + local native_builddir=${BUILD_DIR} + + python_compile() { + emake -C "${BUILD_DIR}"/python \ + VPATH="${native_builddir}/python:${S}/python" \ + _gamin_la_LIBADD="${native_builddir}/libgamin/libgamin-1.la" + } + + python_foreach_impl python_compile + fi +} + +multilib_src_install() { + emake DESTDIR="${D}" install + + if multilib_is_native_abi && use python; then + local native_builddir=${BUILD_DIR} + + python_install() { + emake -C "${BUILD_DIR}"/python \ + DESTDIR="${D}" install \ + VPATH="${native_builddir}/python:${S}/python" + } + + python_foreach_impl python_install + fi +} + +multilib_src_install_all() { + dodoc AUTHORS ChangeLog README TODO NEWS doc/*txt + dohtml doc/* + + prune_libtool_files --all +} diff --git a/dev-libs/libgamin/metadata.xml b/dev-libs/libgamin/metadata.xml new file mode 100644 index 000000000000..fb76b944f2da --- /dev/null +++ b/dev-libs/libgamin/metadata.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<maintainer type="project"> +<email>freedesktop-bugs@gentoo.org</email> +</maintainer> +</pkgmetadata> |