dev-libs/libuv: Sync with Gentoo

It's from Gentoo commit 3331727427deec8acf5ce5826ede0e835259fc3e.
This commit is contained in:
Flatcar Buildbot 2023-11-27 07:10:45 +00:00 committed by Krzesimir Nowak
parent 29603e4428
commit ff0dcc6cec
7 changed files with 149 additions and 4 deletions

View File

@ -1,3 +1,4 @@
DIST libuv-1.44.2.tar.gz 1309062 BLAKE2B 883a1fbffcd8f55bf28ea5a79ed18aa3e2f2fac126285e8aca2ef9370eafc62f69f95ddb8bf27d4159e038bfb0a01abafdf0dadbc4309e5d31f0e77057ee84ac SHA512 d21c890787b0b364fafa5fc0cbbff296bc2ca269e1991d2f7f35fcb37b8634da377466f5af5a4245425fcf876ae6870d100ab32b12bce64f8e0b01fd25a1bc83
DIST libuv-1.45.0.tar.gz 1307245 BLAKE2B fcd9aad052cf641e5e974b1e3c47bef7968474f4b0e38363559719a164867ce6e67630c1d0fd0386da22ba5b82e35c6ca946b7509a8a08f08f972388e70a40b9 SHA512 a156dd0ed06bc7c50515f46ef6e5636d870288636f442ce9ec46716e22fdaa664ce49e432f4737c81e9c6013b34ed150e7420ab9fc316ed23281096954359774
DIST libuv-1.46.0.tar.gz 1311065 BLAKE2B fd492b6ca873a08ad4df7561b9d83a09d9bd2cbc10c17265c02982a231edb5c6d71698aecc9a14d455ea230f9e791807f42561d8b3c96e37edb4a709860859b0 SHA512 e3a7c10ffd909f9b128fb2316e09b8456e87278107178b49368f31ba30e7f62d64e7eba650cc59ef2d7eb178199c7a2c5b5c99b333849200492235116d7aee7a
DIST libuv-1.47.0.tar.gz 1316016 BLAKE2B 6c530f8625366a9bf3f99ac4eb6b3bf3d4f6a05f98848e08cdab884934d79862cf8e79dd2d506ec734d701faab517eba2215063dce4b4216add5cfd6bfebd82e SHA512 3d0e76c4e29c5de14fddda07409f8db30dc64261d1c0bdfce7f70eb8f5ac911707fe662e81c4f117e4068cb0728158fc2b8255f8aa497c0f688e46c7fb93a5b3

View File

@ -0,0 +1,32 @@
https://github.com/libuv/libuv/commit/f1444293652cf5478a67b9305271d73ad6d36232
From f1444293652cf5478a67b9305271d73ad6d36232 Mon Sep 17 00:00:00 2001
From: matoro <12038583+matoro@users.noreply.github.com>
Date: Wed, 15 Nov 2023 17:57:06 -0500
Subject: [PATCH] linux: disable io_uring on hppa below kernel 6.1.51 (#4224)
First kernel with support is 6.1, was only fully functional from .51
onwards: https://lore.kernel.org/all/cb912694-b1fe-dbb0-4d8c-d608f3526905@gmx.de/
Co-authored-by: matoro <matoro@users.noreply.github.com>
--- a/src/unix/linux.c
+++ b/src/unix/linux.c
@@ -487,8 +487,16 @@ static int uv__use_io_uring(void) {
use = atomic_load_explicit(&use_io_uring, memory_order_relaxed);
if (use == 0) {
+ use = uv__kernel_version() >=
+#if defined(__hppa__)
+ /* io_uring first supported on parisc in 6.1, functional in .51 */
+ /* https://lore.kernel.org/all/cb912694-b1fe-dbb0-4d8c-d608f3526905@gmx.de/ */
+ /* 6.1.51 */ 0x060133
+#else
/* Older kernels have a bug where the sqpoll thread uses 100% CPU. */
- use = uv__kernel_version() >= /* 5.10.186 */ 0x050ABA ? 1 : -1;
+ /* 5.10.186 */ 0x050ABA
+#endif
+ ? 1 : -1;
/* But users can still enable it if they so desire. */
val = getenv("UV_USE_IO_URING");

View File

@ -0,0 +1,54 @@
https://github.com/libuv/libuv/issues/4211
https://github.com/libuv/libuv/pull/4220
https://github.com/libuv/libuv/commit/54d8364c2406758b572621af381f1d83e01ae46c
From 54d8364c2406758b572621af381f1d83e01ae46c Mon Sep 17 00:00:00 2001
From: Ben Noordhuis <info@bnoordhuis.nl>
Date: Tue, 14 Nov 2023 22:09:30 +0100
Subject: [PATCH] test: check if ipv6 link-local traffic is routable (#4220)
Fixes: https://github.com/libuv/libuv/issues/4211
--- a/test/test-tcp-connect6-error.c
+++ b/test/test-tcp-connect6-error.c
@@ -23,6 +23,7 @@
#include "task.h"
#include <stdio.h>
#include <stdlib.h>
+#include <string.h>
static int connect_cb_called = 0;
@@ -75,9 +76,13 @@ TEST_IMPL(tcp_connect6_error_fault) {
TEST_IMPL(tcp_connect6_link_local) {
+ uv_interface_address_t* ifs;
+ uv_interface_address_t* p;
struct sockaddr_in6 addr;
uv_connect_t req;
uv_tcp_t server;
+ int ok;
+ int n;
if (!can_ipv6())
RETURN_SKIP("IPv6 not supported");
@@ -90,6 +95,18 @@ TEST_IMPL(tcp_connect6_link_local) {
RETURN_SKIP("Test does not currently work in QEMU");
#endif /* defined(__QEMU__) */
+ /* Check there's an interface that routes link-local (fe80::/10) traffic. */
+ ASSERT_OK(uv_interface_addresses(&ifs, &n));
+ for (p = ifs; p < &ifs[n]; p++)
+ if (p->address.address6.sin6_family == AF_INET6)
+ if (!memcmp(&p->address.address6.sin6_addr, "\xfe\x80", 2))
+ break;
+ ok = (p < &ifs[n]);
+ uv_free_interface_addresses(ifs, n);
+
+ if (!ok)
+ RETURN_SKIP("IPv6 link-local traffic not supported");
+
ASSERT_OK(uv_ip6_addr("fe80::0bad:babe", 1337, &addr));
ASSERT_OK(uv_tcp_init(uv_default_loop(), &server));

View File

@ -13,7 +13,7 @@ if [[ ${PV} = 9999* ]]; then
inherit git-r3
else
SRC_URI="https://github.com/libuv/libuv/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 -hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
fi
LICENSE="BSD BSD-2 ISC MIT"

View File

@ -13,7 +13,7 @@ if [[ ${PV} = 9999* ]]; then
inherit git-r3
else
SRC_URI="https://github.com/libuv/libuv/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
KEYWORDS="~alpha amd64 arm arm64 -hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
fi
LICENSE="BSD BSD-2 ISC MIT"

View File

@ -0,0 +1,58 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools
DESCRIPTION="Cross-platform asychronous I/O"
HOMEPAGE="https://github.com/libuv/libuv"
if [[ ${PV} = 9999* ]]; then
EGIT_REPO_URI="https://github.com/libuv/libuv.git"
inherit git-r3
else
SRC_URI="https://github.com/libuv/libuv/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
fi
LICENSE="BSD BSD-2 ISC MIT"
SLOT="0/1"
BDEPEND="
sys-devel/libtool
virtual/pkgconfig
"
PATCHES=(
"${FILESDIR}"/${P}-ipv6-tests.patch
"${FILESDIR}"/${P}-hppa-kernel.patch
)
src_prepare() {
default
echo "m4_define([UV_EXTRA_AUTOMAKE_FLAGS], [serial-tests])" \
> m4/libuv-extra-automake-flags.m4 || die
if [[ ${CHOST} == *-darwin* && ${CHOST##*darwin} -le 9 ]] ; then
eapply "${FILESDIR}"/${PN}-1.41.0-darwin.patch
fi
# Upstream fails to ship a configure script
eautoreconf
}
src_configure() {
local myeconfargs=(
cc_cv_cflags__g=no
)
econf "${myeconfargs[@]}"
}
src_install() {
default
find "${ED}" -name '*.la' -delete || die
}

View File

@ -1,4 +1,4 @@
# Copyright 1999-2022 Gentoo Authors
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@ -13,7 +13,7 @@ if [[ ${PV} = 9999* ]]; then
inherit git-r3
else
SRC_URI="https://github.com/libuv/libuv/archive/v${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
fi
LICENSE="BSD BSD-2 ISC MIT"