pidgin/pidgin

Use meson pkgconfig generator.

2017-11-17, Elliott Sales de Andrade
93d9173b62c8
Use meson pkgconfig generator.

Without autotools, there's no need to use templates.
--- a/finch/finch.pc.in Thu Nov 16 23:56:04 2017 -0500
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,14 +0,0 @@
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-libdir=@libdir@
-includedir=@includedir@
-datarootdir=@datarootdir@
-datadir=@datadir@
-sysconfdir=@sysconfdir@
-
-Name: Finch
-Description: Finch is an instant messenger application that uses libpurple for protocol support and ncurses (libgnt) for the UI.
-Version: @VERSION@
-Requires: gnt purple-3
-Cflags: -I${includedir}/finch
-Libs: -L${libdir} -lfinch
--- a/finch/libgnt/gnt.pc.in Thu Nov 16 23:56:04 2017 -0500
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,14 +0,0 @@
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-libdir=@libdir@
-includedir=@includedir@
-datarootdir=@datarootdir@
-datadir=@datadir@
-sysconfdir=@sysconfdir@
-
-Name: LibGNT
-Description: Glib Ncurses Toolkit is a collection of curses-widgets.
-Version: @VERSION@
-Requires: glib-2.0
-Cflags: -I${includedir}/gnt
-Libs: -L${libdir} -lgnt
--- a/finch/libgnt/meson.build Thu Nov 16 23:56:04 2017 -0500
+++ b/finch/libgnt/meson.build Fri Nov 17 01:18:13 2017 -0500
@@ -76,11 +76,14 @@
link_with : libgnt,
dependencies : [ncurses, glib])
-configure_file(input : 'gnt.pc.in',
- output : 'gnt.pc',
- configuration : pkg_conf,
- install : true,
- install_dir : get_option('libdir') + '/pkgconfig')
+pkgconfig.generate(
+ name : 'LibGNT',
+ description : 'Glib Ncurses Toolkit is a collection of curses-widgets.',
+ version : purple_display_version,
+ filebase : 'gnt',
+ subdirs : 'gnt',
+ libraries : [libgnt],
+ requires : ['glib-2.0'])
if enable_introspection
libgnt_gir = gnome.generate_gir(libgnt,
--- a/finch/meson.build Thu Nov 16 23:56:04 2017 -0500
+++ b/finch/meson.build Fri Nov 17 01:18:13 2017 -0500
@@ -91,11 +91,14 @@
dependencies : [libpurple_dep, libgnt_dep, libfinch_dep],
install : true)
- configure_file(input : 'finch.pc.in',
- output : 'finch.pc',
- configuration : pkg_conf,
- install : true,
- install_dir : get_option('libdir') + '/pkgconfig')
+ pkgconfig.generate(
+ name : 'Finch',
+ description : 'Finch is an instant messenger application that uses libpurple for protocol support and ncurses (libgnt) for the UI.',
+ version : purple_display_version,
+ filebase : 'finch',
+ subdirs : 'finch',
+ libraries : [libfinch],
+ requires : ['gnt', 'purple-3'])
if enable_introspection
introspection_sources = libfinch_headers
--- a/libpurple/data/purple-3-uninstalled.pc.in Thu Nov 16 23:56:04 2017 -0500
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,22 +0,0 @@
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-libdir=@libdir@
-includedir=@includedir@
-datarootdir=@datarootdir@
-datadir=@datadir@
-sysconfdir=@sysconfdir@
-
-abs_srcdir=@abs_srcdir@
-abs_builddir=@abs_builddir@
-
-abs_top_srcdir=@abs_top_srcdir@
-abs_top_builddir=@abs_top_builddir@
-
-plugindir=${libdir}/purple-@PURPLE_MAJOR_VERSION@
-
-Name: libpurple
-Description: libpurple is a GLib-based instant messenger library.
-Version: @VERSION@
-Requires: glib-2.0
-Cflags: -I${abs_top_srcdir} -I${abs_top_builddir}
-Libs: ${abs_top_builddir}/libpurple/libpurple.la
--- a/libpurple/data/purple-3.pc.in Thu Nov 16 23:56:04 2017 -0500
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,16 +0,0 @@
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-libdir=@libdir@
-includedir=@includedir@/libpurple
-datarootdir=@datarootdir@
-datadir=@datadir@
-sysconfdir=@sysconfdir@
-
-plugindir=${libdir}/purple-@PURPLE_MAJOR_VERSION@
-
-Name: libpurple
-Description: libpurple is a GLib-based instant messenger library.
-Version: @VERSION@
-Requires: glib-2.0@GPLUGIN_REQ@
-Cflags: -I${includedir}
-Libs: -L${libdir} -lpurple
--- a/libpurple/meson.build Thu Nov 16 23:56:04 2017 -0500
+++ b/libpurple/meson.build Fri Nov 17 01:18:13 2017 -0500
@@ -418,11 +418,15 @@
install_headers(purple_mediaheaders,
subdir : 'libpurple/media')
-configure_file(input : 'data/purple-3.pc.in',
- output : 'purple-3.pc',
- configuration : pkg_conf,
- install : true,
- install_dir : get_option('libdir') + '/pkgconfig')
+pkgconfig.generate(
+ name : 'libpurple',
+ description : 'libpurple is a GLib-based instant messenger library.',
+ version : purple_display_version,
+ filebase : 'purple-3',
+ subdirs : 'libpurple',
+ libraries : [libpurple],
+ requires : ['glib-2.0'] + GPLUGIN_REQ,
+ variables : ['plugindir=${libdir}/purple-@0@'.format(purple_major_version)])
if INSTALL_I18N
DESKTOP_FILE = 'purple-url-handler.desktop'
--- a/meson.build Thu Nov 16 23:56:04 2017 -0500
+++ b/meson.build Fri Nov 17 01:18:13 2017 -0500
@@ -70,7 +70,6 @@
add_project_arguments('-DHAVE_CONFIG_H=1', language : 'c')
conf = configuration_data()
man_conf = configuration_data()
-pkg_conf = configuration_data()
version_conf = configuration_data()
conf.set_quoted('PACKAGE', meson.project_name())
@@ -107,17 +106,8 @@
man_conf.set('VERSION', purple_display_version)
man_conf.set('prefix', get_option('prefix'))
-# This is used for pkg-config files. This probably can be removed and the
-# builtin generator used instead once we drop the Autotools build.
-pkg_conf.set('VERSION', purple_display_version)
-pkg_conf.set('PURPLE_MAJOR_VERSION', purple_major_version)
-pkg_conf.set('prefix', get_option('prefix'))
-pkg_conf.set('exec_prefix', '${prefix}')
-pkg_conf.set('libdir', join_paths('${exec_prefix}', get_option('libdir')))
-pkg_conf.set('includedir', join_paths('${prefix}', get_option('includedir')))
-pkg_conf.set('datarootdir', join_paths('${prefix}', get_option('datadir')))
-pkg_conf.set('datadir', '${datarootdir}')
-pkg_conf.set('sysconfdir', join_paths('${prefix}', get_option('sysconfdir')))
+# Used for pkg-config files.
+pkgconfig = import('pkgconfig')
sedpath = find_program('sed')
@@ -1119,11 +1109,12 @@
if get_option('plugins')
gplugin = dependency('gplugin', version : '>= 0.0.17')
# GPLUGIN_REQ sets pkg-config requirements in the .pc file
- pkg_conf.set('GPLUGIN_REQ', ', gplugin')
+ GPLUGIN_REQ = ['gplugin']
enable_introspection = dependency('gobject-introspection-1.0',
version : '>= 1.30.0', required : false).found()
else
gplugin = []
+ GPLUGIN_REQ = []
enable_introspection = false
endif
--- a/pidgin/data/pidgin-3-uninstalled.pc.in Thu Nov 16 23:56:04 2017 -0500
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,21 +0,0 @@
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-libdir=@libdir@
-includedir=@includedir@
-datarootdir=@datarootdir@
-datadir=@datadir@
-sysconfdir=@sysconfdir@
-
-abs_srcdir=@abs_srcdir@
-abs_builddir=@abs_builddir@
-
-abs_top_srcdir=@abs_top_srcdir@
-abs_top_builddir=@abs_top_builddir@
-
-plugindir=${libdir}/pidgin
-
-Name: Pidgin
-Description: Pidgin is a GTK3-based instant messenger application.
-Version: @VERSION@
-Requires: gtk+-3.0 webkitgtk-3.0 purple-3
-Cflags: -I${abs_top_srcdir}
--- a/pidgin/data/pidgin-3.pc.in Thu Nov 16 23:56:04 2017 -0500
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,16 +0,0 @@
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-libdir=@libdir@
-includedir=@includedir@/pidgin
-datarootdir=@datarootdir@
-datadir=@datadir@
-sysconfdir=@sysconfdir@
-
-plugindir=${libdir}/pidgin
-
-Name: Pidgin
-Description: Pidgin is a GTK3-based instant messenger application.
-Version: @VERSION@
-Requires: gtk+-3.0 webkitgtk-3.0 purple-3
-Cflags: -I${includedir}
-Libs: -L${libdir} -lpidgin
--- a/pidgin/meson.build Thu Nov 16 23:56:04 2017 -0500
+++ b/pidgin/meson.build Fri Nov 17 01:18:13 2017 -0500
@@ -185,11 +185,15 @@
# pidgin_LDFLAGS += -mwindows
endif
- configure_file(input : 'data/pidgin-3.pc.in',
- output : 'pidgin-3.pc',
- configuration : pkg_conf,
- install : true,
- install_dir : get_option('libdir') + '/pkgconfig')
+ pkgconfig.generate(
+ name : 'Pidgin',
+ description : 'Pidgin is a GTK3-based instant messenger application.',
+ version : purple_display_version,
+ filebase : 'pidgin-3',
+ subdirs : 'pidgin',
+ libraries : [libpidgin],
+ requires : ['gtk+-3.0', 'webkitgtk-3.0', 'purple-3'],
+ variables : ['plugindir=${libdir}/pidgin'])
if INSTALL_I18N
DESKTOP_FILE = 'im.pidgin.Pidgin.desktop'