| 1 | cmake_minimum_required(VERSION 3.14...3.28) |
| 2 | project(sqlite3 LANGUAGES C) |
| 3 | |
| 4 | add_library(sqlite3 STATIC sqlite3.c sqlite3.h) |
| 5 | |
| 6 | target_include_directories(sqlite3 PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}) |
| 7 | |
| 8 | target_compile_definitions(sqlite3 |
| 9 | PUBLIC |
| 10 | SQLITE_ENABLE_RTREE |
| 11 | SQLITE_ENABLE_FTS5 |
| 12 | SQLITE_ENABLE_JSON1 |
| 13 | SQLITE_ENABLE_DBSTAT_VTAB |
| 14 | ) |
| 15 | |
| 16 | target_compile_definitions(sqlite3 PRIVATE |
| 17 | SQLITE_THREADSAFE=1 |
| 18 | SQLITE_OMIT_LOAD_EXTENSION |
| 19 | ) |
| 20 | |
| 21 | set_target_properties(sqlite3 PROPERTIES |
| 22 | POSITION_INDEPENDENT_CODE ON |
| 23 | C_STANDARD 99 |
| 24 | C_STANDARD_REQUIRED ON |
| 25 | ) |
| 26 | |
| 27 | source_group("Header Files" FILES sqlite3.h) |
| 28 | source_group("Source Files" FILES sqlite3.c) |