···11-22-Below is the subset of gnulib commit
33-776af40e09b476a41073131a90022572f448c189 which deals with long double
44-redirects. The rest of that commit has been removed.
55-66-diff --git a/lib/cdefs.h b/lib/cdefs.h
77-index fd72b7b..4383e70 100644
88---- a/lib/cdefs.h
99-+++ b/lib/cdefs.h
1010-@@ -483,7 +493,37 @@
1111- # include <bits/long-double.h>
1212- #endif
1313-1414--#if defined __LONG_DOUBLE_MATH_OPTIONAL && defined __NO_LONG_DOUBLE_MATH
1515-+#if __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1
1616-+# ifdef __REDIRECT
1717-+
1818-+/* Alias name defined automatically. */
1919-+# define __LDBL_REDIR(name, proto) ... unused__ldbl_redir
2020-+# define __LDBL_REDIR_DECL(name) \
2121-+ extern __typeof (name) name __asm (__ASMNAME ("__" #name "ieee128"));
2222-+
2323-+/* Alias name defined automatically, with leading underscores. */
2424-+# define __LDBL_REDIR2_DECL(name) \
2525-+ extern __typeof (__##name) __##name \
2626-+ __asm (__ASMNAME ("__" #name "ieee128"));
2727-+
2828-+/* Alias name defined manually. */
2929-+# define __LDBL_REDIR1(name, proto, alias) ... unused__ldbl_redir1
3030-+# define __LDBL_REDIR1_DECL(name, alias) \
3131-+ extern __typeof (name) name __asm (__ASMNAME (#alias));
3232-+
3333-+# define __LDBL_REDIR1_NTH(name, proto, alias) \
3434-+ __REDIRECT_NTH (name, proto, alias)
3535-+# define __REDIRECT_NTH_LDBL(name, proto, alias) \
3636-+ __LDBL_REDIR1_NTH (name, proto, __##alias##ieee128)
3737-+
3838-+/* Unused. */
3939-+# define __REDIRECT_LDBL(name, proto, alias) ... unused__redirect_ldbl
4040-+# define __LDBL_REDIR_NTH(name, proto) ... unused__ldbl_redir_nth
4141-+
4242-+# else
4343-+_Static_assert (0, "IEEE 128-bits long double requires redirection on this platform");
4444-+# endif
4545-+#elif defined __LONG_DOUBLE_MATH_OPTIONAL && defined __NO_LONG_DOUBLE_MATH
4646- # define __LDBL_COMPAT 1
4747- # ifdef __REDIRECT
4848- # define __LDBL_REDIR1(name, proto, alias) __REDIRECT (name, proto, alias)
4949-@@ -492,6 +532,8 @@
5050- # define __LDBL_REDIR1_NTH(name, proto, alias) __REDIRECT_NTH (name, proto, alias)
5151- # define __LDBL_REDIR_NTH(name, proto) \
5252- __LDBL_REDIR1_NTH (name, proto, __nldbl_##name)
5353-+# define __LDBL_REDIR2_DECL(name) \
5454-+ extern __typeof (__##name) __##name __asm (__ASMNAME ("__nldbl___" #name));
5555- # define __LDBL_REDIR1_DECL(name, alias) \
5656- extern __typeof (name) name __asm (__ASMNAME (#alias));
5757- # define __LDBL_REDIR_DECL(name) \
5858-@@ -502,11 +544,13 @@
5959- __LDBL_REDIR1_NTH (name, proto, __nldbl_##alias)
6060- # endif
6161- #endif
6262--#if !defined __LDBL_COMPAT || !defined __REDIRECT
6363-+#if (!defined __LDBL_COMPAT && __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 0) \
6464-+ || !defined __REDIRECT
6565- # define __LDBL_REDIR1(name, proto, alias) name proto
6666- # define __LDBL_REDIR(name, proto) name proto
6767- # define __LDBL_REDIR1_NTH(name, proto, alias) name proto __THROW
6868- # define __LDBL_REDIR_NTH(name, proto) name proto __THROW
6969-+# define __LDBL_REDIR2_DECL(name)
7070- # define __LDBL_REDIR_DECL(name)
7171- # ifdef __REDIRECT
7272- # define __REDIRECT_LDBL(name, proto, alias) __REDIRECT (name, proto, alias)
-11
pkgs/by-name/gn/gnulib/package.nix
···3434 # do not change headers to not update all vendored build files
3535 dontFixup = true;
36363737- passthru = {
3838- # This patch is used by multiple other packages (currently:
3939- # gnused, gettext) which contain vendored copies of gnulib.
4040- # Without it, compilation will fail with error messages about
4141- # "__LDBL_REDIR1_DECL" or similar on platforms with longdouble
4242- # redirects (currently powerpc64). Once all of those other
4343- # packages make a release with a newer gnulib we can drop this
4444- # patch.
4545- longdouble-redirect-patch = ./gnulib-longdouble-redirect.patch;
4646- };
4747-4837 meta = with lib; {
4938 description = "Central location for code to be shared among GNU packages";
5039 homepage = "https://www.gnu.org/software/gnulib/";