aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorQuentin Retornaz <gentoo@retornaz.com>2021-01-17 20:28:36 +0100
committerQuentin Retornaz <gentoo@retornaz.com>2021-01-26 01:21:43 +0100
commit00fec71fabb8dbf98e22436a3ac643581149f2dc (patch)
treeb0165ebd519106ac70329a47be7802eec5fee9d6
parentnet-ftp/lftp: new package (diff)
downloadlibressl-00fec71fabb8dbf98e22436a3ac643581149f2dc.tar.gz
libressl-00fec71fabb8dbf98e22436a3ac643581149f2dc.tar.bz2
libressl-00fec71fabb8dbf98e22436a3ac643581149f2dc.zip
net-libs/libnice: new package
Package-Manager: Portage-3.0.12, Repoman-3.0.2 Signed-off-by: Quentin Retornaz <gentoo@retornaz.com>
-rw-r--r--net-libs/libnice/Manifest1
-rw-r--r--net-libs/libnice/files/libnice-0.1.15-libressl.patch57
-rw-r--r--net-libs/libnice/libnice-0.1.15.ebuild58
-rw-r--r--net-libs/libnice/metadata.xml8
4 files changed, 124 insertions, 0 deletions
diff --git a/net-libs/libnice/Manifest b/net-libs/libnice/Manifest
new file mode 100644
index 0000000..dc6cbc3
--- /dev/null
+++ b/net-libs/libnice/Manifest
@@ -0,0 +1 @@
+DIST libnice-0.1.15.tar.gz 1064100 BLAKE2B 81f06ba599b01084586a8d904b9ae513d6bc3531ec42674648fda320eea6cd9348acf423571922bab4e338bf135f85b292046352ed6f5e4fefba736d787b1ff1 SHA512 60a8bcca06c0ab300dfabbf13e45aeac2085d553c420c5cc4d2fdeb46b449b2b9c9aee8015b0662c16bd1cecf5a49824b7e24951a8a0b66a87074cb00a619c0c
diff --git a/net-libs/libnice/files/libnice-0.1.15-libressl.patch b/net-libs/libnice/files/libnice-0.1.15-libressl.patch
new file mode 100644
index 0000000..6c38069
--- /dev/null
+++ b/net-libs/libnice/files/libnice-0.1.15-libressl.patch
@@ -0,0 +1,57 @@
+From 926afef019ca9f297cebbe13479159ac5c087f00 Mon Sep 17 00:00:00 2001
+From: Stefan Strogin <stefan.strogin@gmail.com>
+Date: Fri, 15 Feb 2019 20:45:34 +0200
+Subject: [PATCH] stun: Fix LibreSSL support
+
+Closes #71
+---
+ stun/stunhmac.c | 12 ++++++++----
+ 1 file changed, 8 insertions(+), 4 deletions(-)
+
+diff --git a/stun/stunhmac.c b/stun/stunhmac.c
+index c7d1432..c9d183f 100644
+--- a/stun/stunhmac.c
++++ b/stun/stunhmac.c
+@@ -75,7 +75,8 @@ void stun_sha1 (const uint8_t *msg, size_t len, size_t msg_len, uint8_t *sha,
+ assert (ret == 1);
+ #endif
+
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || \
++ (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x2070000fL)
+ HMAC_CTX stackctx;
+ HMAC_CTX *ctx = &stackctx;
+ HMAC_CTX_init (ctx);
+@@ -101,7 +102,8 @@ void stun_sha1 (const uint8_t *msg, size_t len, size_t msg_len, uint8_t *sha,
+
+ TRY (HMAC_Final (ctx, sha, NULL));
+
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || \
++ (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x2070000fL)
+ HMAC_CTX_cleanup (ctx);
+ #else
+ HMAC_CTX_free (ctx);
+@@ -172,7 +174,8 @@ void stun_hash_creds (const uint8_t *realm, size_t realm_len,
+ #ifdef HAVE_OPENSSL
+ EVP_MD_CTX *ctx;
+
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || \
++ (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x2070000fL)
+ ctx = EVP_MD_CTX_create ();
+ #else
+ ctx = EVP_MD_CTX_new ();
+@@ -186,7 +189,8 @@ void stun_hash_creds (const uint8_t *realm, size_t realm_len,
+ EVP_DigestUpdate (ctx, password_trimmed, password_len);
+ EVP_DigestFinal_ex (ctx, md5, NULL);
+
+-#if OPENSSL_VERSION_NUMBER < 0x10100000L
++#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || \
++ (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x2070000fL)
+ EVP_MD_CTX_destroy (ctx);
+ #else
+ EVP_MD_CTX_free (ctx);
+--
+2.20.1
+
diff --git a/net-libs/libnice/libnice-0.1.15.ebuild b/net-libs/libnice/libnice-0.1.15.ebuild
new file mode 100644
index 0000000..aee3c3f
--- /dev/null
+++ b/net-libs/libnice/libnice-0.1.15.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit multilib-minimal xdg
+
+DESCRIPTION="An implementation of the Interactice Connectivity Establishment standard (ICE)"
+HOMEPAGE="https://nice.freedesktop.org/wiki/"
+SRC_URI="https://nice.freedesktop.org/releases/${P}.tar.gz"
+
+LICENSE="|| ( MPL-1.1 LGPL-2.1 )"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="+gnutls +introspection libressl +upnp"
+
+RDEPEND="
+ >=dev-libs/glib-2.48:2[${MULTILIB_USEDEP}]
+ introspection? ( >=dev-libs/gobject-introspection-1.30.0:= )
+ gnutls? ( >=net-libs/gnutls-2.12.0:0=[${MULTILIB_USEDEP}] )
+ !gnutls? (
+ libressl? ( dev-libs/libressl:0=[${MULTILIB_USEDEP}] )
+ !libressl? ( dev-libs/openssl:0=[${MULTILIB_USEDEP}] ) )
+ upnp? ( >=net-libs/gupnp-igd-0.2.4:=[${MULTILIB_USEDEP}] )
+"
+DEPEND="${RDEPEND}
+ dev-util/glib-utils
+ >=dev-util/gtk-doc-am-1.10
+ virtual/pkgconfig
+"
+
+PATCHES=( "${FILESDIR}/${P}-libressl.patch" ) # https://gitlab.freedesktop.org/libnice/libnice/merge_requests/50
+
+multilib_src_configure() {
+ # gstreamer plugin split off into media-plugins/gst-plugins-libnice
+ ECONF_SOURCE=${S} \
+ econf \
+ --enable-compile-warnings=yes \
+ --disable-static \
+ --disable-static-plugins \
+ --without-gstreamer \
+ --without-gstreamer-0.10 \
+ --with-crypto-library=$(usex gnutls gnutls openssl) \
+ $(multilib_native_use_enable introspection) \
+ $(use_enable upnp gupnp)
+
+ if multilib_is_native_abi; then
+ ln -s {"${S}"/,}docs/reference/libnice/html || die
+ fi
+}
+
+multilib_src_install_all() {
+ einstalldocs
+ find "${ED}" -name '*.la' -delete || die
+}
+
+multilib_src_test() {
+ emake -j1 check
+}
diff --git a/net-libs/libnice/metadata.xml b/net-libs/libnice/metadata.xml
new file mode 100644
index 0000000..3998080
--- /dev/null
+++ b/net-libs/libnice/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+</maintainer>
+</pkgmetadata>