2017-12-09 00:45:29 +01:00
|
|
|
# Geary client
|
2020-03-11 11:08:49 +11:00
|
|
|
|
2020-08-10 16:53:39 +10:00
|
|
|
client_package_name = 'geary-client'
|
|
|
|
|
client_api_version = '.'.join([
|
2020-03-30 11:01:03 +11:00
|
|
|
geary_version.split('.')[0],
|
|
|
|
|
geary_version.split('.')[1]
|
|
|
|
|
])
|
2020-08-10 16:53:39 +10:00
|
|
|
client_package = '@0@-@1@'.format(
|
|
|
|
|
client_package_name,
|
|
|
|
|
client_api_version
|
2020-03-30 11:01:03 +11:00
|
|
|
)
|
|
|
|
|
|
2020-08-10 16:53:39 +10:00
|
|
|
client_vala_sources = files(
|
2020-04-02 14:01:03 +11:00
|
|
|
'application/application-account-context.vala',
|
2020-08-10 18:10:32 +10:00
|
|
|
'application/application-account-interface.vala',
|
2019-10-29 12:15:47 +11:00
|
|
|
'application/application-attachment-manager.vala',
|
2018-10-07 13:18:23 +11:00
|
|
|
'application/application-avatar-store.vala',
|
2019-01-10 15:10:20 +11:00
|
|
|
'application/application-certificate-manager.vala',
|
2019-11-13 10:54:11 +11:00
|
|
|
'application/application-client.vala',
|
2018-06-13 17:31:46 +10:00
|
|
|
'application/application-command.vala',
|
2019-11-07 13:26:47 +11:00
|
|
|
'application/application-configuration.vala',
|
2019-03-14 21:41:57 +11:00
|
|
|
'application/application-contact-store.vala',
|
|
|
|
|
'application/application-contact.vala',
|
2019-04-19 14:59:35 +10:00
|
|
|
'application/application-controller.vala',
|
2020-03-31 18:43:37 +11:00
|
|
|
'application/application-email-plugin-context.vala',
|
2020-03-21 09:06:05 +11:00
|
|
|
'application/application-email-store-factory.vala',
|
2020-04-02 14:12:55 +11:00
|
|
|
'application/application-folder-context.vala',
|
2020-03-31 18:43:37 +11:00
|
|
|
'application/application-folder-plugin-context.vala',
|
2020-03-10 13:08:40 +11:00
|
|
|
'application/application-folder-store-factory.vala',
|
2019-11-13 13:46:19 +11:00
|
|
|
'application/application-main-window.vala',
|
2020-03-31 18:43:37 +11:00
|
|
|
'application/application-notification-plugin-context.vala',
|
2019-09-26 23:25:19 +10:00
|
|
|
'application/application-plugin-manager.vala',
|
2019-04-12 20:35:39 +10:00
|
|
|
'application/application-startup-manager.vala',
|
2018-05-23 17:46:48 +10:00
|
|
|
'application/goa-mediator.vala',
|
2017-12-09 00:45:29 +01:00
|
|
|
'application/secret-mediator.vala',
|
|
|
|
|
|
2018-06-03 00:56:02 +03:00
|
|
|
'accounts/accounts-editor.vala',
|
2018-07-23 17:46:33 +10:00
|
|
|
'accounts/accounts-editor-add-pane.vala',
|
2018-06-03 19:28:02 +10:00
|
|
|
'accounts/accounts-editor-edit-pane.vala',
|
2018-06-14 22:27:45 +10:00
|
|
|
'accounts/accounts-editor-list-pane.vala',
|
2018-06-03 20:47:45 +10:00
|
|
|
'accounts/accounts-editor-remove-pane.vala',
|
2018-06-03 19:28:02 +10:00
|
|
|
'accounts/accounts-editor-row.vala',
|
2018-06-04 18:28:22 +10:00
|
|
|
'accounts/accounts-editor-servers-pane.vala',
|
2019-03-06 20:11:33 +11:00
|
|
|
'accounts/accounts-signature-web-view.vala',
|
2018-07-23 14:38:57 +10:00
|
|
|
'accounts/accounts-manager.vala',
|
2017-12-09 00:45:29 +01:00
|
|
|
|
2019-11-07 11:47:41 +11:00
|
|
|
'client-action.vala',
|
|
|
|
|
|
2020-02-12 16:48:24 +11:00
|
|
|
'components/client-web-view.vala',
|
2019-10-29 12:15:47 +11:00
|
|
|
'components/components-attachment-pane.vala',
|
2019-11-06 11:53:36 +11:00
|
|
|
'components/components-entry-undo.vala',
|
2020-03-16 11:33:27 +11:00
|
|
|
'components/components-info-bar-stack.vala',
|
2020-03-16 12:06:45 +11:00
|
|
|
'components/components-info-bar.vala',
|
2019-04-05 23:32:21 +11:00
|
|
|
'components/components-inspector.vala',
|
2019-09-27 19:29:17 +10:00
|
|
|
'components/components-in-app-notification.vala',
|
2019-07-04 13:30:42 +10:00
|
|
|
'components/components-inspector-error-view.vala',
|
2019-07-04 11:57:53 +10:00
|
|
|
'components/components-inspector-log-view.vala',
|
|
|
|
|
'components/components-inspector-system-view.vala',
|
2019-01-20 18:18:19 +10:30
|
|
|
'components/components-placeholder-pane.vala',
|
2019-11-20 17:54:15 +11:00
|
|
|
'components/components-preferences-window.vala',
|
2020-03-16 13:10:03 +11:00
|
|
|
'components/components-problem-report-info-bar.vala',
|
2020-01-20 19:11:36 -06:00
|
|
|
'components/components-reflow-box.c',
|
2019-12-13 12:21:27 +11:00
|
|
|
'components/components-search-bar.vala',
|
2018-07-23 14:49:39 +10:00
|
|
|
'components/components-validator.vala',
|
2017-12-09 00:45:29 +01:00
|
|
|
'components/count-badge.vala',
|
|
|
|
|
'components/folder-popover.vala',
|
|
|
|
|
'components/icon-factory.vala',
|
|
|
|
|
'components/main-toolbar.vala',
|
|
|
|
|
'components/monitored-progress-bar.vala',
|
|
|
|
|
'components/monitored-spinner.vala',
|
|
|
|
|
'components/status-bar.vala',
|
|
|
|
|
'components/stock.vala',
|
|
|
|
|
|
|
|
|
|
'composer/composer-box.vala',
|
|
|
|
|
'composer/composer-container.vala',
|
2020-01-25 16:48:47 +11:00
|
|
|
'composer/composer-email-entry.vala',
|
2017-12-09 00:45:29 +01:00
|
|
|
'composer/composer-embed.vala',
|
|
|
|
|
'composer/composer-headerbar.vala',
|
|
|
|
|
'composer/composer-link-popover.vala',
|
|
|
|
|
'composer/composer-web-view.vala',
|
|
|
|
|
'composer/composer-widget.vala',
|
|
|
|
|
'composer/composer-window.vala',
|
|
|
|
|
'composer/contact-entry-completion.vala',
|
|
|
|
|
'composer/spell-check-popover.vala',
|
|
|
|
|
|
|
|
|
|
'conversation-list/conversation-list-cell-renderer.vala',
|
|
|
|
|
'conversation-list/conversation-list-store.vala',
|
|
|
|
|
'conversation-list/conversation-list-view.vala',
|
|
|
|
|
'conversation-list/formatted-conversation-data.vala',
|
|
|
|
|
|
2019-03-14 16:59:55 +11:00
|
|
|
'conversation-viewer/conversation-contact-popover.vala',
|
2017-12-09 00:45:29 +01:00
|
|
|
'conversation-viewer/conversation-email.vala',
|
|
|
|
|
'conversation-viewer/conversation-list-box.vala',
|
|
|
|
|
'conversation-viewer/conversation-message.vala',
|
|
|
|
|
'conversation-viewer/conversation-viewer.vala',
|
|
|
|
|
'conversation-viewer/conversation-web-view.vala',
|
|
|
|
|
|
|
|
|
|
'dialogs/alert-dialog.vala',
|
|
|
|
|
'dialogs/attachment-dialog.vala',
|
|
|
|
|
'dialogs/certificate-warning-dialog.vala',
|
2019-01-07 23:13:30 +11:00
|
|
|
'dialogs/dialogs-problem-details-dialog.vala',
|
2017-12-09 00:45:29 +01:00
|
|
|
'dialogs/password-dialog.vala',
|
|
|
|
|
'dialogs/upgrade-dialog.vala',
|
|
|
|
|
|
|
|
|
|
'folder-list/folder-list-abstract-folder-entry.vala',
|
|
|
|
|
'folder-list/folder-list-account-branch.vala',
|
|
|
|
|
'folder-list/folder-list-folder-entry.vala',
|
|
|
|
|
'folder-list/folder-list-tree.vala',
|
|
|
|
|
'folder-list/folder-list-inboxes-branch.vala',
|
|
|
|
|
'folder-list/folder-list-inbox-folder-entry.vala',
|
|
|
|
|
'folder-list/folder-list-search-branch.vala',
|
|
|
|
|
'folder-list/folder-list-special-grouping.vala',
|
|
|
|
|
|
2020-03-10 12:46:23 +11:00
|
|
|
'plugin/plugin-account.vala',
|
|
|
|
|
'plugin/plugin-application.vala',
|
2020-03-20 15:17:23 +11:00
|
|
|
'plugin/plugin-button.vala',
|
2020-04-06 18:41:26 +10:00
|
|
|
'plugin/plugin-composer.vala',
|
2020-03-10 12:46:23 +11:00
|
|
|
'plugin/plugin-contact-store.vala',
|
2020-03-21 09:27:31 +11:00
|
|
|
'plugin/plugin-email-extension.vala',
|
2020-03-10 12:46:23 +11:00
|
|
|
'plugin/plugin-email-store.vala',
|
|
|
|
|
'plugin/plugin-email.vala',
|
2020-03-11 11:08:49 +11:00
|
|
|
'plugin/plugin-error.vala',
|
2020-03-18 18:51:42 +11:00
|
|
|
'plugin/plugin-folder-extension.vala',
|
2020-03-10 12:46:23 +11:00
|
|
|
'plugin/plugin-folder-store.vala',
|
|
|
|
|
'plugin/plugin-folder.vala',
|
2020-03-18 18:57:14 +11:00
|
|
|
'plugin/plugin-info-bar.vala',
|
2020-03-11 11:08:49 +11:00
|
|
|
'plugin/plugin-notification-extension.vala',
|
|
|
|
|
'plugin/plugin-plugin-base.vala',
|
|
|
|
|
'plugin/plugin-trusted-extension.vala',
|
2019-09-27 01:03:34 +10:00
|
|
|
|
2017-12-09 00:45:29 +01:00
|
|
|
'sidebar/sidebar-branch.vala',
|
|
|
|
|
'sidebar/sidebar-common.vala',
|
|
|
|
|
'sidebar/sidebar-count-cell-renderer.vala',
|
|
|
|
|
'sidebar/sidebar-entry.vala',
|
|
|
|
|
'sidebar/sidebar-tree.vala',
|
|
|
|
|
|
2019-03-01 13:02:43 +11:00
|
|
|
'util/util-avatar.vala',
|
2019-03-17 13:48:15 +11:00
|
|
|
'util/util-cache.vala',
|
2017-12-09 00:45:29 +01:00
|
|
|
'util/util-date.vala',
|
|
|
|
|
'util/util-email.vala',
|
|
|
|
|
'util/util-files.vala',
|
|
|
|
|
'util/util-gio.vala',
|
|
|
|
|
'util/util-gtk.vala',
|
2020-03-27 17:42:00 +11:00
|
|
|
'util/util-i18n.vala',
|
2019-07-21 10:00:32 +10:00
|
|
|
'util/util-js.vala',
|
2017-12-09 00:45:29 +01:00
|
|
|
'util/util-migrate.vala',
|
|
|
|
|
)
|
|
|
|
|
|
2020-08-10 16:53:39 +10:00
|
|
|
client_dependencies = [
|
2017-12-09 00:45:29 +01:00
|
|
|
enchant,
|
2019-02-26 22:54:28 +11:00
|
|
|
folks,
|
2019-01-10 17:33:37 +11:00
|
|
|
gck,
|
2017-12-09 00:45:29 +01:00
|
|
|
gcr,
|
2020-08-10 16:53:39 +10:00
|
|
|
engine_dep,
|
2017-12-09 00:45:29 +01:00
|
|
|
gee,
|
|
|
|
|
gio,
|
2019-07-21 10:05:24 +10:00
|
|
|
gmime,
|
2018-05-23 17:46:48 +10:00
|
|
|
goa,
|
2019-05-24 13:50:35 +02:00
|
|
|
gspell,
|
2017-12-09 00:45:29 +01:00
|
|
|
gtk,
|
2019-07-21 10:00:32 +10:00
|
|
|
javascriptcoregtk,
|
2019-07-21 10:05:24 +10:00
|
|
|
json_glib,
|
2019-04-05 23:32:21 +11:00
|
|
|
libhandy,
|
2019-07-21 10:05:24 +10:00
|
|
|
libmath,
|
2019-09-26 23:16:14 +10:00
|
|
|
libpeas,
|
2020-03-02 12:25:08 +11:00
|
|
|
libpeas_gtk,
|
2017-12-09 00:45:29 +01:00
|
|
|
libsecret,
|
|
|
|
|
libsoup,
|
|
|
|
|
libxml,
|
|
|
|
|
posix,
|
|
|
|
|
webkit2gtk,
|
|
|
|
|
]
|
|
|
|
|
|
2020-08-10 18:07:16 +10:00
|
|
|
client_build_dir = meson.current_build_dir()
|
|
|
|
|
|
|
|
|
|
# Generate internal VAPI for unit testing. See Meson issue
|
|
|
|
|
# https://github.com/mesonbuild/meson/issues/1781 for official
|
|
|
|
|
# internal VAPI support.
|
|
|
|
|
client_vala_args = geary_vala_args
|
|
|
|
|
client_vala_args += [
|
|
|
|
|
'--internal-header=@0@/@1@-internal.h'.format(
|
|
|
|
|
client_build_dir, client_package_name
|
|
|
|
|
),
|
|
|
|
|
'--internal-vapi=@0@/@1@-internal.vapi'.format(
|
|
|
|
|
client_build_dir, client_package_name
|
|
|
|
|
)
|
|
|
|
|
]
|
|
|
|
|
|
2020-02-12 16:48:24 +11:00
|
|
|
# Enable shared shecondary process if available.
|
|
|
|
|
# See issues #558 and #559
|
|
|
|
|
webkit_version = webkit2gtk.version().split('.')
|
|
|
|
|
if webkit_version[0].to_int() <= 2 and webkit_version[1].to_int() <= 24
|
|
|
|
|
message('Enabling WebKitGTK shared process model')
|
2020-08-10 16:53:39 +10:00
|
|
|
client_vala_args += [
|
2020-02-12 16:48:24 +11:00
|
|
|
'-D', 'HAS_WEBKIT_SHARED_PROC'
|
|
|
|
|
]
|
|
|
|
|
endif
|
|
|
|
|
|
2019-07-21 10:00:32 +10:00
|
|
|
# Main client application library
|
2020-08-10 16:53:39 +10:00
|
|
|
client_lib = shared_library(
|
|
|
|
|
client_package,
|
|
|
|
|
client_vala_sources + geary_resources,
|
|
|
|
|
dependencies: client_dependencies,
|
2017-12-09 00:45:29 +01:00
|
|
|
include_directories: config_h_dir,
|
2020-08-10 16:53:39 +10:00
|
|
|
vala_args: client_vala_args,
|
2019-09-27 23:56:52 +10:00
|
|
|
c_args: geary_c_args,
|
2020-03-30 11:01:03 +11:00
|
|
|
install: true,
|
|
|
|
|
install_dir: client_lib_dir,
|
2017-12-09 00:45:29 +01:00
|
|
|
)
|
|
|
|
|
|
2020-08-10 18:07:16 +10:00
|
|
|
# Dummy target to tell Meson about the internal VAPI given the
|
|
|
|
|
# workaround above, and fix the VAPI header to work around
|
|
|
|
|
# GNOME/vala#358
|
|
|
|
|
client_internal_header_fixup = custom_target(
|
|
|
|
|
'client_internal_header_fixup',
|
|
|
|
|
output: [
|
|
|
|
|
'geary-client-internal.h',
|
|
|
|
|
'geary-client-internal.vapi',
|
|
|
|
|
],
|
|
|
|
|
command: [
|
|
|
|
|
find_program('sed'),
|
|
|
|
|
'-ibak',
|
|
|
|
|
's/@0@.h/geary-client-internal.h/g'.format(client_package),
|
|
|
|
|
'@OUTDIR@/geary-client-internal.vapi',
|
|
|
|
|
],
|
|
|
|
|
depends: client_lib
|
|
|
|
|
)
|
|
|
|
|
|
2020-08-10 16:53:39 +10:00
|
|
|
client_dep = declare_dependency(
|
2020-08-10 18:07:16 +10:00
|
|
|
link_with: [
|
|
|
|
|
client_lib,
|
|
|
|
|
sqlite3_unicodesn_lib
|
|
|
|
|
],
|
|
|
|
|
include_directories: include_directories('.')
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
client_internal_dep = declare_dependency(
|
|
|
|
|
# Can't just include client_lib in link_with since that will
|
|
|
|
|
# pull in the public header and we get duplicate symbol errors.
|
|
|
|
|
link_args: [
|
|
|
|
|
'-L' + client_build_dir,
|
|
|
|
|
'-l' + client_package
|
|
|
|
|
],
|
|
|
|
|
link_with: [
|
|
|
|
|
sqlite3_unicodesn_lib,
|
|
|
|
|
],
|
2017-12-09 00:45:29 +01:00
|
|
|
include_directories: include_directories('.'),
|
2020-08-10 18:07:16 +10:00
|
|
|
sources: client_internal_header_fixup
|
2017-12-09 00:45:29 +01:00
|
|
|
)
|
2019-09-27 02:51:05 +10:00
|
|
|
|
|
|
|
|
subdir('plugin')
|