# SPDX-FileCopyrightText: 2025 Felix Morgner # 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 "$" ) 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" # ) # target_link_libraries("app" PRIVATE # "$<$,$>:gcov>" # "PkgConfig::gtkmm" # "adwaitamm::adwaitamm" # "turns::core" # "turns::lang" # "$<$:-Wl,--whole-archive>" # "turns::ui" # "turns::style" # "$<$:-Wl,--no-whole-archive>" # ) # target_add_glib_resources("app" # PREFIX "/ch/arknet/Turns" # UI_FILES "metainfo.xml" # ) # set_target_properties("app" PROPERTIES # OUTPUT_NAME "turns" # ) # install(TARGETS "app" # RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" # ) # install(FILES # "${CMAKE_CURRENT_SOURCE_DIR}/metainfo.xml" # DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/metainfo" # RENAME "ch.arknet.Turns.metainfo.xml" # ) # configure_file("desktop.in" # "turns.desktop" # ) # install(FILES # "${CMAKE_CURRENT_BINARY_DIR}/turns.desktop" # DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/applications" # RENAME "ch.arknet.Turns.desktop" # ) # configure_file("mime.xml" # "turns.xml" # ) # install(FILES # "${CMAKE_CURRENT_BINARY_DIR}/turns.xml" # DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/mime/packages" # RENAME "ch.arknet.Turns.xml" # )