summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames Le Cuirot <chewi@gentoo.org>2023-03-19 10:42:12 +0000
committerJames Le Cuirot <chewi@gentoo.org>2023-03-19 10:45:54 +0000
commitfb1defa69d74ead1d8a85c962be1411fde307b12 (patch)
tree3bacb72829a2125c716eccdb13b405120c0682c2
parentdb.eclass: add @SUPPORTED_EAPIS (diff)
downloadgentoo-fb1defa6.tar.gz
gentoo-fb1defa6.tar.bz2
gentoo-fb1defa6.zip
dev-libs/aml: Bump to 0.3.0, drop old 0.2.2, fixes 9999
We previously dropped the bundled queue.h in favour of the system-wide version to fix musl. However, 0.3.0 uses a macro that only appears in the bundled version (from FreeBSD?), so patch that back in. Bug: https://bugs.gentoo.org/828806 Signed-off-by: James Le Cuirot <chewi@gentoo.org>
-rw-r--r--dev-libs/aml/Manifest2
-rw-r--r--dev-libs/aml/aml-0.3.0.ebuild (renamed from dev-libs/aml/aml-0.2.2.ebuild)10
-rw-r--r--dev-libs/aml/aml-9999.ebuild14
-rw-r--r--dev-libs/aml/files/aml-0.3.0-queue.patch21
4 files changed, 38 insertions, 9 deletions
diff --git a/dev-libs/aml/Manifest b/dev-libs/aml/Manifest
index 5910a49a25cb..908594ea00c8 100644
--- a/dev-libs/aml/Manifest
+++ b/dev-libs/aml/Manifest
@@ -1 +1 @@
-DIST aml-0.2.2.tar.gz 20442 BLAKE2B 3ea4e03ba511096fc02db628d2591ddf247f79ccdf7638614a2a20fe74dfa563b555662492d976371b407ab013bbb83c193c047fca48f7f08b05cf47e6a87ab4 SHA512 3cb5bf28186a9056b579dd76440202837d96a7abde9427c45a810068d5e051c642303cd73b012e3b093ffb1577896753a50fcc508b2a30c49146033bb74156e7
+DIST aml-0.3.0.tar.gz 21070 BLAKE2B 09b8818ba63eb0f8c36e90385ee0787cad45b80c71cfcf439f93560f56269d52468bbdd2c0e8ad6cbf78b8fd0dd715aa107bfeb3918f55671ffca3f8daab56e3 SHA512 7c3347ef47ace8a14860e2b46937c8ade3712aa75a8c36845594fb4fa6ca26c35320b5234574accff451ea8302f23075acbe1a1b0392f5fbcbbbda20640be1fd
diff --git a/dev-libs/aml/aml-0.2.2.ebuild b/dev-libs/aml/aml-0.3.0.ebuild
index f455ef42c8e7..a7c7dfbf2a1a 100644
--- a/dev-libs/aml/aml-0.2.2.ebuild
+++ b/dev-libs/aml/aml-0.3.0.ebuild
@@ -22,12 +22,16 @@ IUSE="examples"
DEPEND="elibc_musl? ( sys-libs/queue-standalone )"
+PATCHES=(
+ "${FILESDIR}"/${P}-queue.patch
+)
+
src_prepare() {
default
- # The bundled copy includes cdefs which breaks on musl and
- # this header is already available on glibc.
- # bug #828806
+ # The bundled copy includes cdefs which breaks on musl and this header is
+ # already available on glibc. See bug #828806 and
+ # https://github.com/any1/aml/issues/11.
rm include/sys/queue.h || die
}
diff --git a/dev-libs/aml/aml-9999.ebuild b/dev-libs/aml/aml-9999.ebuild
index abe16736f7e8..a7c7dfbf2a1a 100644
--- a/dev-libs/aml/aml-9999.ebuild
+++ b/dev-libs/aml/aml-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2020-2022 Gentoo Authors
+# Copyright 2020-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -13,7 +13,7 @@ if [[ ${PV} == 9999 ]]; then
EGIT_REPO_URI="https://github.com/any1/aml.git"
else
SRC_URI="https://github.com/any1/aml/archive/v${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~amd64 ~loong ~riscv ~x86"
+ KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~loong ~ppc ~riscv ~x86"
fi
LICENSE="ISC"
@@ -22,12 +22,16 @@ IUSE="examples"
DEPEND="elibc_musl? ( sys-libs/queue-standalone )"
+PATCHES=(
+ "${FILESDIR}"/${P}-queue.patch
+)
+
src_prepare() {
default
- # The bundled copy includes cdefs which breaks on musl and
- # this header is already available on glibc.
- # bug #828806
+ # The bundled copy includes cdefs which breaks on musl and this header is
+ # already available on glibc. See bug #828806 and
+ # https://github.com/any1/aml/issues/11.
rm include/sys/queue.h || die
}
diff --git a/dev-libs/aml/files/aml-0.3.0-queue.patch b/dev-libs/aml/files/aml-0.3.0-queue.patch
new file mode 100644
index 000000000000..299379a934f6
--- /dev/null
+++ b/dev-libs/aml/files/aml-0.3.0-queue.patch
@@ -0,0 +1,21 @@
+The bundled queue.h breaks on musl, but the standard version lacks
+LIST_FOREACH_SAFE, which appears to come from FreeBSD, so patch that back
+in here. See https://github.com/any1/aml/issues/11.
+
+diff -Naur a/src/aml.c b/src/aml.c
+--- a/src/aml.c 2023-01-22 12:57:53.000000000 +0000
++++ b/src/aml.c 2023-03-19 10:10:11.034092428 +0000
+@@ -31,6 +31,13 @@
+ #include "sys/queue.h"
+ #include "thread-pool.h"
+
++#ifndef LIST_FOREACH_SAFE
++#define LIST_FOREACH_SAFE(var, head, field, tvar) \
++ for ((var) = LIST_FIRST((head)); \
++ (var) && ((tvar) = LIST_NEXT((var), field), 1); \
++ (var) = (tvar))
++#endif
++
+ #define EXPORT __attribute__((visibility("default")))
+
+ #define EVENT_MASK_DEFAULT AML_EVENT_READ