libpurple/protocols/jabber/meson.build

Wed, 02 Oct 2019 00:01:17 -0400

author
Elliott Sales de Andrade <qulogic@pidgin.im>
date
Wed, 02 Oct 2019 00:01:17 -0400
changeset 40002
f08d87a438c2
parent 39951
e9eaaff671c9
child 40282
35b4a6224d6d
permissions
-rw-r--r--

Convert Jabber BOSH to libsoup.

39292
c286932bbbd8 libpurple: Move libidn meson dependency to Jabber prpl
Mike Ruprecht <cmaiku@gmail.com>
parents: 39069
diff changeset
1 #######################################################################
c286932bbbd8 libpurple: Move libidn meson dependency to Jabber prpl
Mike Ruprecht <cmaiku@gmail.com>
parents: 39069
diff changeset
2 # Check for Internationalized Domain Name support
c286932bbbd8 libpurple: Move libidn meson dependency to Jabber prpl
Mike Ruprecht <cmaiku@gmail.com>
parents: 39069
diff changeset
3 #######################################################################
c286932bbbd8 libpurple: Move libidn meson dependency to Jabber prpl
Mike Ruprecht <cmaiku@gmail.com>
parents: 39069
diff changeset
4
39951
e9eaaff671c9 Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39448
diff changeset
5 idn = dependency('libidn', version : '>= 0.0.0', required : get_option('idn'))
e9eaaff671c9 Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39448
diff changeset
6 if idn.found()
39292
c286932bbbd8 libpurple: Move libidn meson dependency to Jabber prpl
Mike Ruprecht <cmaiku@gmail.com>
parents: 39069
diff changeset
7 use_idn = [ '-DUSE_IDN' ]
c286932bbbd8 libpurple: Move libidn meson dependency to Jabber prpl
Mike Ruprecht <cmaiku@gmail.com>
parents: 39069
diff changeset
8 else
c286932bbbd8 libpurple: Move libidn meson dependency to Jabber prpl
Mike Ruprecht <cmaiku@gmail.com>
parents: 39069
diff changeset
9 use_idn = []
c286932bbbd8 libpurple: Move libidn meson dependency to Jabber prpl
Mike Ruprecht <cmaiku@gmail.com>
parents: 39069
diff changeset
10 endif
c286932bbbd8 libpurple: Move libidn meson dependency to Jabber prpl
Mike Ruprecht <cmaiku@gmail.com>
parents: 39069
diff changeset
11
38448
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
12 JABBERSOURCES = [
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
13 'adhoccommands.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
14 'adhoccommands.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
15 'auth.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
16 'auth.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
17 'auth_digest_md5.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
18 'auth_digest_md5.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
19 'auth_plain.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
20 'auth_scram.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
21 'auth_scram.h',
39069
e1aa1c343db4 Fix the build
Gary Kramlich <grim@reaperworld.com>
parents: 38609
diff changeset
22 'auth_webex.c',
38448
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
23 'buddy.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
24 'buddy.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
25 'bosh.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
26 'bosh.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
27 'caps.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
28 'caps.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
29 'chat.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
30 'chat.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
31 'data.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
32 'data.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
33 'disco.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
34 'disco.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
35 'google/gmail.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
36 'google/gmail.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
37 'google/google.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
38 'google/google.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
39 'google/google_p2p.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
40 'google/google_p2p.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
41 'google/google_presence.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
42 'google/google_presence.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
43 'google/google_roster.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
44 'google/google_roster.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
45 'google/google_session.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
46 'google/google_session.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
47 'google/jingleinfo.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
48 'google/jingleinfo.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
49 'google/relay.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
50 'google/relay.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
51 'gtalk.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
52 'gtalk.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
53 'ibb.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
54 'ibb.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
55 'iq.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
56 'iq.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
57 'jabber.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
58 'jabber.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
59 'jingle/jingle.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
60 'jingle/jingle.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
61 'jingle/content.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
62 'jingle/content.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
63 'jingle/iceudp.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
64 'jingle/iceudp.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
65 'jingle/rawudp.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
66 'jingle/rawudp.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
67 'jingle/rtp.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
68 'jingle/rtp.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
69 'jingle/session.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
70 'jingle/session.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
71 'jingle/transport.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
72 'jingle/transport.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
73 'jutil.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
74 'jutil.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
75 'message.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
76 'message.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
77 'namespaces.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
78 'oob.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
79 'oob.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
80 'parser.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
81 'parser.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
82 'pep.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
83 'pep.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
84 'ping.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
85 'ping.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
86 'presence.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
87 'presence.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
88 'roster.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
89 'roster.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
90 'si.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
91 'si.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
92 'useravatar.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
93 'useravatar.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
94 'usermood.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
95 'usermood.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
96 'usernick.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
97 'usernick.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
98 'usertune.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
99 'usertune.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
100 'xdata.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
101 'xdata.h',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
102 'xmpp.c',
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
103 'xmpp.h'
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
104 ]
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
105
39951
e9eaaff671c9 Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39448
diff changeset
106 if sasl.found()
38448
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
107 JABBERSOURCES += ['auth_cyrus.c']
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
108 endif
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
109
38609
880fce2800d8 Add --export-all-symbols to Jabber and Oscar protocol plugins
Mike Ruprecht <cmaiku@gmail.com>
parents: 38603
diff changeset
110 if IS_WIN32
880fce2800d8 Add --export-all-symbols to Jabber and Oscar protocol plugins
Mike Ruprecht <cmaiku@gmail.com>
parents: 38603
diff changeset
111 jabber_link_args = ['-Wl,--export-all-symbols']
880fce2800d8 Add --export-all-symbols to Jabber and Oscar protocol plugins
Mike Ruprecht <cmaiku@gmail.com>
parents: 38603
diff changeset
112 else
880fce2800d8 Add --export-all-symbols to Jabber and Oscar protocol plugins
Mike Ruprecht <cmaiku@gmail.com>
parents: 38603
diff changeset
113 jabber_link_args = []
880fce2800d8 Add --export-all-symbols to Jabber and Oscar protocol plugins
Mike Ruprecht <cmaiku@gmail.com>
parents: 38603
diff changeset
114 endif
880fce2800d8 Add --export-all-symbols to Jabber and Oscar protocol plugins
Mike Ruprecht <cmaiku@gmail.com>
parents: 38603
diff changeset
115
39404
dc8c71a301d0 libpurple: Drop capability to statically build prpls
Mike Ruprecht <cmaiku@gmail.com>
parents: 39292
diff changeset
116 if DYNAMIC_JABBER
38448
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
117 jabber_prpl = shared_library('jabber', JABBERSOURCES,
39292
c286932bbbd8 libpurple: Move libidn meson dependency to Jabber prpl
Mike Ruprecht <cmaiku@gmail.com>
parents: 39069
diff changeset
118 c_args : use_idn,
38609
880fce2800d8 Add --export-all-symbols to Jabber and Oscar protocol plugins
Mike Ruprecht <cmaiku@gmail.com>
parents: 38603
diff changeset
119 link_args : jabber_link_args,
40002
f08d87a438c2 Convert Jabber BOSH to libsoup.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39951
diff changeset
120 dependencies : [gstreamer, idn, libxml, sasl, libpurple_dep, libsoup, glib, gio, math, ws2_32],
38448
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
121 install : true, install_dir : PURPLE_PLUGINDIR)
39448
34ecb027100c meson: Fix formatting
Petteri Pitkänen <petepitk@gmail.com>
parents: 39445
diff changeset
122
39445
2216d451ebdc meson: Build tests for jabber only when plugin itself is built
Petteri Pitkänen <petepitk@gmail.com>
parents: 39404
diff changeset
123 subdir('tests')
38448
18c8f9843c82 Add jabber to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff changeset
124 endif

mercurial