Mercurial > malikania
diff database/sqlite/CMakeLists.txt @ 39:56ab2f0c90dc
Server: add sqlite basic backend, closes #558
author | David Demelier <markand@malikania.fr> |
---|---|
date | Sun, 27 Nov 2016 18:00:49 +0100 |
parents | |
children | b0593a3e2ca8 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/database/sqlite/CMakeLists.txt Sun Nov 27 18:00:49 2016 +0100 @@ -0,0 +1,59 @@ +# +# CMakeLists.txt -- CMake build system for sqlite +# +# Copyright (c) 2016 David Demelier <markand@malikania.fr> +# +# Permission to use, copy, modify, and/or distribute this software for any +# purpose with or without fee is hereby granted, provided that the above +# copyright notice and this permission notice appear in all copies. +# +# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES +# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR +# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF +# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +# + +project(db-sqlite) +cmake_minimum_required(VERSION 3.5) + +add_library( + mlk-driver-sqlite + MODULE + ${db-sqlite_SOURCE_DIR}/CMakeLists.txt + ${db-sqlite_SOURCE_DIR}/script/init.sql + ${db-sqlite_SOURCE_DIR}/src/account.cpp + ${db-sqlite_SOURCE_DIR}/src/driver.cpp + ${db-sqlite_SOURCE_DIR}/src/sqlite3.c + ${db-sqlite_SOURCE_DIR}/src/sqlite3ext.h + ${db-sqlite_SOURCE_DIR}/src/sqlite3.h +) + +set_target_properties( + mlk-driver-sqlite + PROPERTIES + PREFIX "" + OUTPUT_NAME sqlite + LIBRARY_OUTPUT_DIRECTORY ${malikania_BINARY_DIR}/fakeroot/${WITH_DRIVERDIR} +) + +target_link_libraries(mlk-driver-sqlite libmlk-server) + +# See https://www.sqlite.org/compile.html. +target_compile_definitions( + mlk-driver-sqlite + PRIVATE + SQLITE_THREADSAFE=0 + SQLITE_DEFAULT_MEMSTATUS=0 + SQLITE_LIKE_DOESNT_MATCH_BLOBS + SQLITE_MAX_EXPR_DEPTH=0 + SQLITE_OMIT_DECLTYPE + SQLITE_OMIT_DEPRECATED + SQLITE_OMIT_PROGRESS_CALLBACK + SQLITE_OMIT_SHARED_CACHE + SQLITE_DEFAULT_FILE_PERMISSIONS=0600 + SQLITE_DEFAULT_FOREIGN_KEYS=1 + $<$<CONFIG:Debug>:SQLITE_DEBUG> +)