127
|
1 # |
|
2 # CMakeLists.txt -- CMake build system for sqlite |
|
3 # |
|
4 # Copyright (c) 2016-2017 David Demelier <markand@malikania.fr> |
|
5 # |
|
6 # Permission to use, copy, modify, and/or distribute this software for any |
|
7 # purpose with or without fee is hereby granted, provided that the above |
|
8 # copyright notice and this permission notice appear in all copies. |
|
9 # |
|
10 # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES |
|
11 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF |
|
12 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR |
|
13 # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES |
|
14 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN |
|
15 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF |
|
16 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
|
17 # |
|
18 |
|
19 cmake_minimum_required(VERSION 3.5) |
|
20 project(sqlite C) |
|
21 add_library(sqlite STATIC CMakeLists.txt sqlite3.c sqlite3ext.h sqlite3.h) |
|
22 target_include_directories(sqlite PUBLIC ${sqlite_SOURCE_DIR}) |
|
23 target_link_libraries( |
|
24 sqlite |
|
25 $<$<STREQUAL:${CMAKE_SYSTEM_NAME},Linux>:dl> |
|
26 $<$<BOOL:${UNIX}>:-pthread> |
|
27 ) |
|
28 target_compile_definitions( |
|
29 sqlite |
|
30 PUBLIC |
|
31 # See https://www.sqlite.org/compile.html. |
|
32 SQLITE_THREADSAFE=0 |
|
33 SQLITE_DEFAULT_MEMSTATUS=0 |
|
34 SQLITE_LIKE_DOESNT_MATCH_BLOBS |
|
35 SQLITE_MAX_EXPR_DEPTH=0 |
|
36 SQLITE_OMIT_DECLTYPE |
|
37 SQLITE_OMIT_DEPRECATED |
|
38 SQLITE_OMIT_PROGRESS_CALLBACK |
|
39 SQLITE_OMIT_SHARED_CACHE |
|
40 SQLITE_DEFAULT_FILE_PERMISSIONS=0600 |
|
41 SQLITE_DEFAULT_FOREIGN_KEYS=1 |
|
42 $<$<CONFIG:Debug>:SQLITE_DEBUG> |
|
43 ) |