]>
Commit | Line | Data |
---|---|---|
c0949972 ER |
1 | To: vim-dev@vim.org |
2 | Subject: patch 7.1.102 | |
3 | Fcc: outbox | |
4 | From: Bram Moolenaar <Bram@moolenaar.net> | |
5 | Mime-Version: 1.0 | |
6 | Content-Type: text/plain; charset=ISO-8859-1 | |
7 | Content-Transfer-Encoding: 8bit | |
8 | ------------ | |
9 | ||
10 | Patch 7.1.102 | |
11 | Problem: Perl interface doesn't compile with new version of Perl. | |
12 | Solution: Add two variables to the dynamic library loading. (Suresh | |
13 | Govindachar) | |
14 | Files: src/if_perl.xs | |
15 | ||
16 | ||
17 | *** ../vim-7.1.101/src/if_perl.xs Wed Aug 16 19:33:57 2006 | |
18 | --- src/if_perl.xs Wed Sep 5 22:00:36 2007 | |
19 | *************** | |
20 | *** 40,45 **** | |
21 | --- 40,65 ---- | |
22 | # define PERL_SUBVERSION SUBVERSION | |
23 | #endif | |
24 | ||
25 | + /* | |
26 | + * Quoting Jan Dubois of Active State: | |
27 | + * ActivePerl build 822 still identifies itself as 5.8.8 but already | |
28 | + * contains many of the changes from the upcoming Perl 5.8.9 release. | |
29 | + * | |
30 | + * The changes include addition of two symbols (Perl_sv_2iv_flags, | |
31 | + * Perl_newXS_flags) not present in earlier releases. | |
32 | + * | |
33 | + * Jan Dubois suggested the following guarding scheme: | |
34 | + */ | |
35 | + #if (ACTIVEPERL_VERSION >= 822) | |
36 | + # define PERL589_OR_LATER | |
37 | + #endif | |
38 | + #if (PERL_REVISION == 5) && (PERL_VERSION == 8) && (PERL_SUBVERSION >= 9) | |
39 | + # define PERL589_OR_LATER | |
40 | + #endif | |
41 | + #if (PERL_REVISION == 5) && (PERL_VERSION >= 9) | |
42 | + # define PERL589_OR_LATER | |
43 | + #endif | |
44 | + | |
45 | #ifndef pTHX | |
46 | # define pTHX void | |
47 | # define pTHX_ | |
48 | *************** | |
49 | *** 109,114 **** | |
50 | --- 129,138 ---- | |
51 | # else | |
52 | # define Perl_sv_catpvn dll_Perl_sv_catpvn | |
53 | # endif | |
54 | + #ifdef PERL589_OR_LATER | |
55 | + # define Perl_sv_2iv_flags dll_Perl_sv_2iv_flags | |
56 | + # define Perl_newXS_flags dll_Perl_newXS_flags | |
57 | + #endif | |
58 | # define Perl_sv_free dll_Perl_sv_free | |
59 | # define Perl_sv_isa dll_Perl_sv_isa | |
60 | # define Perl_sv_magic dll_Perl_sv_magic | |
61 | *************** | |
62 | *** 192,197 **** | |
63 | --- 216,225 ---- | |
64 | #else | |
65 | static void (*Perl_sv_catpvn)(pTHX_ SV*, const char*, STRLEN); | |
66 | #endif | |
67 | + #ifdef PERL589_OR_LATER | |
68 | + static IV (*Perl_sv_2iv_flags)(pTHX_ SV* sv, I32 flags); | |
69 | + static CV * (*Perl_newXS_flags)(pTHX_ const char *name, XSUBADDR_t subaddr, const char *const filename, const char *const proto, U32 flags); | |
70 | + #endif | |
71 | static void (*Perl_sv_free)(pTHX_ SV*); | |
72 | static int (*Perl_sv_isa)(pTHX_ SV*, const char*); | |
73 | static void (*Perl_sv_magic)(pTHX_ SV*, SV*, int, const char*, I32); | |
74 | *************** | |
75 | *** 266,271 **** | |
76 | --- 294,303 ---- | |
77 | {"Perl_sv_2pv_nolen", (PERL_PROC*)&Perl_sv_2pv_nolen}, | |
78 | #else | |
79 | {"Perl_sv_2pv", (PERL_PROC*)&Perl_sv_2pv}, | |
80 | + #endif | |
81 | + #ifdef PERL589_OR_LATER | |
82 | + {"Perl_sv_2iv_flags", (PERL_PROC*)&Perl_sv_2iv_flags}, | |
83 | + {"Perl_newXS_flags", (PERL_PROC*)&Perl_newXS_flags}, | |
84 | #endif | |
85 | {"Perl_sv_bless", (PERL_PROC*)&Perl_sv_bless}, | |
86 | #if (PERL_REVISION == 5) && (PERL_VERSION >= 8) | |
87 | *** ../vim-7.1.101/src/version.c Thu Sep 13 15:00:28 2007 | |
88 | --- src/version.c Thu Sep 13 15:18:36 2007 | |
89 | *************** | |
90 | *** 668,669 **** | |
91 | --- 668,671 ---- | |
92 | { /* Add new patch number below this line */ | |
93 | + /**/ | |
94 | + 102, | |
95 | /**/ | |
96 | ||
97 | -- | |
98 | Witches prefer brooms: vacuum-cleaners need extension cords! | |
99 | ||
100 | /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ | |
101 | /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ | |
102 | \\\ download, build and distribute -- http://www.A-A-P.org /// | |
103 | \\\ help me help AIDS victims -- http://ICCF-Holland.org /// |