'gtkblist-theme-loader.c',
'gtkcellrendererexpander.c',
'gtkicon-theme-loader.c',
'gtkstatus-icon-theme.c',
'pidginaccountchooser.c',
'pidgincontactcompletion.c',
'pidgindebugplugininfo.c',
'gtkblist-theme-loader.h',
'gtkcellrendererexpander.h',
'gtkicon-theme-loader.h',
'gtkstatus-icon-theme.h',
'pidginaccountchooser.h',
'pidgincontactcompletion.h',
'pidgindebugplugininfo.h',
pidgin_resource = gnome.compile_resources('pidginresources',
'resources/pidgin.gresource.xml',
source_dir : 'resources',
libpidgin_SOURCES += pidgin_resource
# Files that looks like obsolete (were used in Pidgin2):
# win32/gtkdocklet-win32.c
pidgin_exe_rc = configure_file(
input : 'win32/pidgin_exe_rc.rc.in',
output : 'pidgin_exe_rc.rc',
configuration : version_conf)
windows.compile_resources(pidgin_exe_rc,
include_directories : include_directories('win32')
pidgin_dll_rc = configure_file(
input : 'win32/pidgin_dll_rc.rc.in',
output : 'pidgin_dll_rc.rc',
configuration : version_conf)
libpidgin_SOURCES += windows.compile_resources(pidgin_dll_rc,
include_directories : include_directories('win32')
install_headers(libpidgin_headers, subdir : 'pidgin-3')
_libpidgin_dependencies = [
_libpidgin_dependencies += x11
libpidgin_inc = include_directories('.')
libpidgin = shared_library('pidgin3',
include_directories : [toplevel_inc],
version : PURPLE_LIB_VERSION,
dependencies : _libpidgin_dependencies,
libpidgin_dep = declare_dependency(
include_directories : [toplevel_inc, libpidgin_inc],
dependencies : [gtk, glib, math])
pidgin = executable('pidgin3',
include_directories : toplevel_inc,
dependencies : IS_WIN32 ? [] : [libpurple_dep, libpidgin_dep],
# libpidgin_la_LIBADD += -lwinmm
# pidgin_LDFLAGS += -mwindows
description : 'Pidgin is a GTK3-based instant messenger application.',
version : meson.project_version(),
requires : ['gtk+-3.0', 'purple-3', 'talkatu'],
variables : ['plugindir=${libdir}/pidgin-@0@'.format(purple_major_version)])
DESKTOP_FILE = 'im.pidgin.Pidgin3.desktop'
desktop_file_in = configure_file(
input : 'data/' + DESKTOP_FILE + '.in.in',
output : DESKTOP_FILE + '.in',
desktop_file = i18n.merge_file(
po_dir : meson.source_root() + '/po',
install_dir : get_option('datadir') + '/applications')
appdata = i18n.merge_file(
input : 'data/im.pidgin.Pidgin3.appdata.xml.in',
output : 'im.pidgin.Pidgin3.appdata.xml',
po_dir : meson.source_root() + '/po',
install_dir : get_option('datadir') + '/metainfo')
introspection_sources = libpidgin_headers
gnome.generate_gir(libpidgin,
sources : introspection_sources,
includes : ['GObject-2.0', 'Gtk-3.0', libpurple_gir[0], talkatu_gir, gplugin_gir],
symbol_prefix : 'pidgin',
identifier_prefix : 'Pidgin',
export_packages : 'pidgin-@0@'.format(purple_major_version),
nsversion : '@0@.@1@'.format(purple_major_version,
gplugin_include_directories,
talkatu_include_directories,
extra_args : ['--quiet'])