On Wed, 13 Jul 2011 08:25:00 +0300, Niko Tyni wrote: > See http://www.gossamer-threads.com/lists/perl/porters/254012 > > It should be enough to do something like > > perl -pi -e 'for my $c (qw(yes no undef)) { s/\bsv_$c\b/PL_sv_$c/}' dbdimp.c > Sybase.xs > > and it's possible to test this with Perl 5.12 by removing the > #define PERL_POLLUTE line from DBIXS.h. > > It looks like this was fixed upstream in DBD-Sybase-1.11 > ("Remove reliance on PERL_POLLUTE") so tagging accordingly.
Looking at the diff at http://search.cpan.org/diff?from=DBD-Sybase-1.10&to=DBD-Sybase-1.11#Sybase.xs this looks suspiciously like Niko's suggestion. If tried to build it now with Niko's command and a changed DBIXS.h, but the package FTBFS later: #v+ dh_auto_build make[1]: Entering directory `/tmp/buildd/libdbd-sybase-perl-1.09' cp dbd-sybase.pod blib/lib/DBD/dbd-sybase.pod cp Sybase.pm blib/lib/DBD/Sybase.pm /usr/bin/perl -p -e "s/~DRIVER~/Sybase/g" /usr/lib/perl5/auto/DBI/Driver.xst > Sybase.xsi /usr/bin/perl /usr/share/perl/5.12/ExtUtils/xsubpp -typemap /usr/share/perl/5.12/ExtUtils/typemap Sybase.xs > Sybase.xsc && mv Sybase.xsc Sybase.c cc -c -I/usr/include -DNO_BLK=1 -I/usr/lib/perl5/auto/DBI -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security -Werror=format-security -DVERSION=\"1.09\" -DXS_VERSION=\"1.09\" -fPIC "-I/usr/lib/perl/5.12/CORE" Sybase.c cc -c -I/usr/include -DNO_BLK=1 -I/usr/lib/perl5/auto/DBI -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security -Werror=format-security -DVERSION=\"1.09\" -DXS_VERSION=\"1.09\" -fPIC "-I/usr/lib/perl/5.12/CORE" dbdimp.c dbdimp.c: In function 'cslibmsg_cb': dbdimp.c:194:4: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'int' [-Wformat] dbdimp.c:194:4: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'int' [-Wformat] dbdimp.c:197:4: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'int' [-Wformat] dbdimp.c:197:4: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'int' [-Wformat] dbdimp.c: In function 'clientmsg_cb': dbdimp.c:285:5: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'int' [-Wformat] dbdimp.c:285:5: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'int' [-Wformat] dbdimp.c:288:5: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'int' [-Wformat] dbdimp.c:288:5: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'int' [-Wformat] dbdimp.c:341:5: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'int' [-Wformat] dbdimp.c:341:5: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'int' [-Wformat] dbdimp.c:343:5: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'int' [-Wformat] dbdimp.c:343:5: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'int' [-Wformat] dbdimp.c: In function 'servermsg_cb': dbdimp.c:374:6: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'CS_MSGNUM' [-Wformat] dbdimp.c:374:6: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'CS_INT' [-Wformat] dbdimp.c:376:6: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'CS_INT' [-Wformat] dbdimp.c:376:6: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'CS_INT' [-Wformat] dbdimp.c:510:5: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'CS_MSGNUM' [-Wformat] dbdimp.c:510:5: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'CS_INT' [-Wformat] dbdimp.c:513:5: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'CS_INT' [-Wformat] dbdimp.c:513:5: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'CS_INT' [-Wformat] dbdimp.c:550:6: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'CS_MSGNUM' [-Wformat] dbdimp.c:550:6: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'CS_INT' [-Wformat] dbdimp.c:552:6: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'CS_INT' [-Wformat] dbdimp.c:552:6: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'CS_INT' [-Wformat] dbdimp.c: In function 'syb_db_opentran': dbdimp.c:1934:2: warning: format '%x' expects argument of type 'unsigned int', but argument 3 has type 'struct imp_dbh_t *' [-Wformat] dbdimp.c: In function 'syb_db_STORE_attrib': dbdimp.c:2270:102: error: 'na' undeclared (first use in this function) dbdimp.c:2270:102: note: each undeclared identifier is reported only once for each function it appears in dbdimp.c: In function 'syb_alloc_cmd': dbdimp.c:2460:3: warning: format '%x' expects argument of type 'unsigned int', but argument 3 has type 'struct CS_COMMAND *' [-Wformat] dbdimp.c:2460:3: warning: format '%x' expects argument of type 'unsigned int', but argument 4 has type 'struct CS_CONNECTION *' [-Wformat] dbdimp.c: In function 'cmd_execute': dbdimp.c:3604:5: warning: format '%x' expects argument of type 'unsigned int', but argument 3 has type 'struct CS_COMMAND *' [-Wformat] dbdimp.c:3604:5: warning: format '%x' expects argument of type 'unsigned int', but argument 5 has type 'struct imp_sth_t *' [-Wformat] dbdimp.c: In function 'syb_st_destroy': dbdimp.c:4128:3: warning: format '%x' expects argument of type 'unsigned int', but argument 3 has type 'struct imp_sth_t *' [-Wformat] dbdimp.c:4160:4: warning: format '%x' expects argument of type 'unsigned int', but argument 3 has type 'struct CS_COMMAND *' [-Wformat] dbdimp.c: In function '_dbd_rebind_ph': dbdimp.c:4845:6: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'IV' [-Wformat] dbdimp.c:4973:5: warning: format '%d' expects argument of type 'int', but argument 5 has type 'long int' [-Wformat] dbdimp.c: In function 'syb_bind_ph': dbdimp.c:5108:5: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'IV' [-Wformat] dbdimp.c:5108:5: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'IV' [-Wformat] dbdimp.c: In function 'fetch_data': dbdimp.c:5193:4: warning: format '%ld' expects argument of type 'long int', but argument 3 has type 'CS_INT' [-Wformat] make[1]: *** [dbdimp.o] Error 1 make[1]: Leaving directory `/tmp/buildd/libdbd-sybase-perl-1.09' #v- I guess upgrading to a recent upstream version would be more helpful than fixing some single aspects. (A quick uupdate fails because of some direct changes to the upstream code.) Cheers, gregor -- .''`. 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: Rebekka Bakken: Nobody's Fool
signature.asc
Description: Digital signature