libpurple/meson.build

Sat, 30 Jan 2021 01:30:00 -0600

author
Gary Kramlich <grim@reaperworld.com>
date
Sat, 30 Jan 2021 01:30:00 -0600
changeset 40743
7aa6153abf4d
parent 40735
cc0679f47fd9
child 40746
5df699e43f3f
permissions
-rw-r--r--

Create a no operation credential provider and fix a number of other issues

* Create a "None" credential provider that allows users to disable credential
storing and only allows them to enter passwords manually.
* Use g_signal_connect_object in PidginCredentialProviderStore.
* Move purple_credential_manager_shutdown after purple_plugins_uninit.
* Set the active credential provider to NULL during shutdown.

Testing Done:
Compiled and ran locally verified that we no long hang on exit if we've opened the preferences window.

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

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 'conversation.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
15 'conversationtypes.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
16 'conversations.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
17 'core.c',
38467
cdc07553316b Update libpurple files in meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38463
diff changeset
18 'countingnode.c',
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
19 'debug.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
20 'eventloop.c',
40471
c17762e0a388 Correctly add the compatibility function for g_date_time_format_iso8601
Gary Kramlich <grim@reaperworld.com>
parents: 40470
diff changeset
21 'glibcompat.c',
38467
cdc07553316b Update libpurple files in meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38463
diff changeset
22 'group.c',
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
23 'idle.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
24 'image.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
25 'image-store.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
26 'keyring.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
27 'log.c',
40523
9bcf96663cb9 Make gstreamer-1.0 a required dependency
Gary Kramlich <grim@reaperworld.com>
parents: 40521
diff changeset
28 'media/backend-fs2.c',
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
29 'media/backend-iface.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
30 'media/candidate.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
31 'media/codec.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
32 'media/enum-types.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
33 'media.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
34 'mediamanager.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
35 'memorypool.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
36 'nat-pmp.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
37 'network.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
38 'notify.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
39 'plugins.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
40 'pluginpref.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
41 'prefs.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
42 'proxy.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
43 'protocol.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
44 'protocols.c',
38467
cdc07553316b Update libpurple files in meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38463
diff changeset
45 'purple-gio.c',
39970
cc7d4ff5a205 rename accountopt.[ch] to purpleaccountoption.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 39968
diff changeset
46 'purpleaccountoption.c',
40537
fbf29150c28c Move PurpleAccountPresence and PurpleBuddyPresence to their own files
Gary Kramlich <grim@reaperworld.com>
parents: 40536
diff changeset
47 'purpleaccountpresence.c',
39968
71622ee1354e move PurpleAccountUserSplit to their own file
Gary Kramlich <grim@reaperworld.com>
parents: 39951
diff changeset
48 '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
49 'purpleattachment.c',
40579
882884b9bc97 Split PurpleAttentionType and PurpleProtocolAttention into their own files
Gary Kramlich <grim@reaperworld.com>
parents: 40576
diff changeset
50 'purpleattentiontype.c',
40537
fbf29150c28c Move PurpleAccountPresence and PurpleBuddyPresence to their own files
Gary Kramlich <grim@reaperworld.com>
parents: 40536
diff changeset
51 'purplebuddypresence.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
52 'purplechatuser.c',
40583
28964322556c Add the new PurpleCredentialManager API
Gary Kramlich <grim@reaperworld.com>
parents: 40579
diff changeset
53 '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
54 'purplecredentialprovider.c',
40506
cb26b9c6d4d0 Move PurpleIMConversation to its own file
Gary Kramlich <grim@reaperworld.com>
parents: 40474
diff changeset
55 '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
56 '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
57 'purplemarkup.c',
40696
cf58ec89b1e4 Rename message.[ch] to purplemessage.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 40683
diff changeset
58 '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
59 'purplenoopcredentialprovider.c',
40727
9389ba16cf40 Rename options.[ch] to purpleoptions.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 40708
diff changeset
60 'purpleoptions.c',
40575
b82c365e04e8 Rename presence.[ch] to purplepresence.[ch], fix some docs, and other tweaks.
Gary Kramlich <grim@reaperworld.com>
parents: 40564
diff changeset
61 'purplepresence.c',
40579
882884b9bc97 Split PurpleAttentionType and PurpleProtocolAttention into their own files
Gary Kramlich <grim@reaperworld.com>
parents: 40576
diff changeset
62 'purpleprotocolattention.c',
40697
81f81f5d2f39 Split PurpleProtocolChat to its own file and clean up the API.
Gary Kramlich <grim@reaperworld.com>
parents: 40696
diff changeset
63 '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
64 'purpleprotocolclient.c',
40339
54813fd13c13 Pull PurpleProtocolFactory out to it's own file.
Gary Kramlich <grim@reaperworld.com>
parents: 40312
diff changeset
65 'purpleprotocolfactory.c',
40507
77d7bc9e5151 Make PurpleProtocolIM a proper interface
Gary Kramlich <grim@reaperworld.com>
parents: 40506
diff changeset
66 'purpleprotocolim.c',
40735
cc0679f47fd9 Create a new PurpleProtocolManager
Gary Kramlich <grim@reaperworld.com>
parents: 40727
diff changeset
67 'purpleprotocolmanager.c',
40525
96fc115d6c36 Move PurpleProtocolMediaInterface to its own file.
Gary Kramlich <grim@reaperworld.com>
parents: 40523
diff changeset
68 '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
69 'purpleprotocolprivacy.c',
40708
53a26c29d26c Move the PurpleProtocolServer interface to its own file.
Gary Kramlich <grim@reaperworld.com>
parents: 40697
diff changeset
70 'purpleprotocolserver.c',
40312
956745ff3ee8 Replace the ui info GHashTable with a gobject.
Gary Kramlich <grim@reaperworld.com>
parents: 40306
diff changeset
71 'purpleuiinfo.c',
40595
d7e28f8a0994 split up whiteboard.[ch] to separate files
Gary Kramlich <grim@reaperworld.com>
parents: 40583
diff changeset
72 'purplewhiteboard.c',
d7e28f8a0994 split up whiteboard.[ch] to separate files
Gary Kramlich <grim@reaperworld.com>
parents: 40583
diff changeset
73 'purplewhiteboarduiops.c',
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
74 'queuedoutputstream.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
75 'request.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
76 'request-datasheet.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
77 'roomlist.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
78 'savedstatuses.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
79 'server.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
80 'signals.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
81 'smiley-custom.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
82 'smiley-list.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
83 'smiley-parser.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
84 'smiley-theme.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
85 'smiley.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
86 'status.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
87 'stun.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
88 'theme.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
89 'theme-loader.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
90 'theme-manager.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
91 'trie.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
92 'upnp.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
93 'util.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
94 'version.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
95 'xfer.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
96 'xmlnode.c'
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
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
99 purple_coreheaders = [
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
100 'account.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
101 'accounts.h',
39487
f0e629b4c500 Address a number of issues with ownership and leaking
Gary Kramlich <grim@reaperworld.com>
parents: 39479
diff changeset
102 'action.h',
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
103 'blistnode.h',
38467
cdc07553316b Update libpurple files in meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38463
diff changeset
104 'buddy.h',
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
105 'buddylist.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
106 'buddyicon.h',
38467
cdc07553316b Update libpurple files in meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38463
diff changeset
107 'chat.h',
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
108 'circularbuffer.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
109 'cmds.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
110 'connection.h',
38467
cdc07553316b Update libpurple files in meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38463
diff changeset
111 'contact.h',
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
112 'conversation.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
113 'conversationtypes.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
114 'conversations.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
115 'core.h',
38467
cdc07553316b Update libpurple files in meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38463
diff changeset
116 'countingnode.h',
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
117 'debug.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
118 'eventloop.h',
38467
cdc07553316b Update libpurple files in meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38463
diff changeset
119 'group.h',
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
120 'idle.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
121 'image.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
122 'image-store.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
123 'keyring.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
124 'log.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
125 'media.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
126 'mediamanager.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
127 'memorypool.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
128 'nat-pmp.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
129 'network.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
130 'notify.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
131 'plugins.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
132 'pluginpref.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
133 'prefs.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
134 'proxy.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
135 'protocol.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
136 'protocols.h',
38467
cdc07553316b Update libpurple files in meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38463
diff changeset
137 'purple-gio.h',
39970
cc7d4ff5a205 rename accountopt.[ch] to purpleaccountoption.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 39968
diff changeset
138 'purpleaccountoption.h',
40537
fbf29150c28c Move PurpleAccountPresence and PurpleBuddyPresence to their own files
Gary Kramlich <grim@reaperworld.com>
parents: 40536
diff changeset
139 'purpleaccountpresence.h',
39968
71622ee1354e move PurpleAccountUserSplit to their own file
Gary Kramlich <grim@reaperworld.com>
parents: 39951
diff changeset
140 'purpleaccountusersplit.h',
40579
882884b9bc97 Split PurpleAttentionType and PurpleProtocolAttention into their own files
Gary Kramlich <grim@reaperworld.com>
parents: 40576
diff changeset
141 'purpleattentiontype.h',
40537
fbf29150c28c Move PurpleAccountPresence and PurpleBuddyPresence to their own files
Gary Kramlich <grim@reaperworld.com>
parents: 40536
diff changeset
142 'purplebuddypresence.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
143 'purplechatuser.h',
40583
28964322556c Add the new PurpleCredentialManager API
Gary Kramlich <grim@reaperworld.com>
parents: 40579
diff changeset
144 '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
145 'purplecredentialprovider.h',
40506
cb26b9c6d4d0 Move PurpleIMConversation to its own file
Gary Kramlich <grim@reaperworld.com>
parents: 40474
diff changeset
146 'purpleimconversation.h',
40526
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40525
diff changeset
147 '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
148 '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
149 'purplemarkup.h',
40696
cf58ec89b1e4 Rename message.[ch] to purplemessage.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 40683
diff changeset
150 '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
151 'purplenoopcredentialprovider.h',
40727
9389ba16cf40 Rename options.[ch] to purpleoptions.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 40708
diff changeset
152 'purpleoptions.h',
40575
b82c365e04e8 Rename presence.[ch] to purplepresence.[ch], fix some docs, and other tweaks.
Gary Kramlich <grim@reaperworld.com>
parents: 40564
diff changeset
153 'purplepresence.h',
40579
882884b9bc97 Split PurpleAttentionType and PurpleProtocolAttention into their own files
Gary Kramlich <grim@reaperworld.com>
parents: 40576
diff changeset
154 'purpleprotocolattention.h',
40697
81f81f5d2f39 Split PurpleProtocolChat to its own file and clean up the API.
Gary Kramlich <grim@reaperworld.com>
parents: 40696
diff changeset
155 '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
156 'purpleprotocolclient.h',
40339
54813fd13c13 Pull PurpleProtocolFactory out to it's own file.
Gary Kramlich <grim@reaperworld.com>
parents: 40312
diff changeset
157 'purpleprotocolfactory.h',
40507
77d7bc9e5151 Make PurpleProtocolIM a proper interface
Gary Kramlich <grim@reaperworld.com>
parents: 40506
diff changeset
158 'purpleprotocolim.h',
40525
96fc115d6c36 Move PurpleProtocolMediaInterface to its own file.
Gary Kramlich <grim@reaperworld.com>
parents: 40523
diff changeset
159 'purpleprotocolmedia.h',
40735
cc0679f47fd9 Create a new PurpleProtocolManager
Gary Kramlich <grim@reaperworld.com>
parents: 40727
diff changeset
160 '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
161 'purpleprotocolprivacy.h',
40708
53a26c29d26c Move the PurpleProtocolServer interface to its own file.
Gary Kramlich <grim@reaperworld.com>
parents: 40697
diff changeset
162 'purpleprotocolserver.h',
40312
956745ff3ee8 Replace the ui info GHashTable with a gobject.
Gary Kramlich <grim@reaperworld.com>
parents: 40306
diff changeset
163 'purpleuiinfo.h',
40595
d7e28f8a0994 split up whiteboard.[ch] to separate files
Gary Kramlich <grim@reaperworld.com>
parents: 40583
diff changeset
164 'purplewhiteboard.h',
d7e28f8a0994 split up whiteboard.[ch] to separate files
Gary Kramlich <grim@reaperworld.com>
parents: 40583
diff changeset
165 'purplewhiteboardops.h',
d7e28f8a0994 split up whiteboard.[ch] to separate files
Gary Kramlich <grim@reaperworld.com>
parents: 40583
diff changeset
166 'purplewhiteboarduiops.h',
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
167 'queuedoutputstream.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
168 'request.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
169 'request-datasheet.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
170 'roomlist.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
171 'savedstatuses.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
172 'server.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
173 'signals.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
174 'smiley-custom.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
175 'smiley-list.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
176 'smiley-parser.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
177 'smiley-theme.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
178 'smiley.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
179 'status.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
180 'stun.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
181 'tests.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
182 'theme.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
183 'theme-loader.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
184 'theme-manager.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
185 'trie.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
186 'upnp.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
187 'util.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
188 'xfer.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
189 'xmlnode.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
190 ]
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
191
39399
e6da6288d084 libpurple: Pull common file naming out into variable in meson file
Mike Ruprecht <cmaiku@gmail.com>
parents: 39354
diff changeset
192 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
193 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
194
38529
6b1f391a52ba Remove redundant option variables.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38518
diff changeset
195 if enable_vv
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
196 purple_coreheaders += 'media-gst.h'
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
197 endif
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
198
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
199 if IS_WIN32
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
200 purple_coresources += [
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
201 'win32/libc_interface.c',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
202 'win32/win32dep.c'
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
203 ]
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
204
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
205 purple_coreheaders += [
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
206 'win32/libc_interface.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
207 'win32/libc_internal.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
208 'win32/win32dep.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
209 'win32/wpurpleerror.h'
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
38510
863a17674290 Fix creation of Windows resource files.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38506
diff changeset
212 libpurplerc = configure_file(
863a17674290 Fix creation of Windows resource files.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38506
diff changeset
213 input : 'win32/libpurplerc.rc.in',
863a17674290 Fix creation of Windows resource files.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38506
diff changeset
214 output : 'libpurplerc.rc',
863a17674290 Fix creation of Windows resource files.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38506
diff changeset
215 configuration : version_conf)
863a17674290 Fix creation of Windows resource files.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38506
diff changeset
216 purple_coresources += windows.compile_resources(libpurplerc)
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
217 endif
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
218
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
219 purple_mediaheaders = [
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
220 'media/backend-iface.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
221 'media/candidate.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
222 'media/codec.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
223 'media/enum-types.h'
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
224 ]
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
225
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
226 purple_enumheaders = [
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
227 'account.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
228 'buddyicon.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
229 'connection.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
230 'conversation.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
231 'debug.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
232 'eventloop.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
233 'notify.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
234 'plugins.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
235 'protocol.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
236 'protocols.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
237 'purplechatuser.h',
40506
cb26b9c6d4d0 Move PurpleIMConversation to its own file
Gary Kramlich <grim@reaperworld.com>
parents: 40474
diff changeset
238 'purpleimconversation.h',
40696
cf58ec89b1e4 Rename message.[ch] to purplemessage.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 40683
diff changeset
239 'purplemessage.h',
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
240 'roomlist.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
241 'status.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
242 'xfer.h',
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
243 'xmlnode.h'
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
244 ]
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
245
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
246
38477
e8e897e0b16a meson: Update to latest mkenums syntax.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38476
diff changeset
247 enums = gnome.mkenums('enums',
38463
879af84c9a51 Require meson 0.34.0 for build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38462
diff changeset
248 sources : purple_enumheaders,
38477
e8e897e0b16a meson: Update to latest mkenums syntax.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38476
diff changeset
249 h_template : 'enums.h.in',
e8e897e0b16a meson: Update to latest mkenums syntax.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38476
diff changeset
250 c_template : 'enums.c.in',
e8e897e0b16a meson: Update to latest mkenums syntax.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38476
diff changeset
251 install_header : true,
40536
c0ea70247280 Switch join_paths and + to /.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40526
diff changeset
252 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
253 enums_c = enums[0]
e8e897e0b16a meson: Update to latest mkenums syntax.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38476
diff changeset
254 enums_h = enums[1]
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
255
39401
80193d055f1c libpurple: Generate purple.h includes with meson headers list
Mike Ruprecht <cmaiku@gmail.com>
parents: 39400
diff changeset
256 PURPLE_H_INCLUDES = []
80193d055f1c libpurple: Generate purple.h includes with meson headers list
Mike Ruprecht <cmaiku@gmail.com>
parents: 39400
diff changeset
257 foreach header : purple_coreheaders + purple_mediaheaders + ['version.h', 'enums.h']
80193d055f1c libpurple: Generate purple.h includes with meson headers list
Mike Ruprecht <cmaiku@gmail.com>
parents: 39400
diff changeset
258 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
259 endforeach
39414
ac9648de2f4f libpurple: Remove PURPLE_PLUGINS define from purple.h
Mike Ruprecht <cmaiku@gmail.com>
parents: 39410
diff changeset
260 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
261 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
262
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
263 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
264 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
265 configuration : purple_h_conf,
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
266 install : true,
40536
c0ea70247280 Switch join_paths and + to /.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40526
diff changeset
267 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
268 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
269 output : 'version.h',
38440
98da84139485 Fix config.h usage with meson.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38439
diff changeset
270 configuration : version_conf,
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
271 install : true,
40536
c0ea70247280 Switch join_paths and + to /.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40526
diff changeset
272 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
273
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
274 purple_builtsources = [
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
275 enums_c,
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
276 ]
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
277
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
278 purple_builtheaders = [
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
279 purple_h,
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
280 version_h,
38473
919d72c1c8c0 Add many missing installations to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38472
diff changeset
281 enums_h,
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
282 ]
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
283
38440
98da84139485 Fix config.h usage with meson.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38439
diff changeset
284 libpurple_inc = include_directories('.')
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
285 libpurple = library('purple',
38493
e6e131a732d0 Add missing dbus built files to sources.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38492
diff changeset
286 purple_coresources + purple_builtsources +
39354
db17ba548304 libpurple: Drop DBus API bindings
Mike Ruprecht <cmaiku@gmail.com>
parents: 39347
diff changeset
287 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
288 'purpleprivate.h',
40576
9616360d5943 Clean up g_log handling
Gary Kramlich <grim@reaperworld.com>
parents: 40575
diff changeset
289 c_args : ['-DPURPLE_COMPILATION', '-DG_LOG_DOMAIN="Purple"'],
38440
98da84139485 Fix config.h usage with meson.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38439
diff changeset
290 include_directories : [toplevel_inc, libpurple_inc],
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
291 install : true,
38518
1c2e969922b8 Fix versioning of libraries.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38516
diff changeset
292 version : PURPLE_LIB_VERSION,
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
293 dependencies : # static_link_libs
39990
7fb53d5427a8 Use SoupURI to parse proxy environment variables.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39970
diff changeset
294 [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
295 libxml, farstream, gstreamer, gstreamer_video,
39292
c286932bbbd8 libpurple: Move libidn meson dependency to Jabber prpl
Mike Ruprecht <cmaiku@gmail.com>
parents: 39207
diff changeset
296 gstreamer_app, json, math])
38934
5b861179cad9 Various build fixes:
Shawn Napora <shawn@napora.me>
parents: 38859
diff changeset
297
38458
e665653856ab meson: Make libpurple into a dependency object.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38443
diff changeset
298 libpurple_dep = declare_dependency(
39354
db17ba548304 libpurple: Drop DBus API bindings
Mike Ruprecht <cmaiku@gmail.com>
parents: 39347
diff changeset
299 # Ensure purple headers built before any dependencies:
db17ba548304 libpurple: Drop DBus API bindings
Mike Ruprecht <cmaiku@gmail.com>
parents: 39347
diff changeset
300 sources : [purple_builtheaders],
38458
e665653856ab meson: Make libpurple into a dependency object.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38443
diff changeset
301 include_directories : [toplevel_inc, libpurple_inc],
e665653856ab meson: Make libpurple into a dependency object.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38443
diff changeset
302 link_with : libpurple,
39426
2e4f09a49404 Add fallback for gplugin.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39414
diff changeset
303 dependencies : [gstreamer, gplugin_dep, glib, gio])
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
304
39354
db17ba548304 libpurple: Drop DBus API bindings
Mike Ruprecht <cmaiku@gmail.com>
parents: 39347
diff changeset
305 install_headers(purple_coreheaders,
39400
34275a486210 libpurple: Install headers into a standard subdirectory
Mike Ruprecht <cmaiku@gmail.com>
parents: 39399
diff changeset
306 subdir : purple_include_base)
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
307
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
308 install_headers(purple_mediaheaders,
40536
c0ea70247280 Switch join_paths and + to /.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40526
diff changeset
309 subdir : purple_include_base / 'media')
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
310
38783
93d9173b62c8 Use meson pkgconfig generator.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38641
diff changeset
311 pkgconfig.generate(
93d9173b62c8 Use meson pkgconfig generator.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38641
diff changeset
312 name : 'libpurple',
93d9173b62c8 Use meson pkgconfig generator.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38641
diff changeset
313 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
314 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
315 filebase : purple_filebase,
39400
34275a486210 libpurple: Install headers into a standard subdirectory
Mike Ruprecht <cmaiku@gmail.com>
parents: 39399
diff changeset
316 # 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
317 subdirs : [purple_filebase, purple_include_base],
38783
93d9173b62c8 Use meson pkgconfig generator.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38641
diff changeset
318 libraries : [libpurple],
39410
88678727cf16 meson: Make GPlugin a hard dependency for libpurple
Mike Ruprecht <cmaiku@gmail.com>
parents: 39402
diff changeset
319 requires : ['glib-2.0', 'gplugin'],
39399
e6da6288d084 libpurple: Pull common file naming out into variable in meson file
Mike Ruprecht <cmaiku@gmail.com>
parents: 39354
diff changeset
320 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
321
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
322 if enable_introspection
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
323 introspection_sources = (purple_coreheaders + purple_builtheaders +
39354
db17ba548304 libpurple: Drop DBus API bindings
Mike Ruprecht <cmaiku@gmail.com>
parents: 39347
diff changeset
324 purple_mediaheaders)
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
325
40523
9bcf96663cb9 Make gstreamer-1.0 a required dependency
Gary Kramlich <grim@reaperworld.com>
parents: 40521
diff changeset
326 Purple_gir_includes = ['GObject-2.0', 'Gio-2.0', 'Gst-1.0', gplugin_gir]
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
327
38472
1f332f8141f4 Add GIR to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38471
diff changeset
328 libpurple_gir = gnome.generate_gir(libpurple,
1f332f8141f4 Add GIR to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38471
diff changeset
329 sources : introspection_sources,
1f332f8141f4 Add GIR to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38471
diff changeset
330 includes : Purple_gir_includes,
39456
58cfd8ad7f95 Don't add the 3 to the gir namespaces
Gary Kramlich <grim@reaperworld.com>
parents: 39455
diff changeset
331 namespace : 'Purple',
38516
dd0ddcb829b9 Make GIR outputs more consistent with autotools.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38513
diff changeset
332 symbol_prefix : 'purple',
38472
1f332f8141f4 Add GIR to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38471
diff changeset
333 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
334 export_packages : purple_filebase,
38472
1f332f8141f4 Add GIR to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38471
diff changeset
335 nsversion : '@0@.@1@'.format(purple_major_version,
1f332f8141f4 Add GIR to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38471
diff changeset
336 purple_minor_version),
39207
fc04bee28325 Use the dependency object to determine the path to add to the include directories for gnome.generate_gir
Gary Kramlich <grim@reaperworld.com>
parents: 39141
diff changeset
337 include_directories : [
39426
2e4f09a49404 Add fallback for gplugin.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39414
diff changeset
338 gplugin_include_directories,
39207
fc04bee28325 Use the dependency object to determine the path to add to the include directories for gnome.generate_gir
Gary Kramlich <grim@reaperworld.com>
parents: 39141
diff changeset
339 ],
39370
ba8bb361f1f2 Add --quiet argument to gnome.generate_gir() calls
Mike Ruprecht <cmaiku@gmail.com>
parents: 39354
diff changeset
340 install : true,
40474
1341be8e3402 Make it so only libpurple can directly include libpurple header files.
Gary Kramlich <grim@reaperworld.com>
parents: 40471
diff changeset
341 extra_args : ['-DPURPLE_COMPILATION', '--quiet'])
38439
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
342 endif
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
343
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
344 subdir('tests')
03f1a1642a68 Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
345 subdir('example')
38442
940263b01fb5 Add plugins to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38440
diff changeset
346 subdir('plugins')
38443
86f66bcb3d62 Add bonjour to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 38442
diff changeset
347 subdir('protocols')

mercurial