CC: | babelworx [...] opensuse.org |
Subject: | compile fails with perl-5.12 |
with perl-5.12, PUSHEVAL() macro changed from 3 params to 2 params.
This patch fixes that.
We build this package with the help of numerous other patches here:
https://build.opensuse.org/package/files?package=python-perlmodule&project=home:babelworx:python
Subject: | pyperl-1.0.1d-perl-5.12-fixes.patch |
--- pyperl-1.0.1d/try_perlapi.pl.orig 2010-06-14 17:44:52.607253833 +0200
+++ pyperl-1.0.1d/try_perlapi.pl 2010-06-14 17:52:03.057675152 +0200
@@ -19,6 +19,7 @@ print C <<EOT;
#include <EXTERN.h>
#define PERL_EXT 1
#include <perl.h>
+#include <patchlevel.h> // for PERL_VERSION
#include <Python.h>
#include "try_perlapi.h"
@@ -53,7 +54,11 @@ fake_entertry()
// Perl_push_return(aTHX_ Nullop);
PUSHBLOCK(cx, (CXt_EVAL|CXp_TRYBLOCK), PL_stack_sp);
+#if (PERL_REVISION <= 5 && PERL_VERSION < 12)
PUSHEVAL(cx, 0, 0);
+#else
+ PUSHEVAL(cx, 0); // two parameters since perl-5.12
+#endif
PL_eval_root = PL_op;
PL_in_eval = EVAL_INEVAL;
sv_setpvn(ERRSV, "", 0);