summaryrefslogtreecommitdiff
path: root/ui/CMakeLists.txt
diff options
context:
space:
mode:
authorFelix Morgner <felix.morgner@gmail.com>2024-07-24 13:23:55 +0200
committerFelix Morgner <felix.morgner@gmail.com>2024-07-24 13:23:55 +0200
commit4d0a7d99ebf55ad2d0e583759699b8b4d77a7907 (patch)
tree302a2661c5ae099129db40c75cbadf6b5e8c9bd4 /ui/CMakeLists.txt
parentf3317ddcaa8af0fb7b4be475dc97ef0649d1975b (diff)
downloadturns-4d0a7d99ebf55ad2d0e583759699b8b4d77a7907.tar.xz
turns-4d0a7d99ebf55ad2d0e583759699b8b4d77a7907.zip
app: move ui code to ui library
Diffstat (limited to 'ui/CMakeLists.txt')
-rw-r--r--ui/CMakeLists.txt60
1 files changed, 60 insertions, 0 deletions
diff --git a/ui/CMakeLists.txt b/ui/CMakeLists.txt
new file mode 100644
index 0000000..e3d8941
--- /dev/null
+++ b/ui/CMakeLists.txt
@@ -0,0 +1,60 @@
+# Library
+
+add_library("ui"
+ "src/widgets/participant_row.cpp"
+ "src/widgets/turn_order_view.cpp"
+ "src/windows/participant_editor.cpp"
+ "src/windows/tracker.cpp"
+
+ $<TARGET_OBJECTS:ui-res>
+)
+
+add_library("turns::ui" ALIAS "ui")
+
+target_compile_options("ui" PUBLIC
+ "$<$<CXX_COMPILER_ID:GNU,Clang>:-Wall>"
+ "$<$<CXX_COMPILER_ID:GNU,Clang>:-Wextra>"
+ "$<$<CXX_COMPILER_ID:GNU,Clang>:-Werror>"
+ "$<$<CXX_COMPILER_ID:GNU,Clang>:-pedantic-errors>"
+)
+
+target_include_directories("ui" PUBLIC
+ "include"
+)
+
+target_link_libraries("ui" PUBLIC
+ "turns::core"
+ "turns::lang"
+ "PkgConfig::adwaita"
+ "PkgConfig::gtkmm"
+)
+
+enable_coverage("ui")
+
+# Resources
+
+add_subdirectory("res")
+
+# Tests
+
+add_executable("ui-tests"
+ "tests/widgets/participant_row.cpp"
+ "tests/windows/participant_editor.cpp"
+ "tests/windows/resources.cpp"
+ "tests/windows/tracker.cpp"
+)
+
+target_link_libraries("ui-tests" PRIVATE
+ "Catch2::Catch2"
+
+ "$<$<CXX_COMPILER_ID:GNU,Clang>:-Wl,--whole-archive>"
+ "turns::ui"
+ "$<$<CXX_COMPILER_ID:GNU,Clang>:-Wl,--no-whole-archive>"
+ "turns::gtk-test-main"
+)
+
+target_link_options("ui-tests" PRIVATE
+ "$<$<AND:$<CXX_COMPILER_ID:GNU,Clang>,$<CONFIG:Debug>>:--coverage>"
+)
+
+catch_discover_tests("ui-tests")