From 31ef76d304b09fecea24cc326d8817a9acb6ffb8 Mon Sep 17 00:00:00 2001 From: Christian Kandeler Date: Tue, 9 Jun 2020 14:46:27 +0200 Subject: [PATCH] Sqlite: Fix qbs build for unit test Change-Id: I02c0917788fbe97377b69e30d08e84323d9c1e97 Reviewed-by: Christian Stenger --- src/libs/sqlite/sqlite.qbs | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/src/libs/sqlite/sqlite.qbs b/src/libs/sqlite/sqlite.qbs index b03ce9b975f..bf3d485beee 100644 --- a/src/libs/sqlite/sqlite.qbs +++ b/src/libs/sqlite/sqlite.qbs @@ -3,9 +3,15 @@ import qbs 1.0 QtcLibrary { name: "Sqlite" + property string exportMacro: qbs.targetOS.contains("windows") + ? '__declspec(dllexport)' + : '__attribute__((visibility("default")))' + property string importMacro: qbs.targetOS.contains("windows") + ? '__declspec(dllimport)' + : exportMacro + cpp.includePaths: base.concat(["../3rdparty/sqlite", "."]) - cpp.defines: base.concat([ - "BUILD_SQLITE_LIBRARY", + property stringList sharedDefines: [ "SQLITE_THREADSAFE=2", "SQLITE_ENABLE_FTS5", "SQLITE_ENABLE_UNLOCK_NOTIFY", "SQLITE_ENABLE_JSON1", "SQLITE_DEFAULT_FOREIGN_KEYS=1", "SQLITE_TEMP_STORE=2", "SQLITE_DEFAULT_WAL_SYNCHRONOUS=1", "SQLITE_MAX_WORKER_THREADS", "SQLITE_DEFAULT_MEMSTATUS=0", @@ -15,8 +21,10 @@ QtcLibrary { "SQLITE_OMIT_LOAD_EXTENSION", "SQLITE_OMIT_UTF16", "SQLITE_DQS=0", "SQLITE_ENABLE_STAT4", "HAVE_ISNAN", "HAVE_FDATASYNC", "HAVE_MALLOC_USABLE_SIZE", "SQLITE_DEFAULT_MMAP_SIZE=268435456", "SQLITE_CORE", "SQLITE_ENABLE_SESSION", "SQLITE_ENABLE_PREUPDATE_HOOK", - "SQLITE_LIKE_DOESNT_MATCH_BLOBS" - ]) + "SQLITE_LIKE_DOESNT_MATCH_BLOBS", + ] + cpp.defines: base.concat(sharedDefines).concat(["BUILD_SQLITE_LIBRARY", + "SQLITE_API=" + exportMacro]) cpp.optimization: "fast" cpp.dynamicLibraries: base.concat((qbs.targetOS.contains("unix") && !qbs.targetOS.contains("bsd")) ? ["dl", "pthread"] : []) @@ -42,7 +50,8 @@ QtcLibrary { } Export { - cpp.includePaths: base.concat([ + cpp.defines: product.sharedDefines.concat("SQLITE_API=" + product.importMacro) + cpp.systemIncludePaths: base.concat([ "../3rdparty/sqlite", "." ])