libpurple/meson.build

Fri, 03 Dec 2021 01:56:48 -0600

author
Gary Kramlich <grim@reaperworld.com>
date
Fri, 03 Dec 2021 01:56:48 -0600
changeset 41181
e859c41d8996
parent 41176
7d51cf02f98a
child 41237
5098e0dd3a09
permissions
-rw-r--r--

Create the PurpleAccountManager API

This replaces most of the purple_accounts_ API, but not quite everything. The
functions that have been replaced have been marked as deprecated and libpurple
has been updated to use the new API.

Testing Done:
* Connected an XMPP account
* Verified chat and ims worked
* Verified that the saved statuses window didn't crash
* Ran the new unit tests.

Reviewed at https://reviews.imfreedom.org/r/1137/

38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
1 purple_coresources = [
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
2 'account.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
3 'accounts.c',
39487
f0e629b4c500 Address a number of issues with ownership and leaking
Gary Kramlich <grim@reaperworld.com>
parents: 39479
diff changeset
4 'action.c',
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
5 'blistnode.c',
38467
cdc07553316b Update libpurple files in meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38463
diff changeset
6 'buddy.c',
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
7 'buddylist.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
8 'buddyicon.c',
38467
cdc07553316b Update libpurple files in meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38463
diff changeset
9 'chat.c',
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
10 'circularbuffer.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
11 'cmds.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
12 'connection.c',
38467
cdc07553316b Update libpurple files in meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38463
diff changeset
13 'contact.c',
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
14 'conversations.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
15 'core.c',
38467
cdc07553316b Update libpurple files in meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38463
diff changeset
16 'countingnode.c',
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
17 'debug.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
18 'eventloop.c',
38467
cdc07553316b Update libpurple files in meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38463
diff changeset
19 'group.c',
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
20 'idle.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
21 'image.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
22 'image-store.c',
40523
9bcf96663cb9 Make gstreamer-1.0 a required dependency
Gary Kramlich <grim@reaperworld.com>
parents: 40521
diff changeset
23 'media/backend-fs2.c',
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
24 'media/backend-iface.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
25 'media/candidate.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
26 'media/codec.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
27 'media/enum-types.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
28 'media.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
29 'mediamanager.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
30 'memorypool.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
31 'nat-pmp.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
32 'network.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
33 'notify.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
34 'plugins.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
35 'pluginpref.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
36 'prefs.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
37 'proxy.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
38 'protocols.c',
38467
cdc07553316b Update libpurple files in meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38463
diff changeset
39 'purple-gio.c',
41181
e859c41d8996 Create the PurpleAccountManager API
Gary Kramlich <grim@reaperworld.com>
parents: 41176
diff changeset
40 'purpleaccountmanager.c',
39970
cc7d4ff5a205 rename accountopt.[ch] to purpleaccountoption.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 39968
diff changeset
41 'purpleaccountoption.c',
40537
fbf29150c28c Move PurpleAccountPresence and PurpleBuddyPresence to their own files
Gary Kramlich <grim@reaperworld.com>
parents: 40536
diff changeset
42 'purpleaccountpresence.c',
39968
71622ee1354e move PurpleAccountUserSplit to their own file
Gary Kramlich <grim@reaperworld.com>
parents: 39951
diff changeset
43 'purpleaccountusersplit.c',
40548
42556c49e1e2 Add PurpleCredentialProvider as the first piece to replace the existing keyring api.
Gary Kramlich <grim@reaperworld.com>
parents: 40543
diff changeset
44 'purpleattachment.c',
40537
fbf29150c28c Move PurpleAccountPresence and PurpleBuddyPresence to their own files
Gary Kramlich <grim@reaperworld.com>
parents: 40536
diff changeset
45 'purplebuddypresence.c',
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40786
diff changeset
46 'purplechatconversation.c',
40517
5211982886af Move PurpleChatUser to it's own file and fix a few issues with the docs and translations
Gary Kramlich <grim@reaperworld.com>
parents: 40509
diff changeset
47 'purplechatuser.c',
40853
d3518ff99fa7 rename conversation.[ch] to purpleconversation.[ch] and split PurpleConversationUiOps out to its own file to avoid circular include issues.
Gary Kramlich <grim@reaperworld.com>
parents: 40838
diff changeset
48 'purpleconversation.c',
40948
2c312f084d84 Create a manager for conversations.
Gary Kramlich <grim@reaperworld.com>
parents: 40870
diff changeset
49 'purpleconversationmanager.c',
40853
d3518ff99fa7 rename conversation.[ch] to purpleconversation.[ch] and split PurpleConversationUiOps out to its own file to avoid circular include issues.
Gary Kramlich <grim@reaperworld.com>
parents: 40838
diff changeset
50 'purpleconversationuiops.c',
41174
909c3f17ef15 Split PurpleCoreUiOps out to its own file.
Gary Kramlich <grim@reaperworld.com>
parents: 41170
diff changeset
51 'purplecoreuiops.c',
40583
28964322556c Add the new PurpleCredentialManager API
Gary Kramlich <grim@reaperworld.com>
parents: 40579
diff changeset
52 'purplecredentialmanager.c',
40548
42556c49e1e2 Add PurpleCredentialProvider as the first piece to replace the existing keyring api.
Gary Kramlich <grim@reaperworld.com>
parents: 40543
diff changeset
53 'purplecredentialprovider.c',
40950
c3fc77a3c015 Separate PurpleDebugUi out to its own file
Gary Kramlich <grim@reaperworld.com>
parents: 40948
diff changeset
54 'purpledebugui.c',
41090
741992355ead GSoC History API including sqlite history adapter
James Culver <rewtguy@gmail.com>
parents: 41057
diff changeset
55 'purplehistoryadapter.c',
741992355ead GSoC History API including sqlite history adapter
James Culver <rewtguy@gmail.com>
parents: 41057
diff changeset
56 'purplehistorymanager.c',
41136
5397330041d6 Replace PurpleIdleUiOps with the PurpleIdleUi Interface
Gary Kramlich <grim@reaperworld.com>
parents: 41112
diff changeset
57 'purpleidleui.c',
40506
cb26b9c6d4d0 Move PurpleIMConversation to its own file
Gary Kramlich <grim@reaperworld.com>
parents: 40474
diff changeset
58 'purpleimconversation.c',
40350
72271baf92bc Split PurpleKeyValuePair out to it's own file and try to do some cleanup in the files that need to include it.
Gary Kramlich <grim@reaperworld.com>
parents: 40348
diff changeset
59 'purplekeyvaluepair.c',
40564
2c5b4dc2e86a Pull the purple_markup_* api out of util.[ch] to purplemarkup.[ch]. No code was changed just moved it from one file to the other.
Gary Kramlich <grim@reaperworld.com>
parents: 40548
diff changeset
60 'purplemarkup.c',
40696
cf58ec89b1e4 Rename message.[ch] to purplemessage.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 40683
diff changeset
61 'purplemessage.c',
40743
7aa6153abf4d Create a no operation credential provider and fix a number of other issues
Gary Kramlich <grim@reaperworld.com>
parents: 40735
diff changeset
62 'purplenoopcredentialprovider.c',
40727
9389ba16cf40 Rename options.[ch] to purpleoptions.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 40708
diff changeset
63 'purpleoptions.c',
40963
f2abd04191b7 Split PurplePluginInfo out to its own file
Gary Kramlich <grim@reaperworld.com>
parents: 40950
diff changeset
64 'purpleplugininfo.c',
40575
b82c365e04e8 Rename presence.[ch] to purplepresence.[ch], fix some docs, and other tweaks.
Gary Kramlich <grim@reaperworld.com>
parents: 40564
diff changeset
65 'purplepresence.c',
41155
922c9e70900c Rename protocol.[ch] to purpleprotocol.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 41142
diff changeset
66 'purpleprotocol.c',
40697
81f81f5d2f39 Split PurpleProtocolChat to its own file and clean up the API.
Gary Kramlich <grim@reaperworld.com>
parents: 40696
diff changeset
67 'purpleprotocolchat.c',
40634
4d3018b00ad4 Fix the PurpleProtocolClient interface and split it out to its own file.
Gary Kramlich <grim@reaperworld.com>
parents: 40595
diff changeset
68 'purpleprotocolclient.c',
40339
54813fd13c13 Pull PurpleProtocolFactory out to it's own file.
Gary Kramlich <grim@reaperworld.com>
parents: 40312
diff changeset
69 'purpleprotocolfactory.c',
40507
77d7bc9e5151 Make PurpleProtocolIM a proper interface
Gary Kramlich <grim@reaperworld.com>
parents: 40506
diff changeset
70 'purpleprotocolim.c',
40735
cc0679f47fd9 Create a new PurpleProtocolManager
Gary Kramlich <grim@reaperworld.com>
parents: 40727
diff changeset
71 'purpleprotocolmanager.c',
40525
96fc115d6c36 Move PurpleProtocolMediaInterface to its own file.
Gary Kramlich <grim@reaperworld.com>
parents: 40523
diff changeset
72 'purpleprotocolmedia.c',
40521
c4269b37a13a Make PurpleProtocolPrivacy a proper GInterface and move it to it's own file
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
73 'purpleprotocolprivacy.c',
41028
943b2cb45314 Separate PurpleProtocolRoomlist into its own file and modernize it.
Gary Kramlich <grim@reaperworld.com>
parents: 41007
diff changeset
74 'purpleprotocolroomlist.c',
40708
53a26c29d26c Move the PurpleProtocolServer interface to its own file.
Gary Kramlich <grim@reaperworld.com>
parents: 40697
diff changeset
75 'purpleprotocolserver.c',
41090
741992355ead GSoC History API including sqlite history adapter
James Culver <rewtguy@gmail.com>
parents: 41057
diff changeset
76 'purplesqlitehistoryadapter.c',
40312
956745ff3ee8 Replace the ui info GHashTable with a gobject.
Gary Kramlich <grim@reaperworld.com>
parents: 40306
diff changeset
77 'purpleuiinfo.c',
40595
d7e28f8a0994 split up whiteboard.[ch] to separate files
Gary Kramlich <grim@reaperworld.com>
parents: 40583
diff changeset
78 'purplewhiteboard.c',
41040
4be2eda9548a Create PurpleWhiteboardManager for managing whiteboards
Gary Kramlich <grim@reaperworld.com>
parents: 41034
diff changeset
79 'purplewhiteboardmanager.c',
40595
d7e28f8a0994 split up whiteboard.[ch] to separate files
Gary Kramlich <grim@reaperworld.com>
parents: 40583
diff changeset
80 'purplewhiteboarduiops.c',
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
81 'queuedoutputstream.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
82 'request.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
83 'request-datasheet.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
84 'roomlist.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
85 'savedstatuses.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
86 'server.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
87 'signals.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
88 'status.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
89 'stun.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
90 'trie.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
91 'upnp.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
92 'util.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
93 'version.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
94 'xfer.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
95 'xmlnode.c'
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
96 ]
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
97
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
98 purple_coreheaders = [
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
99 'account.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
100 'accounts.h',
39487
f0e629b4c500 Address a number of issues with ownership and leaking
Gary Kramlich <grim@reaperworld.com>
parents: 39479
diff changeset
101 'action.h',
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
102 'blistnode.h',
38467
cdc07553316b Update libpurple files in meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38463
diff changeset
103 'buddy.h',
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
104 'buddylist.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
105 'buddyicon.h',
38467
cdc07553316b Update libpurple files in meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38463
diff changeset
106 'chat.h',
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
107 'circularbuffer.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
108 'cmds.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
109 'connection.h',
38467
cdc07553316b Update libpurple files in meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38463
diff changeset
110 'contact.h',
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
111 'conversations.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
112 'core.h',
38467
cdc07553316b Update libpurple files in meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38463
diff changeset
113 'countingnode.h',
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
114 'debug.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
115 'eventloop.h',
38467
cdc07553316b Update libpurple files in meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38463
diff changeset
116 'group.h',
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
117 'idle.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
118 'image.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
119 'image-store.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
120 'media.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
121 'mediamanager.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
122 'memorypool.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
123 'nat-pmp.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
124 'network.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
125 'notify.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
126 'plugins.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
127 'pluginpref.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
128 'prefs.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
129 'proxy.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
130 'protocols.h',
38467
cdc07553316b Update libpurple files in meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38463
diff changeset
131 'purple-gio.h',
41181
e859c41d8996 Create the PurpleAccountManager API
Gary Kramlich <grim@reaperworld.com>
parents: 41176
diff changeset
132 'purpleaccountmanager.h',
39970
cc7d4ff5a205 rename accountopt.[ch] to purpleaccountoption.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 39968
diff changeset
133 'purpleaccountoption.h',
40537
fbf29150c28c Move PurpleAccountPresence and PurpleBuddyPresence to their own files
Gary Kramlich <grim@reaperworld.com>
parents: 40536
diff changeset
134 'purpleaccountpresence.h',
39968
71622ee1354e move PurpleAccountUserSplit to their own file
Gary Kramlich <grim@reaperworld.com>
parents: 39951
diff changeset
135 'purpleaccountusersplit.h',
40537
fbf29150c28c Move PurpleAccountPresence and PurpleBuddyPresence to their own files
Gary Kramlich <grim@reaperworld.com>
parents: 40536
diff changeset
136 'purplebuddypresence.h',
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40786
diff changeset
137 'purplechatconversation.h',
40517
5211982886af Move PurpleChatUser to it's own file and fix a few issues with the docs and translations
Gary Kramlich <grim@reaperworld.com>
parents: 40509
diff changeset
138 'purplechatuser.h',
40853
d3518ff99fa7 rename conversation.[ch] to purpleconversation.[ch] and split PurpleConversationUiOps out to its own file to avoid circular include issues.
Gary Kramlich <grim@reaperworld.com>
parents: 40838
diff changeset
139 'purpleconversation.h',
40948
2c312f084d84 Create a manager for conversations.
Gary Kramlich <grim@reaperworld.com>
parents: 40870
diff changeset
140 'purpleconversationmanager.h',
40853
d3518ff99fa7 rename conversation.[ch] to purpleconversation.[ch] and split PurpleConversationUiOps out to its own file to avoid circular include issues.
Gary Kramlich <grim@reaperworld.com>
parents: 40838
diff changeset
141 'purpleconversationuiops.h',
41174
909c3f17ef15 Split PurpleCoreUiOps out to its own file.
Gary Kramlich <grim@reaperworld.com>
parents: 41170
diff changeset
142 'purplecoreuiops.h',
40583
28964322556c Add the new PurpleCredentialManager API
Gary Kramlich <grim@reaperworld.com>
parents: 40579
diff changeset
143 'purplecredentialmanager.h',
40548
42556c49e1e2 Add PurpleCredentialProvider as the first piece to replace the existing keyring api.
Gary Kramlich <grim@reaperworld.com>
parents: 40543
diff changeset
144 'purplecredentialprovider.h',
40950
c3fc77a3c015 Separate PurpleDebugUi out to its own file
Gary Kramlich <grim@reaperworld.com>
parents: 40948
diff changeset
145 'purpledebugui.h',
41090
741992355ead GSoC History API including sqlite history adapter
James Culver <rewtguy@gmail.com>
parents: 41057
diff changeset
146 'purplehistoryadapter.h',
741992355ead GSoC History API including sqlite history adapter
James Culver <rewtguy@gmail.com>
parents: 41057
diff changeset
147 'purplehistorymanager.h',
41136
5397330041d6 Replace PurpleIdleUiOps with the PurpleIdleUi Interface
Gary Kramlich <grim@reaperworld.com>
parents: 41112
diff changeset
148 'purpleidleui.h',
40506
cb26b9c6d4d0 Move PurpleIMConversation to its own file
Gary Kramlich <grim@reaperworld.com>
parents: 40474
diff changeset
149 'purpleimconversation.h',
40526
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40525
diff changeset
150 'purpleattachment.h',
40350
72271baf92bc Split PurpleKeyValuePair out to it's own file and try to do some cleanup in the files that need to include it.
Gary Kramlich <grim@reaperworld.com>
parents: 40348
diff changeset
151 'purplekeyvaluepair.h',
40564
2c5b4dc2e86a Pull the purple_markup_* api out of util.[ch] to purplemarkup.[ch]. No code was changed just moved it from one file to the other.
Gary Kramlich <grim@reaperworld.com>
parents: 40548
diff changeset
152 'purplemarkup.h',
40696
cf58ec89b1e4 Rename message.[ch] to purplemessage.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 40683
diff changeset
153 'purplemessage.h',
40743
7aa6153abf4d Create a no operation credential provider and fix a number of other issues
Gary Kramlich <grim@reaperworld.com>
parents: 40735
diff changeset
154 'purplenoopcredentialprovider.h',
40727
9389ba16cf40 Rename options.[ch] to purpleoptions.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 40708
diff changeset
155 'purpleoptions.h',
40963
f2abd04191b7 Split PurplePluginInfo out to its own file
Gary Kramlich <grim@reaperworld.com>
parents: 40950
diff changeset
156 'purpleplugininfo.h',
40575
b82c365e04e8 Rename presence.[ch] to purplepresence.[ch], fix some docs, and other tweaks.
Gary Kramlich <grim@reaperworld.com>
parents: 40564
diff changeset
157 'purplepresence.h',
41155
922c9e70900c Rename protocol.[ch] to purpleprotocol.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 41142
diff changeset
158 'purpleprotocol.h',
40697
81f81f5d2f39 Split PurpleProtocolChat to its own file and clean up the API.
Gary Kramlich <grim@reaperworld.com>
parents: 40696
diff changeset
159 'purpleprotocolchat.h',
40634
4d3018b00ad4 Fix the PurpleProtocolClient interface and split it out to its own file.
Gary Kramlich <grim@reaperworld.com>
parents: 40595
diff changeset
160 'purpleprotocolclient.h',
40339
54813fd13c13 Pull PurpleProtocolFactory out to it's own file.
Gary Kramlich <grim@reaperworld.com>
parents: 40312
diff changeset
161 'purpleprotocolfactory.h',
40507
77d7bc9e5151 Make PurpleProtocolIM a proper interface
Gary Kramlich <grim@reaperworld.com>
parents: 40506
diff changeset
162 'purpleprotocolim.h',
40525
96fc115d6c36 Move PurpleProtocolMediaInterface to its own file.
Gary Kramlich <grim@reaperworld.com>
parents: 40523
diff changeset
163 'purpleprotocolmedia.h',
40735
cc0679f47fd9 Create a new PurpleProtocolManager
Gary Kramlich <grim@reaperworld.com>
parents: 40727
diff changeset
164 'purpleprotocolmanager.h',
40521
c4269b37a13a Make PurpleProtocolPrivacy a proper GInterface and move it to it's own file
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
165 'purpleprotocolprivacy.h',
41028
943b2cb45314 Separate PurpleProtocolRoomlist into its own file and modernize it.
Gary Kramlich <grim@reaperworld.com>
parents: 41007
diff changeset
166 'purpleprotocolroomlist.h',
40708
53a26c29d26c Move the PurpleProtocolServer interface to its own file.
Gary Kramlich <grim@reaperworld.com>
parents: 40697
diff changeset
167 'purpleprotocolserver.h',
41090
741992355ead GSoC History API including sqlite history adapter
James Culver <rewtguy@gmail.com>
parents: 41057
diff changeset
168 'purplesqlitehistoryadapter.h',
40312
956745ff3ee8 Replace the ui info GHashTable with a gobject.
Gary Kramlich <grim@reaperworld.com>
parents: 40306
diff changeset
169 'purpleuiinfo.h',
40595
d7e28f8a0994 split up whiteboard.[ch] to separate files
Gary Kramlich <grim@reaperworld.com>
parents: 40583
diff changeset
170 'purplewhiteboard.h',
41040
4be2eda9548a Create PurpleWhiteboardManager for managing whiteboards
Gary Kramlich <grim@reaperworld.com>
parents: 41034
diff changeset
171 'purplewhiteboardmanager.h',
40595
d7e28f8a0994 split up whiteboard.[ch] to separate files
Gary Kramlich <grim@reaperworld.com>
parents: 40583
diff changeset
172 'purplewhiteboardops.h',
d7e28f8a0994 split up whiteboard.[ch] to separate files
Gary Kramlich <grim@reaperworld.com>
parents: 40583
diff changeset
173 'purplewhiteboarduiops.h',
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
174 'queuedoutputstream.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
175 'request.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
176 'request-datasheet.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
177 'roomlist.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
178 'savedstatuses.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
179 'server.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
180 'signals.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
181 'status.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
182 'stun.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
183 'tests.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
184 'trie.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
185 'upnp.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
186 'util.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
187 'xfer.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
188 'xmlnode.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
189 ]
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
190
41057
0a4177bbb1c4 Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents: 41056
diff changeset
191 purple_generated_sources = []
0a4177bbb1c4 Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents: 41056
diff changeset
192
41090
741992355ead GSoC History API including sqlite history adapter
James Culver <rewtguy@gmail.com>
parents: 41057
diff changeset
193 purple_resource = gnome.compile_resources('purpleresources',
741992355ead GSoC History API including sqlite history adapter
James Culver <rewtguy@gmail.com>
parents: 41057
diff changeset
194 'resources/libpurple.gresource.xml',
741992355ead GSoC History API including sqlite history adapter
James Culver <rewtguy@gmail.com>
parents: 41057
diff changeset
195 source_dir : 'resources',
741992355ead GSoC History API including sqlite history adapter
James Culver <rewtguy@gmail.com>
parents: 41057
diff changeset
196 c_name : 'purple')
741992355ead GSoC History API including sqlite history adapter
James Culver <rewtguy@gmail.com>
parents: 41057
diff changeset
197 purple_coresources += purple_resource
741992355ead GSoC History API including sqlite history adapter
James Culver <rewtguy@gmail.com>
parents: 41057
diff changeset
198
39399
e6da6288d084 libpurple: Pull common file naming out into variable in meson file
Mike Ruprecht <cmaiku@gmail.com>
parents: 39354
diff changeset
199 purple_filebase = 'purple-@0@'.format(purple_major_version)
40536
c0ea70247280 Switch join_paths and + to /.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40526
diff changeset
200 purple_include_base = purple_filebase / 'libpurple'
39399
e6da6288d084 libpurple: Pull common file naming out into variable in meson file
Mike Ruprecht <cmaiku@gmail.com>
parents: 39354
diff changeset
201
38529
6b1f391a52ba Remove redundant option variables.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38518
diff changeset
202 if enable_vv
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
203 purple_coreheaders += 'media-gst.h'
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
204 endif
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
205
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
206 if IS_WIN32
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
207 purple_coresources += [
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
208 'win32/libc_interface.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
209 'win32/win32dep.c'
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
210 ]
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
211
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
212 purple_coreheaders += [
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
213 'win32/win32dep.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
214 ]
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
215
38510
863a17674290 Fix creation of Windows resource files.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38506
diff changeset
216 libpurplerc = configure_file(
863a17674290 Fix creation of Windows resource files.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38506
diff changeset
217 input : 'win32/libpurplerc.rc.in',
863a17674290 Fix creation of Windows resource files.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38506
diff changeset
218 output : 'libpurplerc.rc',
863a17674290 Fix creation of Windows resource files.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38506
diff changeset
219 configuration : version_conf)
863a17674290 Fix creation of Windows resource files.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38506
diff changeset
220 purple_coresources += windows.compile_resources(libpurplerc)
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
221 endif
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
222
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
223 purple_mediaheaders = [
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
224 'media/backend-iface.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
225 'media/candidate.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
226 'media/codec.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
227 'media/enum-types.h'
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
228 ]
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
229
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
230 purple_enumheaders = [
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
231 'account.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
232 'buddyicon.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
233 'connection.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
234 'debug.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
235 'eventloop.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
236 'notify.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
237 'plugins.h',
40517
5211982886af Move PurpleChatUser to it's own file and fix a few issues with the docs and translations
Gary Kramlich <grim@reaperworld.com>
parents: 40509
diff changeset
238 'purplechatuser.h',
40853
d3518ff99fa7 rename conversation.[ch] to purpleconversation.[ch] and split PurpleConversationUiOps out to its own file to avoid circular include issues.
Gary Kramlich <grim@reaperworld.com>
parents: 40838
diff changeset
239 'purpleconversation.h',
40506
cb26b9c6d4d0 Move PurpleIMConversation to its own file
Gary Kramlich <grim@reaperworld.com>
parents: 40474
diff changeset
240 'purpleimconversation.h',
40696
cf58ec89b1e4 Rename message.[ch] to purplemessage.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 40683
diff changeset
241 'purplemessage.h',
40963
f2abd04191b7 Split PurplePluginInfo out to its own file
Gary Kramlich <grim@reaperworld.com>
parents: 40950
diff changeset
242 'purpleplugininfo.h',
41155
922c9e70900c Rename protocol.[ch] to purpleprotocol.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 41142
diff changeset
243 'purpleprotocol.h',
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
244 'roomlist.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
245 'status.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
246 'xfer.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
247 'xmlnode.h'
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
248 ]
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
249
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
250
41004
67692039e5a7 Move the libpurple enums to gnome.mkenums_simple
Gary Kramlich <grim@reaperworld.com>
parents: 40999
diff changeset
251 enums = gnome.mkenums_simple('purpleenums',
38463
879af84c9a51 Require meson 0.34.0 for build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38462
diff changeset
252 sources : purple_enumheaders,
38477
e8e897e0b16a meson: Update to latest mkenums syntax.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38476
diff changeset
253 install_header : true,
40536
c0ea70247280 Switch join_paths and + to /.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40526
diff changeset
254 install_dir : get_option('includedir') / purple_include_base)
38477
e8e897e0b16a meson: Update to latest mkenums syntax.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38476
diff changeset
255 enums_c = enums[0]
e8e897e0b16a meson: Update to latest mkenums syntax.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38476
diff changeset
256 enums_h = enums[1]
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
257
39401
80193d055f1c libpurple: Generate purple.h includes with meson headers list
Mike Ruprecht <cmaiku@gmail.com>
parents: 39400
diff changeset
258 PURPLE_H_INCLUDES = []
41007
90d2dee9b3dc Fix the includes for the purpleenums rename
Gary Kramlich <grim@reaperworld.com>
parents: 41006
diff changeset
259 foreach header : purple_coreheaders + purple_mediaheaders + ['version.h', 'purpleenums.h']
39401
80193d055f1c libpurple: Generate purple.h includes with meson headers list
Mike Ruprecht <cmaiku@gmail.com>
parents: 39400
diff changeset
260 PURPLE_H_INCLUDES += '#include <libpurple/@0@>'.format(header)
80193d055f1c libpurple: Generate purple.h includes with meson headers list
Mike Ruprecht <cmaiku@gmail.com>
parents: 39400
diff changeset
261 endforeach
39414
ac9648de2f4f libpurple: Remove PURPLE_PLUGINS define from purple.h
Mike Ruprecht <cmaiku@gmail.com>
parents: 39410
diff changeset
262 purple_h_conf = configuration_data()
39401
80193d055f1c libpurple: Generate purple.h includes with meson headers list
Mike Ruprecht <cmaiku@gmail.com>
parents: 39400
diff changeset
263 purple_h_conf.set('PURPLE_H_INCLUDES', '\n'.join(PURPLE_H_INCLUDES))
80193d055f1c libpurple: Generate purple.h includes with meson headers list
Mike Ruprecht <cmaiku@gmail.com>
parents: 39400
diff changeset
264
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
265 purple_h = configure_file(input : 'purple.h.in',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
266 output : 'purple.h',
38987
812981a69d5b Split purple.h.in config into separate object.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 38936
diff changeset
267 configuration : purple_h_conf,
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
268 install : true,
40536
c0ea70247280 Switch join_paths and + to /.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40526
diff changeset
269 install_dir : get_option('includedir') / purple_filebase)
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
270 version_h = configure_file(input : 'version.h.in',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
271 output : 'version.h',
38440
98da84139485 Fix config.h usage with meson.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38439
diff changeset
272 configuration : version_conf,
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
273 install : true,
40536
c0ea70247280 Switch join_paths and + to /.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40526
diff changeset
274 install_dir : get_option('includedir') / purple_include_base)
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
275
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
276 purple_builtsources = [
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
277 enums_c,
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
278 ]
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
279
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
280 purple_builtheaders = [
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
281 purple_h,
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
282 version_h,
38473
919d72c1c8c0 Add many missing installations to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38472
diff changeset
283 enums_h,
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
284 ]
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
285
38440
98da84139485 Fix config.h usage with meson.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38439
diff changeset
286 libpurple_inc = include_directories('.')
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
287 libpurple = library('purple',
38493
e6e131a732d0 Add missing dbus built files to sources.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38492
diff changeset
288 purple_coresources + purple_builtsources +
39354
db17ba548304 libpurple: Drop DBus API bindings
Mike Ruprecht <cmaiku@gmail.com>
parents: 39347
diff changeset
289 purple_builtheaders,
40439
e9838d634d5e Make sure that internal.h can only be included by libpurple and split out some pieces to purpleprivate.h
Gary Kramlich <grim@reaperworld.com>
parents: 40350
diff changeset
290 'purpleprivate.h',
41107
1570d8844e9a Enable structured logging in libpurple
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 41090
diff changeset
291 c_args : ['-DPURPLE_COMPILATION', '-DG_LOG_USE_STRUCTURED', '-DG_LOG_DOMAIN="Purple"'],
38440
98da84139485 Fix config.h usage with meson.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38439
diff changeset
292 include_directories : [toplevel_inc, libpurple_inc],
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
293 install : true,
38518
1c2e969922b8 Fix versioning of libraries.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38516
diff changeset
294 version : PURPLE_LIB_VERSION,
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
295 dependencies : # static_link_libs
39990
7fb53d5427a8 Use SoupURI to parse proxy environment variables.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39970
diff changeset
296 [dnsapi, ws2_32, glib, gio, gplugin_dep, libsoup,
7fb53d5427a8 Use SoupURI to parse proxy environment variables.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39970
diff changeset
297 libxml, farstream, gstreamer, gstreamer_video,
41090
741992355ead GSoC History API including sqlite history adapter
James Culver <rewtguy@gmail.com>
parents: 41057
diff changeset
298 gstreamer_app, json, sqlite3, math])
38934
5b861179cad9 Various build fixes:
Shawn Napora <shawn@napora.me>
parents: 38859
diff changeset
299
39354
db17ba548304 libpurple: Drop DBus API bindings
Mike Ruprecht <cmaiku@gmail.com>
parents: 39347
diff changeset
300 install_headers(purple_coreheaders,
39400
34275a486210 libpurple: Install headers into a standard subdirectory
Mike Ruprecht <cmaiku@gmail.com>
parents: 39399
diff changeset
301 subdir : purple_include_base)
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
302
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
303 install_headers(purple_mediaheaders,
40536
c0ea70247280 Switch join_paths and + to /.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40526
diff changeset
304 subdir : purple_include_base / 'media')
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
305
38783
93d9173b62c8 Use meson pkgconfig generator.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38641
diff changeset
306 pkgconfig.generate(
41112
1653402dd94e Update Meson to newer standards
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 41107
diff changeset
307 libpurple,
38783
93d9173b62c8 Use meson pkgconfig generator.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38641
diff changeset
308 name : 'libpurple',
93d9173b62c8 Use meson pkgconfig generator.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38641
diff changeset
309 description : 'libpurple is a GLib-based instant messenger library.',
39443
5cffc7a8c5e7 Move project version into meson init.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39426
diff changeset
310 version : meson.project_version(),
39399
e6da6288d084 libpurple: Pull common file naming out into variable in meson file
Mike Ruprecht <cmaiku@gmail.com>
parents: 39354
diff changeset
311 filebase : purple_filebase,
39400
34275a486210 libpurple: Install headers into a standard subdirectory
Mike Ruprecht <cmaiku@gmail.com>
parents: 39399
diff changeset
312 # TODO: Only use purple_filebase once everything is ported to only use purple.h
34275a486210 libpurple: Install headers into a standard subdirectory
Mike Ruprecht <cmaiku@gmail.com>
parents: 39399
diff changeset
313 subdirs : [purple_filebase, purple_include_base],
41112
1653402dd94e Update Meson to newer standards
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 41107
diff changeset
314 # NOTE: Don't use gplugin from pkgconfig, as it might be a subproject.
1653402dd94e Update Meson to newer standards
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 41107
diff changeset
315 requires : [glib, 'gplugin'],
39399
e6da6288d084 libpurple: Pull common file naming out into variable in meson file
Mike Ruprecht <cmaiku@gmail.com>
parents: 39354
diff changeset
316 variables : ['plugindir=${libdir}/@0@'.format(purple_filebase)])
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
317
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
318 if enable_introspection
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
319 introspection_sources = (purple_coreheaders + purple_builtheaders +
39354
db17ba548304 libpurple: Drop DBus API bindings
Mike Ruprecht <cmaiku@gmail.com>
parents: 39347
diff changeset
320 purple_mediaheaders)
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
321
38472
1f332f8141f4 Add GIR to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38471
diff changeset
322 libpurple_gir = gnome.generate_gir(libpurple,
1f332f8141f4 Add GIR to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38471
diff changeset
323 sources : introspection_sources,
41142
a9f32316d828 Fix includes for the introspection targets that I thought weren't needed during the gi-docgen conversation
Gary Kramlich <grim@reaperworld.com>
parents: 41137
diff changeset
324 includes : ['GLib-2.0', 'Gio-2.0', 'GObject-2.0', 'Gst-1.0', 'GPlugin-1.0'],
41164
d861b10105fb Convert the libpurple docs to gi-docgen
Gary Kramlich <grim@reaperworld.com>
parents: 41155
diff changeset
325 header : 'purple.h',
39456
58cfd8ad7f95 Don't add the 3 to the gir namespaces
Gary Kramlich <grim@reaperworld.com>
parents: 39455
diff changeset
326 namespace : 'Purple',
38516
dd0ddcb829b9 Make GIR outputs more consistent with autotools.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38513
diff changeset
327 symbol_prefix : 'purple',
38472
1f332f8141f4 Add GIR to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38471
diff changeset
328 identifier_prefix : 'Purple',
39399
e6da6288d084 libpurple: Pull common file naming out into variable in meson file
Mike Ruprecht <cmaiku@gmail.com>
parents: 39354
diff changeset
329 export_packages : purple_filebase,
38472
1f332f8141f4 Add GIR to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38471
diff changeset
330 nsversion : '@0@.@1@'.format(purple_major_version,
1f332f8141f4 Add GIR to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38471
diff changeset
331 purple_minor_version),
41057
0a4177bbb1c4 Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents: 41056
diff changeset
332 dependencies: [gplugin_dep],
39370
ba8bb361f1f2 Add --quiet argument to gnome.generate_gir() calls
Mike Ruprecht <cmaiku@gmail.com>
parents: 39354
diff changeset
333 install : true,
40474
1341be8e3402 Make it so only libpurple can directly include libpurple header files.
Gary Kramlich <grim@reaperworld.com>
parents: 40471
diff changeset
334 extra_args : ['-DPURPLE_COMPILATION', '--quiet'])
41057
0a4177bbb1c4 Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents: 41056
diff changeset
335
0a4177bbb1c4 Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents: 41056
diff changeset
336 purple_generated_sources += libpurple_gir
0a4177bbb1c4 Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents: 41056
diff changeset
337 endif
0a4177bbb1c4 Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents: 41056
diff changeset
338
0a4177bbb1c4 Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents: 41056
diff changeset
339 libpurple_dep = declare_dependency(
0a4177bbb1c4 Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents: 41056
diff changeset
340 # Ensure purple headers built before any dependencies:
0a4177bbb1c4 Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents: 41056
diff changeset
341 sources : [purple_builtheaders] + purple_generated_sources,
0a4177bbb1c4 Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents: 41056
diff changeset
342 include_directories : [toplevel_inc, libpurple_inc],
0a4177bbb1c4 Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents: 41056
diff changeset
343 link_with : libpurple,
0a4177bbb1c4 Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents: 41056
diff changeset
344 dependencies : [gstreamer, gplugin_dep, glib, gio])
0a4177bbb1c4 Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents: 41056
diff changeset
345
41112
1653402dd94e Update Meson to newer standards
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 41107
diff changeset
346 meson.override_dependency(purple_filebase, libpurple_dep)
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
347
40786
4682777df311 Clean up some issues with the desktop files and purple3-url-handler
Gary Kramlich <grim@reaperworld.com>
parents: 40746
diff changeset
348 PURPLE3_URL_HANDLER_DESKTOP = 'purple3-url-handler.desktop'
4682777df311 Clean up some issues with the desktop files and purple3-url-handler
Gary Kramlich <grim@reaperworld.com>
parents: 40746
diff changeset
349 if get_option('nls')
4682777df311 Clean up some issues with the desktop files and purple3-url-handler
Gary Kramlich <grim@reaperworld.com>
parents: 40746
diff changeset
350 i18n = import('i18n')
4682777df311 Clean up some issues with the desktop files and purple3-url-handler
Gary Kramlich <grim@reaperworld.com>
parents: 40746
diff changeset
351 desktop_file_in = configure_file(
4682777df311 Clean up some issues with the desktop files and purple3-url-handler
Gary Kramlich <grim@reaperworld.com>
parents: 40746
diff changeset
352 input : 'data' / (PURPLE3_URL_HANDLER_DESKTOP + '.in.in'),
4682777df311 Clean up some issues with the desktop files and purple3-url-handler
Gary Kramlich <grim@reaperworld.com>
parents: 40746
diff changeset
353 output : PURPLE3_URL_HANDLER_DESKTOP + '.in',
4682777df311 Clean up some issues with the desktop files and purple3-url-handler
Gary Kramlich <grim@reaperworld.com>
parents: 40746
diff changeset
354 configuration : conf)
4682777df311 Clean up some issues with the desktop files and purple3-url-handler
Gary Kramlich <grim@reaperworld.com>
parents: 40746
diff changeset
355 i18n.merge_file(
4682777df311 Clean up some issues with the desktop files and purple3-url-handler
Gary Kramlich <grim@reaperworld.com>
parents: 40746
diff changeset
356 input : desktop_file_in,
4682777df311 Clean up some issues with the desktop files and purple3-url-handler
Gary Kramlich <grim@reaperworld.com>
parents: 40746
diff changeset
357 output : PURPLE3_URL_HANDLER_DESKTOP,
40999
9e5a5eb54a57 bump the minimum meson to 0.56.0 and fix the deprecations
Gary Kramlich <grim@reaperworld.com>
parents: 40963
diff changeset
358 po_dir : meson.project_source_root() / 'po',
40786
4682777df311 Clean up some issues with the desktop files and purple3-url-handler
Gary Kramlich <grim@reaperworld.com>
parents: 40746
diff changeset
359 type : 'desktop',
4682777df311 Clean up some issues with the desktop files and purple3-url-handler
Gary Kramlich <grim@reaperworld.com>
parents: 40746
diff changeset
360 install : true,
4682777df311 Clean up some issues with the desktop files and purple3-url-handler
Gary Kramlich <grim@reaperworld.com>
parents: 40746
diff changeset
361 install_dir : get_option('datadir') / 'applications')
4682777df311 Clean up some issues with the desktop files and purple3-url-handler
Gary Kramlich <grim@reaperworld.com>
parents: 40746
diff changeset
362 else
4682777df311 Clean up some issues with the desktop files and purple3-url-handler
Gary Kramlich <grim@reaperworld.com>
parents: 40746
diff changeset
363 configure_file(
4682777df311 Clean up some issues with the desktop files and purple3-url-handler
Gary Kramlich <grim@reaperworld.com>
parents: 40746
diff changeset
364 input : 'data' / (PURPLE3_URL_HANDLER_DESKTOP + '.in.in'),
4682777df311 Clean up some issues with the desktop files and purple3-url-handler
Gary Kramlich <grim@reaperworld.com>
parents: 40746
diff changeset
365 output : PURPLE3_URL_HANDLER_DESKTOP,
4682777df311 Clean up some issues with the desktop files and purple3-url-handler
Gary Kramlich <grim@reaperworld.com>
parents: 40746
diff changeset
366 configuration : conf,
4682777df311 Clean up some issues with the desktop files and purple3-url-handler
Gary Kramlich <grim@reaperworld.com>
parents: 40746
diff changeset
367 install : true,
4682777df311 Clean up some issues with the desktop files and purple3-url-handler
Gary Kramlich <grim@reaperworld.com>
parents: 40746
diff changeset
368 install_dir : get_option('datadir') / 'applications')
4682777df311 Clean up some issues with the desktop files and purple3-url-handler
Gary Kramlich <grim@reaperworld.com>
parents: 40746
diff changeset
369 endif
4682777df311 Clean up some issues with the desktop files and purple3-url-handler
Gary Kramlich <grim@reaperworld.com>
parents: 40746
diff changeset
370
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
371 subdir('tests')
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
372 subdir('example')
38442
940263b01fb5 Add plugins to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38440
diff changeset
373 subdir('plugins')
38443
86f66bcb3d62 Add bonjour to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38442
diff changeset
374 subdir('protocols')

mercurial