pidgin/pidgin
Clone
Summary
Browse
Changes
Graph
Remove the old conversations API
2 months ago, Gary Kramlich
7c0d5898fa96
Remove the old conversations API
Everything has been migrated to PurpleConversationManager and only plugins that
needt to be ported were using the signals.
Testing Done:
Ran with the turtles.
Reviewed at https://reviews.imfreedom.org/r/3130/
purple_coresources
=
[
'accounts.c'
,
'action.c'
,
'circularbuffer.c'
,
'cmds.c'
,
'connection.c'
,
'core.c'
,
'debug.c'
,
'image.c'
,
'media/backend-iface.c'
,
'media/candidate.c'
,
'media/codec.c'
,
'media/enum-types.c'
,
'media.c'
,
'mediamanager.c'
,
'network.c'
,
'notify.c'
,
'plugins.c'
,
'prefs.c'
,
'proxy.c'
,
'purpleaccount.c'
,
'purpleaccountmanager.c'
,
'purpleaccountoption.c'
,
'purpleaccountusersplit.c'
,
'purpleaddcontactrequest.c'
,
'purpleattachment.c'
,
'purpleauthorizationrequest.c'
,
'purpleauthorizationrequestnotification.c'
,
'purpleavatar.c'
,
'purplechanneljoindetails.c'
,
'purpleconnectionerrorinfo.c'
,
'purplecontact.c'
,
'purplecontactinfo.c'
,
'purplecontactmanager.c'
,
'purpleconversation.c'
,
'purpleconversationmanager.c'
,
'purpleconversationmember.c'
,
'purplecreateconversationdetails.c'
,
'purplecredentialmanager.c'
,
'purplecredentialprovider.c'
,
'purpledebugui.c'
,
'purplefiletransfer.c'
,
'purplefiletransfermanager.c'
,
'purplegdkpixbuf.c'
,
'purplegio.c'
,
'purplehistoryadapter.c'
,
'purplehistorymanager.c'
,
'purpleidlemanager.c'
,
'purplekeyvaluepair.c'
,
'purplemarkup.c'
,
'purplemenu.c'
,
'purplemessage.c'
,
'purplenoopcredentialprovider.c'
,
'purplenotification.c'
,
'purplenotificationmanager.c'
,
'purpleoptions.c'
,
'purplepath.c'
,
'purpleperson.c'
,
'purpleplugininfo.c'
,
'purplepresence.c'
,
'purplepresencemanager.c'
,
'purpleprotocol.c'
,
'purpleprotocolactions.c'
,
'purpleprotocolclient.c'
,
'purpleprotocolcontacts.c'
,
'purpleprotocolconversation.c'
,
'purpleprotocolfiletransfer.c'
,
'purpleprotocolmanager.c'
,
'purpleprotocolmedia.c'
,
'purpleprotocolroster.c'
,
'purpleprotocolserver.c'
,
'purpleprotocolwhiteboard.c'
,
'purpleproxyinfo.c'
,
'purplesavedpresence.c'
,
'purplesqlite3.c'
,
'purplesqlitehistoryadapter.c'
,
'purpletags.c'
,
'purpleui.c'
,
'purpleversion.c'
,
'purplewhiteboard.c'
,
'purplewhiteboardmanager.c'
,
'purplewhiteboarduiops.c'
,
'request.c'
,
'request/purplerequestfield.c'
,
'request/purplerequestfieldaccount.c'
,
'request/purplerequestfieldbool.c'
,
'request/purplerequestfieldchoice.c'
,
'request/purplerequestfieldimage.c'
,
'request/purplerequestfieldint.c'
,
'request/purplerequestfieldlabel.c'
,
'request/purplerequestfieldlist.c'
,
'request/purplerequestfieldstring.c'
,
'request/purplerequestgroup.c'
,
'request/purplerequestpage.c'
,
'signals.c'
,
'util.c'
,
'xmlnode.c'
]
purple_coreheaders
=
[
'accounts.h'
,
'action.h'
,
'circularbuffer.h'
,
'cmds.h'
,
'connection.h'
,
'core.h'
,
'debug.h'
,
'image.h'
,
'media.h'
,
'media-gst.h'
,
'mediamanager.h'
,
'network.h'
,
'notify.h'
,
'plugins.h'
,
'prefs.h'
,
'proxy.h'
,
'purpleaccount.h'
,
'purpleaccountmanager.h'
,
'purpleaccountoption.h'
,
'purpleaccountusersplit.h'
,
'purpleaddcontactrequest.h'
,
'purpleauthorizationrequest.h'
,
'purpleauthorizationrequestnotification.h'
,
'purpleavatar.h'
,
'purplechanneljoindetails.h'
,
'purpleconnectionerrorinfo.h'
,
'purplecontact.h'
,
'purplecontactinfo.h'
,
'purplecontactmanager.h'
,
'purpleconversation.h'
,
'purpleconversationmanager.h'
,
'purpleconversationmember.h'
,
'purplecreateconversationdetails.h'
,
'purplecredentialmanager.h'
,
'purplecredentialprovider.h'
,
'purpledebugui.h'
,
'purplefiletransfer.h'
,
'purplefiletransfermanager.h'
,
'purplegdkpixbuf.h'
,
'purplegio.h'
,
'purplehistoryadapter.h'
,
'purplehistorymanager.h'
,
'purpleidlemanager.h'
,
'purpleattachment.h'
,
'purplekeyvaluepair.h'
,
'purplemarkup.h'
,
'purplemenu.h'
,
'purplemessage.h'
,
'purplenoopcredentialprovider.h'
,
'purplenotification.h'
,
'purplenotificationmanager.h'
,
'purpleoptions.h'
,
'purplepath.h'
,
'purpleperson.h'
,
'purpleplugininfo.h'
,
'purplepresence.h'
,
'purplepresencemanager.h'
,
'purpleprotocol.h'
,
'purpleprotocolactions.h'
,
'purpleprotocolclient.h'
,
'purpleprotocolcontacts.h'
,
'purpleprotocolconversation.h'
,
'purpleprotocolfiletransfer.h'
,
'purpleprotocolmedia.h'
,
'purpleprotocolmanager.h'
,
'purpleprotocolroster.h'
,
'purpleprotocolserver.h'
,
'purpleprotocolwhiteboard.h'
,
'purpleproxyinfo.h'
,
'purplesavedpresence.h'
,
'purplesqlite3.h'
,
'purplesqlitehistoryadapter.h'
,
'purpletags.h'
,
'purpletyping.h'
,
'purpleui.h'
,
'purpleversion.h'
,
'purplewhiteboard.h'
,
'purplewhiteboardmanager.h'
,
'purplewhiteboardops.h'
,
'purplewhiteboarduiops.h'
,
'request.h'
,
'signals.h'
,
'util.h'
,
'xmlnode.h'
,
]
purple_private_headers
=
[
'purplefiletransfermanagerprivate.h'
,
'purpleidlemanagerprivate.h'
,
'purplepresencemanagerprivate.h'
,
'purpleprivate.h'
,
]
purple_request_headers
=
[
'request/purplerequestfield.h'
,
'request/purplerequestfieldaccount.h'
,
'request/purplerequestfieldbool.h'
,
'request/purplerequestfieldchoice.h'
,
'request/purplerequestfieldimage.h'
,
'request/purplerequestfieldint.h'
,
'request/purplerequestfieldlabel.h'
,
'request/purplerequestfieldlist.h'
,
'request/purplerequestfieldstring.h'
,
'request/purplerequestgroup.h'
,
'request/purplerequestpage.h'
,
]
purple_builtsources
=
[]
purple_builtheaders
=
[]
purple_generated_sources
=
[]
# An environment for unit tests.
testenv
=
environment
()
purple_resource
=
gnome
.
compile_resources
(
'purpleresources'
,
'resources/libpurple.gresource.xml'
,
source_dir
:
'resources'
,
c_name
:
'purple'
)
purple_builtsources
+=
purple_resource
purple_filebase
=
f
'purple-@purple_major_version@'
purple_include_base
=
purple_filebase
/
'libpurple'
if
IS_WIN32
purple_coresources
+=
[
'win32/libc_interface.c'
,
'win32/win32dep.c'
]
purple_coreheaders
+=
[
'win32/win32dep.h'
,
]
libpurplerc
=
configure_file
(
input
:
'win32/libpurplerc.rc.in'
,
output
:
'libpurplerc.rc'
,
configuration
:
version_conf
)
purple_coresources
+=
windows
.
compile_resources
(
libpurplerc
)
endif
purple_mediaheaders
=
[
'media/backend-iface.h'
,
'media/candidate.h'
,
'media/codec.h'
,
'media/enum-types.h'
]
purple_enumheaders
=
[
'connection.h'
,
'debug.h'
,
'notify.h'
,
'plugins.h'
,
'purpleaccount.h'
,
'purpleconnectionerrorinfo.h'
,
'purplecontactinfo.h'
,
'purpleconversation.h'
,
'purplefiletransfer.h'
,
'purplemessage.h'
,
'purplenotification.h'
,
'purpleplugininfo.h'
,
'purplepresence.h'
,
'purpleprotocol.h'
,
'purpleproxyinfo.h'
,
'purpletyping.h'
,
'xmlnode.h'
]
enums
=
gnome
.
mkenums_simple
(
'purpleenums'
,
sources
:
purple_enumheaders
,
decorator
:
'_PURPLE_EXTERN'
,
header_prefix
:
'#include "purpleversion.h"'
,
install_header
:
true
,
install_dir
:
get_option
(
'includedir'
)
/
purple_include_base
)
enums_c
=
enums
[
0
]
enums_h
=
enums
[
1
]
PURPLE_H_INCLUDES
=
[]
foreach
header
:
purple_coreheaders
+
purple_mediaheaders
+
purple_request_headers
+
[
'purpleversionconsts.h'
,
'purpleenums.h'
]
PURPLE_H_INCLUDES
+=
f
'#include <libpurple/@header@>'
endforeach
purple_h_conf
=
configuration_data
()
purple_h_conf
.
set
(
'PURPLE_H_INCLUDES'
,
'\n'
.
join
(
PURPLE_H_INCLUDES
))
purple_h
=
configure_file
(
input
:
'purple.h.in'
,
output
:
'purple.h'
,
configuration
:
purple_h_conf
,
install
:
true
,
install_dir
:
get_option
(
'includedir'
)
/
purple_filebase
)
version_h
=
configure_file
(
input
:
'purpleversionconsts.h.in'
,
output
:
'purpleversionconsts.h'
,
configuration
:
version_conf
,
install
:
true
,
install_dir
:
get_option
(
'includedir'
)
/
purple_include_base
)
purple_builtsources
+=
enums_c
purple_builtheaders
+=
[
purple_h
,
version_h
,
enums_h
,
]
subdir
(
'data'
)
libpurple_inc
=
include_directories
(
'.'
)
libpurple
=
library
(
'purple3'
,
purple_coresources
+
purple_builtsources
+
purple_builtheaders
+
purple_schemas
+
purple_private_headers
+
[
'glibcompat.h'
],
c_args
:
[
'-DPURPLE_COMPILATION'
,
'-DG_LOG_USE_STRUCTURED'
,
'-DG_LOG_DOMAIN="Purple"'
],
gnu_symbol_visibility
:
'hidden'
,
include_directories
:
[
toplevel_inc
,
libpurple_inc
],
install
:
true
,
version
:
PURPLE_LIB_VERSION
,
dependencies
:
# static_link_libs
[
dnsapi
,
ws2_32
,
glib
,
gio
,
gplugin_dep
,
libsoup
,
libxml
,
gdk_pixbuf
,
gstreamer
,
gstreamer_app
,
json
,
sqlite3
,
math
,
birb_dep
])
install_headers
(
purple_coreheaders
,
subdir
:
purple_include_base
)
install_headers
(
purple_mediaheaders
,
subdir
:
purple_include_base
/
'media'
)
install_headers
(
purple_request_headers
,
subdir
:
purple_include_base
/
'request'
)
pkgconfig
.
generate
(
libpurple
,
name
:
'libpurple3'
,
description
:
'libpurple3 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
:
[
glib
,
gdk_pixbuf
,
gplugin_dep
],
variables
:
[
f
'plugindir=${libdir}/@purple_filebase@'
,
])
if
enable_introspection
introspection_sources
=
(
purple_coresources
+
purple_coreheaders
+
purple_builtheaders
+
purple_mediaheaders
+
purple_request_headers
)
libpurple_gir
=
gnome
.
generate_gir
(
libpurple
,
sources
:
introspection_sources
,
includes
:
[
'Birb-1.0'
,
'GdkPixbuf-2.0'
,
'GLib-2.0'
,
'Gio-2.0'
,
'GObject-2.0'
,
'Gst-1.0'
,
'GPlugin-1.0'
],
header
:
'purple.h'
,
namespace
:
'Purple'
,
symbol_prefix
:
'purple'
,
identifier_prefix
:
'Purple'
,
export_packages
:
purple_filebase
,
nsversion
:
f
'@purple_major_version@.@purple_minor_version@'
,
dependencies
:
[
birb_dep
,
gplugin_dep
],
install
:
true
,
extra_args
:
[
'-DPURPLE_COMPILATION'
,
'--quiet'
])
purple_generated_sources
+=
libpurple_gir
endif
libpurple_dep
=
declare_dependency
(
# Ensure purple headers built before any dependencies:
sources
:
[
purple_builtheaders
]
+
purple_generated_sources
,
include_directories
:
[
toplevel_inc
,
libpurple_inc
],
link_with
:
libpurple
,
dependencies
:
[
birb_dep
,
gdk_pixbuf
,
gstreamer
,
gplugin_dep
,
glib
,
gio
])
meson
.
override_dependency
(
purple_filebase
,
libpurple_dep
)
subdir
(
'tests'
)
subdir
(
'plugins'
)
test
(
'purple_license_headers'
,
check_license_header
,
verbose
:
true
,
args
:
[
meson
.
current_source_dir
(),
'check_license_header_template.h'
,
]
+
[
'glibcompat.h'
]
+
purple_coresources
+
purple_coreheaders
+
purple_mediaheaders
+
purple_private_headers
+
purple_request_headers
)