[cyrus-imapd] Patch to work with Perl 5.14
Iain Arnell
iarnell at fedoraproject.org
Wed Jun 22 03:30:03 UTC 2011
commit 1c765ef33ccec876c5b67c5733e5c8da39348da2
Author: Iain Arnell <iarnell at gmail.com>
Date: Wed Jun 22 05:22:29 2011 +0200
Patch to work with Perl 5.14
cyrus-imapd-perl5.14.patch | 96 ++++++++++++++++++++++++++++++++++++++++++++
cyrus-imapd.spec | 10 ++++-
2 files changed, 105 insertions(+), 1 deletions(-)
---
diff --git a/cyrus-imapd-perl5.14.patch b/cyrus-imapd-perl5.14.patch
new file mode 100644
index 0000000..ddc04bf
--- /dev/null
+++ b/cyrus-imapd-perl5.14.patch
@@ -0,0 +1,96 @@
+diff -up cyrus-imapd-2.4.8/perl/imap/IMAP.xs.perl5.14 cyrus-imapd-2.4.8/perl/imap/IMAP.xs
+--- cyrus-imapd-2.4.8/perl/imap/IMAP.xs.perl5.14 2011-04-13 16:35:22.000000000 +0200
++++ cyrus-imapd-2.4.8/perl/imap/IMAP.xs 2011-06-21 08:08:16.841989447 +0200
+@@ -125,10 +125,10 @@ void imclient_xs_cb(struct imclient *cli
+ SAVETMPS;
+ PUSHMARK(SP);
+ XPUSHs(sv_2mortal(newSVpv("-client", 0)));
+- rv = newSVsv(&sv_undef);
++ rv = newSVsv(&PL_sv_undef);
+ sv_setref_pv(rv, NULL, (void *) rock->client);
+ XPUSHs(rv);
+- if (rock->prock != &sv_undef) {
++ if (rock->prock != &PL_sv_undef) {
+ XPUSHs(sv_2mortal(newSVpv("-rock", 0)));
+ XPUSHs(sv_mortalcopy(rock->prock));
+ }
+@@ -393,7 +393,7 @@ CODE:
+ ST(0) = sv_newmortal();
+
+ if(client->authenticated) {
+- ST(0) = &sv_no;
++ ST(0) = &PL_sv_no;
+ return;
+ }
+
+@@ -415,10 +415,10 @@ CODE:
+ rc = imclient_authenticate(client->imclient, mechlist, service, user,
+ minssf, maxssf);
+ if (rc)
+- ST(0) = &sv_no;
++ ST(0) = &PL_sv_no;
+ else {
+ client->authenticated = 1;
+- ST(0) = &sv_yes;
++ ST(0) = &PL_sv_yes;
+ }
+
+ int
+@@ -450,12 +450,12 @@ CODE:
+ #ifdef HAVE_SSL
+ rc = imclient_starttls(client->imclient, tls_cert_file, tls_key_file, CAfile, CApath);
+ if (rc)
+- ST(0) = &sv_no;
++ ST(0) = &PL_sv_no;
+ else {
+- ST(0) = &sv_yes;
++ ST(0) = &PL_sv_yes;
+ }
+ #else
+- ST(0) = &sv_no;
++ ST(0) = &PL_sv_no;
+ #endif /* HAVE_SSL */
+
+ void
+@@ -515,7 +515,7 @@ PPCODE:
+ (val = hv_fetch(cb, "Rock", 4, 0)))
+ prock = *val;
+ else
+- prock = &sv_undef;
++ prock = &PL_sv_undef;
+ /*
+ * build our internal rock, which is used by our internal
+ * callback handler to invoke the Perl callback
+@@ -526,7 +526,7 @@ PPCODE:
+ rock = (struct xsccb *) safemalloc(sizeof *rock);
+ /* bump refcounts on these so they don't go away */
+ rock->pcb = SvREFCNT_inc(pcb);
+- if (!prock) prock = &sv_undef;
++ if (!prock) prock = &PL_sv_undef;
+ rock->prock = SvREFCNT_inc(prock);
+ rock->client = client;
+ rock->autofree = 0;
+@@ -653,9 +653,9 @@ PPCODE:
+ EXTEND(SP, 1);
+ pcb = av_shift(av);
+ if (strcmp(SvPV(pcb, arg), "OK") == 0)
+- PUSHs(&sv_yes);
++ PUSHs(&PL_sv_yes);
+ else
+- PUSHs(&sv_no);
++ PUSHs(&PL_sv_no);
+ pcb = perl_get_sv("@", TRUE);
+ sv_setsv(pcb, av_shift(av));
+ if (av_len(av) != -1) {
+@@ -688,9 +688,9 @@ PPCODE:
+ EXTEND(SP, 2);
+ PUSHs(sv_2mortal(newSViv(fd)));
+ if (writep)
+- PUSHs(&sv_yes);
++ PUSHs(&PL_sv_yes);
+ else
+- PUSHs(&sv_no);
++ PUSHs(&PL_sv_no);
+
+ void
+ imclient_fromURL(client,url)
diff --git a/cyrus-imapd.spec b/cyrus-imapd.spec
index 426de47..6a18102 100644
--- a/cyrus-imapd.spec
+++ b/cyrus-imapd.spec
@@ -1,6 +1,6 @@
Name: cyrus-imapd
Version: 2.4.8
-Release: 4%{?dist}
+Release: 5%{?dist}
%define ssl_pem_file %{_sysconfdir}/pki/%{name}/%{name}.pem
@@ -51,6 +51,10 @@ Patch6: cyrus-imapd-2.3.12p2-current-db.patch
# temporary workaround, rhbz#553011, https://bugzilla.andrew.cmu.edu/show_bug.cgi?id=3206
Patch7: cyrus-imapd-2.3.16-nodenny.patch
+# compatibility with perl 5.14
+# adapted from http://bugzilla.cyrusimap.org/bugzilla3/show_bug.cgi?id=3478
+Patch8: cyrus-imapd-perl5.14.patch
+
BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
BuildRequires: autoconf
@@ -127,6 +131,7 @@ one running the server.
%patch3 -p1 -b .flock
%patch4 -p1 -b .authid_normalize
%patch6 -p1 -b .db4.7
+%patch8 -p1 -b .perl5.14
install -m 644 %{SOURCE4} %{SOURCE5} %{SOURCE11} doc/
@@ -486,6 +491,9 @@ fi
%{_mandir}/man1/*
%changelog
+* Wed Jun 22 2011 Iain Arnell <iarnell at gmail.com> 2.4.8-5
+- Patch to work with Perl 5.14
+
* Mon Jun 20 2011 Marcela Mašláňová <mmaslano at redhat.com> - 2.4.8-4
- Perl mass rebuild
More information about the scm-commits
mailing list