diff options
Diffstat (limited to 'pkgs/development/perl-modules')
8 files changed, 315 insertions, 70 deletions
diff --git a/pkgs/development/perl-modules/Gtk2-fix-incompatible-pointer-conversion.patch b/pkgs/development/perl-modules/Gtk2-fix-incompatible-pointer-conversion.patch new file mode 100644 index 0000000000000..1ac68ee19d01c --- /dev/null +++ b/pkgs/development/perl-modules/Gtk2-fix-incompatible-pointer-conversion.patch @@ -0,0 +1,86 @@ +diff -ur a/gdk.typemap b/gdk.typemap +--- a/gdk.typemap 2017-05-21 15:02:54.000000000 -0400 ++++ b/gdk.typemap 2023-11-03 13:17:43.717890172 -0400 +@@ -23,6 +23,7 @@ + TYPEMAP + + # can be either a pointer or an integer, this handles both cases ++uintptr_t T_UV + GdkNativeWindow T_UV + + # GdkBitmap doesn't get its own type id, but needs to be treated separately. +diff -ur a/xs/GdkDnd.xs b/xs/GdkDnd.xs +--- a/xs/GdkDnd.xs 2017-05-21 15:02:54.000000000 -0400 ++++ b/xs/GdkDnd.xs 2023-11-03 13:23:22.478329089 -0400 +@@ -142,12 +142,12 @@ + void + gdk_drag_get_protocol_for_display (class, display, xid) + GdkDisplay *display +- guint32 xid ++ uintptr_t xid + PREINIT: + GdkDragProtocol protocol; +- guint32 ret; ++ uintptr_t ret; + PPCODE: +- ret = gdk_drag_get_protocol_for_display (display, xid, &protocol); ++ ret = (uintptr_t)gdk_drag_get_protocol_for_display (display, INT2PTR(GdkNativeWindow, xid), &protocol); + XPUSHs (sv_2mortal (newSVuv (ret))); + XPUSHs (sv_2mortal (ret + ? newSVGdkDragProtocol (protocol) +@@ -184,12 +184,12 @@ + =cut + void + gdk_drag_get_protocol (class, xid) +- guint32 xid ++ uintptr_t xid + PREINIT: + GdkDragProtocol protocol; +- guint32 ret; ++ uintptr_t ret; + PPCODE: +- ret = gdk_drag_get_protocol (xid, &protocol); ++ ret = (uintptr_t)gdk_drag_get_protocol (INT2PTR(GdkNativeWindow, xid), &protocol); + XPUSHs (sv_2mortal (newSVuv (ret))); + XPUSHs (sv_2mortal (newSVGdkDragProtocol (protocol))); + +diff -ur a/xs/GdkSelection.xs b/xs/GdkSelection.xs +--- a/xs/GdkSelection.xs 2017-05-21 15:02:54.000000000 -0400 ++++ b/xs/GdkSelection.xs 2023-11-03 13:26:58.976888906 -0400 +@@ -147,7 +147,7 @@ + ## void gdk_selection_send_notify (guint32 requestor, GdkAtom selection, GdkAtom target, GdkAtom property, guint32 time_) + void + gdk_selection_send_notify (class, requestor, selection, target, property, time_) +- guint32 requestor ++ GdkNativeWindow requestor + GdkAtom selection + GdkAtom target + GdkAtom property +@@ -161,7 +161,7 @@ + void + gdk_selection_send_notify_for_display (class, display, requestor, selection, target, property, time_) + GdkDisplay *display +- guint32 requestor ++ GdkNativeWindow requestor + GdkAtom selection + GdkAtom target + GdkAtom property +diff -ur a/xs/GtkWindow.xs b/xs/GtkWindow.xs +--- a/xs/GtkWindow.xs 2017-05-21 15:02:54.000000000 -0400 ++++ b/xs/GtkWindow.xs 2023-11-03 13:32:53.673168678 -0400 +@@ -581,13 +581,13 @@ + void + gtk_window_remove_embedded_xid (window, xid) + GtkWindow * window +- guint xid ++ GdkNativeWindow xid + + ## void gtk_window_add_embedded_xid (GtkWindow *window, guint xid) + void + gtk_window_add_embedded_xid (window, xid) + GtkWindow * window +- guint xid ++ GdkNativeWindow xid + + ##void gtk_window_reshow_with_initial_size (GtkWindow *window) + void diff --git a/pkgs/development/perl-modules/IO-Tty-fix-makefile.patch b/pkgs/development/perl-modules/IO-Tty-fix-makefile.patch new file mode 100644 index 0000000000000..65c6d238bdb32 --- /dev/null +++ b/pkgs/development/perl-modules/IO-Tty-fix-makefile.patch @@ -0,0 +1,13 @@ +diff --git a/Makefile.PL b/Makefile.PL +index eaf47e0..32766d7 100644 +--- a/Makefile.PL ++++ b/Makefile.PL +@@ -146,7 +146,7 @@ extern "C" + /* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ + char $f (); +-char (*f) (); ++char f; + + #ifdef F77_DUMMY_MAIN + # ifdef __cplusplus diff --git a/pkgs/development/perl-modules/MouseX-Getopt-gld-tests.patch b/pkgs/development/perl-modules/MouseX-Getopt-gld-tests.patch new file mode 100644 index 0000000000000..6ca6e83094621 --- /dev/null +++ b/pkgs/development/perl-modules/MouseX-Getopt-gld-tests.patch @@ -0,0 +1,143 @@ +From c1d1eed00099af8d858536b659864b7ccea41974 Mon Sep 17 00:00:00 2001 +From: Paul Howarth <paul@city-fan.org> +Date: Sat, 13 Mar 2021 17:46:57 +0000 +Subject: [PATCH 1/2] Update for Getopt-Long-Descriptive 0.106 + +GLD is now outputting text with wrapping depending on the terminal +width. This update is enough to get the tests to pass when running +within "expect", which provides a PTY. It's almost certainly not +enough for general use. +--- + t/104_override_usage.t | 8 ++++++++ + t/107_no_auto_help.t | 2 +- + t/109_help_flag.t | 2 +- + t/110_sort_usage_by_attr_order.t | 12 ++++++++++++ + 4 files changed, 22 insertions(+), 2 deletions(-) + +diff --git a/t/104_override_usage.t b/t/104_override_usage.t +index bc45029..6641540 100644 +--- a/t/104_override_usage.t ++++ b/t/104_override_usage.t +@@ -61,9 +61,17 @@ use Test::Exception; + \t--foo INT A foo + } + : ++ $Getopt::Long::Descriptive::VERSION < 0.106 ? + qq{usage: 104_override_usage.t [-?] [long options...] + \t-? --[no-]usage --[no-]help Prints this usage information. + \t--foo INT A foo ++} ++ : ++ qq{usage: 104_override_usage.t [-?] [long options...] ++\t--[no-]help (or -?) Prints ++\t this usage information. ++\t aka --usage ++\t--foo INT A foo + } + + ]; +diff --git a/t/107_no_auto_help.t b/t/107_no_auto_help.t +index 27f87f5..103df43 100644 +--- a/t/107_no_auto_help.t ++++ b/t/107_no_auto_help.t +@@ -60,7 +60,7 @@ END { + warning_like { + throws_ok { Class->new_with_options } + #usage: 107_no_auto_help.t [-?] [long options...] +- qr/^usage: [\d\w]+\Q.t [-?] [long options...]\E.\s+\Q-? --\E(\[no-\])?usage --(\[no-\])?\Qhelp\E\s+\QPrints this usage information.\E.\s+--configfile/ms, ++ qr/^usage: [\d\w]+\Q.t [-?] [long options...]\E.\s+(\Q-? --\E(\[no-\])?usage )?--(\[no-\])?\Qhelp\E(\Q (or -?)\E)?\s+\QPrints this usage information.\E.(\s+\Qaka --usage\E.)?\s+--configfile/ms, + 'usage information looks good'; + } + qr/^Specified configfile \'this_value_unimportant\' does not exist, is empty, or is not readable$/, +diff --git a/t/109_help_flag.t b/t/109_help_flag.t +index 8c658e2..58dbca6 100644 +--- a/t/109_help_flag.t ++++ b/t/109_help_flag.t +@@ -40,7 +40,7 @@ foreach my $args ( ['--help'], ['--usage'], ['--?'], ['-?'] ) + local @ARGV = @$args; + + throws_ok { MyClass->new_with_options() } +- qr/^usage: (?:[\d\w]+)\Q.t [-?] [long options...]\E.^\t\Q-? --\E(\[no-\])?usage --(\[no-\])?help\s+\QPrints this usage information.\E$/ms, ++ qr/^usage: (?:[\d\w]+)\Q.t [-?] [long options...]\E.^\s+(\Q-? --\E(\[no-\])?usage )?--(\[no-\])?help(\Q (or -?)\E)?\s+Prints ?(.\s+)?\Qthis usage information.\E.(\s+\Qaka --usage\E.)?$/ms, + 'Help request detected; usage information properly printed'; + } + +diff --git a/t/110_sort_usage_by_attr_order.t b/t/110_sort_usage_by_attr_order.t +index e7dd177..7ec0c99 100644 +--- a/t/110_sort_usage_by_attr_order.t ++++ b/t/110_sort_usage_by_attr_order.t +@@ -64,6 +64,18 @@ usage: 110_sort_usage_by_attr_order.t [-?] [long options...] + --baz STR Documentation for "baz" + USAGE + } ++if ( $Getopt::Long::Descriptive::VERSION >= 0.106 ) ++{ ++$expected = <<'USAGE'; ++usage: 110_sort_usage_by_attr_order.t [-?] [long options...] ++ --[no-]help (or -?) Prints ++ this usage information. ++ aka --usage ++ --foo STR Documentation for "foo" ++ --bar STR Documentation for "bar" ++ --baz STR Documentation for "baz" ++USAGE ++} + $expected =~ s/^[ ]{4}/\t/xmsg; + is($obj->usage->text, $expected, 'Usage text has nicely sorted options'); + + +From 45ae6aaabc5413e985860fbfcc8da3bdc929a054 Mon Sep 17 00:00:00 2001 +From: Paul Howarth <paul@city-fan.org> +Date: Mon, 15 Mar 2021 10:43:14 +0000 +Subject: [PATCH 2/2] Update for Getopt-Long-Descriptive 0.107 + +GLD's use of Term::ReadKey has been reverted, so this update should now +work reliably. Use with GLD 0.106 is not supported. +--- + t/104_override_usage.t | 6 +++--- + t/110_sort_usage_by_attr_order.t | 6 +++--- + 2 files changed, 6 insertions(+), 6 deletions(-) + +diff --git a/t/104_override_usage.t b/t/104_override_usage.t +index 6641540..f7c6a31 100644 +--- a/t/104_override_usage.t ++++ b/t/104_override_usage.t +@@ -61,15 +61,15 @@ use Test::Exception; + \t--foo INT A foo + } + : +- $Getopt::Long::Descriptive::VERSION < 0.106 ? ++ # Note: Getopt::Long::Descriptive 0.106 not supported ++ $Getopt::Long::Descriptive::VERSION < 0.107 ? + qq{usage: 104_override_usage.t [-?] [long options...] + \t-? --[no-]usage --[no-]help Prints this usage information. + \t--foo INT A foo + } + : + qq{usage: 104_override_usage.t [-?] [long options...] +-\t--[no-]help (or -?) Prints +-\t this usage information. ++\t--[no-]help (or -?) Prints this usage information. + \t aka --usage + \t--foo INT A foo + } +diff --git a/t/110_sort_usage_by_attr_order.t b/t/110_sort_usage_by_attr_order.t +index 7ec0c99..16cdaa1 100644 +--- a/t/110_sort_usage_by_attr_order.t ++++ b/t/110_sort_usage_by_attr_order.t +@@ -64,12 +64,12 @@ usage: 110_sort_usage_by_attr_order.t [-?] [long options...] + --baz STR Documentation for "baz" + USAGE + } +-if ( $Getopt::Long::Descriptive::VERSION >= 0.106 ) ++# Note: Getopt::Long::Descriptive 0.106 not supported ++if ( $Getopt::Long::Descriptive::VERSION >= 0.107 ) + { + $expected = <<'USAGE'; + usage: 110_sort_usage_by_attr_order.t [-?] [long options...] +- --[no-]help (or -?) Prints +- this usage information. ++ --[no-]help (or -?) Prints this usage information. + aka --usage + --foo STR Documentation for "foo" + --bar STR Documentation for "bar" diff --git a/pkgs/development/perl-modules/Paranoid-blessed-path.patch b/pkgs/development/perl-modules/Paranoid-blessed-path.patch index 5e80025011000..99bd69730741a 100644 --- a/pkgs/development/perl-modules/Paranoid-blessed-path.patch +++ b/pkgs/development/perl-modules/Paranoid-blessed-path.patch @@ -1,23 +1,22 @@ -diff -ru Paranoid-2.05/lib/Paranoid.pm /tmp/Paranoid-2.05/lib/Paranoid.pm ---- Paranoid-2.05/lib/Paranoid.pm 2017-02-06 05:48:57.000000000 -0500 -+++ /tmp/Paranoid-2.05/lib/Paranoid.pm 2018-05-10 06:40:35.286313299 -0400 -@@ -61,7 +61,7 @@ +diff '--color=auto' -ur Paranoid-2.10/lib/Paranoid.pm Paranoid-2.10-patched/lib/Paranoid.pm +--- Paranoid-2.10/lib/Paranoid.pm 2022-03-08 10:01:04.000000000 +0100 ++++ Paranoid-2.10-patched/lib/Paranoid.pm 2023-10-20 16:57:54.025754755 +0200 +@@ -47,7 +47,7 @@ + %EXPORT_TAGS = ( all => [@EXPORT_OK], ); - my $path = shift; + use constant PTRUE_ZERO => '0 but true'; +-use constant DEFAULT_PATH => '/bin:/sbin:/usr/bin:/usr/sbin'; ++use constant DEFAULT_PATH => '__BLESSED_PATH__'; -- $path = '/bin:/usr/bin' unless defined $path; -+ $path = '__BLESSED_PATH__' unless defined $path; - - delete @ENV{qw(IFS CDPATH ENV BASH_ENV)}; - $ENV{PATH} = $path; -Binary files Paranoid-2.05/lib/.Paranoid.pm.swp and /tmp/Paranoid-2.05/lib/.Paranoid.pm.swp differ -diff -ru Paranoid-2.05/t/01_init_core.t /tmp/Paranoid-2.05/t/01_init_core.t ---- Paranoid-2.05/t/01_init_core.t 2016-07-12 04:49:33.000000000 -0400 -+++ /tmp/Paranoid-2.05/t/01_init_core.t 2018-05-10 06:43:41.323183381 -0400 -@@ -35,5 +35,5 @@ + ##################################################################### + # +diff '--color=auto' -ur Paranoid-2.10/t/01_init_core.t Paranoid-2.10-patched/t/01_init_core.t +--- Paranoid-2.10/t/01_init_core.t 2022-01-24 10:30:20.000000000 +0100 ++++ Paranoid-2.10-patched/t/01_init_core.t 2023-10-20 16:58:16.856288407 +0200 +@@ -35,5 +35,4 @@ ok( psecureEnv('/bin:/sbin'), 'psecureEnv 1' ); is( $ENV{PATH}, '/bin:/sbin', 'Validated PATH' ); ok( psecureEnv(), 'psecureEnv 2' ); --is( $ENV{PATH}, '/bin:/usr/bin', 'Validated PATH' ); +-is( $ENV{PATH}, '/bin:/sbin:/usr/bin:/usr/sbin', 'Validated PATH' ); +- +is( $ENV{PATH}, '__BLESSED_PATH__', 'Validated PATH' ); - diff --git a/pkgs/development/perl-modules/XML-LibXML-clang16.patch b/pkgs/development/perl-modules/XML-LibXML-clang16.patch new file mode 100644 index 0000000000000..9a19e32bc401f --- /dev/null +++ b/pkgs/development/perl-modules/XML-LibXML-clang16.patch @@ -0,0 +1,47 @@ +From 8751785951fbde48ffa16a476da3e4adb2bbcde5 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Mon, 16 Jan 2023 18:50:10 -0800 +Subject: [PATCH] libxml-mm: Fix function prototypes in function pointers + +This is now detected with latest clang16+ + +Fixes +error: incompatible function pointer types passing 'void (void *, void *, xmlChar *)' (aka 'void (void *, void *, unsigned char *)') to parameter of type 'xmlHashScanner' (aka 'void (*)(void *, void *, const unsigned char *)') [-Wincompatible-function-pointer-types] + xmlHashScan(r, PmmRegistryDumpHashScanner, NULL); + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + perl-libxml-mm.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/perl-libxml-mm.c b/perl-libxml-mm.c +index a3e78a2..ec2b5ea 100644 +--- a/perl-libxml-mm.c ++++ b/perl-libxml-mm.c +@@ -121,7 +121,7 @@ PmmFreeHashTable(xmlHashTablePtr table) + extern SV* PROXY_NODE_REGISTRY_MUTEX; + + /* Utility method used by PmmDumpRegistry */ +-void PmmRegistryDumpHashScanner(void * payload, void * data, xmlChar * name) ++void PmmRegistryDumpHashScanner(void * payload, void * data, const xmlChar * name) + { + LocalProxyNodePtr lp = (LocalProxyNodePtr) payload; + ProxyNodePtr node = (ProxyNodePtr) lp->proxy; +@@ -215,7 +215,7 @@ PmmRegisterProxyNode(ProxyNodePtr proxy) + /* PP: originally this was static inline void, but on AIX the compiler + did not chew it, so I'm removing the inline */ + static void +-PmmRegistryHashDeallocator(void *payload, xmlChar *name) ++PmmRegistryHashDeallocator(void *payload, const xmlChar *name) + { + Safefree((LocalProxyNodePtr) payload); + } +@@ -279,7 +279,7 @@ PmmRegistryREFCNT_dec(ProxyNodePtr proxy) + * internal, used by PmmCloneProxyNodes + */ + void * +-PmmRegistryHashCopier(void *payload, xmlChar *name) ++PmmRegistryHashCopier(void *payload, const xmlChar *name) + { + ProxyNodePtr proxy = ((LocalProxyNodePtr) payload)->proxy; + LocalProxyNodePtr lp; diff --git a/pkgs/development/perl-modules/generic/builder.sh b/pkgs/development/perl-modules/generic/builder.sh index 110094ad8a494..4da9f7a982128 100644 --- a/pkgs/development/perl-modules/generic/builder.sh +++ b/pkgs/development/perl-modules/generic/builder.sh @@ -1,4 +1,4 @@ -if [ -e .attrs.sh ]; then source .attrs.sh; fi +if [ -e "$NIX_ATTRS_SH_FILE" ]; then . "$NIX_ATTRS_SH_FILE"; elif [ -f .attrs.sh ]; then . .attrs.sh; fi source $stdenv/setup PERL5LIB="$PERL5LIB${PERL5LIB:+:}$out/lib/perl5/site_perl" diff --git a/pkgs/development/perl-modules/lwp-protocol-https-cert-file.patch b/pkgs/development/perl-modules/lwp-protocol-https-cert-file.patch index e9b501c29e265..3b6156d3a7c7d 100644 --- a/pkgs/development/perl-modules/lwp-protocol-https-cert-file.patch +++ b/pkgs/development/perl-modules/lwp-protocol-https-cert-file.patch @@ -1,31 +1,14 @@ -From 321401098f2c86a6f68e186cfc06e030b09484b6 Mon Sep 17 00:00:00 2001 -From: Tyson Whitehead <twhitehead@gmail.com> -Date: Fri, 29 Jun 2018 15:47:00 -0400 -Subject: [PATCH] Respect NIX_SSL_CERT_FILE and SSL_CERT_FILE (in that order) - ---- - lib/LWP/Protocol/https.pm | 8 ++++++++ - 1 file changed, 8 insertions(+) - diff --git a/lib/LWP/Protocol/https.pm b/lib/LWP/Protocol/https.pm -index f7230e2..c78b9ce 100644 +index 645e828..7098f64 100644 --- a/lib/LWP/Protocol/https.pm +++ b/lib/LWP/Protocol/https.pm -@@ -23,6 +23,14 @@ sub _extra_sock_opts - $ssl_opts{SSL_verify_mode} = 0; +@@ -29,6 +29,9 @@ sub _extra_sock_opts + } } if ($ssl_opts{SSL_verify_mode}) { -+ unless (exists $ssl_opts{SSL_ca_file} || exists $ssl_opts{SSL_ca_path}) { -+ $ssl_opts{SSL_ca_file} = $ENV{'NIX_SSL_CERT_FILE'} -+ if !defined $ssl_opts{SSL_ca_file}; -+ $ssl_opts{SSL_ca_file} = $ENV{'SSL_CERT_FILE'} -+ if !defined $ssl_opts{SSL_ca_file}; -+ $ssl_opts{SSL_ca_file} = "/etc/ssl/certs/ca-certificates.crt" -+ if !defined $ssl_opts{SSL_ca_file} && -e "/etc/ssl/certs/ca-certificates.crt"; -+ } - unless (exists $ssl_opts{SSL_ca_file} || exists $ssl_opts{SSL_ca_path}) { - eval { - require Mozilla::CA; --- -2.14.0 - ++ if ($ENV{NIX_SSL_CERT_FILE}) { ++ $ssl_opts{SSL_ca_file} //= $ENV{NIX_SSL_CERT_FILE}; ++ } + unless (exists $ssl_opts{SSL_ca_file} || exists $ssl_opts{SSL_ca_path}) { + if ($Net::HTTPS::SSL_SOCKET_CLASS eq 'IO::Socket::SSL' + && defined &IO::Socket::SSL::default_ca diff --git a/pkgs/development/perl-modules/mhonarc.patch b/pkgs/development/perl-modules/mhonarc.patch deleted file mode 100644 index 12b8cc2931b6f..0000000000000 --- a/pkgs/development/perl-modules/mhonarc.patch +++ /dev/null @@ -1,26 +0,0 @@ -diff --git a/lib/mhamain.pl b/lib/mhamain.pl -index 80980a2..c1259ce 100644 ---- a/lib/mhamain.pl -+++ b/lib/mhamain.pl -@@ -1562,7 +1562,7 @@ sub signal_catch { - ## - sub defineIndex2MsgId { - no warnings qw(deprecated); -- if (!defined(%Index2MsgId)) { -+ unless (%Index2MsgId) { - foreach (keys %MsgId) { - $Index2MsgId{$MsgId{$_}} = $_; - } -diff --git a/lib/mhopt.pl b/lib/mhopt.pl -index 02fb05e..939109b 100644 ---- a/lib/mhopt.pl -+++ b/lib/mhopt.pl -@@ -865,7 +865,7 @@ sub update_data_1_to_2 { - sub update_data_2_1_to_later { - no warnings qw(deprecated); - # we can preserve filter arguments -- if (defined(%main::MIMEFiltersArgs)) { -+ if (%main::MIMEFiltersArgs) { - warn qq/ preserving MIMEARGS...\n/; - %readmail::MIMEFiltersArgs = %main::MIMEFiltersArgs; - $IsDefault{'MIMEARGS'} = 0; |