project() should only be called if the subdirectory, in fact, can be built standalone.
26 lines
809 B
CMake
26 lines
809 B
CMake
########################################
|
|
### sqlite3 ###
|
|
########################################
|
|
|
|
FetchContent_Declare(sqlite3 URL "https://www.sqlite.org/2022/sqlite-amalgamation-3400100.zip")
|
|
FetchContent_MakeAvailable(sqlite3)
|
|
|
|
add_library(sqlite3)
|
|
target_sources(sqlite3 PRIVATE
|
|
${sqlite3_SOURCE_DIR}/sqlite3.c
|
|
${sqlite3_SOURCE_DIR}/sqlite3.h
|
|
${sqlite3_SOURCE_DIR}/sqlite3ext.h
|
|
)
|
|
|
|
target_include_directories(sqlite3 PUBLIC ${sqlite3_SOURCE_DIR})
|
|
|
|
set_target_properties(sqlite3 PROPERTIES FOLDER lib)
|
|
|
|
### Compile options ###
|
|
# refer to https://www.sqlite.org/compile.html
|
|
|
|
target_compile_definitions(sqlite3 PUBLIC SQLITE_ENABLE_RTREE SQLITE_OMIT_LOAD_EXTENSION)
|
|
|
|
# Use the same name as the FindSQLite3 script of CMake uses
|
|
add_library(SQLite::SQLite3 ALIAS sqlite3)
|