tags 628500 + patch tags 628500 + pending thanks Dear maintainer,
I've prepared an NMU for prima (versioned as 1.28-1.1) and uploaded it to DELAYED/2. Please feel free to tell me if I should delay it longer. Regards. -- .''`. Homepage: http://info.comodo.priv.at/ - OpenPGP key ID: 0x8649AA06 : :' : Debian GNU/Linux user, admin, & developer - http://www.debian.org/ `. `' Member of VIBE!AT & SPI, fellow of Free Software Foundation Europe `- NP: Rolling Stones: Summertimeblues
diff -u prima-1.28/debian/changelog prima-1.28/debian/changelog --- prima-1.28/debian/changelog +++ prima-1.28/debian/changelog @@ -1,3 +1,16 @@ +prima (1.28-1.1) unstable; urgency=medium + + * Non-maintainer upload. + * Fix "FTBFS with perl 5.14: error: 'sv_undef' undeclared": + replace all occurences of sv_yes, sv_no, sv_undef, errgv with PL_*. + The former relies on PERL_POLLUTE which was removed in perl 5.13.3; cf. + http://perl5.git.perl.org/perl.git/commitdiff/cfef31b + This is the same change as in upstream 1.30. + Closes: #628500 + * Set urgency to medium (RC bug fix, perl 5.14 transition). + + -- gregor herrmann <gre...@debian.org> Wed, 16 Nov 2011 20:16:45 +0100 + prima (1.28-1) unstable; urgency=low * New upstream release: only in patch2: unchanged: --- prima-1.28.orig/Utils.c +++ prima-1.28/Utils.c @@ -95,7 +95,7 @@ } plist_destroy( dirlist); } else { - XPUSHs( &sv_undef); + XPUSHs( &PL_sv_undef); } } PUTBACK; only in patch2: unchanged: --- prima-1.28.orig/primguts.c +++ prima-1.28/primguts.c @@ -251,7 +251,7 @@ if ( !( flags & G_EVAL)) { OPEN_G_EVAL; } ret = perl_call_method( methname, flags | G_EVAL); - if ( SvTRUE( GvSV( errgv))) { + if ( SvTRUE( GvSV( PL_errgv))) { PUB_CHECK; if (( flags & (G_SCALAR|G_DISCARD|G_ARRAY)) == G_SCALAR) { dSP; @@ -260,7 +260,7 @@ } if ( flags & G_EVAL) return ret; CLOSE_G_EVAL; - croak( SvPV_nolen( GvSV( errgv))); + croak( SvPV_nolen( GvSV( PL_errgv))); } if ( !( flags & G_EVAL)) { CLOSE_G_EVAL; } @@ -276,7 +276,7 @@ if ( !( flags & G_EVAL)) { OPEN_G_EVAL; } ret = perl_call_pv( subname, flags | G_EVAL); - if ( SvTRUE( GvSV( errgv))) { + if ( SvTRUE( GvSV( PL_errgv))) { PUB_CHECK; if (( flags & (G_SCALAR|G_DISCARD|G_ARRAY)) == G_SCALAR) { dSP; @@ -285,7 +285,7 @@ } if ( flags & G_EVAL) return ret; CLOSE_G_EVAL; - croak( SvPV_nolen( GvSV( errgv))); + croak( SvPV_nolen( GvSV( PL_errgv))); } if ( !( flags & G_EVAL)) { CLOSE_G_EVAL; } @@ -398,7 +398,7 @@ { XPUSHs( sv_mortalcopy((( PAnyObject) _c_apricot_res_)-> mate)); --SvREFCNT( SvRV((( PAnyObject) _c_apricot_res_)-> mate)); - } else XPUSHs( &sv_undef); + } else XPUSHs( &PL_sv_undef); /* push_hv( ax, sp, items, mark, 1, hv); */ sv_free(( SV *) hv); } @@ -882,7 +882,7 @@ if ( c_decl && !query_method ( self, subName, 0)) return toReturn; if ( !c_decl && !sv_query_method(( SV *) self, subName, 0)) - return &sv_undef; + return &PL_sv_undef; } if ( format[ 0] == '<') @@ -977,12 +977,12 @@ perl_call_sv(( SV *) subName, G_SCALAR|G_EVAL) : perl_call_method( subName, G_SCALAR|G_EVAL); SPAGAIN; - if ( SvTRUE( GvSV( errgv))) + if ( SvTRUE( GvSV( PL_errgv))) { (void)POPs; PUB_CHECK; CLOSE_G_EVAL; - croak( SvPV_nolen( GvSV( errgv))); /* propagate */ + croak( SvPV_nolen( GvSV( PL_errgv))); /* propagate */ } CLOSE_G_EVAL; #else @@ -1009,11 +1009,11 @@ OPEN_G_EVAL; if ( coderef) perl_call_sv(( SV *) subName, G_DISCARD|G_EVAL); else perl_call_method( subName, G_DISCARD|G_EVAL); - if ( SvTRUE( GvSV( errgv))) + if ( SvTRUE( GvSV( PL_errgv))) { PUB_CHECK; CLOSE_G_EVAL; - croak( SvPV_nolen( GvSV( errgv))); /* propagate */ + croak( SvPV_nolen( GvSV( PL_errgv))); /* propagate */ } CLOSE_G_EVAL; #else @@ -1190,7 +1190,7 @@ { char * error = apc_last_error(); if ( error == NULL) error = "unknown system error"; - sv_setpv( GvSV( errgv), error); + sv_setpv( GvSV( PL_errgv), error); } Bool appDead = false; @@ -1249,7 +1249,7 @@ #endif prima_init_ok = 0; - ST(0) = &sv_yes; + ST(0) = &PL_sv_yes; XSRETURN(1); } @@ -1313,7 +1313,7 @@ #define TYPECHECK(s1,s2) \ if (sizeof(s1) != (s2)) { \ printf("Error: type %s is %d bytes long (expected to be %d)", #s1, (int)sizeof(s1), s2); \ - ST(0) = &sv_no; \ + ST(0) = &PL_sv_no; \ XSRETURN(1); \ } TYPECHECK( uint8_t, 1); @@ -1365,7 +1365,7 @@ register_Timer_Class(); register_Printer_Class(); - ST(0) = &sv_yes; + ST(0) = &PL_sv_yes; XSRETURN(1); } @@ -1722,7 +1722,7 @@ hv_iterinit( h); while (( he = hv_iternext( h)) != nil) { if ( killAll) free( HeVAL( he)); - HeVAL( he) = &sv_undef; + HeVAL( he) = &PL_sv_undef; } sv_free(( SV *) h); } @@ -1754,7 +1754,7 @@ ksv_check; if ( !he) return nil; val = HeVAL( he); - HeVAL( he) = &sv_undef; + HeVAL( he) = &PL_sv_undef; (void) hv_delete_ent( h, ksv, G_DISCARD, 0); if ( kill) { free( val); @@ -1769,10 +1769,10 @@ HE *he; ksv_check; if ( he) { - HeVAL( he) = &sv_undef; + HeVAL( he) = &PL_sv_undef; (void) hv_delete_ent( h, ksv, G_DISCARD, 0); } - he = hv_store_ent( h, ksv, &sv_undef, 0); + he = hv_store_ent( h, ksv, &PL_sv_undef, 0); HeVAL( he) = ( SV *) val; return true; } @@ -1871,7 +1871,7 @@ while (( he = hv_iternext( hash)) != nil) { DOLBUG( "%s\n", (char *)HeVAL( he)); free( HeVAL( he)); - HeVAL( he) = &sv_undef; + HeVAL( he) = &PL_sv_undef; } DOLBUG( "=========================== Report done ===========================\n"); sv_free(( SV *) hash); only in patch2: unchanged: --- prima-1.28.orig/Component.c +++ prima-1.28/Component.c @@ -618,7 +618,7 @@ if ( eventHook) XPUSHs( sv_2mortal( newSVsv(( SV *) eventHook))); else - XPUSHs( &sv_undef); + XPUSHs( &PL_sv_undef); PUTBACK; return; } @@ -688,11 +688,11 @@ OPEN_G_EVAL; perl_call_sv( eventHook, G_SCALAR | G_EVAL); SPAGAIN; - if ( SvTRUE( GvSV( errgv))) { + if ( SvTRUE( GvSV( PL_errgv))) { (void)POPs; PUB_CHECK; CLOSE_G_EVAL; - croak( SvPV_nolen( GvSV( errgv))); + croak( SvPV_nolen( GvSV( PL_errgv))); } CLOSE_G_EVAL; SPAGAIN; @@ -806,13 +806,13 @@ PUTBACK; OPEN_G_EVAL; perl_call_sv(( SV*) sequence[ i + 1], G_DISCARD | G_EVAL); - if ( SvTRUE( GvSV( errgv))) { + if ( SvTRUE( GvSV( PL_errgv))) { PUB_CHECK; CLOSE_G_EVAL; if ( privMethod) sv_free( privMethod); free( argsv); free( sequence); - croak( SvPV_nolen( GvSV( errgv))); + croak( SvPV_nolen( GvSV( PL_errgv))); } CLOSE_G_EVAL; SPAGAIN; only in patch2: unchanged: --- prima-1.28.orig/Object.c +++ prima-1.28/Object.c @@ -88,12 +88,12 @@ OPEN_G_EVAL; PERL_CALL_METHOD( "init", G_VOID|G_DISCARD|G_EVAL); - if ( SvTRUE( GvSV( errgv))) { + if ( SvTRUE( GvSV( PL_errgv))) { CLOSE_G_EVAL; OPEN_G_EVAL; Object_destroy( self); CLOSE_G_EVAL; - croak( SvPV_nolen( GvSV( errgv))); + croak( SvPV_nolen( GvSV( PL_errgv))); } CLOSE_G_EVAL; SPAGAIN; only in patch2: unchanged: --- prima-1.28.orig/Image.c +++ prima-1.28/Image.c @@ -667,22 +667,22 @@ if (( Handle) o != self) --SvREFCNT( SvRV( o-> mate)); } else { - XPUSHs( &sv_undef); + XPUSHs( &PL_sv_undef); err = true; } } plist_destroy( ret); } else { - XPUSHs( &sv_undef); + XPUSHs( &PL_sv_undef); err = true; } /* This code breaks exception propagation chain since it uses $@ for its own needs */ if ( err) - sv_setpv( GvSV( errgv), error); + sv_setpv( GvSV( PL_errgv), error); else - sv_setsv( GvSV( errgv), nilSV); + sv_setsv( GvSV( PL_errgv), nilSV); PUTBACK; return; @@ -762,9 +762,9 @@ /* This code breaks exception propagation chain since it uses $@ for its own needs */ if ( ret <= 0) - sv_setpv( GvSV( errgv), error); + sv_setpv( GvSV( PL_errgv), error); else - sv_setsv( GvSV( errgv), nilSV); + sv_setsv( GvSV( PL_errgv), nilSV); PUTBACK; return; } only in patch2: unchanged: --- prima-1.28.orig/include/apricot.h +++ prima-1.28/include/apricot.h @@ -417,7 +417,7 @@ #define nil Null(void*) #endif #define nilHandle Null(Handle) -#define nilSV &sv_undef +#define nilSV &PL_sv_undef #define true TRUE #define false FALSE @@ -1321,7 +1321,7 @@ #define pexist( key) hv_exists( profile, # key, strlen( #key)) #define pdelete( key) (void) hv_delete( profile, # key, strlen( #key), G_DISCARD) #define dPROFILE SV ** temporary_prf_Sv -#define pget_sv( key) ((( temporary_prf_Sv = hv_fetch( profile, # key, strlen( # key), 0)) == nil) ? croak( "Panic: bad profile key (``%s'') requested in ``%s'', line %d\n", # key, __FILE__, __LINE__ ), &sv_undef : *temporary_prf_Sv) +#define pget_sv( key) ((( temporary_prf_Sv = hv_fetch( profile, # key, strlen( # key), 0)) == nil) ? croak( "Panic: bad profile key (``%s'') requested in ``%s'', line %d\n", # key, __FILE__, __LINE__ ), &PL_sv_undef : *temporary_prf_Sv) #define pget_i( key) ( pget_sv( key), SvIV( *temporary_prf_Sv)) #define pget_f( key) ( pget_sv( key), SvNV( *temporary_prf_Sv)) #define pget_c( key) ( pget_sv( key), SvPV_nolen( *temporary_prf_Sv)) only in patch2: unchanged: --- prima-1.28.orig/include/guts.h +++ prima-1.28/include/guts.h @@ -45,10 +45,10 @@ #define dG_EVAL_ARGS SV * errSave = nil #define OPEN_G_EVAL \ - errSave = SvTRUE( GvSV( errgv)) ? newSVsv( GvSV( errgv)) : nil;\ - sv_setsv( GvSV( errgv), nilSV) + errSave = SvTRUE( GvSV( PL_errgv)) ? newSVsv( GvSV( PL_errgv)) : nil;\ + sv_setsv( GvSV( PL_errgv), nilSV) #define CLOSE_G_EVAL \ - if ( errSave) sv_catsv( GvSV( errgv), errSave);\ + if ( errSave) sv_catsv( GvSV( PL_errgv), errSave);\ if ( errSave) sv_free( errSave) extern long apcError; only in patch2: unchanged: --- prima-1.28.orig/pod/Prima/internals.pod +++ prima-1.28/pod/Prima/internals.pod @@ -342,7 +342,7 @@ The caller checks if the exception was taken place by evaluating - SvTRUE( GvSV( errgv)) + SvTRUE( GvSV( PL_errgv)) statement. It is guaranteed to be false if there was no exception condition. But in some situations, namely, @@ -355,16 +355,16 @@ OPEN_G_EVAL; // open brackets // call code perl_call_method( ... | G_EVAL); // G_EVAL is necessary - if ( SvTRUE( GvSV( errgv)) { + if ( SvTRUE( GvSV( PL_errgv)) { CLOSE_G_EVAL; // close brackets - croak( SvPV_nolen( GvSV( errgv)));// propagate exception + croak( SvPV_nolen( GvSV( PL_errgv)));// propagate exception // no code is executed after croak } CLOSE_G_EVAL; // close brackets ... This technique provides workaround to a "false alarm" situation, if -SvTRUE( GvSV( errgv)) is true before perl_call_method(). +SvTRUE( GvSV( PL_errgv)) is true before perl_call_method(). =head2 Object protection only in patch2: unchanged: --- prima-1.28.orig/Prima/Gencls.pm +++ prima-1.28/Prima/Gencls.pm @@ -1179,7 +1179,7 @@ if ( ref $type) { return "sv_$type->[PROPS]->{name}2HV(&($name))"; } elsif ( $type eq 'Handle') { - return "( $name ? (( $incInst)$name)-> $hMate : &sv_undef)"; + return "( $name ? (( $incInst)$name)-> $hMate : &PL_sv_undef)"; } elsif ( $type eq 'SV*') { return $name; } else { @@ -1867,7 +1867,7 @@ print HEADER "\t\tif ( $incRes && (( $incInst) $incRes)-> $hMate && ((( $incInst) $incRes)-> $hMate != nilSV))\n"; print HEADER "\t\t{\n"; print HEADER "\t\t\tXPUSHs( sv_mortalcopy((( $incInst) $incRes)-> $hMate));\n"; - print HEADER "\t\t} else XPUSHs( &sv_undef);\n"; + print HEADER "\t\t} else XPUSHs( &PL_sv_undef);\n"; } elsif ($resSub eq "SV*") { print HEADER "\t\tXPUSHs( sv_2mortal( $incRes));\n"; } else {
signature.asc
Description: Digital signature