summaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorOskari Timperi <oskari.timperi@iki.fi>2022-09-15 21:00:10 +0300
committerOskari Timperi <oskari.timperi@iki.fi>2022-09-15 21:03:55 +0300
commitc32f4d2e1a0b1a2d054c5fd9d490d517fd53f8dc (patch)
tree24aa48ac37a7792fc32f8517b2624c57583c24e3 /CMakeLists.txt
downloadbeefysqlite-c32f4d2e1a0b1a2d054c5fd9d490d517fd53f8dc.tar.gz
beefysqlite-c32f4d2e1a0b1a2d054c5fd9d490d517fd53f8dc.zip
Initial commit
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt40
1 files changed, 40 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
new file mode 100644
index 0000000..2e47d21
--- /dev/null
+++ b/CMakeLists.txt
@@ -0,0 +1,40 @@
+cmake_minimum_required(VERSION 3.21 FATAL_ERROR)
+
+project(beefysqlite VERSION 0.1.0 LANGUAGES C)
+
+add_executable(beefysqlite
+ "src/beefysqlite_init.c"
+ "thirdparty/sqlite-amalgamation/shell.c"
+ "thirdparty/sqlite-amalgamation/sqlite3.c"
+ "thirdparty/sqlite/ext/misc/compress.c"
+ "thirdparty/sqlite/ext/misc/percentile.c"
+ "thirdparty/sqlite/ext/misc/sha1.c"
+ "thirdparty/sqlite/ext/misc/uuid.c"
+ "thirdparty/vsv.c"
+ "thirdparty/http.c"
+)
+
+add_subdirectory(thirdparty/zlib)
+
+target_include_directories(beefysqlite PRIVATE
+ thirdparty/sqlite-amalgamation
+ thirdparty/zlib
+ ${CMAKE_CURRENT_BINARY_DIR}/thirdparty/zlib
+)
+
+target_compile_definitions(beefysqlite PRIVATE
+ SQLITE_CORE
+ SQLITE_SHELL_INIT_PROC=beefysqlite_init
+ SQLITE_HAVE_ZLIB
+ SQLITE_ENABLE_FTS5
+ SQLITE_ENABLE_MATH_FUNCTIONS
+)
+
+target_link_libraries(beefysqlite PRIVATE zlibstatic)
+
+if(WIN32)
+ target_compile_definitions(beefysqlite PRIVATE HTTP_BACKEND_WINHTTP)
+ target_link_libraries(beefysqlite PRIVATE winhttp)
+else()
+ target_compile_definitions(beefysqlite PRIVATE HTTP_BACKEND_CURL)
+endif()