From 0a433121fc5386811dd7b25aa2d41e3ac9315d60 Mon Sep 17 00:00:00 2001 From: Sukneet Basuta Date: Fri, 13 Jul 2012 12:04:51 -0400 Subject: pilot-link: actually add files --- mobile/pilot-link/PRE_BUILD | 4 + mobile/pilot-link/perl.patch | 625 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 629 insertions(+) create mode 100755 mobile/pilot-link/PRE_BUILD create mode 100644 mobile/pilot-link/perl.patch (limited to 'mobile') diff --git a/mobile/pilot-link/PRE_BUILD b/mobile/pilot-link/PRE_BUILD new file mode 100755 index 0000000000..ec88f6129d --- /dev/null +++ b/mobile/pilot-link/PRE_BUILD @@ -0,0 +1,4 @@ +default_pre_build && +cd $SOURCE_DIRECTORY && + +patch -p1 < $SPELL_DIRECTORY/perl.patch diff --git a/mobile/pilot-link/perl.patch b/mobile/pilot-link/perl.patch new file mode 100644 index 0000000000..72d68d4c4f --- /dev/null +++ b/mobile/pilot-link/perl.patch @@ -0,0 +1,625 @@ +From ef1794b51e327cc80ec4cd95d6c97f954b912860 Mon Sep 17 00:00:00 2001 +From: Niko Tyni +Date: Sun, 10 Jul 2011 10:28:51 +0300 +Subject: [PATCH] Don't use PERL_POLLUTE macros + +The sv_yes, sv_no, sv_undef, etc. symbol names are compatibility +macros that have been deprecated since Perl 5.6. + +Perl 5.14.0 removes support for defining PERL_POLLUTE to get these +compatibility macros, so replace them all with the current names +(PL_sv_yes, PL_sv_no, etc.) and don't define PERL_POLLUTE any more. + +This should work on all Perls since 5.6; it's been verified with 5.12.4 +and 5.14.0. +--- + bindings/Perl/Makefile.PL.in | 1 - + bindings/Perl/Pilot.xs | 158 +++++++++++++++++++++--------------------- + bindings/Perl/typemap | 4 +- + 3 files changed, 81 insertions(+), 82 deletions(-) + +diff --git a/bindings/Perl/Makefile.PL.in b/bindings/Perl/Makefile.PL.in +index 853e6eb..337cac0 100644 +--- a/bindings/Perl/Makefile.PL.in ++++ b/bindings/Perl/Makefile.PL.in +@@ -39,7 +39,6 @@ WriteMakefile( + 'VERSION' => '@PILOT_LINK_VERS@.@PILOT_LINK_MAJOR@.@PILOT_LINK_MINOR@@PILOT_LINK_PATCH@', + 'XSPROTOARG' => '-noprototypes', + 'INC' => "-I$plincdir", +- 'DEFINE' => '-DPERL_POLLUTE', + 'PREFIX' => "$prefix", + 'INSTALLDIRS'=> 'vendor', + 'dynamic_lib'=> {'OTHERLDFLAGS' => $lib}, +diff --git a/bindings/Perl/Pilot.xs b/bindings/Perl/Pilot.xs +index 5a633ff..366d646 100644 +--- a/bindings/Perl/Pilot.xs ++++ b/bindings/Perl/Pilot.xs +@@ -160,7 +160,7 @@ SvChar4(arg) + + #define pack_dbinfo(arg, var, failure) { \ + if (failure < 0) { \ +- arg = &sv_undef; \ ++ arg = &PL_sv_undef; \ + self->errnop = failure; \ + } else { \ + HV * i = newHV(); \ +@@ -214,15 +214,15 @@ SvChar4(arg) + var.createDate = (s = hv_fetch(i, "createDate", 10, 0)) ? SvIV(*s) : 0;\ + var.modifyDate = (s = hv_fetch(i, "modifyDate", 10, 0)) ? SvIV(*s) : 0;\ + var.backupDate = (s = hv_fetch(i, "backupDate", 10, 0)) ? SvIV(*s) : 0;\ +- if ((s = hv_fetch(i, "name", 4, 0)) ? SvPV(*s,na) : 0) \ +- strncpy(var.name, SvPV(*s, na), sizeof(var.name)); \ ++ if ((s = hv_fetch(i, "name", 4, 0)) ? SvPV(*s,PL_na) : 0) \ ++ strncpy(var.name, SvPV(*s, PL_na), sizeof(var.name)); \ + } else {\ + croak("argument is not a hash reference"); \ + } + + #define pack_userinfo(arg, var, failure) { \ + if (failure < 0) { \ +- arg = &sv_undef; \ ++ arg = &PL_sv_undef; \ + self->errnop = failure; \ + } else { \ + HV * i = newHV(); \ +@@ -246,8 +246,8 @@ SvChar4(arg) + var.lastSyncPC = (s = hv_fetch(i, "lastSyncPC", 10, 0)) ? SvIV(*s) : 0;\ + var.lastSyncDate = (s = hv_fetch(i, "lastSyncDate", 12, 0)) ? SvIV(*s) : 0;\ + var.successfulSyncDate = (s = hv_fetch(i, "successfulSyncDate", 18, 0)) ? SvIV(*s) : 0;\ +- if ((s = hv_fetch(i, "name", 4, 0)) ? SvPV(*s,na) : 0)\ +- strncpy(var.username, SvPV(*s, na), sizeof(var.username));\ ++ if ((s = hv_fetch(i, "name", 4, 0)) ? SvPV(*s,PL_na) : 0)\ ++ strncpy(var.username, SvPV(*s, PL_na), sizeof(var.username));\ + } else {\ + croak("argument is not a hash reference");\ + } +@@ -287,7 +287,7 @@ SvChar4(arg) + }\ + } else {\ + self->errnop = result;\ +- PUSHs(&sv_undef);\ ++ PUSHs(&PL_sv_undef);\ + } + + #define PackSI\ +@@ -329,7 +329,7 @@ SvChar4(arg) + }\ + } else {\ + self->errnop = result;\ +- PUSHs(&sv_undef);\ ++ PUSHs(&PL_sv_undef);\ + } + + #define PackRecord {\ +@@ -421,7 +421,7 @@ SvChar4(arg) + }\ + } else {\ + self->errnop = result;\ +- PUSHs(&sv_undef);\ ++ PUSHs(&PL_sv_undef);\ + } + + #define PackResource\ +@@ -473,7 +473,7 @@ SvChar4(arg) + }\ + } else {\ + self->errnop = result;\ +- PUSHs(&sv_undef);\ ++ PUSHs(&PL_sv_undef);\ + } + + #define PackPref\ +@@ -536,7 +536,7 @@ SvChar4(arg) + croak("Unable to create resource");\ + } else {\ + self->errnop = result;\ +- PUSHs(&sv_undef);\ ++ PUSHs(&PL_sv_undef);\ + } + + void doUnpackCategory(HV * self, struct CategoryAppInfo * c) +@@ -576,7 +576,7 @@ void doPackCategory(HV * self, struct CategoryAppInfo * c) + + if ((s = hv_fetch(self, "categoryName", 12, 0)) && SvOK(*s) && SvRV(*s) && (SvTYPE(av=(AV*)SvRV(*s))==SVt_PVAV)) + for (i=0;i<16;i++) +- strncpy(c->name[i], (s=av_fetch(av, i, 0)) ? SvPV(*s,na) : "", 16); ++ strncpy(c->name[i], (s=av_fetch(av, i, 0)) ? SvPV(*s,PL_na) : "", 16); + else + for (i=0;i<16;i++) + strcpy(c->name[i], ""); +@@ -602,7 +602,7 @@ void doPackCategory(HV * self, struct CategoryAppInfo * c) + int SvList(SV * arg, char **list) + { + int i; +- char * str = SvPV(arg, na); ++ char * str = SvPV(arg, PL_na); + for (i=0;list[i];i++) + if (strcasecmp(list[i], str)==0) + return i; +@@ -781,11 +781,11 @@ Pack(record) + croak("Invalid advance unit %d encountered", u); + } + } else { +- if (strEQ(SvPV(*s, na), "minutes")) ++ if (strEQ(SvPV(*s, PL_na), "minutes")) + u = 0; +- else if (strEQ(SvPV(*s, na), "hours")) ++ else if (strEQ(SvPV(*s, PL_na), "hours")) + u = 1; +- else if (strEQ(SvPV(*s, na), "days")) ++ else if (strEQ(SvPV(*s, PL_na), "days")) + u = 2; + else + croak("Invalid advance unit %d encountered", u); +@@ -850,10 +850,10 @@ Pack(record) + } + } + +- a.description = (s = hv_fetch(h, "description", 11, 0)) ? SvPV(*s,na) : 0; ++ a.description = (s = hv_fetch(h, "description", 11, 0)) ? SvPV(*s,PL_na) : 0; + if (!a.description) + croak("appointments must contain a description"); +- a.note = (s = hv_fetch(h, "note", 4, 0)) ? SvPV(*s,na) : 0; ++ a.note = (s = hv_fetch(h, "note", 4, 0)) ? SvPV(*s,PL_na) : 0; + + if (pack_Appointment(&a, &pibuf, datebook_v1) < 0) { + croak("pack_Appointment failed"); +@@ -897,7 +897,7 @@ UnpackAppBlock(record) + } + + SvPV(record,len); +- if (unpack_AppointmentAppInfo(&a, (CPTR)SvPV(record, na), len)>0) { ++ if (unpack_AppointmentAppInfo(&a, (CPTR)SvPV(record, PL_na), len)>0) { + + doUnpackCategory(ret, &a.category); + +@@ -1023,8 +1023,8 @@ Pack(record) + a.indefinite = 1; + } + +- a.description = (s = hv_fetch(h, "description", 11, 0)) ? SvPV(*s,na) : 0; +- a.note = (s = hv_fetch(h, "note", 4, 0)) ? SvPV(*s,na) : 0; ++ a.description = (s = hv_fetch(h, "description", 11, 0)) ? SvPV(*s,PL_na) : 0; ++ a.note = (s = hv_fetch(h, "note", 4, 0)) ? SvPV(*s,PL_na) : 0; + + if (pack_ToDo(&a, &pibuf, todo_v1) < 0) { + croak("pack_ToDo failed"); +@@ -1065,7 +1065,7 @@ UnpackAppBlock(record) + } + + SvPV(record,len); +- if (unpack_ToDoAppInfo(&a, (CPTR)SvPV(record, na), len)>0) { ++ if (unpack_ToDoAppInfo(&a, (CPTR)SvPV(record, PL_na), len)>0) { + + doUnpackCategory(ret, &a.category); + +@@ -1160,7 +1160,7 @@ Unpack(record) + hv_store(ret, "entry", 5, newRV_noinc((SV*)e), 0); + + for (i=0;i<19;i++) { +- av_push(e, a.entry[i] ? newSVpv(a.entry[i],0) : &sv_undef); ++ av_push(e, a.entry[i] ? newSVpv(a.entry[i],0) : &PL_sv_undef); + } + + hv_store(ret, "showPhone", 9, newSViv(a.showPhone), 0); +@@ -1200,7 +1200,7 @@ Pack(record) + + if ((s = hv_fetch(h, "entry", 5, 0)) && SvOK(*s) && SvRV(*s) && (SvTYPE(av=(AV*)SvRV(*s))==SVt_PVAV)) + for (i=0;i<19;i++) +- a.entry[i] = ((s=av_fetch(av, i, 0)) && SvOK(*s)) ? SvPV(*s,na) : 0; ++ a.entry[i] = ((s=av_fetch(av, i, 0)) && SvOK(*s)) ? SvPV(*s,PL_na) : 0; + else + for (i=0;i<19;i++) + a.entry[i] = 0; +@@ -1249,7 +1249,7 @@ UnpackAppBlock(record) + } + + SvPV(record,len); +- if (unpack_AddressAppInfo(&a, (CPTR)SvPV(record, na), len)>0) { ++ if (unpack_AddressAppInfo(&a, (CPTR)SvPV(record, PL_na), len)>0) { + + doUnpackCategory(ret, &a.category); + +@@ -1309,13 +1309,13 @@ PackAppBlock(record) + a.sortByCompany = (s = hv_fetch(h, "sortByCompany", 13, 0)) ? SvIV(*s) : 0; + + if ((s = hv_fetch(h, "label", 5, 0)) && SvOK(*s) && SvRV(*s) && (SvTYPE(av=(AV*)SvRV(*s))==SVt_PVAV)) +- for (i=0;i<22;i++) strncpy(a.labels[i], (s=av_fetch(av, i, 0)) ? SvPV(*s,na) : "", 16); ++ for (i=0;i<22;i++) strncpy(a.labels[i], (s=av_fetch(av, i, 0)) ? SvPV(*s,PL_na) : "", 16); + else + for (i=0;i<22;i++) a.labels[i][0] = 0; + for (i=0;i<22;i++) a.labels[i][15] = 0; + + if ((s = hv_fetch(h, "phoneLabel", 10, 0)) && SvOK(*s) && SvRV(*s) && (SvTYPE(av=(AV*)SvRV(*s))==SVt_PVAV)) +- for (i=0;i<8;i++) strncpy(a.phoneLabels[i], (s=av_fetch(av, i, 0)) ? SvPV(*s,na) : "", 16); ++ for (i=0;i<8;i++) strncpy(a.phoneLabels[i], (s=av_fetch(av, i, 0)) ? SvPV(*s,PL_na) : "", 16); + else + for (i=0;i<8;i++) a.phoneLabels[i][0] = 0; + for (i=0;i<8;i++) a.phoneLabels[i][15] = 0; +@@ -1396,7 +1396,7 @@ Pack(record) + else { + + if ((s = hv_fetch(h, "text", 4, 0))) +- a.text = SvPV(*s,na); ++ a.text = SvPV(*s,PL_na); + else + a.text = 0; + +@@ -1438,7 +1438,7 @@ UnpackAppBlock(record) + } + + SvPV(record,len); +- if (unpack_MemoAppInfo(&a, (CPTR)SvPV(record, na), len)>0) { ++ if (unpack_MemoAppInfo(&a, (CPTR)SvPV(record, PL_na), len)>0) { + + doUnpackCategory(ret, &a.category); + +@@ -1510,7 +1510,7 @@ Unpack(record) + + SvPV(record,len); + if (len > 0) { /* len == 0 if deleted flag is set */ +- if (unpack_Expense(&e, (CPTR)SvPV(record, na), len)>0) { ++ if (unpack_Expense(&e, (CPTR)SvPV(record, PL_na), len)>0) { + + hv_store(ret, "date", 4, newRV_noinc((SV*)tmtoav(&e.date)), 0); + hv_store(ret, "type", 4, newSVlist(e.type,ExpenseTypeNames),0); +@@ -1570,15 +1570,15 @@ Pack(record) + avtotm((AV*)SvRV(*s), &e.date); + else + croak("expense record must contain date"); +- if ((s = hv_fetch(h, "amount", 6, 0))) e.amount = SvPV(*s,na); ++ if ((s = hv_fetch(h, "amount", 6, 0))) e.amount = SvPV(*s,PL_na); + else e.amount = 0; +- if ((s = hv_fetch(h, "vendor", 6, 0))) e.vendor = SvPV(*s,na); ++ if ((s = hv_fetch(h, "vendor", 6, 0))) e.vendor = SvPV(*s,PL_na); + else e.vendor = 0; +- if ((s = hv_fetch(h, "city", 4, 0))) e.city = SvPV(*s,na); ++ if ((s = hv_fetch(h, "city", 4, 0))) e.city = SvPV(*s,PL_na); + else e.city = 0; +- if ((s = hv_fetch(h, "attendess", 9, 0))) e.attendees = SvPV(*s,na); ++ if ((s = hv_fetch(h, "attendess", 9, 0))) e.attendees = SvPV(*s,PL_na); + else e.attendees = 0; +- if ((s = hv_fetch(h, "note", 4, 0))) e.note = SvPV(*s,na); ++ if ((s = hv_fetch(h, "note", 4, 0))) e.note = SvPV(*s,PL_na); + else e.note = 0; + + len = pack_Expense(&e, mybuf, 0xffff); +@@ -1619,7 +1619,7 @@ UnpackAppBlock(record) + } + + SvPV(record,len); +- if (unpack_ExpenseAppInfo(&e, (CPTR)SvPV(record, na), len)>0) { ++ if (unpack_ExpenseAppInfo(&e, (CPTR)SvPV(record, PL_na), len)>0) { + + hv_store(ret, "sortOrder", 9, newSVlist(e.sortOrder,ExpenseSortNames),0); + a = newAV(); +@@ -1662,15 +1662,15 @@ PackAppBlock(record) + HV * hv; + if ((s=av_fetch(av, i, 0)) && SvOK(*s) && SvRV(*s) && (SvTYPE(hv=(HV*)SvRV(*s))==SVt_PVHV)) { + if (s = hv_fetch(hv, "name", 4, 0)) { +- strncpy(e.currencies[i].name, SvPV(*s, na), 16); ++ strncpy(e.currencies[i].name, SvPV(*s, PL_na), 16); + e.currencies[i].name[15] = 0; + } + if (s = hv_fetch(hv, "symbol", 6, 0)) { +- strncpy(e.currencies[i].symbol, SvPV(*s, na), 4); ++ strncpy(e.currencies[i].symbol, SvPV(*s, PL_na), 4); + e.currencies[i].symbol[3] = 0; + } + if (s = hv_fetch(hv, "rate", 4, 0)) { +- strncpy(e.currencies[i].rate, SvPV(*s, na), 8); ++ strncpy(e.currencies[i].rate, SvPV(*s, PL_na), 8); + e.currencies[i].rate[7] = 0; + } + } +@@ -1718,7 +1718,7 @@ UnpackPref(record) + } + + SvPV(record,len); +- if (unpack_ExpensePref(&a, (CPTR)SvPV(record, na), len)>0) { ++ if (unpack_ExpensePref(&a, (CPTR)SvPV(record, PL_na), len)>0) { + + hv_store(ret, "unitOfDistance", 14, newSVlist(a.unitOfDistance, ExpenseDistanceNames), 0); + hv_store(ret, "currentCategory", 15, newSViv(a.currentCategory), 0); +@@ -1811,7 +1811,7 @@ Unpack(record) + + SvPV(record,len); + if (len > 0) { /* len == 0 if deleted flag is set */ +- if (unpack_Mail(&a, (CPTR)SvPV(record, na), len)>0) { ++ if (unpack_Mail(&a, (CPTR)SvPV(record, PL_na), len)>0) { + + if (a.subject) hv_store(ret, "subject", 7, newSVpv(a.subject,0), 0); + if (a.from) hv_store(ret, "from", 4, newSVpv(a.from,0), 0); +@@ -1858,14 +1858,14 @@ Pack(record) + } + else { + +- a.subject = (s = hv_fetch(h, "subject", 7, 0)) ? SvPV(*s,na) : 0; +- a.from = (s = hv_fetch(h, "from", 4, 0)) ? SvPV(*s,na) : 0; +- a.to = (s = hv_fetch(h, "to", 2, 0)) ? SvPV(*s,na) : 0; +- a.cc = (s = hv_fetch(h, "cc", 2, 0)) ? SvPV(*s,na) : 0; +- a.bcc = (s = hv_fetch(h, "bcc", 3, 0)) ? SvPV(*s,na) : 0; +- a.replyTo = (s = hv_fetch(h, "replyTo", 7, 0)) ? SvPV(*s,na) : 0; +- a.sentTo = (s = hv_fetch(h, "sentTo", 6, 0)) ? SvPV(*s,na) : 0; +- a.body = (s = hv_fetch(h, "body", 4, 0)) ? SvPV(*s,na) : 0; ++ a.subject = (s = hv_fetch(h, "subject", 7, 0)) ? SvPV(*s,PL_na) : 0; ++ a.from = (s = hv_fetch(h, "from", 4, 0)) ? SvPV(*s,PL_na) : 0; ++ a.to = (s = hv_fetch(h, "to", 2, 0)) ? SvPV(*s,PL_na) : 0; ++ a.cc = (s = hv_fetch(h, "cc", 2, 0)) ? SvPV(*s,PL_na) : 0; ++ a.bcc = (s = hv_fetch(h, "bcc", 3, 0)) ? SvPV(*s,PL_na) : 0; ++ a.replyTo = (s = hv_fetch(h, "replyTo", 7, 0)) ? SvPV(*s,PL_na) : 0; ++ a.sentTo = (s = hv_fetch(h, "sentTo", 6, 0)) ? SvPV(*s,PL_na) : 0; ++ a.body = (s = hv_fetch(h, "body", 4, 0)) ? SvPV(*s,PL_na) : 0; + + a.read = (s = hv_fetch(h, "read", 4, 0)) ? SvIV(*s) : 0; + a.signature = (s = hv_fetch(h, "signature", 9, 0)) ? SvIV(*s) : 0; +@@ -1913,7 +1913,7 @@ UnpackAppBlock(record) + } + + SvPV(record,len); +- if (unpack_MailAppInfo(&a, (CPTR)SvPV(record, na), len)>0) { ++ if (unpack_MailAppInfo(&a, (CPTR)SvPV(record, PL_na), len)>0) { + + doUnpackCategory(ret, &a.category); + +@@ -1989,7 +1989,7 @@ UnpackSyncPref(record) + } + + SvPV(record,len); +- if (unpack_MailSyncPref(&a, (CPTR)SvPV(record, na), len)>0) { ++ if (unpack_MailSyncPref(&a, (CPTR)SvPV(record, PL_na), len)>0) { + + hv_store(ret, "syncType", 8, newSVlist(a.syncType, MailSyncTypeNames), 0); + hv_store(ret, "getHigh", 7, newSViv(a.getHigh), 0); +@@ -2033,9 +2033,9 @@ PackSyncPref(record, id) + a.getContaining = (s=hv_fetch(h,"getContaining",13,0)) ? SvIV(*s) : 0; + a.truncate = (s=hv_fetch(h,"truncate",8,0)) ? SvIV(*s) : 0; + +- a.filterTo = (s=hv_fetch(h,"filterTo",8,0)) ? SvPV(*s,na) : 0; +- a.filterFrom = (s=hv_fetch(h,"filterFrom",10,0)) ? SvPV(*s,na) : 0; +- a.filterSubject = (s=hv_fetch(h,"filterSubject",13,0)) ? SvPV(*s,na) : 0; ++ a.filterTo = (s=hv_fetch(h,"filterTo",8,0)) ? SvPV(*s,PL_na) : 0; ++ a.filterFrom = (s=hv_fetch(h,"filterFrom",10,0)) ? SvPV(*s,PL_na) : 0; ++ a.filterSubject = (s=hv_fetch(h,"filterSubject",13,0)) ? SvPV(*s,PL_na) : 0; + + len = pack_MailSyncPref(&a, mybuf, 0xffff); + +@@ -2073,7 +2073,7 @@ UnpackSignaturePref(record) + } + + SvPV(record,len); +- if (unpack_MailSignaturePref(&a, (CPTR)SvPV(record, na), len)>0) { ++ if (unpack_MailSignaturePref(&a, (CPTR)SvPV(record, PL_na), len)>0) { + + if (a.signature) + hv_store(ret, "signature", 9, newSVpv(a.signature, 0), 0); +@@ -2099,7 +2099,7 @@ PackSignaturePref(record, id) + RETVAL = record; + else { + +- a.signature = (s=hv_fetch(h,"signature",9,0)) ? SvPV(*s,na) : 0; ++ a.signature = (s=hv_fetch(h,"signature",9,0)) ? SvPV(*s,PL_na) : 0; + + len = pack_MailSignaturePref(&a, mybuf, 0xffff); + +@@ -2129,7 +2129,7 @@ write(socket, msg) + { + STRLEN len; + SvPV(msg, len); +- RETVAL = pi_write(socket,SvPV(msg,na),len); ++ RETVAL = pi_write(socket,SvPV(msg,PL_na),len); + } + + SV * +@@ -2146,7 +2146,7 @@ read(socket, len) + if (result >=0) + RETVAL = newSVpvn((char *) pibuf.data, result); + else +- RETVAL = &sv_undef; ++ RETVAL = &PL_sv_undef; + } + OUTPUT: + RETVAL +@@ -2282,7 +2282,7 @@ class(self, name=0) + croak("DBClasses doesn't exist"); + if (SvOK(name)) { + (void)SvPV(name,len); +- s = hv_fetch(h, SvPV(name,na), len, 0); ++ s = hv_fetch(h, SvPV(name,PL_na), len, 0); + } + if (!s) + s = hv_fetch(h, "", 0, 0); +@@ -2577,7 +2577,7 @@ getRecords(self) + { + int result = dlp_ReadOpenDBInfo(self->socket, self->handle, &RETVAL); + if (result < 0) { +- RETVAL = newSVsv(&sv_undef); ++ RETVAL = newSVsv(&PL_sv_undef); + self->errnop = result; + } + } +@@ -2745,7 +2745,7 @@ setResource(self, data) + result = dlp_WriteResource(self->socket, self->handle, type, id, c, len); + if (result < 0) { + self->errnop = result; +- RETVAL = newSVsv(&sv_undef); ++ RETVAL = newSVsv(&PL_sv_undef); + } else + RETVAL = newSViv(result); + } +@@ -2798,7 +2798,7 @@ getPref(self, id=0, backup=1) + r = dlp_CloseDB(self->socket, self->handle); + result = dlp_ReadAppPreference(self->socket, creator, id, backup, 0xFFFF, mybuf, &len, &version); + if (pi_version(self->socket)< 0x101) +- r = dlp_OpenDB(self->socket, self->dbcard, self->dbmode, SvPV(self->dbname,na), &self->handle); ++ r = dlp_OpenDB(self->socket, self->dbcard, self->dbmode, SvPV(self->dbname,PL_na), &self->handle); + ReturnReadPref(mybuf, len); + } + +@@ -2822,10 +2822,10 @@ setPref(self, data) + r = dlp_CloseDB(self->socket, self->handle); + result = dlp_WriteAppPreference(self->socket, creator, id, backup, version, buf, len); + if (pi_version(self->socket)< 0x101) +- r = dlp_OpenDB(self->socket, self->dbcard, self->dbmode, SvPV(self->dbname,na), &self->handle); ++ r = dlp_OpenDB(self->socket, self->dbcard, self->dbmode, SvPV(self->dbname,PL_na), &self->handle); + if (result < 0) { + self->errnop = result; +- RETVAL = newSVsv(&sv_undef); ++ RETVAL = newSVsv(&PL_sv_undef); + } else { + RETVAL = newSViv(result); + } +@@ -2861,7 +2861,7 @@ setPrefRaw(self, data, number, version, backup=1) + result = dlp_WriteAppPreference(self->socket, creator, number, backup, version, buf, len); + if (result < 0) { + self->errnop = result; +- RETVAL = newSVsv(&sv_undef); ++ RETVAL = newSVsv(&PL_sv_undef); + } else { + RETVAL = newSViv(result); + } +@@ -2904,7 +2904,7 @@ getTime(self) + int result = dlp_GetSysDateTime(self->socket, &t); + if (result < 0) { + self->errnop = result; +- RETVAL = newSVsv(&sv_undef); ++ RETVAL = newSVsv(&PL_sv_undef); + } else + RETVAL = newSViv(t); + } +@@ -2929,7 +2929,7 @@ getSysInfo(self) + int result = dlp_ReadSysInfo(self->socket, &si); + if (result < 0) { + self->errnop = result; +- RETVAL = newSVsv(&sv_undef); ++ RETVAL = newSVsv(&PL_sv_undef); + } else { + HV * i = newHV(); + hv_store(i, "romVersion", 10, newSViv(si.romVersion), 0);\ +@@ -2951,7 +2951,7 @@ getCardInfo(self, cardno=0) + int result = dlp_ReadStorageInfo(self->socket, cardno, &c); + if (result < 0) { + self->errnop = result; +- RETVAL = newSVsv(&sv_undef); ++ RETVAL = newSVsv(&PL_sv_undef); + } else { + HV * i = newHV(); + hv_store(i, "card", 6, newSViv(c.card), 0);\ +@@ -3037,7 +3037,7 @@ newPref(self, creator, id=0, version=0, backup=0) + croak("Default PrefClass not defined"); + PUSHMARK(sp); + XPUSHs(newSVsv(*s)); +- XPUSHs(&sv_undef); ++ XPUSHs(&PL_sv_undef); + XPUSHs(sv_2mortal(newSVChar4(creator))); + if (id) + XPUSHs(id); +@@ -3107,7 +3107,7 @@ open(self, name, mode=0, cardno=0) + result = dlp_OpenDB(self->socket, cardno, nummode, name, &handle); + if (result<0) { + self->errnop = result; +- RETVAL = &sv_undef; ++ RETVAL = &PL_sv_undef; + } else { + int type; + PDA__Pilot__DLP__DB * x = malloc(sizeof(PDA__Pilot__DLP__DB)); +@@ -3156,7 +3156,7 @@ create(self, name, creator, type, flags, version, cardno=0) + int result = dlp_CreateDB(self->socket, creator, type, cardno, flags, version, name, &handle); + if (result<0) { + self->errnop = result; +- RETVAL = &sv_undef; ++ RETVAL = &PL_sv_undef; + } else { + PDA__Pilot__DLP__DB * x = malloc(sizeof(PDA__Pilot__DLP__DB)); + SV * sv = newSViv((IV)(void*)x); +@@ -3224,7 +3224,7 @@ setPref(self, data) + result = dlp_WriteAppPreference(self->socket, creator, id, backup, version, buf, len); + if (result < 0) { + self->errnop = result; +- RETVAL = newSVsv(&sv_undef); ++ RETVAL = newSVsv(&PL_sv_undef); + } else { + RETVAL = newSViv(result); + } +@@ -3248,7 +3248,7 @@ setPrefRaw(self, data, creator, number, version, backup=1) + result = dlp_WriteAppPreference(self->socket, creator, number, backup, version, buf, len); + if (result < 0) { + self->errnop = result; +- RETVAL = newSVsv(&sv_undef); ++ RETVAL = newSVsv(&PL_sv_undef); + } else { + RETVAL = newSViv(result); + } +@@ -3350,7 +3350,7 @@ findDBInfo(self, start, name, creator, type, cardno=0) + else + t = 0; + result = dlp_FindDBInfo(self->socket, cardno, start, +- SvOK(name) ? SvPV(name,na) : 0, ++ SvOK(name) ? SvPV(name,PL_na) : 0, + t, c, &info); + pack_dbinfo(RETVAL, info, result); + } +@@ -3367,7 +3367,7 @@ getFeature(self, creator, number) + unsigned long f; + int result; + if ((result = dlp_ReadFeature(self->socket, creator, number, &f))<0) { +- RETVAL = newSVsv(&sv_undef); ++ RETVAL = newSVsv(&PL_sv_undef); + self->errnop = result; + } else { + RETVAL = newSViv(f); +@@ -3397,7 +3397,7 @@ getROMToken(self,token) + } + + void +-callApplication(self, creator, type, action, data=&sv_undef) ++callApplication(self, creator, type, action, data=&PL_sv_undef) + PDA::Pilot::DLP *self + Char4 creator + Char4 type +@@ -3410,7 +3410,7 @@ callApplication(self, creator, type, action, data=&sv_undef) + int result; + (void)SvPV(data,len); + result = dlp_CallApplication(self->socket, creator, +- type, action, len, SvPV(data,na), ++ type, action, len, SvPV(data,PL_na), + &retcode, &pibuf); + EXTEND(sp, 2); + if (result >= 0) { +@@ -3419,7 +3419,7 @@ callApplication(self, creator, type, action, data=&sv_undef) + PUSHs(sv_2mortal(newSViv(retcode))); + } + } else +- PUSHs(&sv_undef); ++ PUSHs(&PL_sv_undef); + } + + int +@@ -3530,7 +3530,7 @@ class(self, name=0) + croak("DBClasses doesn't exist"); + if (SvOK(name)) { + (void)SvPV(name, len); +- s = hv_fetch(h, SvPV(name, na), len, 0); ++ s = hv_fetch(h, SvPV(name, PL_na), len, 0); + } + if (!s) + s = hv_fetch(h, "", 0, 0); +diff --git a/bindings/Perl/typemap b/bindings/Perl/typemap +index 347a6a7..eeffa4c 100644 +--- a/bindings/Perl/typemap ++++ b/bindings/Perl/typemap +@@ -50,9 +50,9 @@ T_CHAR4 + + T_RESULT + if ($var < 0) { +- sv_setsv($arg, &sv_no); ++ sv_setsv($arg, &PL_sv_no); + self->errnop = $var; + } else +- sv_setsv($arg, &sv_yes); ++ sv_setsv($arg, &PL_sv_yes); + T_PTROBJ + sv_setref_pv($arg, \"${ntype}\", (void*)$var); +-- +1.7.5.4 + -- cgit v1.2.3