From d738b733bddde7b7c17d990515c1e3c9eb22cf93 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sl=C3=A1vek=20Banko?= Date: Sat, 24 May 2014 16:19:30 +0200 Subject: Add sqlite3 plugin --- plugins/src/sqldrivers/sqldrivers.pro | 1 + plugins/src/sqldrivers/sqlite3/smain.cpp | 70 ++++++++++++++++++++++++++++++ plugins/src/sqldrivers/sqlite3/sqlite3.pro | 33 ++++++++++++++ 3 files changed, 104 insertions(+) create mode 100644 plugins/src/sqldrivers/sqlite3/smain.cpp create mode 100644 plugins/src/sqldrivers/sqlite3/sqlite3.pro (limited to 'plugins') diff --git a/plugins/src/sqldrivers/sqldrivers.pro b/plugins/src/sqldrivers/sqldrivers.pro index 616b23f..0f2e322 100644 --- a/plugins/src/sqldrivers/sqldrivers.pro +++ b/plugins/src/sqldrivers/sqldrivers.pro @@ -7,4 +7,5 @@ contains(sql-plugins, tds) : SUBDIRS += tds contains(sql-plugins, oci) : SUBDIRS += oci contains(sql-plugins, db2) : SUBDIRS += db2 contains(sql-plugins, sqlite) : SUBDIRS += sqlite +contains(sql-plugins, sqlite) : SUBDIRS += sqlite3 contains(sql-plugins, ibase) : SUBDIRS += ibase diff --git a/plugins/src/sqldrivers/sqlite3/smain.cpp b/plugins/src/sqldrivers/sqlite3/smain.cpp new file mode 100644 index 0000000..1124bb3 --- /dev/null +++ b/plugins/src/sqldrivers/sqlite3/smain.cpp @@ -0,0 +1,70 @@ +/**************************************************************************** +** +** Implementation of SQLite driver plugin +** +** Created : 031106 +** +** Copyright (C) 1992-2003 Trolltech AS. All rights reserved. +** +** This file is part of the sql module of the Qt GUI Toolkit. +** +** This file may be distributed under the terms of the Q Public License +** as defined by Trolltech AS of Norway and appearing in the file +** LICENSE.QPL included in the packaging of this file. +** +** This file may be distributed and/or modified under the terms of the +** GNU General Public License version 2 as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL included in the +** packaging of this file. +** +** Licensees holding valid Qt Enterprise Edition licenses may use this +** file in accordance with the Qt Commercial License Agreement provided +** with the Software. +** +** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE +** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. +** +** See http://www.trolltech.com/pricing.html or email sales@trolltech.com for +** information about Qt Commercial License Agreements. +** See http://www.trolltech.com/qpl/ for QPL licensing information. +** See http://www.trolltech.com/gpl/ for GPL licensing information. +** +** Contact info@trolltech.com if any conditions of this licensing are +** not clear to you. +** +**********************************************************************/ + +#include +#include "../../../../src/sql/drivers/sqlite3/qsql_sqlite3.h" + +class QSQLite3DriverPlugin : public QSqlDriverPlugin +{ +public: + QSQLite3DriverPlugin(); + + QSqlDriver* create( const QString & ); + QStringList keys() const; +}; + +QSQLite3DriverPlugin::QSQLite3DriverPlugin() + : QSqlDriverPlugin() +{ +} + +QSqlDriver* QSQLite3DriverPlugin::create( const QString &name ) +{ + if ( name == "QSQLITE3" ) { + QSQLite3Driver* driver = new QSQLite3Driver(); + return driver; + } + return 0; +} + +QStringList QSQLite3DriverPlugin::keys() const +{ + QStringList l; + l << "QSQLITE3"; + return l; +} + +Q_EXPORT_PLUGIN( QSQLite3DriverPlugin ) diff --git a/plugins/src/sqldrivers/sqlite3/sqlite3.pro b/plugins/src/sqldrivers/sqlite3/sqlite3.pro new file mode 100644 index 0000000..c3184f9 --- /dev/null +++ b/plugins/src/sqldrivers/sqlite3/sqlite3.pro @@ -0,0 +1,33 @@ +TEMPLATE = lib +TARGET = qsqlite3 + +CONFIG += qt plugin +DESTDIR = ../../../sqldrivers + +HEADERS = ../../../../src/sql/drivers/sqlite3/qsql_sqlite3.h +SOURCES = smain.cpp \ + ../../../../src/sql/drivers/sqlite3/qsql_sqlite3.cpp + +unix { + OBJECTS_DIR = .obj + !contains( LIBS, .*sqlite3.* ) { + LIBS *= -lsqlite3 + } +} + +win32 { + OBJECTS_DIR = obj + LIBS *= sqlite3.lib +# win32-msvc: { +# LIBS *= delayimp.lib +# QMAKE_LFLAGS += /DELAYLOAD:sqlite3.dll +# } +# win32-borland: { +# QMAKE_LFLAGS += /dsqlite3.dll +# } +} + +REQUIRES = sql + +target.path += $$plugins.path/sqldrivers +INSTALLS += target -- cgit v1.2.1