From 6d838c1c317164fb7e54442312f63d4cb4beaddd Mon Sep 17 00:00:00 2001 From: hrxi Date: Thu, 22 Jun 2023 00:04:59 +0200 Subject: meson: Add http-files plugin --- plugins/meson.build | 1 + 1 file changed, 1 insertion(+) create mode 100644 plugins/meson.build (limited to 'plugins/meson.build') diff --git a/plugins/meson.build b/plugins/meson.build new file mode 100644 index 00000000..88fbb335 --- /dev/null +++ b/plugins/meson.build @@ -0,0 +1 @@ +subdir('http-files') -- cgit v1.2.3-70-g09d2 From 7326ca4d1b61f775666dc53adc23aae51f5b643d Mon Sep 17 00:00:00 2001 From: hrxi Date: Sun, 4 Jun 2023 09:40:29 +0200 Subject: meson: Add openpgp plugin --- meson.build | 1 + plugins/meson.build | 1 + plugins/openpgp/data/gresource.xml | 6 ++++++ plugins/openpgp/meson.build | 43 ++++++++++++++++++++++++++++++++++++++ plugins/openpgp/po/meson.build | 1 + 5 files changed, 52 insertions(+) create mode 100644 plugins/openpgp/data/gresource.xml create mode 100644 plugins/openpgp/meson.build create mode 100644 plugins/openpgp/po/meson.build (limited to 'plugins/meson.build') diff --git a/meson.build b/meson.build index 02da2b35..ef14dbec 100644 --- a/meson.build +++ b/meson.build @@ -10,6 +10,7 @@ dep_gee = dependency('gee-0.8') dep_gio = dependency('gio-2.0') dep_glib = dependency('glib-2.0') dep_gmodule = dependency('gmodule-2.0') +dep_gpgme = dependency('gpgme') dep_gtk4 = dependency('gtk4') dep_icu_uc = dependency('icu-uc') dep_libadwaita = dependency('libadwaita-1') diff --git a/plugins/meson.build b/plugins/meson.build index 88fbb335..bacf9678 100644 --- a/plugins/meson.build +++ b/plugins/meson.build @@ -1 +1,2 @@ subdir('http-files') +subdir('openpgp') diff --git a/plugins/openpgp/data/gresource.xml b/plugins/openpgp/data/gresource.xml new file mode 100644 index 00000000..fbe2e8e9 --- /dev/null +++ b/plugins/openpgp/data/gresource.xml @@ -0,0 +1,6 @@ + + + + account_settings_item.ui + + diff --git a/plugins/openpgp/meson.build b/plugins/openpgp/meson.build new file mode 100644 index 00000000..806494f2 --- /dev/null +++ b/plugins/openpgp/meson.build @@ -0,0 +1,43 @@ +subdir('po') +dependencies = [ + dep_dino, + dep_gee, + dep_glib, + dep_gmodule, + dep_gpgme, + dep_gtk4, + dep_qlite, + dep_xmpp_vala, +] +sources = files( + 'src/account_settings_entry.vala', + 'src/contact_details_provider.vala', + 'src/database.vala', + 'src/encryption_list_entry.vala', + 'src/file_transfer/file_decryptor.vala', + 'src/file_transfer/file_encryptor.vala', + 'src/gpgme_fix.c', + 'src/gpgme_helper.vala', + 'src/manager.vala', + 'src/plugin.vala', + 'src/register_plugin.vala', + 'src/stream_flag.vala', + 'src/stream_module.vala', + 'src/util.vala', + 'vapi/gpg-error.vapi', +) +sources += gnome.compile_resources( + 'resources', + 'data/gresource.xml', + source_dir: 'data', +) +c_args = [ + '-DG_LOG_DOMAIN="OpenPGP"', + '-DGETTEXT_PACKAGE="dino-openpgp"', + '-DLOCALE_INSTALL_DIR="@0@"'.format(get_option('prefix') / get_option('localedir')), +] +vala_args = [ + '--vapidir', meson.current_source_dir() / 'vapi', +] +lib_openpgp = shared_library('openpgp', sources, name_prefix: '', c_args: c_args, vala_args: vala_args, include_directories: include_directories('src'), dependencies: dependencies, install: true, install_dir: get_option('libdir') / 'dino/plugins') +dep_openpgp = declare_dependency(link_with: lib_openpgp, include_directories: include_directories('.')) diff --git a/plugins/openpgp/po/meson.build b/plugins/openpgp/po/meson.build new file mode 100644 index 00000000..ac755b55 --- /dev/null +++ b/plugins/openpgp/po/meson.build @@ -0,0 +1 @@ +i18n.gettext('dino-openpgp') -- cgit v1.2.3-70-g09d2 From 7dd12e7dec0706b0d78f99e7014ee3a12079f1c6 Mon Sep 17 00:00:00 2001 From: hrxi Date: Mon, 12 Jun 2023 23:11:50 +0200 Subject: meson: Add notification-sound plugin --- meson.build | 1 + plugins/meson.build | 1 + plugins/notification-sound/meson.build | 19 +++++++++++++++++++ 3 files changed, 21 insertions(+) create mode 100644 plugins/notification-sound/meson.build (limited to 'plugins/meson.build') diff --git a/meson.build b/meson.build index ef14dbec..e08255e1 100644 --- a/meson.build +++ b/meson.build @@ -14,6 +14,7 @@ dep_gpgme = dependency('gpgme') dep_gtk4 = dependency('gtk4') dep_icu_uc = dependency('icu-uc') dep_libadwaita = dependency('libadwaita-1') +dep_libcanberra = dependency('libcanberra') dep_libsoup = dependency('libsoup-3.0') dep_m = meson.get_compiler('c').find_library('m', required: false) dep_sqlite3 = dependency('sqlite3', version: '>=3.24') diff --git a/plugins/meson.build b/plugins/meson.build index bacf9678..5b0284f6 100644 --- a/plugins/meson.build +++ b/plugins/meson.build @@ -1,2 +1,3 @@ subdir('http-files') +subdir('notification-sound') subdir('openpgp') diff --git a/plugins/notification-sound/meson.build b/plugins/notification-sound/meson.build new file mode 100644 index 00000000..5a114d86 --- /dev/null +++ b/plugins/notification-sound/meson.build @@ -0,0 +1,19 @@ +dependencies = [ + dep_dino, + dep_gdk_pixbuf, + dep_gee, + dep_glib, + dep_gmodule, + dep_libcanberra, + dep_qlite, + dep_xmpp_vala, +] +sources = files( + 'src/plugin.vala', + 'src/register_plugin.vala', +) +vala_args = [ + '--vapidir', meson.current_source_dir() / 'vapi', +] +lib_notification_sound = shared_library('notification-sound', sources, name_prefix: '', vala_args: vala_args, dependencies: dependencies, install: true, install_dir: get_option('libdir') / 'dino/plugins') +dep_notification_sound = declare_dependency(link_with: lib_notification_sound, include_directories: include_directories('.')) -- cgit v1.2.3-70-g09d2 From 3edda368f33c1ffbdcb76c41a32953f50b6ef6bc Mon Sep 17 00:00:00 2001 From: hrxi Date: Mon, 12 Jun 2023 23:50:16 +0200 Subject: meson: Add ice plugin --- meson.build | 2 ++ plugins/ice/meson.build | 28 ++++++++++++++++++++++++++++ plugins/meson.build | 1 + 3 files changed, 31 insertions(+) create mode 100644 plugins/ice/meson.build (limited to 'plugins/meson.build') diff --git a/meson.build b/meson.build index d0888be3..7f86f002 100644 --- a/meson.build +++ b/meson.build @@ -9,6 +9,7 @@ dep_gdk_pixbuf = dependency('gdk-pixbuf-2.0') dep_gee = dependency('gee-0.8') dep_gio = dependency('gio-2.0') dep_glib = dependency('glib-2.0') +dep_gnutls = dependency('gnutls') dep_gmodule = dependency('gmodule-2.0') dep_gpgme = dependency('gpgme') dep_gtk4 = dependency('gtk4') @@ -18,6 +19,7 @@ dep_libcanberra = dependency('libcanberra') dep_libgcrypt = dependency('libgcrypt') dep_libsrtp2 = dependency('libsrtp2') dep_libsoup = dependency('libsoup-3.0') +dep_nice = dependency('nice', version: '>=0.1.15') dep_m = meson.get_compiler('c').find_library('m', required: false) dep_sqlite3 = dependency('sqlite3', version: '>=3.24') diff --git a/plugins/ice/meson.build b/plugins/ice/meson.build new file mode 100644 index 00000000..40e54ce3 --- /dev/null +++ b/plugins/ice/meson.build @@ -0,0 +1,28 @@ +dependencies = [ + dep_crypto_vala, + dep_dino, + dep_gdk_pixbuf, + dep_gee, + dep_glib, + dep_gmodule, + dep_gnutls, + dep_nice, + dep_qlite, + dep_xmpp_vala, +] +sources = files( + 'src/dtls_srtp.vala', + 'src/module.vala', + 'src/plugin.vala', + 'src/transport_parameters.vala', + 'src/util.vala', + 'src/register_plugin.vala', +) +c_args = [ + '-DG_LOG_DOMAIN="ice"', +] +vala_args = [ + '--vapidir', meson.current_source_dir() / 'vapi', +] +lib_ice = shared_library('ice', sources, name_prefix: '', c_args: c_args, vala_args: vala_args, dependencies: dependencies, install: true, install_dir: get_option('libdir') / 'dino/plugins') +dep_ice = declare_dependency(link_with: lib_ice, include_directories: include_directories('.')) diff --git a/plugins/meson.build b/plugins/meson.build index 5b0284f6..9a995f87 100644 --- a/plugins/meson.build +++ b/plugins/meson.build @@ -1,3 +1,4 @@ subdir('http-files') +subdir('ice') subdir('notification-sound') subdir('openpgp') -- cgit v1.2.3-70-g09d2 From 715fabb5bb793f35926180363bd6f9236d904f42 Mon Sep 17 00:00:00 2001 From: hrxi Date: Tue, 20 Jun 2023 18:54:28 +0200 Subject: meson: Add omemo plugin --- meson.build | 5 +++ plugins/meson.build | 1 + plugins/omemo/data/gresource.xml | 7 ++++ plugins/omemo/meson.build | 68 +++++++++++++++++++++++++++++++++++++++ plugins/omemo/po/meson.build | 1 + plugins/omemo/vapi/libgcrypt.vapi | 0 6 files changed, 82 insertions(+) create mode 100644 plugins/omemo/data/gresource.xml create mode 100644 plugins/omemo/meson.build create mode 100644 plugins/omemo/po/meson.build create mode 100644 plugins/omemo/vapi/libgcrypt.vapi (limited to 'plugins/meson.build') diff --git a/meson.build b/meson.build index 7f86f002..887397c2 100644 --- a/meson.build +++ b/meson.build @@ -17,7 +17,12 @@ dep_icu_uc = dependency('icu-uc') dep_libadwaita = dependency('libadwaita-1') dep_libcanberra = dependency('libcanberra') dep_libgcrypt = dependency('libgcrypt') +dep_libqrencode = dependency('libqrencode') dep_libsrtp2 = dependency('libsrtp2') +# libsignal-protocol-c has a history of breaking compatibility on the patch level +# we'll have to check compatibility for every new release +# distro maintainers may update this dependency after compatibility tests +dep_libsignal_protocol_c = dependency('libsignal-protocol-c', version: ['>=2.3.2', '<2.3.4']) dep_libsoup = dependency('libsoup-3.0') dep_nice = dependency('nice', version: '>=0.1.15') dep_m = meson.get_compiler('c').find_library('m', required: false) diff --git a/plugins/meson.build b/plugins/meson.build index 9a995f87..cf47aea8 100644 --- a/plugins/meson.build +++ b/plugins/meson.build @@ -1,4 +1,5 @@ subdir('http-files') subdir('ice') subdir('notification-sound') +subdir('omemo') subdir('openpgp') diff --git a/plugins/omemo/data/gresource.xml b/plugins/omemo/data/gresource.xml new file mode 100644 index 00000000..616dcdc1 --- /dev/null +++ b/plugins/omemo/data/gresource.xml @@ -0,0 +1,7 @@ + + + + contact_details_dialog.ui + manage_key_dialog.ui + + diff --git a/plugins/omemo/meson.build b/plugins/omemo/meson.build new file mode 100644 index 00000000..57eec2ce --- /dev/null +++ b/plugins/omemo/meson.build @@ -0,0 +1,68 @@ +subdir('po') +dependencies = [ + dep_crypto_vala, + dep_dino, + dep_gee, + dep_glib, + dep_gmodule, + dep_gtk4, + dep_libgcrypt, + dep_libqrencode, + dep_libsignal_protocol_c, + dep_qlite, + dep_xmpp_vala, +] +sources = files( + 'src/dtls_srtp_verification_draft.vala', + 'src/file_transfer/file_decryptor.vala', + 'src/file_transfer/file_encryptor.vala', + 'src/jingle/jet_omemo.vala', + 'src/jingle/jingle_helper.vala', + 'src/logic/database.vala', + 'src/logic/decrypt.vala', + 'src/logic/encrypt.vala', + 'src/logic/manager.vala', + 'src/logic/pre_key_store.vala', + 'src/logic/session_store.vala', + 'src/logic/signed_pre_key_store.vala', + 'src/logic/trust_manager.vala', + 'src/plugin.vala', + 'src/protocol/bundle.vala', + 'src/protocol/message_flag.vala', + 'src/protocol/stream_module.vala', + 'src/register_plugin.vala', + 'src/signal/context.vala', + 'src/signal/signal_helper.c', + 'src/signal/simple_iks.vala', + 'src/signal/simple_pks.vala', + 'src/signal/simple_spks.vala', + 'src/signal/simple_ss.vala', + 'src/signal/store.vala', + 'src/signal/util.vala', + 'src/trust_level.vala', + 'src/ui/account_settings_entry.vala', + 'src/ui/bad_messages_populator.vala', + 'src/ui/call_encryption_entry.vala', + 'src/ui/contact_details_dialog.vala', + 'src/ui/contact_details_provider.vala', + 'src/ui/device_notification_populator.vala', + 'src/ui/encryption_list_entry.vala', + 'src/ui/manage_key_dialog.vala', + 'src/ui/own_notifications.vala', + 'src/ui/util.vala', +) +sources += gnome.compile_resources( + 'resources', + 'data/gresource.xml', + source_dir: 'data', +) +c_args = [ + '-DG_LOG_DOMAIN="OMEMO"', + '-DGETTEXT_PACKAGE="dino-omemo"', + '-DLOCALE_INSTALL_DIR="@0@"'.format(get_option('prefix') / get_option('localedir')), +] +vala_args = [ + '--vapidir', meson.current_source_dir() / 'vapi', +] +lib_omemo = shared_library('omemo', sources, name_prefix: '', c_args: c_args, vala_args: vala_args, include_directories: include_directories('src'), dependencies: dependencies, install: true, install_dir: get_option('libdir') / 'dino/plugins') +dep_omemo = declare_dependency(link_with: lib_omemo, include_directories: include_directories('.')) diff --git a/plugins/omemo/po/meson.build b/plugins/omemo/po/meson.build new file mode 100644 index 00000000..fa22f211 --- /dev/null +++ b/plugins/omemo/po/meson.build @@ -0,0 +1 @@ +i18n.gettext('dino-omemo') diff --git a/plugins/omemo/vapi/libgcrypt.vapi b/plugins/omemo/vapi/libgcrypt.vapi new file mode 100644 index 00000000..e69de29b -- cgit v1.2.3-70-g09d2 From e6938c29653743974eb4f03d2a988cef50d0adbc Mon Sep 17 00:00:00 2001 From: hrxi Date: Tue, 20 Jun 2023 19:46:41 +0200 Subject: meson: Add rtp plugin --- meson.build | 8 +++++- plugins/meson.build | 1 + plugins/rtp/meson.build | 41 +++++++++++++++++++++++++++ plugins/rtp/vapi/webrtc-audio-processing.vapi | 0 4 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 plugins/rtp/meson.build create mode 100644 plugins/rtp/vapi/webrtc-audio-processing.vapi (limited to 'plugins/meson.build') diff --git a/meson.build b/meson.build index 887397c2..e3c6b72e 100644 --- a/meson.build +++ b/meson.build @@ -1,4 +1,4 @@ -project('xmpp-vala', 'vala') +project('xmpp-vala', 'c', 'cpp', 'vala') fs = import('fs') gnome = import('gnome') @@ -12,6 +12,11 @@ dep_glib = dependency('glib-2.0') dep_gnutls = dependency('gnutls') dep_gmodule = dependency('gmodule-2.0') dep_gpgme = dependency('gpgme') +dep_gstreamer = dependency('gstreamer-1.0') +dep_gstreamer_app = dependency('gstreamer-app-1.0') +dep_gstreamer_audio = dependency('gstreamer-audio-1.0') +dep_gstreamer_rtp = dependency('gstreamer-rtp-1.0') +dep_gstreamer_video = dependency('gstreamer-video-1.0') dep_gtk4 = dependency('gtk4') dep_icu_uc = dependency('icu-uc') dep_libadwaita = dependency('libadwaita-1') @@ -27,6 +32,7 @@ dep_libsoup = dependency('libsoup-3.0') dep_nice = dependency('nice', version: '>=0.1.15') dep_m = meson.get_compiler('c').find_library('m', required: false) dep_sqlite3 = dependency('sqlite3', version: '>=3.24') +dep_webrtc_audio_processing = dependency('webrtc-audio-processing', version: ['>=0.2', '<0.4']) prog_git = find_program('git', required: false) prog_python = python.find_installation() diff --git a/plugins/meson.build b/plugins/meson.build index cf47aea8..196e3634 100644 --- a/plugins/meson.build +++ b/plugins/meson.build @@ -3,3 +3,4 @@ subdir('ice') subdir('notification-sound') subdir('omemo') subdir('openpgp') +subdir('rtp') diff --git a/plugins/rtp/meson.build b/plugins/rtp/meson.build new file mode 100644 index 00000000..d4d37e36 --- /dev/null +++ b/plugins/rtp/meson.build @@ -0,0 +1,41 @@ +dependencies = [ + dep_gee, + dep_glib, + dep_gmodule, + dep_gnutls, + dep_gtk4, + dep_gstreamer, + dep_gstreamer_app, + dep_gstreamer_audio, + dep_gstreamer_rtp, + dep_gstreamer_video, + dep_crypto_vala, + dep_dino, + dep_qlite, + dep_webrtc_audio_processing, + dep_xmpp_vala, +] +sources = files( + 'src/codec_util.vala', + 'src/device.vala', + 'src/gst_fixes.c', + 'src/module.vala', + 'src/plugin.vala', + 'src/register_plugin.vala', + 'src/stream.vala', + 'src/video_widget.vala', + 'src/voice_processor.vala', + 'src/voice_processor_native.cpp', +) +c_args = [ + '-DGST_1_16', + '-DGST_1_18', + '-DGST_1_20', + '-DWITH_VOICE_PROCESSOR', + '-DG_LOG_DOMAIN="rtp"', +] +vala_args = [ + '--vapidir', meson.current_source_dir() / 'vapi', +] +lib_rtp = shared_library('rtp', sources, name_prefix: '', c_args: c_args, vala_args: vala_args, include_directories: include_directories('src'), dependencies: dependencies, install: true, install_dir: get_option('libdir') / 'dino/plugins') +dep_rtp = declare_dependency(link_with: lib_rtp, include_directories: include_directories('.')) diff --git a/plugins/rtp/vapi/webrtc-audio-processing.vapi b/plugins/rtp/vapi/webrtc-audio-processing.vapi new file mode 100644 index 00000000..e69de29b -- cgit v1.2.3-70-g09d2