1 |
xmw 11/09/27 22:36:43 |
2 |
|
3 |
Added: golly-2.2-perl-5.14.patch |
4 |
Removed: golly-2.1-python-amd64.patch |
5 |
golly-2.1-perl-ldopts.patch |
6 |
golly-2.1-as-needed.patch |
7 |
Log: |
8 |
Remove old versons, add dep on <perl-5.14 and revbump for perl-5.14 patch by Maks Verver (bug 384057) |
9 |
|
10 |
(Portage version: 2.1.10.11/cvs/Linux x86_64) |
11 |
|
12 |
Revision Changes Path |
13 |
1.1 app-misc/golly/files/golly-2.2-perl-5.14.patch |
14 |
|
15 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-misc/golly/files/golly-2.2-perl-5.14.patch?rev=1.1&view=markup |
16 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-misc/golly/files/golly-2.2-perl-5.14.patch?rev=1.1&content-type=text/plain |
17 |
|
18 |
Index: golly-2.2-perl-5.14.patch |
19 |
=================================================================== |
20 |
--- wxperl.cpp 2011/06/22 06:32:11 1.97 |
21 |
+++ wxperl.cpp 2011/09/22 09:19:07 1.99 |
22 |
@@ -131,6 +131,17 @@ |
23 |
#define PERL5101_OR_LATER |
24 |
#endif |
25 |
|
26 |
+// check if we're building with Perl 5.14 or later |
27 |
+#if (PERL_REVISION == 5) && (PERL_VERSION >= 14) |
28 |
+ #define PERL514_OR_LATER |
29 |
+#endif |
30 |
+ |
31 |
+// Check if PL_thr_key is a real variable or instead a macro which calls |
32 |
+// Perl_Gthr_key_ptr(NULL), which was the default before Perl 5.14: |
33 |
+#ifdef PL_thr_key |
34 |
+ #define PERL_THR_KEY_FUNC 1 |
35 |
+#endif |
36 |
+ |
37 |
static PerlInterpreter* my_perl = NULL; |
38 |
|
39 |
EXTERN_C void boot_DynaLoader(pTHX_ CV* cv); |
40 |
@@ -155,7 +166,11 @@ |
41 |
extern "C" |
42 |
{ |
43 |
#ifdef USE_ITHREADS |
44 |
- perl_key*(*G_Perl_Gthr_key_ptr)(register PerlInterpreter*); |
45 |
+ #ifdef PERL_THR_KEY_FUNC |
46 |
+ perl_key*(*G_Perl_Gthr_key_ptr)(register PerlInterpreter*); |
47 |
+ #else |
48 |
+ perl_key *G_PL_thr_key; |
49 |
+ #endif |
50 |
#endif |
51 |
SV**(*G_Perl_av_fetch)(pTHX_ AV*, I32, I32); |
52 |
I32(*G_Perl_av_len)(pTHX_ AV*); |
53 |
@@ -215,7 +230,13 @@ |
54 |
} |
55 |
|
56 |
// redefine Perl functions to their equivalent G_* wrappers |
57 |
-#define Perl_Gthr_key_ptr G_Perl_Gthr_key_ptr |
58 |
+#ifdef USE_ITHREADS |
59 |
+ #ifdef PERL_THR_KEY_FUNC |
60 |
+ #define Perl_Gthr_key_ptr G_Perl_Gthr_key_ptr |
61 |
+ #else |
62 |
+ #define PL_thr_key (*G_PL_thr_key) |
63 |
+ #endif |
64 |
+#endif |
65 |
#define Perl_av_fetch G_Perl_av_fetch |
66 |
#define Perl_av_len G_Perl_av_len |
67 |
#define Perl_av_push G_Perl_av_push |
68 |
@@ -287,7 +308,11 @@ |
69 |
} perlFuncs[] = |
70 |
{ |
71 |
#ifdef USE_ITHREADS |
72 |
- PERL_FUNC(Perl_Gthr_key_ptr) |
73 |
+ #ifdef PERL_THR_KEY_FUNC |
74 |
+ PERL_FUNC(Perl_Gthr_key_ptr) |
75 |
+ #else |
76 |
+ PERL_FUNC(PL_thr_key) |
77 |
+ #endif |
78 |
#endif |
79 |
PERL_FUNC(Perl_av_fetch) |
80 |
PERL_FUNC(Perl_av_len) |
81 |
@@ -318,19 +343,24 @@ |
82 |
PERL_FUNC(Perl_sys_term) |
83 |
#endif |
84 |
#ifdef MULTIPLICITY |
85 |
- #ifdef PERL510_OR_LATER |
86 |
- PERL_FUNC(Perl_Imarkstack_ptr_ptr) |
87 |
- PERL_FUNC(Perl_Istack_base_ptr) |
88 |
- PERL_FUNC(Perl_Istack_max_ptr) |
89 |
- PERL_FUNC(Perl_Istack_sp_ptr) |
90 |
- #else |
91 |
- PERL_FUNC(Perl_Tmarkstack_ptr_ptr) |
92 |
- PERL_FUNC(Perl_Tstack_base_ptr) |
93 |
- PERL_FUNC(Perl_Tstack_max_ptr) |
94 |
- PERL_FUNC(Perl_Tstack_sp_ptr) |
95 |
+ #ifndef PERL514_OR_LATER |
96 |
+ // before Perl 5.14: |
97 |
+ PERL_FUNC(Perl_Iexit_flags_ptr) |
98 |
+ PERL_FUNC(Perl_Iperl_destruct_level_ptr) |
99 |
+ #ifdef PERL510_OR_LATER |
100 |
+ // Perl 5.10/5.12 only: |
101 |
+ PERL_FUNC(Perl_Imarkstack_ptr_ptr) |
102 |
+ PERL_FUNC(Perl_Istack_base_ptr) |
103 |
+ PERL_FUNC(Perl_Istack_max_ptr) |
104 |
+ PERL_FUNC(Perl_Istack_sp_ptr) |
105 |
+ #else |
106 |
+ // before Perl 5.10: |
107 |
+ PERL_FUNC(Perl_Tmarkstack_ptr_ptr) |
108 |
+ PERL_FUNC(Perl_Tstack_base_ptr) |
109 |
+ PERL_FUNC(Perl_Tstack_max_ptr) |
110 |
+ PERL_FUNC(Perl_Tstack_sp_ptr) |
111 |
+ #endif |
112 |
#endif |
113 |
- PERL_FUNC(Perl_Iexit_flags_ptr) |
114 |
- PERL_FUNC(Perl_Iperl_destruct_level_ptr) |
115 |
#else /* no MULTIPLICITY */ |
116 |
/* N.B. these are actually variables, not functions, but the distinction does |
117 |
not matter for symbol resolution: */ |
118 |
@@ -3079,8 +3109,13 @@ |
119 |
STRLEN n_a; |
120 |
char* err = SvPV(ST(0),n_a); |
121 |
|
122 |
- // store message in global string (shown after script finishes) |
123 |
- scripterr = wxString(err, wxConvLocal); |
124 |
+ if (scripterr == wxString(abortmsg,wxConvLocal)) { |
125 |
+ // this can happen in Perl 5.14 so don't change scripterr |
126 |
+ // otherwise a message box will appear |
127 |
+ } else { |
128 |
+ // store message in global string (shown after script finishes) |
129 |
+ scripterr = wxString(err, wxConvLocal); |
130 |
+ } |
131 |
|
132 |
XSRETURN(0); |
133 |
} |