Note that QOF is also migrating to git for VCS for the next upstream release:
https://alioth.debian.org/projects/qof/ git clone https://alioth.debian.org/anonscm/git/qof/qof.git https://alioth.debian.org/plugins/scmgit/cgi-bin/gitweb.cgi?p=qof/qof.git;a=summary I'm attaching the initial diff to at least get the backend/sqlite/ code using libsqlite3-dev but it does not yet build. The alternative is to drop the libqof2-backend-sqlite module for this release as the remaining reverse dependencies for libqof2 do not currently use this backend. That would be a small change to configure.ac. -- Neil Williams ============= http://www.linux.codehelp.co.uk/
diff --git a/backend/sqlite/qof-sqlite.c b/backend/sqlite/qof-sqlite.c
index 5ada5a9..f4c708e 100644
--- a/backend/sqlite/qof-sqlite.c
+++ b/backend/sqlite/qof-sqlite.c
@@ -26,7 +26,7 @@
#include <stdlib.h>
#include <time.h>
#include <glib/gstdio.h>
-#include <sqlite.h>
+#include <sqlite3.h>
#include <glib.h>
#include <libintl.h>
#include "qof.h"
@@ -68,7 +68,7 @@ life of the process.
typedef struct
{
QofBackend be;
- sqlite *sqliteh;
+ sqlite3 *sqliteh;
QsqlStatementType stm_type;
gint dbversion;
gint create_handler;
@@ -270,7 +270,7 @@ delete_event (QofEntity * ent, QofEventId event_type,
guid_to_string_buff (qof_entity_get_guid (ent), gstr);
sql_str = qof_sql_entity_delete (ent);
DEBUG (" sql_str=%s", sql_str);
- if (sqlite_exec (qsql_be->sqliteh, sql_str,
+ if (sqlite3_exec (qsql_be->sqliteh, sql_str,
NULL, qsql_be, &qsql_be->err) != SQLITE_OK)
{
qof_error_set_be (be, qsql_be->err_delete);
@@ -320,7 +320,7 @@ create_event (QofEntity * ent, QofEventId event_type,
qb.sql_str = qof_sql_entity_insert (ent);
/** \bug create one func to create_param_list and create_each_param */
DEBUG (" sql_str=%s", qb.sql_str);
- if (sqlite_exec (qsql_be->sqliteh, qb.sql_str,
+ if (sqlite3_exec (qsql_be->sqliteh, qb.sql_str,
NULL, &qb, &qsql_be->err) != SQLITE_OK)
{
qof_error_set_be (be, qsql_be->err_insert);
@@ -342,7 +342,7 @@ create_event (QofEntity * ent, QofEventId event_type,
{
/* id, guid, path, type, value */
qb.sql_str = qof_sql_entity_insert (ent);
- if (sqlite_exec (qsql_be->sqliteh, qb.sql_str,
+ if (sqlite3_exec (qsql_be->sqliteh, qb.sql_str,
NULL, &qb, &qsql_be->err) != SQLITE_OK)
{
qof_error_set_be (be, qsql_be->err_insert);
@@ -394,7 +394,7 @@ qsql_modify (QofBackend * be, QofInstance * inst)
return;
}
DEBUG (" sql_str=%s", qb.sql_str);
- if (sqlite_exec (qsql_be->sqliteh, qb.sql_str,
+ if (sqlite3_exec (qsql_be->sqliteh, qb.sql_str,
NULL, &qb, &qsql_be->err) != SQLITE_OK)
{
qof_error_set_be (be, qsql_be->err_update);
@@ -484,7 +484,7 @@ update_dirty (gpointer value, gpointer builder)
return;
}
DEBUG (" update=%s", qb->sql_str);
- if (sqlite_exec (qsql_be->sqliteh, qb->sql_str,
+ if (sqlite3_exec (qsql_be->sqliteh, qb->sql_str,
NULL, qb, &qsql_be->err) != SQLITE_OK)
{
qof_error_set_be (be, qsql_be->err_update);
@@ -567,7 +567,7 @@ qsql_create (QofBackend * be, QofInstance * inst)
qb.ent = ent;
qb.dirty_list = NULL;
qb.exists = FALSE;
- if (sqlite_exec (qsql_be->sqliteh, qb.sql_str,
+ if (sqlite3_exec (qsql_be->sqliteh, qb.sql_str,
mark_entity, &qb, &qsql_be->err) != SQLITE_OK)
{
qof_error_set_be (be, qsql_be->err_update);
@@ -579,7 +579,7 @@ qsql_create (QofBackend * be, QofInstance * inst)
/* create new entity */
qb.sql_str = qof_sql_entity_insert (ent);
DEBUG (" sql_str= %s", qb.sql_str);
- if (sqlite_exec (qsql_be->sqliteh, qb.sql_str,
+ if (sqlite3_exec (qsql_be->sqliteh, qb.sql_str,
NULL, qsql_be, &qsql_be->err) != SQLITE_OK)
{
qof_error_set_be (be, qsql_be->err_insert);
@@ -624,7 +624,7 @@ check_state (QofEntity * ent, gpointer builder)
/* Make a GList of dirty instances
Don't update during a SELECT,
UPDATE will fail with DB_LOCKED */
- if (sqlite_exec (qsql_be->sqliteh, qb->sql_str,
+ if (sqlite3_exec (qsql_be->sqliteh, qb->sql_str,
create_dirty_list, qb, &qsql_be->err) != SQLITE_OK)
{
qof_error_set_be (be, qsql_be->err_update);
@@ -636,7 +636,7 @@ check_state (QofEntity * ent, gpointer builder)
/* create new entity */
qb->sql_str = qof_sql_entity_insert (ent);
DEBUG (" sql_str= %s", qb->sql_str);
- if (sqlite_exec (qsql_be->sqliteh, qb->sql_str,
+ if (sqlite3_exec (qsql_be->sqliteh, qb->sql_str,
NULL, qb, &qsql_be->err) != SQLITE_OK)
{
qof_error_set_be (be, qsql_be->err_insert);
@@ -722,7 +722,7 @@ qsql_load_kvp (QSQLiteBackend * qsql_be)
be = (QofBackend *) qsql_be;
qb.sql_str =
g_strdup_printf ("SELECT kvp_id from %s;", QSQL_KVP_TABLE);
- sq_code = sqlite_exec (qsql_be->sqliteh, qb.sql_str, build_kvp_table,
+ sq_code = sqlite3_exec (qsql_be->sqliteh, qb.sql_str, build_kvp_table,
&qb, &qsql_be->err);
/* catch older files without a sqlite_kvp table */
if (sq_code == SQLITE_ERROR)
@@ -734,7 +734,7 @@ qsql_load_kvp (QSQLiteBackend * qsql_be)
"guid char(32)", "path mediumtext", "type mediumtext",
"value text", END_DB_VERSION);
PINFO (" creating kvp table. sql=%s", qb.sql_str);
- if (sqlite_exec (qsql_be->sqliteh, qb.sql_str,
+ if (sqlite3_exec (qsql_be->sqliteh, qb.sql_str,
record_foreach, &qb, &qsql_be->err) != SQLITE_OK)
{
qsql_be->error = TRUE;
@@ -776,7 +776,7 @@ qsql_class_foreach (QofObject * obj, gpointer data)
{
/* KVP is handled separately */
qb.sql_str = qof_sql_object_create_table (obj);
- if (sqlite_exec (qsql_be->sqliteh, qb.sql_str,
+ if (sqlite3_exec (qsql_be->sqliteh, qb.sql_str,
NULL, NULL, &qsql_be->err) != SQLITE_OK)
{
qof_error_set_be (be, qsql_be->err_create);
@@ -791,7 +791,7 @@ qsql_class_foreach (QofObject * obj, gpointer data)
qb.sql_str =
g_strdup_printf ("SELECT * FROM %s;", obj->e_type);
PINFO (" sql=%s", qb.sql_str);
- if (sqlite_exec (qsql_be->sqliteh, qb.sql_str,
+ if (sqlite3_exec (qsql_be->sqliteh, qb.sql_str,
record_foreach, &qb, &qsql_be->err) != SQLITE_OK)
{
qsql_be->error = TRUE;
@@ -838,7 +838,7 @@ qsql_backend_createdb (QofBackend * be, QofSession * session)
return;
}
qsql_be->sqliteh =
- sqlite_open (qsql_be->fullpath, 0644, &qsql_be->err);
+ sqlite3_open (qsql_be->fullpath, 0644, &qsql_be->err);
if (!qsql_be->sqliteh)
{
qof_error_set_be (be, qsql_be->err_create);
@@ -859,7 +859,7 @@ qsql_backend_opendb (QofBackend * be, QofSession * session)
ENTER (" ");
qsql_be = (QSQLiteBackend *) be;
qsql_be->sqliteh =
- sqlite_open (qsql_be->fullpath, 0666, &qsql_be->err);
+ sqlite3_open (qsql_be->fullpath, 0666, &qsql_be->err);
if (!qsql_be->sqliteh)
{
qof_error_set_be (be, qof_error_register
diff --git a/configure.ac b/configure.ac
index c13d23d..69cc8b0 100644
--- a/configure.ac
+++ b/configure.ac
@@ -192,7 +192,7 @@ AC_ARG_ENABLE(embedded,
esac])
if test "$embedded" = "yes"; then
- PKG_CHECK_MODULES(SQLITE, sqlite >= 2.8.0)
+ PKG_CHECK_MODULES(SQLITE, sqlite3 >= 3.8.0)
AC_SUBST(SQLITE_LIBS)
AC_SUBST(SQLITE_CFLAGS)
backend="sqlite"
@@ -209,7 +209,7 @@ AM_CONDITIONAL(EMBEDDED, [test "$embedded" = "yes"])
sqlite="yes"
AC_ARG_ENABLE(sqlite,
- [ --disable-sqlite Disable the SQLite backend module.],
+ [ --disable-sqlite Disable the SQLite3 backend module.],
[case "${enableval}" in
no) sqlite="no" ;;
yes) sqlite="yes" ;;
@@ -218,8 +218,8 @@ AC_ARG_ENABLE(sqlite,
if test "$embedded" != "yes"; then
if test "$sqlite" = "yes"; then
- SQLITE_REQUIRED=2.8.0
- PKG_CHECK_MODULES(SQLITE, sqlite >= $SQLITE_REQUIRED)
+ SQLITE_REQUIRED=3.8.0
+ PKG_CHECK_MODULES(SQLITE, sqlite3 >= $SQLITE_REQUIRED)
AC_SUBST(SQLITE_LIBS)
AC_SUBST(SQLITE_CFLAGS)
backend2="sqlite"
signature.asc
Description: PGP signature

