159 lines
4.7 KiB
CMake
159 lines
4.7 KiB
CMake
find_package(Vala REQUIRED)
|
|
find_package(PkgConfig REQUIRED)
|
|
include(${VALA_USE_FILE})
|
|
include(GlibCompileResourcesSupport)
|
|
|
|
set(LIBDINO_PACKAGES
|
|
gee-0.8
|
|
gio-2.0
|
|
glib-2.0
|
|
gtk+-3.0
|
|
gmodule-2.0
|
|
libnotify
|
|
sqlite3
|
|
)
|
|
|
|
pkg_check_modules(LIBDINO REQUIRED ${LIBDINO_PACKAGES})
|
|
|
|
set(RESOURCE_LIST
|
|
img/double_tick.svg
|
|
img/status_away.svg
|
|
img/status_chat.svg
|
|
img/status_dnd.svg
|
|
img/status_online.svg
|
|
img/tick.svg
|
|
|
|
add_conversation/add_contact_dialog.ui
|
|
add_conversation/add_groupchat_dialog.ui
|
|
add_conversation/conference_details_fragment.ui
|
|
add_conversation/list_row.ui
|
|
add_conversation/select_jid_fragment.ui
|
|
chat_input.ui
|
|
conversation_list_titlebar.ui
|
|
conversation_selector/view.ui
|
|
conversation_selector/chat_row_tooltip.ui
|
|
conversation_selector/conversation_row.ui
|
|
conversation_summary/message_item.ui
|
|
conversation_summary/view.ui
|
|
conversation_titlebar.ui
|
|
manage_accounts/account_row.ui
|
|
manage_accounts/add_account_dialog.ui
|
|
manage_accounts/dialog.ui
|
|
menu_add.ui
|
|
menu_app.ui
|
|
menu_conversation.ui
|
|
menu_encryption.ui
|
|
occupant_list.ui
|
|
occupant_list_item.ui
|
|
style.css
|
|
settings_dialog.ui
|
|
unified_window.ui
|
|
)
|
|
|
|
compile_gresources(
|
|
LIBDINO_GRESOURCES_TARGET
|
|
LIBDINO_GRESOURCES_XML
|
|
TARGET ${CMAKE_BINARY_DIR}/resources/resources.c
|
|
TYPE EMBED_C
|
|
RESOURCES ${RESOURCE_LIST}
|
|
PREFIX /org/dino-im
|
|
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/data
|
|
)
|
|
|
|
vala_precompile(LIBDINO_VALA_C
|
|
SOURCES
|
|
src/application.vala
|
|
|
|
src/plugin/interfaces.vala
|
|
src/plugin/loader.vala
|
|
src/plugin/registry.vala
|
|
|
|
src/dbus/login1.vala
|
|
src/dbus/networkmanager.vala
|
|
src/dbus/upower.vala
|
|
|
|
src/entity/account.vala
|
|
src/entity/conversation.vala
|
|
src/entity/jid.vala
|
|
src/entity/message.vala
|
|
src/entity/encryption.vala
|
|
|
|
src/service/avatar_manager.vala
|
|
src/service/avatar_storage.vala
|
|
src/service/chat_interaction.vala
|
|
src/service/connection_manager.vala
|
|
src/service/conversation_manager.vala
|
|
src/service/counterpart_interaction_manager.vala
|
|
src/service/database.vala
|
|
src/service/entity_capabilities_storage.vala
|
|
src/service/message_manager.vala
|
|
src/service/module_manager.vala
|
|
src/service/muc_manager.vala
|
|
src/service/pgp_manager.vala
|
|
src/service/presence_manager.vala
|
|
src/service/roster_manager.vala
|
|
src/service/stream_interactor.vala
|
|
|
|
src/settings.vala
|
|
|
|
src/ui/add_conversation/chat/add_contact_dialog.vala
|
|
src/ui/add_conversation/chat/roster_list.vala
|
|
src/ui/add_conversation/chat/dialog.vala
|
|
src/ui/add_conversation/conference/add_groupchat_dialog.vala
|
|
src/ui/add_conversation/conference/conference_details_fragment.vala
|
|
src/ui/add_conversation/conference/conference_list.vala
|
|
src/ui/add_conversation/conference/dialog.vala
|
|
src/ui/add_conversation/list_row.vala
|
|
src/ui/add_conversation/select_jid_fragment.vala
|
|
src/ui/avatar_generator.vala
|
|
src/ui/chat_input.vala
|
|
src/ui/conversation_list_titlebar.vala
|
|
src/ui/conversation_selector/chat_row.vala
|
|
src/ui/conversation_selector/conversation_row.vala
|
|
src/ui/conversation_selector/groupchat_row.vala
|
|
src/ui/conversation_selector/list.vala
|
|
src/ui/conversation_selector/view.vala
|
|
src/ui/conversation_summary/merged_message_item.vala
|
|
src/ui/conversation_summary/merged_status_item.vala
|
|
src/ui/conversation_summary/status_item.vala
|
|
src/ui/conversation_summary/view.vala
|
|
src/ui/conversation_titlebar.vala
|
|
src/ui/manage_accounts/account_row.vala
|
|
src/ui/manage_accounts/add_account_dialog.vala
|
|
src/ui/manage_accounts/dialog.vala
|
|
src/ui/notifications.vala
|
|
src/ui/occupant_list.vala
|
|
src/ui/occupant_list_row.vala
|
|
src/ui/settings_dialog.vala
|
|
src/ui/unified_window.vala
|
|
src/ui/util.vala
|
|
CUSTOM_VAPIS
|
|
"${CMAKE_BINARY_DIR}/xmpp-vala/xmpp-vala.vapi"
|
|
"${CMAKE_BINARY_DIR}/qlite/qlite.vapi"
|
|
"${CMAKE_BINARY_DIR}/gpgme-vala/gpgme.vapi"
|
|
PACKAGES
|
|
${LIBDINO_PACKAGES}
|
|
GENERATE_VAPI
|
|
dino
|
|
GENERATE_HEADER
|
|
dino
|
|
GRESOURCES
|
|
${LIBDINO_GRESOURCES_XML}
|
|
OPTIONS
|
|
--target-glib=2.38
|
|
-g
|
|
--thread
|
|
)
|
|
|
|
set(CFLAGS ${VALA_CFLAGS} ${LIBDINO_CFLAGS} -I${CMAKE_BINARY_DIR}/xmpp-vala -I${CMAKE_BINARY_DIR}/qlite -I${CMAKE_BINARY_DIR}/gpgme-vala -I${CMAKE_SOURCE_DIR}/gpgme-vala/src)
|
|
add_definitions(${CFLAGS})
|
|
add_library(libdino SHARED ${LIBDINO_VALA_C} ${LIBDINO_GRESOURCES_TARGET})
|
|
add_dependencies(libdino xmpp-vala-vapi qlite-vapi gpgme-vapi)
|
|
target_link_libraries(libdino xmpp-vala qlite gpgme-vala ${LIBDINO_LIBRARIES} -lm)
|
|
set_target_properties(libdino PROPERTIES PREFIX "")
|
|
|
|
add_custom_target(dino-vapi
|
|
DEPENDS
|
|
${CMAKE_BINARY_DIR}/libdino/dino.vapi
|
|
)
|