summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/plugins/sqldrivers/.qmake.conf19
-rw-r--r--src/plugins/sqldrivers/configure.json (renamed from src/sql/configure.json)26
-rw-r--r--src/plugins/sqldrivers/configure.pri (renamed from src/sql/configure.pri)0
-rw-r--r--src/plugins/sqldrivers/qsqldriverbase.pri3
-rw-r--r--src/plugins/sqldrivers/sqldrivers.pro6
-rw-r--r--src/plugins/sqldrivers/sqlite/sqlite.pro5
6 files changed, 43 insertions, 16 deletions
diff --git a/src/plugins/sqldrivers/.qmake.conf b/src/plugins/sqldrivers/.qmake.conf
new file mode 100644
index 0000000000..15ba71a343
--- /dev/null
+++ b/src/plugins/sqldrivers/.qmake.conf
@@ -0,0 +1,19 @@
+# This file detaches this sub-tree from the rest of qtbase,
+# so it can be configured stand-alone.
+# Of course, under normal circumstances, this _is_ part of qtbase,
+# so we have to make some contortions to restore normality.
+
+isEmpty(_QMAKE_CONF_): return() # Pre-scan during spec loading.
+
+SQLDRV_SRC_TREE = $$dirname(_QMAKE_CONF_)
+QTBASE_SRC_TREE = $$section(SQLDRV_SRC_TREE, /, 0, -4)
+
+QTBASE_BLD_TREE = $$shadowed($$QTBASE_SRC_TREE)
+!isEmpty(QTBASE_BLD_TREE):exists($$QTBASE_BLD_TREE/.qmake.cache) {
+ # This tricks qt_build_config.prf and qt_build_paths.prf
+ _QMAKE_CONF_ = $$QTBASE_SRC_TREE/.qmake.conf
+} else {
+ CONFIG += sqldrivers_standalone
+}
+
+include($$QTBASE_SRC_TREE/.qmake.conf)
diff --git a/src/sql/configure.json b/src/plugins/sqldrivers/configure.json
index dc7fffa02d..5603ceb37b 100644
--- a/src/sql/configure.json
+++ b/src/plugins/sqldrivers/configure.json
@@ -1,9 +1,9 @@
{
- "module": "sql",
+ "module": "sqldrivers",
"depends": [
"core"
],
- "testDir": "../../config.tests",
+ "testDir": "../../../config.tests",
"commandline": {
"assignments": {
@@ -129,42 +129,42 @@
"sql-db2": {
"label": "DB2 (IBM)",
"condition": "libs.db2",
- "output": [ "publicFeature" ]
+ "output": [ "privateFeature" ]
},
"sql-ibase": {
"label": "InterBase",
"condition": "libs.ibase",
- "output": [ "publicFeature" ]
+ "output": [ "privateFeature" ]
},
"sql-mysql": {
"label": "MySql",
"condition": "libs.mysql",
- "output": [ "publicFeature" ]
+ "output": [ "privateFeature" ]
},
"sql-oci": {
"label": "OCI (Oracle)",
"condition": "libs.oci",
- "output": [ "publicFeature" ]
+ "output": [ "privateFeature" ]
},
"sql-odbc": {
"label": "ODBC",
- "condition": "libs.odbc && features.datestring",
- "output": [ "publicFeature" ]
+ "condition": "features.datestring && libs.odbc",
+ "output": [ "privateFeature" ]
},
"sql-psql": {
"label": "PostgreSQL",
"condition": "libs.psql",
- "output": [ "publicFeature" ]
+ "output": [ "privateFeature" ]
},
"sql-sqlite2": {
"label": "SQLite2",
"condition": "libs.sqlite2",
- "output": [ "publicFeature" ]
+ "output": [ "privateFeature" ]
},
"sql-sqlite": {
"label": "SQLite",
"condition": "features.datestring",
- "output": [ "publicFeature" ]
+ "output": [ "privateFeature" ]
},
"system-sqlite": {
"label": " Using system provided SQLite",
@@ -174,8 +174,8 @@
},
"sql-tds": {
"label": "TDS (Sybase)",
- "condition": "libs.tds && features.datestring",
- "output": [ "publicFeature" ]
+ "condition": "features.datestring && libs.tds",
+ "output": [ "privateFeature" ]
}
},
diff --git a/src/sql/configure.pri b/src/plugins/sqldrivers/configure.pri
index 9fb957291f..9fb957291f 100644
--- a/src/sql/configure.pri
+++ b/src/plugins/sqldrivers/configure.pri
diff --git a/src/plugins/sqldrivers/qsqldriverbase.pri b/src/plugins/sqldrivers/qsqldriverbase.pri
index 512c046ec1..4b78fa9454 100644
--- a/src/plugins/sqldrivers/qsqldriverbase.pri
+++ b/src/plugins/sqldrivers/qsqldriverbase.pri
@@ -1,5 +1,8 @@
QT = core core-private sql-private
+# For QMAKE_USE in the parent projects.
+include($$shadowed($$PWD)/qtsqldrivers-config.pri)
+
PLUGIN_TYPE = sqldrivers
load(qt_plugin)
diff --git a/src/plugins/sqldrivers/sqldrivers.pro b/src/plugins/sqldrivers/sqldrivers.pro
index 30fb6019ce..8a9ae46f82 100644
--- a/src/plugins/sqldrivers/sqldrivers.pro
+++ b/src/plugins/sqldrivers/sqldrivers.pro
@@ -1,5 +1,9 @@
TEMPLATE = subdirs
-QT_FOR_CONFIG += sql
+
+sqldrivers_standalone {
+ _QMAKE_CACHE_ = $$shadowed($$SQLDRV_SRC_TREE)/.qmake.conf
+ load(qt_configure)
+}
qtConfig(sql-psql) : SUBDIRS += psql
qtConfig(sql-mysql) : SUBDIRS += mysql
diff --git a/src/plugins/sqldrivers/sqlite/sqlite.pro b/src/plugins/sqldrivers/sqlite/sqlite.pro
index 1066bf7f51..d7e19f97b1 100644
--- a/src/plugins/sqldrivers/sqlite/sqlite.pro
+++ b/src/plugins/sqldrivers/sqlite/sqlite.pro
@@ -1,10 +1,11 @@
TARGET = qsqlite
-QT_FOR_CONFIG += sql-private
-
HEADERS += $$PWD/qsql_sqlite_p.h
SOURCES += $$PWD/qsql_sqlite.cpp $$PWD/smain.cpp
+include($$OUT_PWD/../qtsqldrivers-config.pri)
+QT_FOR_CONFIG += sqldrivers-private
+
qtConfig(system-sqlite) {
QMAKE_USE += sqlite
} else {