pidgin/pidgin

Update Meson to newer standards

2021-10-18, Elliott Sales de Andrade
1653402dd94e
Parents 19acd30c5000
Children 1896a80ff8e3
Update Meson to newer standards

* Remove checks for old Meson
We require 0.56.0 now.
* Remove deprecated Meson call
* Update calls to `pkgconfig.generate`
The library to wrap should be passed as first positional argument, and we can
pass actual dependencies as the runtime requirements. We can't pass things that
might be subprojects as dependencies, which may be a Meson bug, so pass those
ones as strings.

Testing Done:
Re-configured and looked at the pkgconfig files.

Reviewed at https://reviews.imfreedom.org/r/1064/
--- a/finch/meson.build Mon Oct 18 02:44:32 2021 -0500
+++ b/finch/meson.build Mon Oct 18 02:47:12 2021 -0500
@@ -236,18 +236,17 @@
dependencies : [libpurple_dep, libgnt_dep, libfinch_dep],
install : true)
- if meson.version().version_compare('>=0.54.0')
- meson.override_dependency('finch-3', libfinch_dep)
- endif
+ meson.override_dependency('finch-3', libfinch_dep)
pkgconfig.generate(
+ libfinch,
name : 'Finch',
description : 'Finch is an instant messenger application that uses libpurple for protocol support and ncurses (libgnt) for the UI.',
version : meson.project_version(),
filebase : 'finch-3',
subdirs : 'finch-3',
- libraries : [libfinch],
- requires : ['gnt', 'purple-3'],
+ # NOTE: Don't use gnt from pkgconfig, as it might be a subproject.
+ requires : ['gnt', libpurple],
variables : ['plugindir=${libdir}/finch-@0@'.format(purple_major_version)])
subdir('plugins')
--- a/libpurple/meson.build Mon Oct 18 02:44:32 2021 -0500
+++ b/libpurple/meson.build Mon Oct 18 02:47:12 2021 -0500
@@ -310,14 +310,15 @@
subdir : purple_include_base / 'media')
pkgconfig.generate(
+ libpurple,
name : 'libpurple',
description : 'libpurple is a GLib-based instant messenger library.',
version : meson.project_version(),
filebase : purple_filebase,
# TODO: Only use purple_filebase once everything is ported to only use purple.h
subdirs : [purple_filebase, purple_include_base],
- libraries : [libpurple],
- requires : ['glib-2.0', 'gplugin'],
+ # NOTE: Don't use gplugin from pkgconfig, as it might be a subproject.
+ requires : [glib, 'gplugin'],
variables : ['plugindir=${libdir}/@0@'.format(purple_filebase)])
if enable_introspection
@@ -349,9 +350,7 @@
link_with : libpurple,
dependencies : [gstreamer, gplugin_dep, glib, gio])
-if meson.version().version_compare('>=0.54.0')
- meson.override_dependency(purple_filebase, libpurple_dep)
-endif
+meson.override_dependency(purple_filebase, libpurple_dep)
PURPLE3_URL_HANDLER_DESKTOP = 'purple3-url-handler.desktop'
if get_option('nls')
--- a/meson.build Mon Oct 18 02:44:32 2021 -0500
+++ b/meson.build Mon Oct 18 02:47:12 2021 -0500
@@ -699,7 +699,7 @@
if meson.version().version_compare('>=0.58.0')
config_home = get_option('devenv-config-dir')
if config_home == ''
- config_home = meson.build_root() / 'config'
+ config_home = meson.global_build_root() / 'config'
endif
devenv.set('XDG_CONFIG_HOME', config_home)
--- a/pidgin/meson.build Mon Oct 18 02:44:32 2021 -0500
+++ b/pidgin/meson.build Mon Oct 18 02:47:12 2021 -0500
@@ -258,18 +258,17 @@
win_subsystem : 'windows',
install : true)
- if meson.version().version_compare('>=0.54.0')
- meson.override_dependency(pidgin_filebase, libpidgin_dep)
- endif
+ meson.override_dependency(pidgin_filebase, libpidgin_dep)
pkgconfig.generate(
+ libpidgin,
name : 'Pidgin',
description : 'Pidgin is a GTK3-based instant messenger application.',
version : meson.project_version(),
filebase : pidgin_filebase,
subdirs : pidgin_filebase,
- libraries : [libpidgin],
- requires : ['gtk+-3.0', 'libhandy-1', 'purple-3', 'talkatu', 'gplugin-gtk'],
+ # NOTE: Don't use dependencies from subprojects.
+ requires : [gtk, libhandy, libpurple, 'talkatu', 'gplugin-gtk3'],
variables : ['plugindir=${libdir}/pidgin-@0@'.format(purple_major_version)])
PIDGIN_DESKTOP_FILE = 'im.pidgin.Pidgin3.desktop'