aboutsummaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorXavier Del Campo Romero <xavi92@disroot.org>2025-09-22 17:32:44 +0200
committerXavier Del Campo Romero <xavi92@disroot.org>2026-02-13 09:57:39 +0100
commit78bf2fe4a5bf37514f6dfd203ef969da0bf40c2e (patch)
tree33f9440b8ee0fa7a3b3ad033616d722d2101bb4d /CMakeLists.txt
parent107a2e43d54f9a42fb85b00b83cb0d9abb194680 (diff)
Setup project skeletonHEADmaster
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt65
1 files changed, 65 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
new file mode 100644
index 0000000..6aa295b
--- /dev/null
+++ b/CMakeLists.txt
@@ -0,0 +1,65 @@
+cmake_minimum_required(VERSION 3.13)
+project(nanobbs C)
+add_executable(${PROJECT_NAME}
+ auth.c
+ astrftime.c
+ db.c
+ db_post.c
+ db_section.c
+ db_topic.c
+ default_prv_policy.c
+ default_style.c
+ default_terms.c
+ ep_create.c
+ ep_index.c
+ ep_login.c
+ ep_logout.c
+ ep_passwd.c
+ ep_signup.c
+ ep_style.c
+ ep_ucp.c
+ ep_view.c
+ form_badreq.c
+ form_category.c
+ form_footer.c
+ form_head.c
+ form_login.c
+ form_post.c
+ form_section.c
+ form_shortpwd.c
+ form_topic.c
+ form_unauthorized.c
+ gencookie.c
+ getul.c
+ getul_n.c
+ jwt.c
+ login_get.c
+ main.c
+ op.c
+ sanitize.c
+)
+add_executable(tokengen
+ jwt.c
+ tokengen.c
+)
+set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_LIST_DIR}/cmake)
+find_package(libsodium REQUIRED)
+find_package(cJSON REQUIRED)
+find_package(SQLite3 3.6.19 REQUIRED)
+find_package(web 0.3.0)
+
+if(WEB_FOUND)
+ find_package(dynstr 0.1.0 REQUIRED)
+else()
+ message(STATUS "Using in-tree libweb")
+ set(BUILD_EXAMPLES OFF)
+ add_subdirectory(libweb)
+ # dynstr is already provided by libweb.
+endif()
+
+set(deps dynstr sqlite3 libsodium cjson)
+target_link_libraries(${PROJECT_NAME} PRIVATE web ${deps})
+target_compile_options(${PROJECT_NAME} PRIVATE -Wall)
+target_link_libraries(tokengen PRIVATE ${deps})
+target_compile_options(tokengen PRIVATE -Wall)
+install(TARGETS ${PROJECT_NAME} tokengen)