diff options
Diffstat (limited to 'gui/CMakeLists.txt')
| -rw-r--r-- | gui/CMakeLists.txt | 117 |
1 files changed, 59 insertions, 58 deletions
diff --git a/gui/CMakeLists.txt b/gui/CMakeLists.txt index cf7830b..389332d 100644 --- a/gui/CMakeLists.txt +++ b/gui/CMakeLists.txt @@ -10,17 +10,54 @@ project("turns-gui" ) include("FetchContent") +include("GlibCompileResources") find_package("PkgConfig" REQUIRED) # Dependencies +pkg_check_modules("gio" + IMPORTED_TARGET + REQUIRED + "gio-2.0>=${TURNS_GLIB_MINIMUM_VERSION}" +) + pkg_check_modules("glibmm" IMPORTED_TARGET REQUIRED "glibmm-2.68>=${TURNS_GLIB_MINIMUM_VERSION}" ) +# Resources + +add_library("resources" STATIC) + +target_link_libraries("resources" PUBLIC + "PkgConfig::gio" +) + +target_add_glib_resources("resources" + NAME "ui" + WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/ui" + PREFIX "/ch/arknet/Turns" + XML_FILES + "participant_editor.ui" + "participant_row.ui" + "preferences.ui" + "tracker.ui" + "turn_order_view.ui" + CSS_FILES + "style.css" + "style-dark.css" +) + +target_add_glib_resources("resources" + NAME "metainfo" + PREFIX "/ch/arknet/Turns" + XML_FILES + "metainfo.xml" +) + # Application add_executable("gui" "src/main.cpp") @@ -38,6 +75,10 @@ target_include_directories("gui" PUBLIC target_link_libraries("gui" PUBLIC "adwaitamm::adwaitamm" "turns::mm" + + "$<$<CXX_COMPILER_ID:GNU,Clang>:-Wl,--whole-archive>" + "resources" + "$<$<CXX_COMPILER_ID:GNU,Clang>:-Wl,--no-whole-archive>" ) set_target_properties("gui" PROPERTIES @@ -47,62 +88,22 @@ set_target_properties("gui" PROPERTIES CXX_EXTENSIONS OFF ) -install(TARGETS "gui") +configure_file("desktop.in" "ch.arknet.Turns.desktop") +configure_file("metainfo.xml" "ch.arknet.Turns.metainfo.xml") +configure_file("mime.xml" "ch.arknet.Turns.xml") + +install(FILES + "${CMAKE_CURRENT_BINARY_DIR}/ch.arknet.Turns.desktop" + DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/applications" +) -# add_executable("app" -# "src/main.cpp" -# ) - -# target_link_libraries("app" PRIVATE -# "$<$<AND:$<CXX_COMPILER_ID:GNU,Clang>,$<CONFIG:Debug>>:gcov>" - -# "PkgConfig::gtkmm" -# "adwaitamm::adwaitamm" - -# "turns::core" -# "turns::lang" - -# "$<$<CXX_COMPILER_ID:GNU,Clang>:-Wl,--whole-archive>" -# "turns::ui" -# "turns::style" -# "$<$<CXX_COMPILER_ID:GNU,Clang>:-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" -# ) +install(FILES + "${CMAKE_CURRENT_BINARY_DIR}/ch.arknet.Turns.metainfo.xml" + DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/metainfo" +) +install(FILES + "${CMAKE_CURRENT_BINARY_DIR}/ch.arknet.Turns.xml" + DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/mime/packages" +) + +install(TARGETS "gui") |
