summaryrefslogtreecommitdiff
path: root/gui/CMakeLists.txt
diff options
context:
space:
mode:
authorFelix Morgner <felix.morgner@gmail.com>2025-05-24 12:13:08 +0200
committerFelix Morgner <felix.morgner@gmail.com>2025-05-24 12:13:08 +0200
commit3b34ac3ccbeb62673b37f0c73cc145fede43c404 (patch)
tree7394932681ea2d86db9d9ac63d8fb62c715ae8e7 /gui/CMakeLists.txt
parent72ab1fb4c1bf363f46470816d8b914a78ac493c4 (diff)
downloadturns-3b34ac3ccbeb62673b37f0c73cc145fede43c404.tar.xz
turns-3b34ac3ccbeb62673b37f0c73cc145fede43c404.zip
gui: add basic frame
Diffstat (limited to 'gui/CMakeLists.txt')
-rw-r--r--gui/CMakeLists.txt48
1 files changed, 48 insertions, 0 deletions
diff --git a/gui/CMakeLists.txt b/gui/CMakeLists.txt
index ebdb1be..cf7830b 100644
--- a/gui/CMakeLists.txt
+++ b/gui/CMakeLists.txt
@@ -1,6 +1,54 @@
# SPDX-FileCopyrightText: 2025 Felix Morgner <felix.morgner@gmail.com>
# SPDX-License-Identifier: LGPL-2.1-only
+cmake_minimum_required(VERSION "4.0.0")
+
+project("turns-gui"
+ LANGUAGES C CXX
+ DESCRIPTION "Turns, the simple turn order tracker"
+ VERSION "1.0.0"
+)
+
+include("FetchContent")
+
+find_package("PkgConfig" REQUIRED)
+
+# Dependencies
+
+pkg_check_modules("glibmm"
+ IMPORTED_TARGET
+ REQUIRED
+ "glibmm-2.68>=${TURNS_GLIB_MINIMUM_VERSION}"
+)
+
+# Application
+
+add_executable("gui" "src/main.cpp")
+add_executable("turns::gui" ALIAS "gui")
+
+target_compile_features("gui" PUBLIC
+ "c_std_23"
+ "cxx_std_23"
+)
+
+target_include_directories("gui" PUBLIC
+ "$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>"
+)
+
+target_link_libraries("gui" PUBLIC
+ "adwaitamm::adwaitamm"
+ "turns::mm"
+)
+
+set_target_properties("gui" PROPERTIES
+ OUTPUT_NAME "turns"
+ INTERPROCEDURAL_OPTIMIZATION "${TURNS_CAN_DO_IPO}"
+ C_EXTENSIONS OFF
+ CXX_EXTENSIONS OFF
+)
+
+install(TARGETS "gui")
+
# add_executable("app"
# "src/main.cpp"
# )