summaryrefslogtreecommitdiff
path: root/dev-libs/libdex
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2025-02-21 00:15:53 +0000
committerV3n3RiX <venerix@koprulu.sector>2025-02-21 00:15:53 +0000
commitdb653baf275126269bb89ea0d2bdb8e50497a94c (patch)
tree9d1ee94cfa7312384acd366d3dd8f629660b3f18 /dev-libs/libdex
parent1534d50aaf24272ec425fa439389ef7e1f7bf174 (diff)
gentoo auto-resync : 21:02:2025 - 00:15:53
Diffstat (limited to 'dev-libs/libdex')
-rw-r--r--dev-libs/libdex/Manifest3
-rw-r--r--dev-libs/libdex/files/libdex-0.8.1-libucontext-musl.patch61
-rw-r--r--dev-libs/libdex/libdex-0.8.1.ebuild5
3 files changed, 68 insertions, 1 deletions
diff --git a/dev-libs/libdex/Manifest b/dev-libs/libdex/Manifest
index ca2d74eb1b53..b96e5d1bcf94 100644
--- a/dev-libs/libdex/Manifest
+++ b/dev-libs/libdex/Manifest
@@ -1,5 +1,6 @@
+AUX libdex-0.8.1-libucontext-musl.patch 1863 BLAKE2B 65944adbba6e77885e05ec80a787e47c9800dc486954f9c435b3fae6b81afb92f4a04d983025821635c2bb57a0d326142923108de92ea07861621954efa280f8 SHA512 a69627087b6f63eebe04a8e8784af5bab53a073c42c0bda9eb564d0efc208076dbfedbef93049623904dd66dd1a3a07304cc68e7d2ed6af44e7d82997a268e01
DIST libdex-0.6.1.tar.xz 99056 BLAKE2B 3899f89ac652c2790c93e2799a5b0d066c45ee314c6f773bb586e49c89a8a78e6a09ebf08263b88b25900a15ac736d2bd37590720e0ac0e074581342534eaba3 SHA512 36be15d2da9edeae195abcb6f97639dd7fdea74463cdfdf752293007e44ab41a5e5350a7005883f202d70f96047567fba6370f1a2c45a0f898c242bebc88e847
DIST libdex-0.8.1.tar.xz 99480 BLAKE2B 2a10a9a134cdb2017b6136a54e484f6fd2bb9329957f4d3f205edabdbcbb659f3a1c97a2b1a1c61a06f253a85733500b9475eebd8554e9af5cb0abcec232052d SHA512 fc3f4d81b3a3e5c87758b2f706dc02c558becafc489c620ca491ca3b658f4c00cbc48886c6f5271e7308c4d7255610ec7ece1ad77308b5fac6088402a96543e0
EBUILD libdex-0.6.1.ebuild 1501 BLAKE2B 0a712c14a690465a004d6a5c70076d5ffe06a3c35b846370717f7d38668b02f5eef3ae0f3e199a3ee2f62d8bec5691b2dac10dc320c4d02ba862e984a9792466 SHA512 f88de052a04531d82041e3f4ad8a290c571c8c71738c6ad5c7500751b66eb73115d2e968d719992407f2f630970f05ef751456f26a030c52f116ce7a5afffd20
-EBUILD libdex-0.8.1.ebuild 1510 BLAKE2B 0436b31f456d5bf042e57b6a24d5e19a2223ffb2f52172b337b0cbb30d2621e8c99d8c59de651d327d78f508db2b3e14f37bae7c2183db31383eda8b84b1f67b SHA512 2f0121a2cfc41966c8ac58943e6b2d9c8e81f954d37ff8656fdf95bf519c9c6d0906555c93190d34645e94414d9e43d35809d8660c30a0d9155f171d27a1f57a
+EBUILD libdex-0.8.1.ebuild 1612 BLAKE2B 36f7ed16fb9b3c4a4597563d9ca0a6b6040a91f61d93ca318b42f1d600c70dd9b36ead8e3d52fded6d5a0342ec37a1e21de748c193a52289071af49d382e3a96 SHA512 d1745b21a7bca61fca00a5ddee48ca1e20ecad7afbd6dd0a21aee4a6d4036fb45315d319690f3bf33ae068caa442421a1a87fc608d14ec793bb3045648a978ff
MISC metadata.xml 1034 BLAKE2B 279009c53ff4ecfd3fc2b053ec13f7497aeb65b5a6f0b225633067c173e353662654adbdf3cdd3eb5dc94fdf4c06b44750108309f917309b09957467eb3f12a3 SHA512 0d87d47c39375628cd18abdfb97db9a8d9d3ae1dab37f7937a60aa6935132dbcb36407bf7308b1b4239401676bbe65a1868e2a06f79e8da16f7f96e246bf5f8f
diff --git a/dev-libs/libdex/files/libdex-0.8.1-libucontext-musl.patch b/dev-libs/libdex/files/libdex-0.8.1-libucontext-musl.patch
new file mode 100644
index 000000000000..38eb2be9a828
--- /dev/null
+++ b/dev-libs/libdex/files/libdex-0.8.1-libucontext-musl.patch
@@ -0,0 +1,61 @@
+https://bugs.gentoo.org/928892
+https://gitlab.gnome.org/GNOME/libdex/-/commit/fc0ef0544dd61ff6d825c53323d4b4cba4481a03
+https://gitlab.gnome.org/GNOME/libdex/-/merge_requests/17
+
+From fc0ef0544dd61ff6d825c53323d4b4cba4481a03 Mon Sep 17 00:00:00 2001
+From: Alfred Wingate <parona@protonmail.com>
+Date: Wed, 29 Jan 2025 07:16:41 +0200
+Subject: [PATCH] build: try libucontext if symbols are not present
+
+Musl includes uncontext.h but doesn't implement the symbols. This means
+that HAVE_CONTEXT_H will be set and linking will fail due to missing
+symbols.
+
+https://wiki.musl-libc.org/open-issues.html#ucontext.h
+
+If the symbols are missing depend on libucontext which is an implementation
+of these functions for musl.
+
+https://github.com/kaniini/libucontext
+
+Bug: https://bugs.gentoo.org/928892
+Signed-off-by: Alfred Wingate <parona@protonmail.com>
+--- a/meson.build
++++ b/meson.build
+@@ -44,14 +44,14 @@ if get_option('sysprof')
+ config_h.set10('HAVE_SYSPROF', true)
+ endif
+
+-check_headers = [
+- 'ucontext.h',
+-]
+-foreach h : check_headers
+- if cc.has_header(h)
+- config_h.set('HAVE_' + h.underscorify().to_upper(), 1)
++if cc.has_header('ucontext.h')
++ if not cc.has_function('makecontext', prefix : '#include <ucontext.h>')
++ libucontext_dep = dependency('libucontext', required: false)
++ else
++ libucontext_dep = disabler()
+ endif
+-endforeach
++ config_h.set('HAVE_UCONTEXT_H', 1)
++endif
+
+ if host_machine.system() == 'darwin'
+ # known alignment for darwin where we're using helpers
+--- a/src/meson.build
++++ b/src/meson.build
+@@ -95,6 +95,9 @@ if host_machine.system() != 'windows'
+ 'dex-unix-signal.c',
+ 'dex-ucontext.c',
+ ]
++ if libucontext_dep.found()
++ libdex_deps += [libucontext_dep]
++ endif
+
+ # If we're on Linux and mips we might still need asm.S.
+ # But otherwise linux can do it all without any custom
+--
+GitLab
+
diff --git a/dev-libs/libdex/libdex-0.8.1.ebuild b/dev-libs/libdex/libdex-0.8.1.ebuild
index 9d73c00378b0..3133919102f6 100644
--- a/dev-libs/libdex/libdex-0.8.1.ebuild
+++ b/dev-libs/libdex/libdex-0.8.1.ebuild
@@ -24,6 +24,7 @@ RDEPEND="
liburing? ( >=sys-libs/liburing-0.7:= )
introspection? ( dev-libs/gobject-introspection:= )
sysprof? ( dev-util/sysprof-capture:4 )
+ elibc_musl? ( sys-libs/libucontext )
"
DEPEND="${RDEPEND}"
BDEPEND="
@@ -33,6 +34,10 @@ BDEPEND="
gtk-doc? ( dev-util/gi-docgen )
"
+PATCHES=(
+ "${FILESDIR}"/libdex-0.8.1-libucontext-musl.patch
+)
+
pkg_setup() {
if use eventfd && linux_config_exists; then
if ! linux_chkconfig_present EVENTFD ; then