perl-dbi.patch 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. Index: DBD-SQLite-1.14/Makefile.PL
  2. --- DBD-SQLite-1.14/Makefile.PL.orig 2007-08-28 21:57:09 +0200
  3. +++ DBD-SQLite-1.14/Makefile.PL 2007-09-20 09:40:47 +0200
  4. @@ -10,34 +10,6 @@
  5. }
  6. use Config;
  7. use strict;
  8. -eval {
  9. - require DBD::SQLite;
  10. - if ($DBD::SQLite::VERSION < 1.0) {
  11. - print <<EOT;
  12. -
  13. -**** WARNING **** WARNING **** WARNING **** WARNING **** WARNING ****
  14. -
  15. -Your version of DBD::SQLite currently installed ($DBD::SQLite::VERSION) uses
  16. -the old sqlite database format. This version of DBD::SQLite will *NOT*
  17. -open these files, and installing this module may cause problems on your
  18. -system. If this is a live environment you should upgrade with caution.
  19. -
  20. -To upgrade a database, download and install both sqlite 2.x and 3.x from
  21. -http://www.sqlite.org/ and issue:
  22. -
  23. - sqlite OLD.DB .dump | sqlite3 NEW.DB
  24. -
  25. -DBD::SQLite will NOT automatically upgrade a database for you, and using
  26. -this version against an old SQLite database WILL lead to database
  27. -corruption.
  28. -
  29. -EOT
  30. - if (prompt("Continue?", "N") !~ /^y/i) {
  31. - print "Exiting\n";
  32. - exit -1;
  33. - }
  34. - }
  35. -};
  36. # 2005/6/19, by rjray@blackperl.com
  37. #
  38. @@ -111,18 +83,19 @@
  39. my $nlid = $DBI::VERSION > 1.42 ? '' : '-Dno_last_insert_id';
  40. -my $libs = '';
  41. -$libs .= "-L$sqlite_lib " if ($sqlite_lib);
  42. -$libs .= "-lsqlite3 " unless ($force_local);
  43. +my $inc = `@l_prefix@/bin/pkg-config sqlite3 --cflags-only-I`;
  44. +$inc =~ s/\r?\n$//s;
  45. +my $libs = `@l_prefix@/bin/pkg-config sqlite3 --libs`;
  46. +$libs =~ s/\r?\n$//s;
  47. WriteMakefile(
  48. 'NAME' => 'DBD::SQLite',
  49. 'VERSION_FROM' => 'lib/DBD/SQLite.pm', # finds $VERSION
  50. 'PREREQ_PM' => {DBI => 1.21}, # e.g., Module::Name => 1.1
  51. 'OBJECT' => ($force_local) ? '$(O_FILES)' : 'SQLite.o dbdimp.o',
  52. - 'INC' => '-I. -I$(DBI_INSTARCH_DIR)' .
  53. + 'INC' => $inc . ' -I. -I$(DBI_INSTARCH_DIR)' .
  54. (($sqlite_inc) ? " -I$sqlite_inc" : ''),
  55. - $libs ? ('LIBS' => $libs) : (),
  56. + 'LIBS' => [ $libs ],
  57. 'OPTIMIZE' => "-O2",
  58. 'DEFINE' => "-DSQLITE_CORE -DSQLITE_ENABLE_FTS2 -DNDEBUG=1 -DSQLITE_PTR_SZ=$Config{ptrsize}" .
  59. ( ($Config{d_usleep} ||
  60. Index: DBD-SQLite-1.14/dbdimp.c
  61. --- DBD-SQLite-1.14/dbdimp.c.orig 2007-08-24 04:51:25 +0200
  62. +++ DBD-SQLite-1.14/dbdimp.c 2007-09-20 09:42:02 +0200
  63. @@ -394,15 +394,18 @@
  64. sqlite_trace(3, "Execute returned %d cols\n", DBIc_NUM_FIELDS(imp_sth));
  65. if (DBIc_NUM_FIELDS(imp_sth) == 0) {
  66. + char *defererr = strdup((char*)sqlite3_errmsg(imp_dbh->db));
  67. while ((imp_sth->retval = sqlite3_step(imp_sth->stmt)) != SQLITE_DONE) {
  68. if (imp_sth->retval == SQLITE_ROW) {
  69. continue;
  70. }
  71. /* There are bug reports that say this should be sqlite3_reset() */
  72. sqlite3_finalize(imp_sth->stmt);
  73. - sqlite_error(sth, (imp_xxh_t*)imp_sth, imp_sth->retval, (char*)sqlite3_errmsg(imp_dbh->db));
  74. + sqlite_error(sth, (imp_xxh_t*)imp_sth, imp_sth->retval, defererr);
  75. + free(defererr);
  76. return -5;
  77. }
  78. + free(defererr);
  79. /* warn("Finalize\n"); */
  80. sqlite3_reset(imp_sth->stmt);
  81. imp_sth->nrow = sqlite3_changes(imp_dbh->db);
  82. Index: DBD-SQLite-1.14/dbdimp.h
  83. --- DBD-SQLite-1.14/dbdimp.h.orig 2007-08-23 02:45:08 +0200
  84. +++ DBD-SQLite-1.14/dbdimp.h 2007-09-20 09:42:28 +0200
  85. @@ -4,7 +4,7 @@
  86. #define _DBDIMP_H 1
  87. #include "SQLiteXS.h"
  88. -#include "sqliteInt.h"
  89. +#include "sqlite3.h"
  90. /* 30 second timeout by default */
  91. #define SQL_TIMEOUT 30000
  92. Index: DBD-cego/Makefile.PL
  93. --- DBD-cego/Makefile.PL.orig 2007-06-25 20:38:07 +0200
  94. +++ DBD-cego/Makefile.PL 2007-06-26 21:07:10 +0200
  95. @@ -43,7 +43,7 @@
  96. 'VERSION_FROM' => 'Cego.pm',
  97. 'PREREQ_PM' => {DBI => 1.03},
  98. 'OBJECT' => '$(O_FILES)',
  99. - 'INC' => '-I$(DBI_INSTARCH_DIR) -I' . $opt->{'prefix'} . '/include',
  100. + 'INC' => '-I$(DBI_INSTARCH_DIR) -I' . $opt->{'prefix'} . '/include/cego',
  101. 'MYEXTLIB' => $opt->{'prefix'} . "/lib/libCego.a "
  102. . $opt->{'prefix'} . "/lib/libXML.a "
  103. . $opt->{'prefix'} . "/lib/libBase.a",
  104. Index: DBD-mysql-4.005/dbdimp.h
  105. --- DBD-mysql-4.005/dbdimp.h.orig 2007-06-07 13:51:16 +0200
  106. +++ DBD-mysql-4.005/dbdimp.h 2007-06-26 21:06:20 +0200
  107. @@ -19,6 +19,7 @@
  108. * Header files we use
  109. */
  110. #include <DBIXS.h> /* installed by the DBI module */
  111. +#include <my_global.h>
  112. #include <mysql.h> /* Comes with MySQL-devel */
  113. #include <mysqld_error.h> /* Comes MySQL */
  114. #include <errmsg.h> /* Comes with MySQL-devel */