aboutsummaryrefslogtreecommitdiffstats
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-08-02 16:57:12 +0200
committerDanilo M. <danix@danix.xyz>2026-08-04 12:52:13 +0200
commitd217d976ccdc439803003a26252904ca8abdd520 (patch)
tree3045be3f9bfbc87e52fe07965704074c53f6083b /CMakeLists.txt
parent0af917701973b67d7b7bf5e9ef37304040530015 (diff)
downloadqtmaildir-d217d976ccdc439803003a26252904ca8abdd520.tar.gz
qtmaildir-d217d976ccdc439803003a26252904ca8abdd520.zip
build: add CMake skeleton and dependency discovery
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt24
1 files changed, 24 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
new file mode 100644
index 0000000..9364240
--- /dev/null
+++ b/CMakeLists.txt
@@ -0,0 +1,24 @@
+cmake_minimum_required(VERSION 3.21)
+project(qtmaildir VERSION 0.1.0 LANGUAGES CXX)
+
+set(CMAKE_CXX_STANDARD 17)
+set(CMAKE_CXX_STANDARD_REQUIRED ON)
+set(CMAKE_AUTOMOC ON)
+
+find_package(Qt6 6.5 REQUIRED COMPONENTS Widgets WebEngineWidgets Test)
+
+# notmuch ships no pkg-config file; locate it by hand.
+find_path(NOTMUCH_INCLUDE_DIR notmuch.h)
+find_library(NOTMUCH_LIBRARY NAMES notmuch)
+if(NOT NOTMUCH_INCLUDE_DIR OR NOT NOTMUCH_LIBRARY)
+ message(FATAL_ERROR
+ "libnotmuch not found. Need notmuch.h and libnotmuch on the system.")
+endif()
+message(STATUS "Found notmuch: ${NOTMUCH_LIBRARY}")
+
+find_package(PkgConfig REQUIRED)
+pkg_check_modules(GMIME REQUIRED IMPORTED_TARGET gmime-3.0)
+
+enable_testing()
+add_subdirectory(src)
+add_subdirectory(tests)