Hello,

  Here's what I came up with for a patch to account for two new
  symbols (Perl_sv_2iv_flags, Perl_newXS_flags) introduced in
  ActiveState perl for build 822 and later (these symbols were
  preventing the building of vim with dynamic support for perl).

  After patching, I tested building vim with dynamic support for
  ActiveState perl build 822 and an older build 810 -- on Windows.

  What I have no clue about is what happens when someone tries to
  build vim with non-AS perl or with AS perl on non-Windows.  Does
  non-AS perl also have these symbols?  Are these symbols present
  in perl for non-Windows also? 

  Thanks,

  --Suresh

  Patch to account for two new symbols (Perl_sv_2iv_flags,
  Perl_newXS_flags) introduced in ActiveState perl for 
  build 822 and later.

  Has been tested with build 822 and older build 810.

  *** ..\vim7\src\if_perl.xs    Tue Aug 28 21:43:48 2007
  --- if_perl.xs        Tue Aug 28 21:12:48 2007
  ***************
  *** 109,114 ****
  --- 109,118 ----
    # else
    #  define Perl_sv_catpvn dll_Perl_sv_catpvn
    # endif
  + #if (ACTIVE_PERL >= 822)
  + #  define Perl_sv_2iv_flags    dll_Perl_sv_2iv_flags 
  + #  define Perl_newXS_flags     dll_Perl_newXS_flags 
  + #endif
    # define Perl_sv_free dll_Perl_sv_free
    # define Perl_sv_isa dll_Perl_sv_isa
    # define Perl_sv_magic dll_Perl_sv_magic
  ***************
  *** 192,197 ****
  --- 196,205 ----
    #else
    static void (*Perl_sv_catpvn)(pTHX_ SV*, const char*, STRLEN);
    #endif
  + #if (ACTIVE_PERL >= 822)
  + static IV (*Perl_sv_2iv_flags)(pTHX_ SV* sv, I32 flags);
  + static CV * (*Perl_newXS_flags)(pTHX_ const char *name, XSUBADDR_t subaddr, 
const char *const filename, const char *const proto,
U32 flags);
  + #endif
    static void (*Perl_sv_free)(pTHX_ SV*);
    static int (*Perl_sv_isa)(pTHX_ SV*, const char*);
    static void (*Perl_sv_magic)(pTHX_ SV*, SV*, int, const char*, I32);
  ***************
  *** 266,271 ****
  --- 274,283 ----
        {"Perl_sv_2pv_nolen", (PERL_PROC*)&Perl_sv_2pv_nolen},
    #else
        {"Perl_sv_2pv", (PERL_PROC*)&Perl_sv_2pv},
  + #endif
  + #if (ACTIVE_PERL >= 822)
  +     {"Perl_sv_2iv_flags", (PERL_PROC*)&Perl_sv_2iv_flags},
  +     {"Perl_newXS_flags", (PERL_PROC*)&Perl_newXS_flags},
    #endif
        {"Perl_sv_bless", (PERL_PROC*)&Perl_sv_bless},
    #if (PERL_REVISION == 5) && (PERL_VERSION >= 8)
  *** ..\vim7\src\Make_ming.mak Tue Aug 28 21:43:48 2007
  --- Make_ming.mak     Tue Aug 28 21:36:36 2007
  ***************
  *** 276,281 ****
  --- 276,285 ----
    endif
    endif
    
  + ifdef ACTIVE_PERL
  + CFLAGS += -DACTIVE_PERL=$(ACTIVE_PERL)
  + endif
  + 
    ifdef MZSCHEME
    CFLAGS += -I$(MZSCHEME)/include -DFEAT_MZSCHEME 
-DMZSCHEME_COLLECTS=\"$(MZSCHEME)/collects\"
    ifeq (yes, $(DYNAMIC_MZSCHEME))
  


_______________________________________________
Perl-Win32-Users mailing list
Perl-Win32-Users@listserv.ActiveState.com
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs

Reply via email to