commit:     8deac5a404bdca06ad8ece68baee944325e46c35
Author:     Esteve Varela Colominas <esteve.varela <AT> gmail <DOT> com>
AuthorDate: Mon Feb 14 08:09:12 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Feb 18 02:50:48 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8deac5a4

dev-libs/libdispatch: Support musl

No revbump; patches don't affect existing built versions.

Closes: https://bugs.gentoo.org/829158
Signed-off-by: Esteve Varela Colominas <esteve.varela <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/24187
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../libdispatch/files/libdispatch-5.3.3-musl.patch | 56 ++++++++++++++++++++++
 dev-libs/libdispatch/libdispatch-5.3.3-r1.ebuild   |  5 +-
 dev-libs/libdispatch/libdispatch-5.5.ebuild        |  5 +-
 3 files changed, 64 insertions(+), 2 deletions(-)

diff --git a/dev-libs/libdispatch/files/libdispatch-5.3.3-musl.patch 
b/dev-libs/libdispatch/files/libdispatch-5.3.3-musl.patch
new file mode 100644
index 000000000000..a162b34efc53
--- /dev/null
+++ b/dev-libs/libdispatch/files/libdispatch-5.3.3-musl.patch
@@ -0,0 +1,56 @@
+Fix building with musl libc
+
+https://github.com/apple/swift-corelibs-libdispatch/pull/594/
+https://bugs.gentoo.org/829158
+https://bugs.gentoo.org/833306
+
+--- a/dispatch/source.h
++++ b/dispatch/source.h
+@@ -32,7 +32,7 @@
+ #endif
+ 
+ #if !defined(_WIN32)
+-#include <sys/signal.h>
++#include <signal.h>
+ #endif
+ 
+ DISPATCH_ASSUME_NONNULL_BEGIN
+--- a/os/generic_unix_base.h
++++ b/os/generic_unix_base.h
+@@ -25,6 +25,14 @@
+ 
+ #if __has_include(<sys/cdefs.h>)
+ #include <sys/cdefs.h>
++#else
++#if defined(__cplusplus)
++#define       __BEGIN_DECLS extern "C" {
++#define       __END_DECLS }
++#else
++#define       __BEGIN_DECLS
++#define       __END_DECLS
++#endif
+ #endif
+ 
+ #ifndef API_AVAILABLE
+--- a/src/shims/getprogname.h
++++ b/src/shims/getprogname.h
+@@ -37,7 +37,7 @@
+ static inline char *
+ getprogname(void)
+ {
+-# if HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
++# if HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME || defined(__linux__)
+       return program_invocation_short_name;
+ # elif defined(__ANDROID__)
+       return __progname;
+--- a/tests/dispatch_test.c
++++ b/tests/dispatch_test.c
+@@ -34,7 +34,7 @@
+ #define HAS_SYS_EVENT_H 1
+ #include <sys/event.h>
+ #else
+-#include <sys/poll.h>
++#include <poll.h>
+ #endif
+ #elif defined(_WIN32)
+ #include <Windows.h>

diff --git a/dev-libs/libdispatch/libdispatch-5.3.3-r1.ebuild 
b/dev-libs/libdispatch/libdispatch-5.3.3-r1.ebuild
index 84d29b791acc..ac43a88ac6fc 100644
--- a/dev-libs/libdispatch/libdispatch-5.3.3-r1.ebuild
+++ b/dev-libs/libdispatch/libdispatch-5.3.3-r1.ebuild
@@ -26,7 +26,10 @@ BDEPEND="
 
 S="${WORKDIR}/${MY_PN}-${MY_PV}"
 
-PATCHES=( "${FILESDIR}/remove-Werror.patch" )
+PATCHES=(
+       "${FILESDIR}/remove-Werror.patch"
+       "${FILESDIR}/libdispatch-5.3.3-musl.patch"
+)
 
 src_configure () {
        if ! tc-is-clang ; then

diff --git a/dev-libs/libdispatch/libdispatch-5.5.ebuild 
b/dev-libs/libdispatch/libdispatch-5.5.ebuild
index 72ab2824900b..667e0171b3b0 100644
--- a/dev-libs/libdispatch/libdispatch-5.5.ebuild
+++ b/dev-libs/libdispatch/libdispatch-5.5.ebuild
@@ -29,7 +29,10 @@ BDEPEND="
 
 S="${WORKDIR}/${MY_PN}-${MY_PV}"
 
-PATCHES=( "${FILESDIR}/remove-Werror.patch" )
+PATCHES=(
+       "${FILESDIR}/remove-Werror.patch"
+       "${FILESDIR}/libdispatch-5.3.3-musl.patch"
+)
 
 src_configure () {
        if ! tc-is-clang ; then

Reply via email to