summaryrefslogtreecommitdiff
path: root/media-libs/liblo
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /media-libs/liblo
reinit the tree, so we can have metadata
Diffstat (limited to 'media-libs/liblo')
-rw-r--r--media-libs/liblo/Manifest10
-rw-r--r--media-libs/liblo/files/liblo-0.29-ipv6_build_fix.patch133
-rw-r--r--media-libs/liblo/liblo-0.26.ebuild34
-rw-r--r--media-libs/liblo/liblo-0.28.ebuild40
-rw-r--r--media-libs/liblo/liblo-0.29.ebuild48
-rw-r--r--media-libs/liblo/metadata.xml12
6 files changed, 277 insertions, 0 deletions
diff --git a/media-libs/liblo/Manifest b/media-libs/liblo/Manifest
new file mode 100644
index 000000000000..cdef4f04d81d
--- /dev/null
+++ b/media-libs/liblo/Manifest
@@ -0,0 +1,10 @@
+AUX liblo-0.29-ipv6_build_fix.patch 4943 SHA256 c2de89371805c87a7c11b1212ddae12abe2df36e7db30fb24c1eb3387f30833b SHA512 3f077109bcc8e0e5ffb18e41b8e27a9809aa00f59dbba40c30f3a83a526aad4ca25e620b0fb59825de5da37e27b4596572cfad0769c330eece1cfe857293dc3f WHIRLPOOL 59fa1b9703cfe21d505d50a57548897bf049f194c410c6b54d3b1aa628940dd62b6313ae6ed228988e2beec036cd0b25ff182ff1212efdb8b6166988001b6b20
+DIST liblo-0.26.tar.gz 519750 SHA256 a636fb09f8178ad0d5303e94fec37b182d3062a0e3daee85eed2a39ab6232258 SHA512 5bc720be216b796587ee020cc32bdea760c65ee063a1248a44bb7c800c1a91b5e5a1321b55c61fd3b219aecb0d8cfb4d6bf53a6440d46fd59e8697c63e542215 WHIRLPOOL 4fcfa3dbfe8bbb8887eb18a17c3d3e3d532b9386dd83bbe9fd0d1c075fbf556b7abca626f415b60d69e92df49d7dafc2874d43e83f14bec8990b609ca4f5fe3e
+DIST liblo-0.28.tar.gz 591659 SHA256 da94a9b67b93625354dd89ff7fe31e5297fc9400b6eaf7378c82ee1caf7db909 SHA512 05818218d2d6a7042714b8fa905e7242fb9707795ad53ea27b2a1af3661f0822d25585ce17d286aa269c534ef24e19e377e041bf7fe194c8e47c0046fefcb85f WHIRLPOOL 5de1592d2fe8aee191115ed5b094dd8bb0ca5ec442c94e785c2bc74bef93f3df0dd8804c8aa2a1c3b1a1ce70729fa87c73cd4b09f3535300548999687b9a1ab5
+DIST liblo-0.29.tar.gz 645313 SHA256 ace1b4e234091425c150261d1ca7070cece48ee3c228a5612d048116d864c06a SHA512 11e20725a049c55c02ef8cd106be5802507f3df95422d8dad10009bdd1237af7517e3261c7336c3005e21ae8fd1e663badef46e4bae006c7af70520bdb336c7c WHIRLPOOL 67a3045cec78822bd0f04339f75edd69646db3d94cdb3c48a0ea99001ad0b1cb948ec0ba7f12372489aa62fc8d216ff25a2f671287315c98409e8ecd5d377698
+EBUILD liblo-0.26.ebuild 676 SHA256 ae39611495cb1e6ae9a04bd4f8b013b08c38a8ee34e5100ee6e43bce58a37f8d SHA512 90658883a5c92321a714fcd7ab69261f50ef844a68acea4489ce3278bcd07e5cc84306fc8a421a83e126eb4643aec68e05d6f451e7241c0d035a782f77a6356e WHIRLPOOL 0f3e4cc94a88587f533dfa8dfd3ae0bb3e90e1fa095ab350ed8dedd67cf705f71b8d996cb8f0c86ec966d98682e4f75ea290a62ed16ad7939b509f7929c6f106
+EBUILD liblo-0.28.ebuild 853 SHA256 19d6530868cbcab81cf7f140437c5a78309a8b350f5d39392ff539581d5d080e SHA512 ad184cc6429e80e0078f48618ca8042312a4a8eeba0ebaffc4834c51be373048ada531911f0055eb734a1a218208d02c2a9e9b6c88505e3e4f16d15052b73253 WHIRLPOOL 01bf21d8f7c5f401bb0d97ad2eda84bb4e8bc21dd523727b71a2aaa04e501e401b736bd39a9df7705785ebaa75351f5cfdbc0e73d15c61d5ffcc6583eebf0b5a
+EBUILD liblo-0.29.ebuild 956 SHA256 dacb50229915fa991bd8c2a1a752fd7addc390bd83064d92a5e0b43e1a066769 SHA512 da4f1418df00557d4c15fd3c12431805966d07e04428f0ea6441ce439314e4d3df368a012dbcbac2f89b39700afb3cd9413d592d868bf36b87d9306afba7f743 WHIRLPOOL 31e48172e726959398528515d02ab424ba27922193b144c676e55d29db5f8cff9fe9d64c11c1451c0d03f5c0b92229cd3e98f1d62172335bee75c3a82108658e
+MISC ChangeLog 2551 SHA256 cb48f273630eb1f9ebd273df8e2292edea2ba92f7c66b6c233c1dd413ef10f41 SHA512 e1aee5d08cdddb9cbfb9d2dc068aec0a1f1696705493029066ee35950f0e3435c92af580e059b3c40bf48f9aa94377c9f3055b06af0a337e5d97a08098d8c2a0 WHIRLPOOL 76d4b13685b174827023b5c6b121097eeed27a2f6081b1ac1f0bc483877bafa29fa47a6ac8db18e5f877bd4baa921065cb1cc199210fa3c1ae5f9bd9815d341e
+MISC ChangeLog-2015 3614 SHA256 12a3ee1c99e0ccb905f752b92115e4924ddd09bda28794b0065e27a8f01cf0e0 SHA512 bb961e0069941aa0cb178a04d97406bf3ec43dfb73420f567b3107b9c0aaec8f05669738d99aa83ad1256e0bb9d11fd73463a96639d69dd309b78333a599b862 WHIRLPOOL 77f36f7d79e846e008a28513d885e61d55922e70737233d391776c687e6cbc3961b76a5ea2f1b0f923618e3f30a50902fe91f64f2599a267b9f2e22efcc37d99
+MISC metadata.xml 470 SHA256 dfdd2aefc36a986a79716f8cea5d150666e1fe711005d0a7281f3c3589faa905 SHA512 2604ac7fbd125c9f45faeefcad35a40bcd65d4034311cda5a95ceaaa3904b7e46b6e449f0373ad6f0ffca66ff9bd23d785a035a63888adc754939e19fb93eb56 WHIRLPOOL e421855fa4a1c7c276d4a1a8f6e23d748a49fe3237d8fade217c57d83778d9bd9ff41f6c8e228e4c6a5ee1fc7d08e43cff41e22161420d8fb27986cf5e86f99e
diff --git a/media-libs/liblo/files/liblo-0.29-ipv6_build_fix.patch b/media-libs/liblo/files/liblo-0.29-ipv6_build_fix.patch
new file mode 100644
index 000000000000..484fddbd6032
--- /dev/null
+++ b/media-libs/liblo/files/liblo-0.29-ipv6_build_fix.patch
@@ -0,0 +1,133 @@
+From 968dff4d576ca102525c81beddb36a623890424b Mon Sep 17 00:00:00 2001
+From: Stephen Sinclair <radarsat1@gmail.com>
+Date: Tue, 29 Aug 2017 14:32:24 -0300
+Subject: [PATCH] Resolve hostname using getnameinfo for ipv6 support.
+
+Iterates on interfaces, possibly searching for a pre-selected
+interface, and resolves the hostname associated with non-localhost
+addresses.
+
+Fixes #56, fix compilation with --enable-ipv6.
+---
+ src/server.c | 74 ++++++++++++++++++++++++++++++++++++++++++++++++++++--------
+ src/testlo.c | 7 ++++++
+ 2 files changed, 72 insertions(+), 9 deletions(-)
+
+diff --git a/src/server.c b/src/server.c
+index cf20495..4aff673 100644
+--- a/src/server.c
++++ b/src/server.c
+@@ -55,6 +55,10 @@
+ #endif
+ #include <sys/un.h>
+ #include <arpa/inet.h>
++#include <netinet/in.h>
++#ifdef HAVE_GETIFADDRS
++#include <ifaddrs.h>
++#endif
+ #endif
+
+ #if defined(WIN32) || defined(_MSC_VER)
+@@ -298,20 +302,72 @@ void lo_server_resolve_hostname(lo_server s)
+ /* Set hostname to empty string */
+ hostname[0] = '\0';
+
+-#ifdef ENABLE_IPV6
++#if defined(ENABLE_IPV6) && defined(HAVE_GETIFADDRS)
+ /* Try it the IPV6 friendly way first */
+- for (it = ai; it; it = it->ai_next) {
+- if (getnameinfo(it->ai_addr, it->ai_addrlen, hostname,
+- sizeof(hostname), NULL, 0, NI_NAMEREQD) == 0) {
++ do {
++ struct ifaddrs *ifa, *ifa_list;
++ if (getifaddrs(&ifa_list))
+ break;
++ ifa = ifa_list;
++
++ while (ifa) {
++ if (!ifa->ifa_addr) {
++ ifa = ifa->ifa_next;
++ continue;
++ }
++
++ if (s->addr_if.iface) {
++ if (s->addr_if.size == sizeof(struct in_addr)
++ && (ifa->ifa_addr->sa_family == AF_INET))
++ {
++ struct sockaddr_in *sin = (struct sockaddr_in*)ifa->ifa_addr;
++ if (memcmp(&sin->sin_addr, &s->addr_if.a.addr, sizeof(struct in_addr))!=0
++ || (s->addr_if.iface && ifa->ifa_name
++ && strcmp(s->addr_if.iface, ifa->ifa_name)!=0))
++ {
++ ifa = ifa->ifa_next;
++ continue;
++ }
++ }
++ else if (s->addr_if.size == sizeof(struct in6_addr)
++ && (ifa->ifa_addr->sa_family == AF_INET6))
++ {
++ struct sockaddr_in6 *sin = (struct sockaddr_in6*)ifa->ifa_addr;
++ if (memcmp(&sin->sin6_addr, &s->addr_if.a.addr6,
++ sizeof(struct in6_addr))!=0
++ || (s->addr_if.iface && ifa->ifa_name
++ && strcmp(s->addr_if.iface, ifa->ifa_name)!=0))
++ {
++ ifa = ifa->ifa_next;
++ continue;
++ }
++ }
++ }
++
++ if ((ifa->ifa_addr->sa_family == AF_INET
++ && (!s->addr_if.iface || s->addr_if.size == sizeof(struct in_addr))
++ && (getnameinfo(ifa->ifa_addr, sizeof(struct sockaddr_in), hostname,
++ sizeof(hostname), NULL, 0, NI_NAMEREQD) == 0))
++ || (ifa->ifa_addr->sa_family == AF_INET6
++ && (!s->addr_if.iface || s->addr_if.size == sizeof(struct in6_addr))
++ && (getnameinfo(ifa->ifa_addr, sizeof(struct sockaddr_in6), hostname,
++ sizeof(hostname), NULL, 0, NI_NAMEREQD) == 0)))
++ {
++ /* check to make sure getnameinfo() didn't just set the hostname to "::".
++ Needed on Darwin. */
++ if (hostname[0] == ':')
++ hostname[0] = '\0';
++ else if (strcmp(hostname, "localhost")==0)
++ hostname[0] = '\0';
++ else
++ break;
++ }
++ ifa = ifa->ifa_next;
+ }
+- }
+
+- /* check to make sure getnameinfo() didn't just set the hostname to "::".
+- Needed on Darwin. */
+- if (hostname[0] == ':') {
+- hostname[0] = '\0';
++ freeifaddrs(ifa_list);
+ }
++ while (0);
+ #endif
+
+ /* Fallback to the oldschool (i.e. more reliable) way */
+diff --git a/src/testlo.c b/src/testlo.c
+index c128d10..c69570c 100644
+--- a/src/testlo.c
++++ b/src/testlo.c
+@@ -704,6 +704,13 @@ void test_multicast(lo_server_thread st)
+
+ DOING("test_multicast");
+
++#ifdef ENABLE_IPV6
++ // Print a warning but we let it fail, prefer to actually fix IPv6
++ // support rather than just skip the test!
++ printf("WARNING: Compiled with --enable-ipv6, multicast not supported;"
++ "failure expected.\n");
++#endif
++
+ /* test multicast server and sender */
+ /* message is sent from st otherwise reply doesn't work */
+ ms = lo_server_new_multicast("224.0.1.1", "15432", error);
+--
+2.14.1
+
diff --git a/media-libs/liblo/liblo-0.26.ebuild b/media-libs/liblo/liblo-0.26.ebuild
new file mode 100644
index 000000000000..5aadd0c651a7
--- /dev/null
+++ b/media-libs/liblo/liblo-0.26.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=4
+inherit eutils
+
+DESCRIPTION="Lightweight OSC (Open Sound Control) implementation"
+HOMEPAGE="http://plugin.org.uk/liblo"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="amd64 ppc ppc64 x86 ~ppc-macos"
+IUSE="doc ipv6 static-libs"
+
+RESTRICT="test"
+
+RDEPEND=""
+DEPEND="doc? ( app-doc/doxygen )"
+
+DOCS="AUTHORS ChangeLog NEWS README TODO"
+
+src_configure() {
+ use doc || export ac_cv_prog_HAVE_DOXYGEN=false
+
+ econf \
+ $(use_enable static-libs static) \
+ $(use_enable ipv6)
+}
+
+src_install() {
+ default
+ prune_libtool_files
+}
diff --git a/media-libs/liblo/liblo-0.28.ebuild b/media-libs/liblo/liblo-0.28.ebuild
new file mode 100644
index 000000000000..0a5d5b548d3e
--- /dev/null
+++ b/media-libs/liblo/liblo-0.28.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+inherit eutils autotools
+
+DESCRIPTION="Lightweight OSC (Open Sound Control) implementation"
+HOMEPAGE="http://plugin.org.uk/liblo"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~ppc-macos"
+IUSE="doc ipv6 static-libs"
+
+RESTRICT="test"
+
+DEPEND="doc? ( app-doc/doxygen )"
+
+src_prepare() {
+ # don't build examples by default
+ sed -i '/^SUBDIRS =/s/examples//' Makefile.am || die
+
+ eautoreconf
+}
+
+src_configure() {
+ use doc || export ac_cv_prog_HAVE_DOXYGEN=false
+
+ # switching threads on/off breaks ABI, bugs #473282, #473286 and #473356
+ econf \
+ $(use_enable static-libs static) \
+ $(use_enable ipv6) \
+ --enable-threads
+}
+
+src_install() {
+ default
+ prune_libtool_files
+}
diff --git a/media-libs/liblo/liblo-0.29.ebuild b/media-libs/liblo/liblo-0.29.ebuild
new file mode 100644
index 000000000000..1cbfdfdb7ac1
--- /dev/null
+++ b/media-libs/liblo/liblo-0.29.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit autotools ltprune
+
+DESCRIPTION="Lightweight OSC (Open Sound Control) implementation"
+HOMEPAGE="http://plugin.org.uk/liblo"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ppc ppc64 ~x86 ~ppc-macos"
+IUSE="doc ipv6 static-libs"
+
+RESTRICT="test"
+
+DEPEND="doc? ( app-doc/doxygen )"
+
+PATCHES=(
+ "${FILESDIR}/${P}-ipv6_build_fix.patch" #627832
+)
+
+src_prepare() {
+ default
+
+ # don't build examples by default
+ sed -i '/^SUBDIRS =/s/examples//' Makefile.am || die
+
+ eautoreconf
+}
+
+src_configure() {
+ use doc || export ac_cv_prog_HAVE_DOXYGEN=false
+
+ # switching threads on/off breaks ABI, bugs #473282, #473286 and #473356
+ myeconfargs=(
+ --enable-threads
+ $(use_enable ipv6)
+ $(use_enable static-libs static)
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+ prune_libtool_files
+}
diff --git a/media-libs/liblo/metadata.xml b/media-libs/liblo/metadata.xml
new file mode 100644
index 000000000000..ef9db24197f7
--- /dev/null
+++ b/media-libs/liblo/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>sound@gentoo.org</email>
+ <name>Gentoo Sound project</name>
+ </maintainer>
+ <longdescription>liblo is an implementation of the Open Sound Control protocol for POSIX systems, started by Steve Harris.</longdescription>
+ <upstream>
+ <remote-id type="sourceforge">liblo</remote-id>
+ </upstream>
+</pkgmetadata>