diff options
author | Fredric Johansson <fredric.miscmail@gmail.com> | 2015-01-18 05:00:41 +0000 |
---|---|---|
committer | Anthony G. Basile <blueness@gentoo.org> | 2015-02-02 06:56:58 -0500 |
commit | a3243c15b2f6545ca4b8204b43c720eb4fa9460d (patch) | |
tree | 4a610d7616fdb1dd266f4123b75524e91fc8c12a | |
parent | Change repo_name to hardened-development (diff) | |
download | hardened-dev-a3243c15b2f6545ca4b8204b43c720eb4fa9460d.tar.gz hardened-dev-a3243c15b2f6545ca4b8204b43c720eb4fa9460d.tar.bz2 hardened-dev-a3243c15b2f6545ca4b8204b43c720eb4fa9460d.zip |
dev-libs/libgamin: fixed to build on musl, patch from Alpine linux
11 files changed, 503 insertions, 0 deletions
diff --git a/dev-libs/libgamin/Manifest b/dev-libs/libgamin/Manifest new file mode 100644 index 00000000..3e28cef4 --- /dev/null +++ b/dev-libs/libgamin/Manifest @@ -0,0 +1,14 @@ +AUX libgamin-0.1.10-G_CONST_RETURN-removal.patch 2470 SHA256 adddd1f54bb33669d9163398308ebb732f33b6c12b1363a0dcf765ff28fc30ad SHA512 56cf8439d64c3856cc768a0d6aa67e00e82579b0db60b1f25b195024eec1628f61013718f3139910735eafa15e05f4fabe4373ebac053778abb1c89201c6cf0c WHIRLPOOL 425495ec6bb9cc5993631b9c5ef24d33261f71e9a039120a373235bae3cb386b8a938cd06714a6fba57a2378f868d372b063efc325bc98faa43b3c136c4d00b1 +AUX libgamin-0.1.10-armel-features.patch 1490 SHA256 6b6faf3084ca2ddf577575395172901d637a96e5db8dd42bc5268d58a767d30e SHA512 fe6365489428ca9206a36b8dea495d5c4beb381fe43dd49aa2fa022f8ea34d8068275ce42f41211ef7ce8bb2c1dce952673d4b2e72eec5be00161fa8f8bcb2a5 WHIRLPOOL 935fde8a3683a1cb9f7f44307fe136a7f8251982501e54209625bee681d8ef23cfbf27d5f8b127da200a800c778b91013124ddd8caf970810c018d7f44dc356a +AUX libgamin-0.1.10-compilewarnings.patch 526 SHA256 dfca2bee08ba14c873a6bcd732359dd7e3a9372d6d9fb82378194d7a73a30e68 SHA512 f413fbd5db1e0412d1fabe6b46e049d347735cf6db7a7ca1eecc9ede1b299a7e622be3c508df40990159e05470d285069a0fa4e2cfcf6fd80378d0aa2b69fd0f WHIRLPOOL ae2277d225551e1b7bbaa897b675b51e561b8e3f71a2456dafea4d7cf697437534aedf286ae9399e8445aca83c02dedd5ce2ac3d9c085293210e3c0bf9af2dea +AUX libgamin-0.1.10-crosscompile-fix.patch 764 SHA256 27e92227c19a6ae61336f66cefe7d44fca43fe7e0c8122fe32c313b4d848f28c SHA512 11aca975f98d9364bfdd8e28162f922a96493012fb3c6c704115d33155b2a2e9bbd20aba64354db922f16c3589b88a07091590a5bd6aa806582b9b7875ba8e23 WHIRLPOOL 61c2c95cd7874eb106fcb1e474a10e21ce79d0c10220520810d904e4dac106ccfe12a09782d0ea7cb42c7369a1226fca9b7f4d826e5f62140713ea6a8ac967c2 +AUX libgamin-0.1.10-deadlock.patch 2090 SHA256 75cee6cb0210cec02be1e042454f561da20724c55810f968b0a5f4972f9cbfd5 SHA512 c0a4a318eb78b9666930e9d1a6fac5e7762f38796e5892d849c893df524310408020ea75fb02a4d79000be3440435ae640340cf2a3dd43fa031df5787762f8de WHIRLPOOL 9d5b26134ccd1e13c25f5bfe3295bdec7c1a8cdd73f21b1cb65ff50dc910e533c3ac5b28508cb7f93a15096e365aa25cdaf9f32d8d76cadf435215b8aebdb090 +AUX libgamin-0.1.10-disable_python_static_library.patch 340 SHA256 460306119bc6be6fd19d173eadfa28493fc72e90fceaf3ee49b50fee50a4f5d1 SHA512 8d11f4b891bfc9e1aa6ba99aa485279b29c0a0f154742349035032c5122ae6ef29da5e5f0482791a7b1f7bceebd2bc871f14c3eb96f1947ad791b8036e488b00 WHIRLPOOL 59fb95c4acb5f14897f274d1ad72bf0ddd67a0e905f4098894e2d56767c3930a99b4a459c0bcab607917b0305dab1ca516c8158ce9700c6de88648995e688be1 +AUX libgamin-0.1.10-fix-pthread-mutex.patch 417 SHA256 bfd5ee42e385367718a4dac8ab318f9a5881ab8b669e4020f87aacaef16a2f8e SHA512 70628fc39521ea8bc4a40b009d0881f6ee540334a31b2f0cb67dde0f75808c69feb78088ad24c3c4a0dec9fa59e87960fd81d1a2e56963ce9268d0a5e14f88e8 WHIRLPOOL e2268fe0e7ee84d4b5656ff392717c1888e6438a24132ccc701a9a3b19ad1717409df7ccc2945cdd350ce79630e3debc4b28da5d857323a128f8ad0892d8f4bb +AUX libgamin-0.1.10-noinst-lib.patch 2207 SHA256 e19ede71d259fbe5888c06635441365a48687034b24c5f15edd808a7cbd9cdc7 SHA512 ba7ce391f4da1a6b4c75941b8440a72f483b6f2597592f64ddca720bf46b1269e64a20a27da9c35b134100a121990d84e28ac737cffef48e90974a017ba3a4cb WHIRLPOOL d3605973df5f148d03d65a6660925dd2c1bca5bda9574714fb3259f630341cdeb3d5d7c73986fa0a6eacb0f34c584eb25c8f6ed431d1b95df21a974241678124 +DIST gamin-0.1.10.tar.bz2 452194 SHA256 a59948b20ce2f14136c013f155abb8c8d51db2ea167c063ff33461e453fec10a SHA512 ccdbc06eeb958ed2d888aee3fcadbadf00e9e6566802adee82035e0762ac3351ed2a2983eabe07503ddde2ddf035185c6cd98cbece2feadaaa36e8f656a38306 WHIRLPOOL 49ca0e192d8f5e28d6ffbb201b98b0f2c736554447b37c50eaa6e76e499ab77d696cf585c96c6a38f94c2589c634e694daf2e4969ffddbbb245b07b8a6e7b2d8 +DIST gamin-0.1.9-freebsd.patch.bz2 4635 SHA256 fcd1a6655d1c7cd86db6102931a4da1c22bc85f1c4692959c1a966fec5231723 SHA512 a9d9a8e4d85b289df6f87bf2b966ff262281db0d7e6094deb4f2c179f12c6cc3e387c1e1c28306a9fb54f2eb2837f9bdd3a34b2bb68db8abfdbecc7492e9730b WHIRLPOOL 462173a33e8f804b71c6991aa5925a5c9a6ee83f80b13967369c5c45721069e629c052e5daebfc3fb03bbad4d3054b523afb6e430db997581f3ff942f7da3180 +DIST libgamin-0.1.10-opensolaris.patch.bz2 16955 SHA256 9cb1bde5a34888ce4de4c4894c7d31dbfdbfb3279007b9eddf2da35510f6a9b5 SHA512 fd1cfc5a6b5ba429622f8d426cfba0e3c1c05c3677fb58c53af39b4030ae56f3f71caf63eb5ecb16169c2f7e8c79a32d7d440857c2c7fd3a259cf8312a9b2004 WHIRLPOOL 3efbf3781a55f44f383e573db4a3b3df731e9f77608d73db4ff3027eae0bda6abb6eae022c094735c0d8d2a85e224a980436d8557f9350bb1558b40d99280701 +DIST pkg-config-0.28.tar.gz 1931203 SHA256 6b6eb31c6ec4421174578652c7e141fdaae2dabad1021f420d8713206ac1f845 SHA512 6eafa5ca77c5d44cd15f48457a5e96fcea2555b66d8e35ada5ab59864a0aa03d441e15f54ab9c6343693867b3b490f392c75b7d9312f024c9b7ec6a0194d8320 WHIRLPOOL db4ddb4ce61724e629931c5ffccb4d7a551b4dc0f4efed5a966822307e4b5a786adee5705dd80ec0a9aa32cb1af9ad9615e307360e131fc34688207216161486 +EBUILD libgamin-0.1.10-r99.ebuild 4061 SHA256 4a309ff64993ee78ef757487a6c2eeb9b23201744b1db70906eaf7279889b4c4 SHA512 34fea1f9327fd1b75e6d0c123d75801d6d0f0963c7ddfc057c780fc4e9682c5ba5aee5ee80c71cecd1504d6c1cd76e1bf1efb5e8244d267e00289aea7e37d4ad WHIRLPOOL caf86538b138ae0ab10f71969f05694fed401e45956144b8e5f13153f29f364395b6be2a7ae6d1d50a1a91e87f4df720fbd931898f80f9af01f02771a9f790d7 +MISC metadata.xml 234 SHA256 3018e3b31ed690a57bfc14e35699dd20ea3b352fc28b918f699e6955b57a2d97 SHA512 eed880663c66280f6688f896bd6b82d600cac0063eb79da7b1be0fe3bf866e7289edb389a505dfbf45bd9c7e5282748dadd7bf3477759788c1024300796545c3 WHIRLPOOL 79028c7efb93b6255351aebe7f35d1587d07ec1405e8fbee4fd874e42e57e6d10368b0f4ab60c89e115493a094f36af8be1bc2fe79fc2d34daae83dc0f8d7b16 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 00000000..087312f5 --- /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 00000000..fdfcbd7e --- /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 00000000..d3e09313 --- /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 00000000..ce3a15b5 --- /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 00000000..9f2b2a51 --- /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 00000000..562fc071 --- /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-fix-pthread-mutex.patch b/dev-libs/libgamin/files/libgamin-0.1.10-fix-pthread-mutex.patch new file mode 100644 index 00000000..c8c5b000 --- /dev/null +++ b/dev-libs/libgamin/files/libgamin-0.1.10-fix-pthread-mutex.patch @@ -0,0 +1,11 @@ +--- gamin-0.1.10.orig/libgamin/gam_data.c ++++ gamin-0.1.10/libgamin/gam_data.c +@@ -470,7 +470,7 @@ + } + if (is_threaded > 0) { + pthread_mutexattr_init(&attr); +-#if defined(linux) || defined(PTHREAD_MUTEX_RECURSIVE_NP) ++#if defined(linux) && defined(PTHREAD_MUTEX_RECURSIVE_NP) + pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE_NP); + #else + pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE); 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 00000000..1f2fcff6 --- /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-r99.ebuild b/dev-libs/libgamin/libgamin-0.1.10-r99.ebuild new file mode 100644 index 00000000..176ddde5 --- /dev/null +++ b/dev-libs/libgamin/libgamin-0.1.10-r99.ebuild @@ -0,0 +1,142 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-libs/libgamin/libgamin-0.1.10-r5.ebuild,v 1.12 2014/12/06 16:40:07 ago Exp $ + +EAPI="5" + +PYTHON_COMPAT=( python{2_6,2_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="http://www.gnome.org/~veillard/gamin/" +SRC_URI="${SRC_URI} + mirror://gentoo/gamin-0.1.9-freebsd.patch.bz2 + http://dev.gentoo.org/~grobian/patches/libgamin-0.1.10-opensolaris.patch.bz2 + http://pkgconfig.freedesktop.org/releases/pkg-config-0.28.tar.gz" # pkg.m4 for eautoreconf + +LICENSE="LGPL-2" +SLOT="0" +KEYWORDS="amd64 arm ~mips ppc x86" +IUSE="debug kernel_linux python static-libs" + +RESTRICT="test" # needs gam-server + +RDEPEND="!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 + + # Fix build on musl + epatch "${FILESDIR}"/${PN}-0.1.10-fix-pthread-mutex.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_parallel_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 00000000..8c868061 --- /dev/null +++ b/dev-libs/libgamin/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<herd>freedesktop</herd> +<maintainer> +<email>freedesktop-bugs@gentoo.org</email> +</maintainer> +</pkgmetadata> |