Thu, 30 Nov 2023 22:18:04 -0600
Stub out our new modern XMPP implementation
This doesn't do anything except show up in the protocol list.
Testing Done:
Verified the protocol showed up in the protocol list.
Reviewed at https://reviews.imfreedom.org/r/2856/
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
1 | # UPDATING VERSION NUMBERS FOR RELEASES |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
2 | # |
|
39443
5cffc7a8c5e7
Move project version into meson init.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39428
diff
changeset
|
3 | # The version number is: |
|
40206
566c210f7003
Add PURPLE_VERSION and PURPLE_EXTRA_VERSION to libpurple/version.h and clean up some other related stuff
Gary Kramlich <grim@reaperworld.com>
parents:
40193
diff
changeset
|
4 | # <major>.<minor>.<micro><extra> |
|
39443
5cffc7a8c5e7
Move project version into meson init.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39428
diff
changeset
|
5 | # |
|
5cffc7a8c5e7
Move project version into meson init.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39428
diff
changeset
|
6 | # micro += 1 |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
7 | # |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
8 | # If any functions have been added to libpurple, Pidgin, or Finch: |
|
39443
5cffc7a8c5e7
Move project version into meson init.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39428
diff
changeset
|
9 | # micro = 0 |
|
5cffc7a8c5e7
Move project version into meson init.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39428
diff
changeset
|
10 | # minor += 1 |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
11 | # |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
12 | # If backwards compatibility has been broken in libpurple, Pidgin, or Finch: |
|
39443
5cffc7a8c5e7
Move project version into meson init.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39428
diff
changeset
|
13 | # micro = 0 |
|
5cffc7a8c5e7
Move project version into meson init.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39428
diff
changeset
|
14 | # minor = 0 |
|
5cffc7a8c5e7
Move project version into meson init.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39428
diff
changeset
|
15 | # major += 1 |
|
5cffc7a8c5e7
Move project version into meson init.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39428
diff
changeset
|
16 | # purple_soversion += 1 |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
17 | # |
|
40206
566c210f7003
Add PURPLE_VERSION and PURPLE_EXTRA_VERSION to libpurple/version.h and clean up some other related stuff
Gary Kramlich <grim@reaperworld.com>
parents:
40193
diff
changeset
|
18 | # extra should be similar to one of the following: |
|
39443
5cffc7a8c5e7
Move project version into meson init.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39428
diff
changeset
|
19 | # For beta releases: '-beta2' |
|
5cffc7a8c5e7
Move project version into meson init.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39428
diff
changeset
|
20 | # For code under development: '-devel' |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
21 | # For production releases: '' |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
22 | # |
|
39443
5cffc7a8c5e7
Move project version into meson init.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39428
diff
changeset
|
23 | project('pidgin', 'c', |
|
5cffc7a8c5e7
Move project version into meson init.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39428
diff
changeset
|
24 | version : '3.0.0-devel', |
|
42073
31532581724a
Set our global C standard to C17 and warning_level to 2
Gary Kramlich <grim@reaperworld.com>
parents:
42033
diff
changeset
|
25 | meson_version : '>=0.58.0', |
|
31532581724a
Set our global C standard to C17 and warning_level to 2
Gary Kramlich <grim@reaperworld.com>
parents:
42033
diff
changeset
|
26 | default_options : ['c_std=c17', 'warning_level=2']) |
|
42010
3820d0d16092
Change the soname of libpurple to libpurple3
Gary Kramlich <grim@reaperworld.com>
parents:
41921
diff
changeset
|
27 | purple_soversion = 0 |
|
39443
5cffc7a8c5e7
Move project version into meson init.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39428
diff
changeset
|
28 | |
|
5cffc7a8c5e7
Move project version into meson init.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39428
diff
changeset
|
29 | parts = meson.project_version().split('-') |
|
5cffc7a8c5e7
Move project version into meson init.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39428
diff
changeset
|
30 | if parts.length() > 1 |
|
40206
566c210f7003
Add PURPLE_VERSION and PURPLE_EXTRA_VERSION to libpurple/version.h and clean up some other related stuff
Gary Kramlich <grim@reaperworld.com>
parents:
40193
diff
changeset
|
31 | purple_extra_version = parts[1] |
|
39443
5cffc7a8c5e7
Move project version into meson init.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39428
diff
changeset
|
32 | else |
|
40206
566c210f7003
Add PURPLE_VERSION and PURPLE_EXTRA_VERSION to libpurple/version.h and clean up some other related stuff
Gary Kramlich <grim@reaperworld.com>
parents:
40193
diff
changeset
|
33 | purple_extra_version = '' |
|
39443
5cffc7a8c5e7
Move project version into meson init.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39428
diff
changeset
|
34 | endif |
|
5cffc7a8c5e7
Move project version into meson init.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39428
diff
changeset
|
35 | |
|
5cffc7a8c5e7
Move project version into meson init.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39428
diff
changeset
|
36 | parts = parts[0].split('.') |
|
5cffc7a8c5e7
Move project version into meson init.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39428
diff
changeset
|
37 | purple_major_version = parts[0] |
|
5cffc7a8c5e7
Move project version into meson init.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39428
diff
changeset
|
38 | purple_minor_version = parts[1] |
|
5cffc7a8c5e7
Move project version into meson init.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39428
diff
changeset
|
39 | purple_micro_version = parts[2] |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
40 | |
|
42454
37bcbcd66c6f
Set our gettext package to pidgin3 so it can we can install next to pidgin2
Gary Kramlich <grim@reaperworld.com>
parents:
42410
diff
changeset
|
41 | GETTEXT_PACKAGE='pidgin3' |
|
41485
74a04628357f
Remove some no longer necessary meson options
Gary Kramlich <grim@reaperworld.com>
parents:
41402
diff
changeset
|
42 | find_program('gettext') |
|
74a04628357f
Remove some no longer necessary meson options
Gary Kramlich <grim@reaperworld.com>
parents:
41402
diff
changeset
|
43 | find_program('xgettext') |
|
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:
40355
diff
changeset
|
44 | |
|
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:
40355
diff
changeset
|
45 | add_project_arguments([ |
|
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:
40355
diff
changeset
|
46 | '-DVERSION="@0@"'.format(meson.project_version()), |
|
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:
40355
diff
changeset
|
47 | '-DDISPLAY_VERSION="@0@"'.format(meson.project_version()), |
| 40481 | 48 | '-DPURPLE_WEBSITE="https://pidgin.im/"', |
|
41888
9db0b73c8fab
Take advantage of f-strings in Meson
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
41887
diff
changeset
|
49 | f'-DGETTEXT_PACKAGE="@GETTEXT_PACKAGE@"'], |
|
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:
40355
diff
changeset
|
50 | language : 'c') |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
51 | conf = configuration_data() |
|
38512
a8ee459a518c
Fix bugs in pkgconfig and man page substitutions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38510
diff
changeset
|
52 | man_conf = configuration_data() |
|
38440
98da84139485
Fix config.h usage with meson.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38439
diff
changeset
|
53 | version_conf = configuration_data() |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
54 | |
|
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:
40355
diff
changeset
|
55 | conf.set_quoted('GETTEXT_PACKAGE', GETTEXT_PACKAGE) |
|
39443
5cffc7a8c5e7
Move project version into meson init.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39428
diff
changeset
|
56 | conf.set_quoted('VERSION', meson.project_version()) |
|
40206
566c210f7003
Add PURPLE_VERSION and PURPLE_EXTRA_VERSION to libpurple/version.h and clean up some other related stuff
Gary Kramlich <grim@reaperworld.com>
parents:
40193
diff
changeset
|
57 | conf.set_quoted('DISPLAY_VERSION', meson.project_version()) |
|
38441
f8a1733e22bf
Move everything to config.h as originally intended.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38440
diff
changeset
|
58 | |
|
38440
98da84139485
Fix config.h usage with meson.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38439
diff
changeset
|
59 | version_conf.set('PURPLE_MAJOR_VERSION', purple_major_version) |
|
98da84139485
Fix config.h usage with meson.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38439
diff
changeset
|
60 | version_conf.set('PURPLE_MINOR_VERSION', purple_minor_version) |
|
98da84139485
Fix config.h usage with meson.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38439
diff
changeset
|
61 | version_conf.set('PURPLE_MICRO_VERSION', purple_micro_version) |
|
40206
566c210f7003
Add PURPLE_VERSION and PURPLE_EXTRA_VERSION to libpurple/version.h and clean up some other related stuff
Gary Kramlich <grim@reaperworld.com>
parents:
40193
diff
changeset
|
62 | version_conf.set('PURPLE_EXTRA_VERSION', purple_extra_version) |
|
39443
5cffc7a8c5e7
Move project version into meson init.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39428
diff
changeset
|
63 | version_conf.set('PURPLE_VERSION', meson.project_version()) |
|
5cffc7a8c5e7
Move project version into meson init.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39428
diff
changeset
|
64 | version_conf.set('PURPLE_API_VERSION', purple_soversion) |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
65 | |
|
41888
9db0b73c8fab
Take advantage of f-strings in Meson
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
41887
diff
changeset
|
66 | PURPLE_LIB_VERSION = f'@purple_soversion@.@purple_minor_version@.@purple_micro_version@' |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
67 | |
|
38462
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38461
diff
changeset
|
68 | package_revision = vcs_tag( |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38461
diff
changeset
|
69 | input : 'package_revision.h.in', |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38461
diff
changeset
|
70 | output : 'package_revision.h', |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38461
diff
changeset
|
71 | fallback : meson.project_version()) |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38461
diff
changeset
|
72 | |
|
41066
00e6bda3ef95
Add a Meson devenv configuration.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
41060
diff
changeset
|
73 | # For running `meson devenv`. |
|
00e6bda3ef95
Add a Meson devenv configuration.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
41060
diff
changeset
|
74 | devenv = environment() |
|
00e6bda3ef95
Add a Meson devenv configuration.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
41060
diff
changeset
|
75 | |
|
38512
a8ee459a518c
Fix bugs in pkgconfig and man page substitutions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38510
diff
changeset
|
76 | # For man pages. |
|
39443
5cffc7a8c5e7
Move project version into meson init.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39428
diff
changeset
|
77 | man_conf.set('VERSION', meson.project_version()) |
|
38512
a8ee459a518c
Fix bugs in pkgconfig and man page substitutions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38510
diff
changeset
|
78 | man_conf.set('prefix', get_option('prefix')) |
|
a8ee459a518c
Fix bugs in pkgconfig and man page substitutions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38510
diff
changeset
|
79 | |
|
38783
93d9173b62c8
Use meson pkgconfig generator.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38704
diff
changeset
|
80 | # Used for pkg-config files. |
|
93d9173b62c8
Use meson pkgconfig generator.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38704
diff
changeset
|
81 | pkgconfig = import('pkgconfig') |
|
38512
a8ee459a518c
Fix bugs in pkgconfig and man page substitutions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38510
diff
changeset
|
82 | |
|
38538
b542a6787116
Add meson arguments to About dialog.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38537
diff
changeset
|
83 | # Storing build arguments |
|
42357
0073491e35ff
Fix postconf script when used as a subproject
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
42289
diff
changeset
|
84 | meson.add_postconf_script('mkmesonconf.py', meson.project_build_root()) |
|
39947
f551e29dba6b
Bump minimum Meson to 0.47.0.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39932
diff
changeset
|
85 | conf.set('HAVE_MESON_CONFIG', true) |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
86 | |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
87 | # Checks for programs. |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
88 | compiler = meson.get_compiler('c') |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
89 | |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
90 | # Check for Sun compiler |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
91 | SUNCC = compiler.compiles('void main() {__SUNPRO_C;};') |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
92 | |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
93 | # Check for Win32 |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
94 | if host_machine.system() == 'windows' |
|
38487
9e341a7537bd
Use windows.compile_resources for Win32 resource files.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38486
diff
changeset
|
95 | windows = import('windows') |
|
9e341a7537bd
Use windows.compile_resources for Win32 resource files.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38486
diff
changeset
|
96 | |
|
38505
34ec73e49cd8
Remove duplicate is_win32 variables.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38503
diff
changeset
|
97 | IS_WIN32 = true |
|
38486
046f00bc7f33
Properly search for Windows DNS/socket libraries.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38485
diff
changeset
|
98 | ws2_32 = compiler.find_library('ws2_32') |
|
046f00bc7f33
Properly search for Windows DNS/socket libraries.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38485
diff
changeset
|
99 | dnsapi = compiler.find_library('dnsapi') |
|
38441
f8a1733e22bf
Move everything to config.h as originally intended.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38440
diff
changeset
|
100 | conf.set('WIN32_LEAN_AND_MEAN', true) |
|
39087
ac9849be4a10
win32: Define libpidgin DLL name in meson to avoid needing to change it
Mike Ruprecht <cmaiku@gmail.com>
parents:
39084
diff
changeset
|
101 | |
|
42471
860c2eed1a73
Fix DLL naming in metadata on Windows
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
42454
diff
changeset
|
102 | conf.set('LIBPIDGIN_DLL_NAMEW', f'L"pidgin3-@purple_soversion@.dll"') |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
103 | else |
|
38505
34ec73e49cd8
Remove duplicate is_win32 variables.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38503
diff
changeset
|
104 | IS_WIN32 = false |
|
38499
4f6cafbbf4f1
Replace declare_dependency() with [].
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38497
diff
changeset
|
105 | ws2_32 = [] |
|
4f6cafbbf4f1
Replace declare_dependency() with [].
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38497
diff
changeset
|
106 | dnsapi = [] |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
107 | endif |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
108 | |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
109 | # Checks for header files. |
|
40669
48dfed6f4f1f
Fix Windows builds and tests
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40668
diff
changeset
|
110 | conf.set('HAVE_UNISTD_H', compiler.has_header('unistd.h')) |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
111 | |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
112 | # Check for directories |
|
38505
34ec73e49cd8
Remove duplicate is_win32 variables.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38503
diff
changeset
|
113 | if IS_WIN32 |
|
39084
b3aeca5f3dac
Remove win32-dirs option
Mike Ruprecht <cmaiku@gmail.com>
parents:
39049
diff
changeset
|
114 | foreach dir : ['bin', 'lib', 'data', 'sysconf', 'locale'] |
|
40536
c0ea70247280
Switch join_paths and + to /.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40523
diff
changeset
|
115 | path = get_option('prefix') / get_option(dir + 'dir') |
|
39084
b3aeca5f3dac
Remove win32-dirs option
Mike Ruprecht <cmaiku@gmail.com>
parents:
39049
diff
changeset
|
116 | conf.set_quoted('WIN32_FHS_@0@DIR'.format(dir.to_upper()), path) |
|
b3aeca5f3dac
Remove win32-dirs option
Mike Ruprecht <cmaiku@gmail.com>
parents:
39049
diff
changeset
|
117 | endforeach |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
118 | |
|
39084
b3aeca5f3dac
Remove win32-dirs option
Mike Ruprecht <cmaiku@gmail.com>
parents:
39049
diff
changeset
|
119 | conf.set('PURPLE_LIBDIR', |
|
41888
9db0b73c8fab
Take advantage of f-strings in Meson
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
41887
diff
changeset
|
120 | f'wpurple_lib_dir("purple-@purple_major_version@")') |
|
39084
b3aeca5f3dac
Remove win32-dirs option
Mike Ruprecht <cmaiku@gmail.com>
parents:
39049
diff
changeset
|
121 | conf.set('PIDGIN_LIBDIR', |
|
41888
9db0b73c8fab
Take advantage of f-strings in Meson
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
41887
diff
changeset
|
122 | f'wpurple_lib_dir("pidgin-@purple_major_version@")') |
|
39084
b3aeca5f3dac
Remove win32-dirs option
Mike Ruprecht <cmaiku@gmail.com>
parents:
39049
diff
changeset
|
123 | conf.set('FINCH_LIBDIR', |
|
41888
9db0b73c8fab
Take advantage of f-strings in Meson
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
41887
diff
changeset
|
124 | f'wpurple_lib_dir("finch-@purple_major_version@")') |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
125 | |
|
38537
cc15d8626c0d
Fix quoting in configuration data.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38536
diff
changeset
|
126 | conf.set('PURPLE_DATADIR', 'wpurple_data_dir()') |
|
cc15d8626c0d
Fix quoting in configuration data.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38536
diff
changeset
|
127 | conf.set('PURPLE_SYSCONFDIR', 'wpurple_sysconf_dir()') |
|
cc15d8626c0d
Fix quoting in configuration data.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38536
diff
changeset
|
128 | conf.set('PURPLE_LOCALEDIR', 'wpurple_locale_dir()') |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
129 | else |
|
38464
fbd38fefb3b3
Clean up several archaic configuration attempts.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38463
diff
changeset
|
130 | foreach dir : ['data', 'sysconf', 'locale'] |
|
40536
c0ea70247280
Switch join_paths and + to /.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40523
diff
changeset
|
131 | path = get_option('prefix') / get_option(dir + 'dir') |
|
38537
cc15d8626c0d
Fix quoting in configuration data.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38536
diff
changeset
|
132 | conf.set_quoted('PURPLE_@0@DIR'.format(dir.to_upper()), path) |
|
38464
fbd38fefb3b3
Clean up several archaic configuration attempts.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38463
diff
changeset
|
133 | endforeach |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
134 | |
|
40536
c0ea70247280
Switch join_paths and + to /.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40523
diff
changeset
|
135 | common_libdir = get_option('prefix') / get_option('libdir') |
|
38537
cc15d8626c0d
Fix quoting in configuration data.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38536
diff
changeset
|
136 | conf.set_quoted('PURPLE_LIBDIR', |
|
41888
9db0b73c8fab
Take advantage of f-strings in Meson
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
41887
diff
changeset
|
137 | common_libdir / f'purple-@purple_major_version@') |
|
38537
cc15d8626c0d
Fix quoting in configuration data.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38536
diff
changeset
|
138 | conf.set_quoted('PIDGIN_LIBDIR', |
|
41888
9db0b73c8fab
Take advantage of f-strings in Meson
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
41887
diff
changeset
|
139 | common_libdir / f'pidgin-@purple_major_version@') |
|
38537
cc15d8626c0d
Fix quoting in configuration data.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38536
diff
changeset
|
140 | conf.set_quoted('FINCH_LIBDIR', |
|
41888
9db0b73c8fab
Take advantage of f-strings in Meson
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
41887
diff
changeset
|
141 | common_libdir / f'finch-@purple_major_version@') |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
142 | endif |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
143 | |
|
40536
c0ea70247280
Switch join_paths and + to /.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40523
diff
changeset
|
144 | abslibdir = get_option('prefix') / get_option('libdir') |
|
41888
9db0b73c8fab
Take advantage of f-strings in Meson
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
41887
diff
changeset
|
145 | PURPLE_PLUGINDIR = abslibdir / f'purple-@purple_major_version@' |
|
38537
cc15d8626c0d
Fix quoting in configuration data.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38536
diff
changeset
|
146 | conf.set_quoted('PURPLE_PLUGINDIR', PURPLE_PLUGINDIR) |
|
41888
9db0b73c8fab
Take advantage of f-strings in Meson
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
41887
diff
changeset
|
147 | PIDGIN_PLUGINDIR = abslibdir / f'pidgin-@purple_major_version@' |
|
38537
cc15d8626c0d
Fix quoting in configuration data.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38536
diff
changeset
|
148 | conf.set_quoted('PIDGIN_PLUGINDIR', PIDGIN_PLUGINDIR) |
|
41888
9db0b73c8fab
Take advantage of f-strings in Meson
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
41887
diff
changeset
|
149 | FINCH_PLUGINDIR = abslibdir / f'finch-@purple_major_version@' |
|
38537
cc15d8626c0d
Fix quoting in configuration data.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38536
diff
changeset
|
150 | conf.set_quoted('FINCH_PLUGINDIR', FINCH_PLUGINDIR) |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
151 | |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
152 | # Windows and Haiku do not use libm for the math functions, they are part |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
153 | # of the C library |
|
40669
48dfed6f4f1f
Fix Windows builds and tests
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40668
diff
changeset
|
154 | math = compiler.find_library('m', required: false) |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
155 | |
|
38508
d2fd9608f691
Properly add Apple Frameworks to build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38507
diff
changeset
|
156 | IOKIT = [] |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
157 | if host_machine.system() == 'darwin' |
|
41173
7ecbf09e5ec7
Add a new CredentialProvider for macOS Keychain Access
Gary Kramlich <grim@reaperworld.com>
parents:
41172
diff
changeset
|
158 | IOKIT = dependency('appleframeworks', |
|
7ecbf09e5ec7
Add a new CredentialProvider for macOS Keychain Access
Gary Kramlich <grim@reaperworld.com>
parents:
41172
diff
changeset
|
159 | modules : ['IOKit', 'CoreFoundation']) |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
160 | |
|
41173
7ecbf09e5ec7
Add a new CredentialProvider for macOS Keychain Access
Gary Kramlich <grim@reaperworld.com>
parents:
41172
diff
changeset
|
161 | conf.set('HAVE_IOKIT', true) |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
162 | endif |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
163 | |
|
41319
04d027ed3d63
Add gdk-pixbuf as a libpurple dependency and move helpers from pidgin to purple
Gary Kramlich <grim@reaperworld.com>
parents:
41317
diff
changeset
|
164 | ####################################################################### |
|
04d027ed3d63
Add gdk-pixbuf as a libpurple dependency and move helpers from pidgin to purple
Gary Kramlich <grim@reaperworld.com>
parents:
41317
diff
changeset
|
165 | # Check for GLib (required) |
|
04d027ed3d63
Add gdk-pixbuf as a libpurple dependency and move helpers from pidgin to purple
Gary Kramlich <grim@reaperworld.com>
parents:
41317
diff
changeset
|
166 | ####################################################################### |
|
41847
5d7611d8e18b
Fix an issue where gio was bombing out early and causing our unit tests to fail
Gary Kramlich <grim@reaperworld.com>
parents:
41843
diff
changeset
|
167 | # Once we require >= 2.74.0, remove the hack in the if(TRUE) block in |
|
5d7611d8e18b
Fix an issue where gio was bombing out early and causing our unit tests to fail
Gary Kramlich <grim@reaperworld.com>
parents:
41843
diff
changeset
|
168 | # libpurple/core.c. |
|
42251
63639da06cbd
Require GTK 4.10 and GLib 2.76
Gary Kramlich <grim@reaperworld.com>
parents:
42229
diff
changeset
|
169 | glib = dependency('glib-2.0', version : '>= 2.76.0') |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
170 | gio = dependency('gio-2.0') |
|
38485
1e6d05a66fd2
Fix several undefined variables when things are disabled.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38483
diff
changeset
|
171 | gnome = import('gnome') |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
172 | |
|
41150
b60171ce4589
remove the glib version macros from internal.h to meson and make sure everything is consistent
Gary Kramlich <grim@reaperworld.com>
parents:
41142
diff
changeset
|
173 | add_project_arguments( |
|
42251
63639da06cbd
Require GTK 4.10 and GLib 2.76
Gary Kramlich <grim@reaperworld.com>
parents:
42229
diff
changeset
|
174 | '-DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_76', |
|
63639da06cbd
Require GTK 4.10 and GLib 2.76
Gary Kramlich <grim@reaperworld.com>
parents:
42229
diff
changeset
|
175 | '-DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_76', |
|
41150
b60171ce4589
remove the glib version macros from internal.h to meson and make sure everything is consistent
Gary Kramlich <grim@reaperworld.com>
parents:
41142
diff
changeset
|
176 | language : 'c',) |
|
b60171ce4589
remove the glib version macros from internal.h to meson and make sure everything is consistent
Gary Kramlich <grim@reaperworld.com>
parents:
41142
diff
changeset
|
177 | |
|
39951
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
178 | ####################################################################### |
|
41319
04d027ed3d63
Add gdk-pixbuf as a libpurple dependency and move helpers from pidgin to purple
Gary Kramlich <grim@reaperworld.com>
parents:
41317
diff
changeset
|
179 | # Check for gdk-pixbuf (required) |
|
04d027ed3d63
Add gdk-pixbuf as a libpurple dependency and move helpers from pidgin to purple
Gary Kramlich <grim@reaperworld.com>
parents:
41317
diff
changeset
|
180 | ####################################################################### |
|
42203
9cb78e799a79
Port the demo protocol plugin to contacts
Gary Kramlich <grim@reaperworld.com>
parents:
42183
diff
changeset
|
181 | gdk_pixbuf = dependency('gdk-pixbuf-2.0', version : '>= 2.26.0') |
|
41319
04d027ed3d63
Add gdk-pixbuf as a libpurple dependency and move helpers from pidgin to purple
Gary Kramlich <grim@reaperworld.com>
parents:
41317
diff
changeset
|
182 | |
|
04d027ed3d63
Add gdk-pixbuf as a libpurple dependency and move helpers from pidgin to purple
Gary Kramlich <grim@reaperworld.com>
parents:
41317
diff
changeset
|
183 | ####################################################################### |
|
39951
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
184 | # Check for GObject Introspection |
|
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
185 | ####################################################################### |
|
40640
ce42c0efab90
Fix introspection meson option.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40619
diff
changeset
|
186 | if get_option('introspection') |
|
41175
372df64f6b1a
Bump minimum requirements to match GTK4
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
41173
diff
changeset
|
187 | enable_introspection = dependency('gobject-introspection-1.0', version : '>= 1.39.0').found() |
|
40640
ce42c0efab90
Fix introspection meson option.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40619
diff
changeset
|
188 | else |
|
ce42c0efab90
Fix introspection meson option.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40619
diff
changeset
|
189 | enable_introspection = false |
|
ce42c0efab90
Fix introspection meson option.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40619
diff
changeset
|
190 | endif |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
191 | |
|
40197
75ffd76260fc
Bump the gtk minimum to 3.22 and remove gtk3compat.h
Gary Kramlich <grim@reaperworld.com>
parents:
40193
diff
changeset
|
192 | ####################################################################### |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
193 | # Check Pidgin dependencies |
|
40197
75ffd76260fc
Bump the gtk minimum to 3.22 and remove gtk3compat.h
Gary Kramlich <grim@reaperworld.com>
parents:
40193
diff
changeset
|
194 | ####################################################################### |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
195 | if get_option('gtkui') |
|
42251
63639da06cbd
Require GTK 4.10 and GLib 2.76
Gary Kramlich <grim@reaperworld.com>
parents:
42229
diff
changeset
|
196 | gtk = dependency('gtk4', version : '>= 4.10.0') |
|
41852
cde17b22217f
Update to libadwaita 1.2
Gary Kramlich <grim@reaperworld.com>
parents:
41848
diff
changeset
|
197 | libadwaita = dependency('libadwaita-1', version : '>= 1.2') |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
198 | endif # GTK |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
199 | |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
200 | ENABLE_GTK = get_option('gtkui') |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
201 | |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
202 | |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
203 | ####################################################################### |
|
38865
a62a8251e350
Use correct X flag when configuring GNT plugins.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38851
diff
changeset
|
204 | # Check if we should compile with X support |
|
a62a8251e350
Use correct X flag when configuring GNT plugins.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38851
diff
changeset
|
205 | ####################################################################### |
|
39951
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
206 | if IS_WIN32 |
|
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
207 | x11 = disabler() |
|
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
208 | else |
|
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
209 | x11 = dependency('x11', required : get_option('x')) |
|
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
210 | endif |
|
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
211 | conf.set('HAVE_X11', x11.found()) |
|
38865
a62a8251e350
Use correct X flag when configuring GNT plugins.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38851
diff
changeset
|
212 | |
|
a62a8251e350
Use correct X flag when configuring GNT plugins.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38851
diff
changeset
|
213 | ####################################################################### |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
214 | # Check for LibXML2 (required) |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
215 | ####################################################################### |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
216 | libxml = dependency('libxml-2.0', version : '>= 2.6.0') |
|
38464
fbd38fefb3b3
Clean up several archaic configuration attempts.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38463
diff
changeset
|
217 | if libxml.version().version_compare('<2.6.18') |
|
fbd38fefb3b3
Clean up several archaic configuration attempts.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38463
diff
changeset
|
218 | message('Versions of libxml2 < 2.6.18 may contain bugs that could cause XMPP messages to be discarded.') |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
219 | endif |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
220 | |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
221 | ####################################################################### |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
222 | # Check for JSON-GLib (required) |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
223 | ####################################################################### |
|
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 | json = dependency('json-glib-1.0', version : '>= 0.14.0') |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
226 | |
| 41828 | 227 | ###################################################################### |
|
39989
e557e081686c
Check for libsoup as a dependency.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39951
diff
changeset
|
228 | # Check for libsoup (required) |
|
e557e081686c
Check for libsoup as a dependency.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39951
diff
changeset
|
229 | ####################################################################### |
|
e557e081686c
Check for libsoup as a dependency.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39951
diff
changeset
|
230 | |
|
41921
24e5305ebcb6
Remove soupcompat.h since we require libsoup3 now
Gary Kramlich <grim@reaperworld.com>
parents:
41913
diff
changeset
|
231 | libsoup = dependency('libsoup-3.0', version : '>= 3') |
|
24e5305ebcb6
Remove soupcompat.h since we require libsoup3 now
Gary Kramlich <grim@reaperworld.com>
parents:
41913
diff
changeset
|
232 | add_project_arguments( |
|
24e5305ebcb6
Remove soupcompat.h since we require libsoup3 now
Gary Kramlich <grim@reaperworld.com>
parents:
41913
diff
changeset
|
233 | '-DSOUP_VERSION_MIN_REQUIRED=SOUP_VERSION_3_0', |
|
24e5305ebcb6
Remove soupcompat.h since we require libsoup3 now
Gary Kramlich <grim@reaperworld.com>
parents:
41913
diff
changeset
|
234 | '-DSOUP_VERSION_MAX_ALLOWED=SOUP_VERSION_3_0', |
|
24e5305ebcb6
Remove soupcompat.h since we require libsoup3 now
Gary Kramlich <grim@reaperworld.com>
parents:
41913
diff
changeset
|
235 | language : 'c') |
|
39989
e557e081686c
Check for libsoup as a dependency.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39951
diff
changeset
|
236 | |
|
e557e081686c
Check for libsoup as a dependency.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39951
diff
changeset
|
237 | ####################################################################### |
|
41090
741992355ead
GSoC History API including sqlite history adapter
James Culver <rewtguy@gmail.com>
parents:
41082
diff
changeset
|
238 | # Check for sqlite3 (required) |
|
741992355ead
GSoC History API including sqlite history adapter
James Culver <rewtguy@gmail.com>
parents:
41082
diff
changeset
|
239 | ####################################################################### |
|
741992355ead
GSoC History API including sqlite history adapter
James Culver <rewtguy@gmail.com>
parents:
41082
diff
changeset
|
240 | sqlite3 = dependency('sqlite3', version : '>= 3.27.0') |
|
741992355ead
GSoC History API including sqlite history adapter
James Culver <rewtguy@gmail.com>
parents:
41082
diff
changeset
|
241 | |
|
741992355ead
GSoC History API including sqlite history adapter
James Culver <rewtguy@gmail.com>
parents:
41082
diff
changeset
|
242 | ####################################################################### |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
243 | # Check for GStreamer |
|
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 | |
|
40547
86e0c5080a58
vv: Switch to GTK sinks by default.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40536
diff
changeset
|
246 | gstreamer = dependency('gstreamer-1.0', version : '>=1.14') |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
247 | |
|
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 | # Check for Raw data streams support in Farstream |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
250 | ####################################################################### |
|
41490
2b1695327414
Make VV libraries required
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
41488
diff
changeset
|
251 | gstreamer_app = dependency('gstreamer-app-1.0') |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
252 | |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
253 | ####################################################################### |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
254 | # Check for Native Avahi headers (for Bonjour) |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
255 | ####################################################################### |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
256 | |
|
39951
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
257 | if IS_WIN32 |
|
38497
fcf50c9e4138
Remove non-pkg-config fallbacks.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38496
diff
changeset
|
258 | # Just keep enabled. |
|
39951
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
259 | enable_avahi = get_option('avahi').enabled() or get_option('avahi').auto() |
|
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
260 | avahi = [] |
|
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
261 | else |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
262 | # Attempt to autodetect Avahi |
|
39951
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
263 | avahi_client = dependency('avahi-client', required : get_option('avahi')) |
|
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
264 | avahi_glib = dependency('avahi-glib', required : get_option('avahi')) |
|
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
265 | avahi = [avahi_client, avahi_glib] |
|
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
266 | enable_avahi = avahi_client.found() and avahi_glib.found() |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
267 | endif |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
268 | |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
269 | ####################################################################### |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
270 | # Check for Gadu-Gadu protocol library (libgadu) |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
271 | ####################################################################### |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
272 | |
|
39951
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
273 | libgadu = dependency('libgadu', version : '>= 1.12.0', required : get_option('libgadu')) |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
274 | |
|
39951
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
275 | if libgadu.found() |
|
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
276 | if not compiler.has_function('gg_is_gpl_compliant', dependencies : libgadu) |
|
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
277 | if get_option('libgadu').auto() |
|
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
278 | libgadu = disabler() |
|
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
279 | else |
|
38482
aeed00394acf
Update meson build to match autotools.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38480
diff
changeset
|
280 | message(''' |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
281 | libgadu is not compatible with the GPL when compiled with OpenSSL support. |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
282 | |
|
38532
ce789b341027
Fix a few inconsistencies between build systems.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38531
diff
changeset
|
283 | To link against libgadu, please recompile it using: |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
284 | ./configure --with-openssl=no |
|
38532
ce789b341027
Fix a few inconsistencies between build systems.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38531
diff
changeset
|
285 | Then rerun this Meson build |
|
38482
aeed00394acf
Update meson build to match autotools.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38480
diff
changeset
|
286 | ''') |
|
aeed00394acf
Update meson build to match autotools.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38480
diff
changeset
|
287 | endif |
|
aeed00394acf
Update meson build to match autotools.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38480
diff
changeset
|
288 | endif |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
289 | endif |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
290 | |
|
42529
f00a798a38a6
Stub out our new modern XMPP implementation
Gary Kramlich <grim@reaperworld.com>
parents:
42520
diff
changeset
|
291 | ####################################################################### |
|
f00a798a38a6
Stub out our new modern XMPP implementation
Gary Kramlich <grim@reaperworld.com>
parents:
42520
diff
changeset
|
292 | # Check for Xeme XMPP Library |
|
f00a798a38a6
Stub out our new modern XMPP implementation
Gary Kramlich <grim@reaperworld.com>
parents:
42520
diff
changeset
|
293 | ####################################################################### |
|
f00a798a38a6
Stub out our new modern XMPP implementation
Gary Kramlich <grim@reaperworld.com>
parents:
42520
diff
changeset
|
294 | xeme = dependency('xeme') |
|
f00a798a38a6
Stub out our new modern XMPP implementation
Gary Kramlich <grim@reaperworld.com>
parents:
42520
diff
changeset
|
295 | |
|
42289
27ca1fa06a24
Require hasl 0.2.0 or newer
Gary Kramlich <grim@reaperworld.com>
parents:
42284
diff
changeset
|
296 | dependency('shoes', required : false) |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
297 | |
|
42529
f00a798a38a6
Stub out our new modern XMPP implementation
Gary Kramlich <grim@reaperworld.com>
parents:
42520
diff
changeset
|
298 | DEFAULT_PRPLS = ['bonjour', 'demo', 'gg', 'ircv3', 'jabber', 'xmpp'] |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
299 | |
|
38464
fbd38fefb3b3
Clean up several archaic configuration attempts.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38463
diff
changeset
|
300 | dynamic_list = get_option('dynamic-prpls').split(',') |
|
fbd38fefb3b3
Clean up several archaic configuration attempts.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38463
diff
changeset
|
301 | if dynamic_list == ['all'] |
|
fbd38fefb3b3
Clean up several archaic configuration attempts.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38463
diff
changeset
|
302 | dynamic_list = DEFAULT_PRPLS |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
303 | endif |
|
38464
fbd38fefb3b3
Clean up several archaic configuration attempts.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38463
diff
changeset
|
304 | DYNAMIC_PRPLS = [] |
|
fbd38fefb3b3
Clean up several archaic configuration attempts.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38463
diff
changeset
|
305 | foreach prpl : dynamic_list |
|
fbd38fefb3b3
Clean up several archaic configuration attempts.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38463
diff
changeset
|
306 | if prpl == '' |
|
fbd38fefb3b3
Clean up several archaic configuration attempts.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38463
diff
changeset
|
307 | # The list was empty; do nothing. |
|
42529
f00a798a38a6
Stub out our new modern XMPP implementation
Gary Kramlich <grim@reaperworld.com>
parents:
42520
diff
changeset
|
308 | elif prpl == 'bonjour' and not enable_avahi and not xeme.found() |
|
38464
fbd38fefb3b3
Clean up several archaic configuration attempts.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38463
diff
changeset
|
309 | # Do nothing. |
|
39951
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
310 | elif prpl == 'gg' and not libgadu.found() |
|
38482
aeed00394acf
Update meson build to match autotools.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38480
diff
changeset
|
311 | # Do nothing. |
|
42529
f00a798a38a6
Stub out our new modern XMPP implementation
Gary Kramlich <grim@reaperworld.com>
parents:
42520
diff
changeset
|
312 | elif prpl == 'xmpp' and not xeme.found() |
|
f00a798a38a6
Stub out our new modern XMPP implementation
Gary Kramlich <grim@reaperworld.com>
parents:
42520
diff
changeset
|
313 | # Do nothing. |
|
38464
fbd38fefb3b3
Clean up several archaic configuration attempts.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38463
diff
changeset
|
314 | else |
|
fbd38fefb3b3
Clean up several archaic configuration attempts.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38463
diff
changeset
|
315 | DYNAMIC_PRPLS += [prpl] |
|
fbd38fefb3b3
Clean up several archaic configuration attempts.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38463
diff
changeset
|
316 | endif |
|
fbd38fefb3b3
Clean up several archaic configuration attempts.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38463
diff
changeset
|
317 | endforeach |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
318 | |
|
38443
86f66bcb3d62
Add bonjour to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38442
diff
changeset
|
319 | DYNAMIC_BONJOUR = DYNAMIC_PRPLS.contains('bonjour') |
|
41224
32a7796a2a36
Create a demo protocol plugin that right now just adds contacts and statuses.
Gary Kramlich <grim@reaperworld.com>
parents:
41217
diff
changeset
|
320 | DYNAMIC_DEMO = DYNAMIC_PRPLS.contains('demo') |
|
38784
d003e9305e58
Fix broken gg enabling.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38783
diff
changeset
|
321 | DYNAMIC_GG = DYNAMIC_PRPLS.contains('gg') |
|
41750
7ab7d79ac0c5
Create a skeleton for the IRCv3 protocol plugin
Gary Kramlich <grim@reaperworld.com>
parents:
41707
diff
changeset
|
322 | DYNAMIC_IRCV3 = DYNAMIC_PRPLS.contains('ircv3') |
|
38443
86f66bcb3d62
Add bonjour to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38442
diff
changeset
|
323 | DYNAMIC_JABBER = DYNAMIC_PRPLS.contains('jabber') |
|
42529
f00a798a38a6
Stub out our new modern XMPP implementation
Gary Kramlich <grim@reaperworld.com>
parents:
42520
diff
changeset
|
324 | DYNAMIC_XMPP = DYNAMIC_PRPLS.contains('xmpp') |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
325 | |
|
38524
4b665cbc6aa7
Actually apply deprecation flags.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38523
diff
changeset
|
326 | add_project_arguments( |
|
4b665cbc6aa7
Actually apply deprecation flags.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38523
diff
changeset
|
327 | '-DPURPLE_DISABLE_DEPRECATED', |
|
4b665cbc6aa7
Actually apply deprecation flags.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38523
diff
changeset
|
328 | '-DPIDGIN_DISABLE_DEPRECATED', |
|
4b665cbc6aa7
Actually apply deprecation flags.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38523
diff
changeset
|
329 | '-DFINCH_DISABLE_DEPRECATED', |
|
4b665cbc6aa7
Actually apply deprecation flags.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38523
diff
changeset
|
330 | '-DGNT_DISABLE_DEPRECATED', |
|
4b665cbc6aa7
Actually apply deprecation flags.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38523
diff
changeset
|
331 | language : 'c') |
|
39247
ee65e9be3a5f
Don't mess with flags when using plain buildtype.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39206
diff
changeset
|
332 | if get_option('buildtype') != 'plain' and compiler.get_id() == 'gcc' |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
333 | # We enable -Wall later. |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
334 | # If it's set after the warning CFLAGS in the compiler invocation, it counteracts the -Wno... flags. |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
335 | # This leads to warnings we don't want. |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
336 | # CFLAGS=`echo $CFLAGS |$sedpath 's/-Wall//'` |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
337 | |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
338 | # ENABLE WARNINGS SUPPORTED BY THE VERSION OF GCC IN USE |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
339 | # |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
340 | # Future Possibilities |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
341 | # |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
342 | # Consider adding -Wbad-function-cast. |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
343 | # This leads to spurious warnings using GPOINTER_TO_INT(), et al. directly on a function call. |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
344 | # We'd need an intermediate variable. |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
345 | # |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
346 | foreach newflag : [ |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
347 | '-Waggregate-return', |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
348 | '-Wcast-align', |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
349 | '-Wdeclaration-after-statement', |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
350 | '-Wendif-labels', |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
351 | '-Werror-implicit-function-declaration', |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
352 | '-Wextra -Wno-unused-parameter', |
|
39109
1bb4f9bcee45
meson: Silence -Wformat-security ignored without -Wformat warning
Mike Ruprecht <cmaiku@gmail.com>
parents:
39088
diff
changeset
|
353 | '-Wformat', |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
354 | '-Wformat-security', |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
355 | '-Werror=format-security', |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
356 | '-Winit-self', |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
357 | '-Wmissing-declarations', |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
358 | '-Wmissing-noreturn', |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
359 | '-Wmissing-prototypes', |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
360 | '-Wpointer-arith', |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
361 | '-Wfloat-equal', |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
362 | '-Wundef'] |
|
38464
fbd38fefb3b3
Clean up several archaic configuration attempts.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38463
diff
changeset
|
363 | if compiler.has_argument(newflag) |
|
38523
2457e9c0f5de
Use add_project_arguments instead of add_global_arguments.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38520
diff
changeset
|
364 | add_project_arguments(newflag, language : 'c') |
|
38464
fbd38fefb3b3
Clean up several archaic configuration attempts.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38463
diff
changeset
|
365 | endif |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
366 | endforeach |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
367 | endif |
|
39247
ee65e9be3a5f
Don't mess with flags when using plain buildtype.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39206
diff
changeset
|
368 | if get_option('buildtype') != 'plain' and SUNCC |
|
38523
2457e9c0f5de
Use add_project_arguments instead of add_global_arguments.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38520
diff
changeset
|
369 | add_project_arguments('-features=extensions', language : 'c') |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
370 | endif |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
371 | |
|
40989
f77cf4694364
We should be checking for the pidgin3 executable not pidgin
Gary Kramlich <grim@reaperworld.com>
parents:
40988
diff
changeset
|
372 | pidgin3path = find_program('pidgin3', required : false) |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
373 | |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
374 | ####################################################################### |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
375 | # Check for Unity and Messaging Menu |
|
38531
0b7c991bc3e4
Clean up stuff from grim's review.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38529
diff
changeset
|
376 | # Remove when Ubuntu 16.04 is EOL |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
377 | ####################################################################### |
|
39951
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
378 | UNITY = [ |
|
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
379 | dependency('unity', version : '>= 6.8', required : get_option('unity-integration')), |
|
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
380 | dependency('messaging-menu', version : '>= 12.10', required : get_option('unity-integration')) |
|
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
381 | ] |
|
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
382 | enable_unity = UNITY[0].found() and UNITY[1].found() |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
383 | if enable_unity |
|
38509
551e37963d38
Fix some missing substitutions.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38508
diff
changeset
|
384 | conf.set('USES_MM_CHAT_SECTION', 'X-MessagingMenu-UsesChatSection=true') |
|
38704
ba0c47533bb2
Fix Meson warning of undefined substitution.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38641
diff
changeset
|
385 | else |
|
ba0c47533bb2
Fix Meson warning of undefined substitution.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38641
diff
changeset
|
386 | conf.set('USES_MM_CHAT_SECTION', '') |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
387 | endif |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
388 | |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
389 | ####################################################################### |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
390 | # Check for Secret Service headers |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
391 | ####################################################################### |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
392 | |
|
39951
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
393 | if IS_WIN32 |
|
41172
db38cdfbc59e
Rename the secretservice plugin to libsecret and move it into the plugins directory
Gary Kramlich <grim@reaperworld.com>
parents:
41169
diff
changeset
|
394 | libsecret = disabler() |
|
39951
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
395 | else |
|
41172
db38cdfbc59e
Rename the secretservice plugin to libsecret and move it into the plugins directory
Gary Kramlich <grim@reaperworld.com>
parents:
41169
diff
changeset
|
396 | libsecret = dependency('libsecret-1', required : get_option('libsecret')) |
|
38482
aeed00394acf
Update meson build to match autotools.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38480
diff
changeset
|
397 | endif |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
398 | |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
399 | ####################################################################### |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
400 | # Check for KWallet headers |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
401 | ####################################################################### |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
402 | |
|
40999
9e5a5eb54a57
bump the minimum meson to 0.56.0 and fix the deprecations
Gary Kramlich <grim@reaperworld.com>
parents:
40989
diff
changeset
|
403 | if IS_WIN32 or not add_languages('cpp', required : get_option('kwallet'), native: false) |
|
39951
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
404 | kwallet = disabler() |
|
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
405 | else |
|
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:
40355
diff
changeset
|
406 | add_project_arguments([ |
|
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:
40355
diff
changeset
|
407 | '-DDISPLAY_VERSION="@0@"'.format(meson.project_version()), |
| 40481 | 408 | '-DPURPLE_WEBSITE="https://pidgin.im/"', |
|
41888
9db0b73c8fab
Take advantage of f-strings in Meson
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
41887
diff
changeset
|
409 | f'-DGETTEXT_PACKAGE="@GETTEXT_PACKAGE@"'], |
|
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:
40355
diff
changeset
|
410 | language : 'cpp') |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
411 | |
|
39923
f977be37ebc0
Get the kwallet plugin compiling again
Gary Kramlich <grim@reaperworld.com>
parents:
39830
diff
changeset
|
412 | qt5 = import('qt5') |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
413 | |
|
42373
7f7617773171
fix problem that Pidgin3 couldn't be run using broadway GDK_BACKEND anymore
Markus Fischer <ivanhoe@fiscari.de>
parents:
42372
diff
changeset
|
414 | qt5_dep = dependency('qt5', modules: ['Core'], required : get_option('kwallet')) |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
415 | |
|
39951
e9eaaff671c9
Convert optional dependencies into Meson features.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39950
diff
changeset
|
416 | kwallet = dependency('KF5Wallet', required : get_option('kwallet')) |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
417 | endif |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
418 | |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
419 | ####################################################################### |
|
40224
6b658d1458c8
Fix a handful of issues found in review
Gary Kramlich <grim@reaperworld.com>
parents:
40219
diff
changeset
|
420 | # Check for GPlugin |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
421 | ####################################################################### |
|
42504
02c38caf387b
Depend on GPlugin 0.42.1
Gary Kramlich <grim@reaperworld.com>
parents:
42502
diff
changeset
|
422 | gplugin_version = ['>=0.42.1', '<0.43.0'] |
|
41056
a9447c1653a5
Convert the gplugin subproject to use the auto fallback stuff of dependency.
Gary Kramlich <grim@reaperworld.com>
parents:
41040
diff
changeset
|
423 | gplugin_dep = dependency('gplugin', |
|
41402
4f7076b8234a
Update gplugin to 0.38
Gary Kramlich <grim@reaperworld.com>
parents:
41331
diff
changeset
|
424 | version : gplugin_version, |
|
41056
a9447c1653a5
Convert the gplugin subproject to use the auto fallback stuff of dependency.
Gary Kramlich <grim@reaperworld.com>
parents:
41040
diff
changeset
|
425 | fallback : ['gplugin', 'gplugin_dep']) |
|
40216
bf78d5476c6a
initial start of moving the plugins dialog to glade
Gary Kramlich <grim@reaperworld.com>
parents:
40207
diff
changeset
|
426 | |
|
41056
a9447c1653a5
Convert the gplugin subproject to use the auto fallback stuff of dependency.
Gary Kramlich <grim@reaperworld.com>
parents:
41040
diff
changeset
|
427 | if get_option('gtkui') |
|
41518
31072565a926
And so begins the start of the GTK4 port
Gary Kramlich <grim@reaperworld.com>
parents:
41490
diff
changeset
|
428 | gplugin_gtk_dep = dependency('gplugin-gtk4', |
|
41402
4f7076b8234a
Update gplugin to 0.38
Gary Kramlich <grim@reaperworld.com>
parents:
41331
diff
changeset
|
429 | version : gplugin_version, |
|
41518
31072565a926
And so begins the start of the GTK4 port
Gary Kramlich <grim@reaperworld.com>
parents:
41490
diff
changeset
|
430 | fallback : ['gplugin-gtk4', 'gplugin_gtk4_dep']) |
|
39426
2e4f09a49404
Add fallback for gplugin.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39419
diff
changeset
|
431 | endif |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
432 | |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
433 | ####################################################################### |
|
42110
23dae27bd7ca
Remove cyrus sasl as a dependency
Gary Kramlich <grim@reaperworld.com>
parents:
42094
diff
changeset
|
434 | # Check for Hasl |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
435 | ####################################################################### |
|
42289
27ca1fa06a24
Require hasl 0.2.0 or newer
Gary Kramlich <grim@reaperworld.com>
parents:
42284
diff
changeset
|
436 | hasl = dependency('hasl', version : '>= 0.2.0') |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
437 | |
|
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
438 | ####################################################################### |
|
41105
02c3569bc32b
Add gi-docgen as a subproject so we can convert the documentation to it
Gary Kramlich <grim@reaperworld.com>
parents:
41103
diff
changeset
|
439 | # Documentation |
|
02c3569bc32b
Add gi-docgen as a subproject so we can convert the documentation to it
Gary Kramlich <grim@reaperworld.com>
parents:
41103
diff
changeset
|
440 | ####################################################################### |
|
02c3569bc32b
Add gi-docgen as a subproject so we can convert the documentation to it
Gary Kramlich <grim@reaperworld.com>
parents:
41103
diff
changeset
|
441 | |
|
02c3569bc32b
Add gi-docgen as a subproject so we can convert the documentation to it
Gary Kramlich <grim@reaperworld.com>
parents:
41103
diff
changeset
|
442 | if get_option('doc') and not get_option('introspection') |
|
02c3569bc32b
Add gi-docgen as a subproject so we can convert the documentation to it
Gary Kramlich <grim@reaperworld.com>
parents:
41103
diff
changeset
|
443 | error('Documentation requires GObject Introspection.') |
|
02c3569bc32b
Add gi-docgen as a subproject so we can convert the documentation to it
Gary Kramlich <grim@reaperworld.com>
parents:
41103
diff
changeset
|
444 | endif |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
445 | |
|
42372
ba3a49903905
Remove unused Meson variables
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
42357
diff
changeset
|
446 | dependency( |
|
41105
02c3569bc32b
Add gi-docgen as a subproject so we can convert the documentation to it
Gary Kramlich <grim@reaperworld.com>
parents:
41103
diff
changeset
|
447 | 'gi-docgen', version: '>= 2021.1', |
|
02c3569bc32b
Add gi-docgen as a subproject so we can convert the documentation to it
Gary Kramlich <grim@reaperworld.com>
parents:
41103
diff
changeset
|
448 | fallback: ['gi-docgen', 'dummy_dep'], |
|
02c3569bc32b
Add gi-docgen as a subproject so we can convert the documentation to it
Gary Kramlich <grim@reaperworld.com>
parents:
41103
diff
changeset
|
449 | required: get_option('doc') |
|
02c3569bc32b
Add gi-docgen as a subproject so we can convert the documentation to it
Gary Kramlich <grim@reaperworld.com>
parents:
41103
diff
changeset
|
450 | ) |
|
02c3569bc32b
Add gi-docgen as a subproject so we can convert the documentation to it
Gary Kramlich <grim@reaperworld.com>
parents:
41103
diff
changeset
|
451 | |
|
02c3569bc32b
Add gi-docgen as a subproject so we can convert the documentation to it
Gary Kramlich <grim@reaperworld.com>
parents:
41103
diff
changeset
|
452 | gidocgen = find_program('gi-docgen', required : get_option('doc')) |
|
02c3569bc32b
Add gi-docgen as a subproject so we can convert the documentation to it
Gary Kramlich <grim@reaperworld.com>
parents:
41103
diff
changeset
|
453 | docs_dir = get_option('prefix') / get_option('datadir') / 'doc' |
|
02c3569bc32b
Add gi-docgen as a subproject so we can convert the documentation to it
Gary Kramlich <grim@reaperworld.com>
parents:
41103
diff
changeset
|
454 | |
|
02c3569bc32b
Add gi-docgen as a subproject so we can convert the documentation to it
Gary Kramlich <grim@reaperworld.com>
parents:
41103
diff
changeset
|
455 | ####################################################################### |
|
02c3569bc32b
Add gi-docgen as a subproject so we can convert the documentation to it
Gary Kramlich <grim@reaperworld.com>
parents:
41103
diff
changeset
|
456 | # Random Stuff |
|
02c3569bc32b
Add gi-docgen as a subproject so we can convert the documentation to it
Gary Kramlich <grim@reaperworld.com>
parents:
41103
diff
changeset
|
457 | ####################################################################### |
|
41082
d19ef491d1aa
Fix console logging and turn it on unconditionally if we're doing a debug build
Gary Kramlich <grim@reaperworld.com>
parents:
41078
diff
changeset
|
458 | if ['debug', 'debugoptimize'].contains(get_option('buildtype')) |
|
d19ef491d1aa
Fix console logging and turn it on unconditionally if we're doing a debug build
Gary Kramlich <grim@reaperworld.com>
parents:
41078
diff
changeset
|
459 | enable_debug = true |
|
d19ef491d1aa
Fix console logging and turn it on unconditionally if we're doing a debug build
Gary Kramlich <grim@reaperworld.com>
parents:
41078
diff
changeset
|
460 | else |
|
d19ef491d1aa
Fix console logging and turn it on unconditionally if we're doing a debug build
Gary Kramlich <grim@reaperworld.com>
parents:
41078
diff
changeset
|
461 | enable_debug = get_option('console-logging') |
|
d19ef491d1aa
Fix console logging and turn it on unconditionally if we're doing a debug build
Gary Kramlich <grim@reaperworld.com>
parents:
41078
diff
changeset
|
462 | endif |
|
38441
f8a1733e22bf
Move everything to config.h as originally intended.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38440
diff
changeset
|
463 | conf.set('DEBUG', enable_debug) |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
464 | |
|
42410
563e7a17c220
Fix possible clash of config headers
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
42405
diff
changeset
|
465 | # So that purpleconfig.h may be found. |
|
38440
98da84139485
Fix config.h usage with meson.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38439
diff
changeset
|
466 | toplevel_inc = include_directories('.') |
|
98da84139485
Fix config.h usage with meson.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38439
diff
changeset
|
467 | |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
468 | subdir('libpurple') |
|
41090
741992355ead
GSoC History API including sqlite history adapter
James Culver <rewtguy@gmail.com>
parents:
41082
diff
changeset
|
469 | subdir('purple-history') |
|
38462
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38461
diff
changeset
|
470 | subdir('finch') |
|
38469
7e4faa3741ad
Add Pidgin to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38468
diff
changeset
|
471 | subdir('pidgin') |
|
42529
f00a798a38a6
Stub out our new modern XMPP implementation
Gary Kramlich <grim@reaperworld.com>
parents:
42520
diff
changeset
|
472 | subdir('protocols') |
|
38515
2d4d3a8fd23c
Add documentation to Meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38512
diff
changeset
|
473 | subdir('doc') |
|
40461
25f653ee017e
Change the logic for determining whether or not to install translations
Gary Kramlich <grim@reaperworld.com>
parents:
40439
diff
changeset
|
474 | subdir('po') |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
475 | |
|
42410
563e7a17c220
Fix possible clash of config headers
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
42405
diff
changeset
|
476 | configure_file(output: 'purpleconfig.h', configuration: conf) |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
477 | |
|
41194
8c2b4f1de39c
Remove a no longer necessary meson version check
Gary Kramlich <grim@reaperworld.com>
parents:
41192
diff
changeset
|
478 | config_home = get_option('devenv-config-dir') |
|
8c2b4f1de39c
Remove a no longer necessary meson version check
Gary Kramlich <grim@reaperworld.com>
parents:
41192
diff
changeset
|
479 | if config_home == '' |
|
8c2b4f1de39c
Remove a no longer necessary meson version check
Gary Kramlich <grim@reaperworld.com>
parents:
41192
diff
changeset
|
480 | config_home = meson.global_build_root() / 'config' |
|
8c2b4f1de39c
Remove a no longer necessary meson version check
Gary Kramlich <grim@reaperworld.com>
parents:
41192
diff
changeset
|
481 | endif |
|
8c2b4f1de39c
Remove a no longer necessary meson version check
Gary Kramlich <grim@reaperworld.com>
parents:
41192
diff
changeset
|
482 | devenv.set('XDG_CONFIG_HOME', config_home) |
|
41066
00e6bda3ef95
Add a Meson devenv configuration.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
41060
diff
changeset
|
483 | |
|
41194
8c2b4f1de39c
Remove a no longer necessary meson version check
Gary Kramlich <grim@reaperworld.com>
parents:
41192
diff
changeset
|
484 | meson.add_devenv(devenv) |
|
41066
00e6bda3ef95
Add a Meson devenv configuration.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
41060
diff
changeset
|
485 | |
|
42183
865a36ca9b33
Add a custom target for running everything when landing a pull request
Gary Kramlich <grim@reaperworld.com>
parents:
42146
diff
changeset
|
486 | if meson.backend() == 'ninja' |
|
865a36ca9b33
Add a custom target for running everything when landing a pull request
Gary Kramlich <grim@reaperworld.com>
parents:
42146
diff
changeset
|
487 | run_target('turtles', |
|
42454
37bcbcd66c6f
Set our gettext package to pidgin3 so it can we can install next to pidgin2
Gary Kramlich <grim@reaperworld.com>
parents:
42410
diff
changeset
|
488 | command : ['ninja', '-C', '@BUILD_ROOT@', 'pidgin3-pot', 'all', 'test']) |
|
42183
865a36ca9b33
Add a custom target for running everything when landing a pull request
Gary Kramlich <grim@reaperworld.com>
parents:
42146
diff
changeset
|
489 | endif |
|
865a36ca9b33
Add a custom target for running everything when landing a pull request
Gary Kramlich <grim@reaperworld.com>
parents:
42146
diff
changeset
|
490 | |
|
41000
cb640ea0f315
Use Meson summary() function.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40999
diff
changeset
|
491 | summary({ |
|
cb640ea0f315
Use Meson summary() function.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40999
diff
changeset
|
492 | 'prefix': get_option('prefix'), |
|
cb640ea0f315
Use Meson summary() function.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40999
diff
changeset
|
493 | 'bindir': get_option('bindir'), |
|
cb640ea0f315
Use Meson summary() function.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40999
diff
changeset
|
494 | 'libdir': get_option('libdir'), |
|
cb640ea0f315
Use Meson summary() function.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40999
diff
changeset
|
495 | 'datadir': get_option('datadir'), |
|
cb640ea0f315
Use Meson summary() function.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40999
diff
changeset
|
496 | }, section : 'Directories') |
|
cb640ea0f315
Use Meson summary() function.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40999
diff
changeset
|
497 | |
|
41827
c0c9eeca7d4b
Flatten Meson build files
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
41826
diff
changeset
|
498 | # TODO: Remove `.found()` once https://github.com/mesonbuild/meson/pull/10949 |
|
c0c9eeca7d4b
Flatten Meson build files
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
41826
diff
changeset
|
499 | # is merged and in a release that we require. |
|
41000
cb640ea0f315
Use Meson summary() function.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40999
diff
changeset
|
500 | summary({ |
|
cb640ea0f315
Use Meson summary() function.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40999
diff
changeset
|
501 | 'GTK': get_option('gtkui'), |
|
cb640ea0f315
Use Meson summary() function.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40999
diff
changeset
|
502 | 'console': enable_consoleui, |
|
cb640ea0f315
Use Meson summary() function.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40999
diff
changeset
|
503 | 'X11 support': x11.found(), |
|
cb640ea0f315
Use Meson summary() function.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40999
diff
changeset
|
504 | }, section: 'User Interfaces', bool_yn: true) |
|
cb640ea0f315
Use Meson summary() function.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40999
diff
changeset
|
505 | |
|
cb640ea0f315
Use Meson summary() function.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40999
diff
changeset
|
506 | summary({ |
|
cb640ea0f315
Use Meson summary() function.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40999
diff
changeset
|
507 | 'Dynamic protocols': DYNAMIC_PRPLS, |
|
cb640ea0f315
Use Meson summary() function.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40999
diff
changeset
|
508 | }, section: 'Protocol Support', bool_yn: true, list_sep: ', ') |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
509 | |
|
41827
c0c9eeca7d4b
Flatten Meson build files
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
41826
diff
changeset
|
510 | # TODO: Remove `.found()` once https://github.com/mesonbuild/meson/pull/10949 |
|
c0c9eeca7d4b
Flatten Meson build files
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
41826
diff
changeset
|
511 | # is merged and in a release that we require. |
|
41000
cb640ea0f315
Use Meson summary() function.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40999
diff
changeset
|
512 | summary({ |
|
cb640ea0f315
Use Meson summary() function.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40999
diff
changeset
|
513 | 'KWallet credential provider': kwallet.found(), |
|
41172
db38cdfbc59e
Rename the secretservice plugin to libsecret and move it into the plugins directory
Gary Kramlich <grim@reaperworld.com>
parents:
41169
diff
changeset
|
514 | 'libsecret credential provider': libsecret.found(), |
|
41000
cb640ea0f315
Use Meson summary() function.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40999
diff
changeset
|
515 | 'Unity integration': enable_unity, |
|
42520
bdd5204a9e10
Add WinCred provider to plugin support summary
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
42504
diff
changeset
|
516 | 'WinCred credential provider': IS_WIN32, |
|
41000
cb640ea0f315
Use Meson summary() function.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40999
diff
changeset
|
517 | }, section: 'Plugin support', bool_yn: true) |
|
cb640ea0f315
Use Meson summary() function.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40999
diff
changeset
|
518 | |
|
cb640ea0f315
Use Meson summary() function.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40999
diff
changeset
|
519 | summary({ |
|
cb640ea0f315
Use Meson summary() function.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40999
diff
changeset
|
520 | 'Enable Introspection': enable_introspection, |
|
41105
02c3569bc32b
Add gi-docgen as a subproject so we can convert the documentation to it
Gary Kramlich <grim@reaperworld.com>
parents:
41103
diff
changeset
|
521 | 'Generate documentation': get_option('doc'), |
|
41000
cb640ea0f315
Use Meson summary() function.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40999
diff
changeset
|
522 | 'Has you': true, |
|
cb640ea0f315
Use Meson summary() function.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40999
diff
changeset
|
523 | 'Print debugging messages': enable_debug, |
|
cb640ea0f315
Use Meson summary() function.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40999
diff
changeset
|
524 | }, section: 'Miscellaneous', bool_yn: true) |
|
cb640ea0f315
Use Meson summary() function.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40999
diff
changeset
|
525 | |
|
40989
f77cf4694364
We should be checking for the pidgin3 executable not pidgin
Gary Kramlich <grim@reaperworld.com>
parents:
40988
diff
changeset
|
526 | if pidgin3path.found() |
|
41000
cb640ea0f315
Use Meson summary() function.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40999
diff
changeset
|
527 | summary('You have an old copy of pidgin3 at', pidgin3path.full_path(), |
|
cb640ea0f315
Use Meson summary() function.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40999
diff
changeset
|
528 | section: 'Warnings') |
|
38439
03f1a1642a68
Add meson build for libpurple only.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
529 | endif |