diff --git a/srcpkgs/musl/patches/add-rlimit-rttime.patch b/srcpkgs/musl/patches/add-rlimit-rttime.patch new file mode 100644 index 00000000000..56afa6b6652 --- /dev/null +++ b/srcpkgs/musl/patches/add-rlimit-rttime.patch @@ -0,0 +1,24 @@ +From 2507e7f5312e79620f6337935d0a6c9045ccba09 Mon Sep 17 00:00:00 2001 +From: Leah Neukirchen +Date: Sat, 11 Jan 2020 20:16:59 +0100 +Subject: [PATCH] define RLIMIT_RTTIME, bump RLIMIT_NLIMITS + +This macro exists since Linux 2.6.25 and is defined in glibc since 2011. +--- + include/sys/resource.h | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/include/sys/resource.h b/include/sys/resource.h +index e0c86ae33..3068328d0 100644 +--- a/include/sys/resource.h ++++ b/include/sys/resource.h +@@ -90,7 +90,8 @@ int prlimit(pid_t, int, const struct rlimit *, struct rlimit *); + #define RLIMIT_MSGQUEUE 12 + #define RLIMIT_NICE 13 + #define RLIMIT_RTPRIO 14 +-#define RLIMIT_NLIMITS 15 ++#define RLIMIT_RTTIME 15 ++#define RLIMIT_NLIMITS 16 + + #define RLIM_NLIMITS RLIMIT_NLIMITS + diff --git a/srcpkgs/musl/patches/c23-basename.patch b/srcpkgs/musl/patches/c23-basename.patch new file mode 100644 index 00000000000..8f95a27d0ef --- /dev/null +++ b/srcpkgs/musl/patches/c23-basename.patch @@ -0,0 +1,44 @@ +From 725e17ed6dff4d0cd22487bb64470881e86a92e7 Mon Sep 17 00:00:00 2001 +From: Rich Felker +Date: Mon, 6 Nov 2023 08:26:19 -0500 +Subject: [PATCH] remove non-prototype declaration of basename from string.h + +commit 37bb3cce4598c19288628e675eaf1cda6e96958f suppressed the +declaration for C++, where it is wrongly interpreted as declaring the +function as taking no arguments. with C23 removing non-prototype +declarations, that problem is now also relevant to C. + +the non-prototype declaration for basename originates with commit +06aec8d7152dfb8360cb7ed9b3d7215ca0b0b500, where it was designed to +avoid conflicts with programs which declare basename with the GNU +signature taking const char *. that change was probably misguided, as +it represents not only misaligned expectations with the caller, but +also undefined behavior (calling a function that's been declared with +the wrong type). + +we could opt to fix the declaration, but since glibc, with the +gratuitously incompatible GNU-basename function, seems to be the only +implementation that declares it in string.h, it seems better to just +remove the declaration. this provides some warning if applications are +being built expecting the GNU behavior but not getting it. if we +declared it here, it would only produce a warning if the caller also +declares it themselves (rare) or if the caller attempts to pass a +const-qualified pointer. +--- + include/string.h | 3 --- + 1 file changed, 3 deletions(-) + +diff --git a/include/string.h b/include/string.h +index db73d2a9..83e2b946 100644 +--- a/include/string.h ++++ b/include/string.h +@@ -95,9 +95,6 @@ char *strchrnul(const char *, int); + char *strcasestr(const char *, const char *); + void *memrchr(const void *, int, size_t); + void *mempcpy(void *, const void *, size_t); +-#ifndef __cplusplus +-char *basename(); +-#endif + #endif + + #ifdef __cplusplus diff --git a/srcpkgs/musl/template b/srcpkgs/musl/template index 9838f9ad9e6..8c3be7d76e8 100644 --- a/srcpkgs/musl/template +++ b/srcpkgs/musl/template @@ -2,7 +2,7 @@ pkgname=musl reverts="1.2.0_1" version=1.1.24 -revision=19 +revision=20 archs="*-musl" bootstrap=yes build_style=gnu-configure