Mon, 18 Oct 2021 01:20:33 -0500
Remove the existing logging code from Finch now that the History API has landed
We still need to finish integrating the History API into finch, but moving this
out of the way first will make that easier.
Testing Done:
Compiled
Reviewed at https://reviews.imfreedom.org/r/1037/
|
38984
70dbe96fd686
Move ncurses check into libgnt directory.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
38783
diff
changeset
|
1 | enable_consoleui = false |
|
70dbe96fd686
Move ncurses check into libgnt directory.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
38783
diff
changeset
|
2 | if get_option('consoleui') |
|
41059
26cbce8851e5
Move the gnt subproject to a fallback subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41057
diff
changeset
|
3 | libgnt_dep = dependency('gnt3', |
|
26cbce8851e5
Move the gnt subproject to a fallback subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41057
diff
changeset
|
4 | version : '>= 3.0.0', |
|
26cbce8851e5
Move the gnt subproject to a fallback subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41057
diff
changeset
|
5 | fallback : ['libgnt', 'libgnt_dep']) |
|
39360
e7bed293aad5
Switch to external libgnt with fallback.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39207
diff
changeset
|
6 | |
|
39362
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
7 | ####################################################################### |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
8 | # Check for ncurses and other things used by it |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
9 | # FIXME: This should be temporary until libgnt wraps the functionality. |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
10 | ####################################################################### |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
11 | ncurses_available = true |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
12 | ncurses_header = 'ncurses.h' |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
13 | # Some distros put the headers in ncursesw/, some don't. These are ordered to |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
14 | # pick the last available as most-specific version. |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
15 | ncursesw_header_paths = ['', 'ncursesw/'] |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
16 | |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
17 | ncurses = dependency('ncursesw', required : false) |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
18 | if ncurses.found() |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
19 | foreach location : ncursesw_header_paths |
|
40536
c0ea70247280
Switch join_paths and + to /.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40509
diff
changeset
|
20 | f = location / 'ncurses.h' |
|
39362
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
21 | if compiler.has_header_symbol(f, 'get_wch', |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
22 | prefix : '#define _XOPEN_SOURCE_EXTENDED') |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
23 | ncurses_header = f |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
24 | endif |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
25 | endforeach |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
26 | else |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
27 | ncurses_available = false |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
28 | ncurses_inc = [] |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
29 | ncurses_libs = compiler.find_library('ncursesw', required : false) |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
30 | if ncurses_libs.found() |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
31 | foreach location : ncursesw_header_paths |
|
40536
c0ea70247280
Switch join_paths and + to /.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40509
diff
changeset
|
32 | f = location / 'ncurses.h' |
|
39362
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
33 | if compiler.has_header_symbol(f, 'get_wch', |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
34 | prefix : '#define _XOPEN_SOURCE_EXTENDED') |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
35 | ncurses_available = true |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
36 | ncurses_header = f |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
37 | endif |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
38 | endforeach |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
39 | |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
40 | if ncurses_available |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
41 | ncurses = declare_dependency( |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
42 | include_directories : ncurses_inc, |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
43 | dependencies : ncurses_libs |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
44 | ) |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
45 | endif |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
46 | endif |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
47 | endif |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
48 | |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
49 | if not ncurses_available |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
50 | # ncursesw was not found. Look for plain old ncurses |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
51 | ncurses = dependency('ncurses', required : false) |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
52 | if ncurses.found() |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
53 | ncurses_available = true |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
54 | else |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
55 | ncurses_libs = compiler.find_library('ncurses', required : false) |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
56 | ncurses_available = ncurses_libs.found() |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
57 | ncurses = declare_dependency(dependencies : ncurses_libs) |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
58 | endif |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
59 | endif |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
60 | |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
61 | if not ncurses_available and host_machine.system() == 'windows' |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
62 | # Try pdcurses too. |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
63 | ncurses_header = 'curses.h' |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
64 | ncurses_libs = compiler.find_library('pdcurses', required : false) |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
65 | ncurses_available = compiler.has_header(ncurses_header) and ncurses_libs.found() |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
66 | ncurses = declare_dependency(dependencies : ncurses_libs) |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
67 | endif |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
68 | |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
69 | if not ncurses_available |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
70 | error('ncurses could not be found!') |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
71 | endif |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
72 | |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
73 | if libgnt_dep.found() and ncurses_available |
|
3e92f470c176
Add explicit ncurses dependency to finch.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39360
diff
changeset
|
74 | ncurses_header = '-DNCURSES_HEADER="@0@"'.format(ncurses_header) |
|
38984
70dbe96fd686
Move ncurses check into libgnt directory.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
38783
diff
changeset
|
75 | enable_consoleui = true |
|
70dbe96fd686
Move ncurses check into libgnt directory.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
38783
diff
changeset
|
76 | else |
|
70dbe96fd686
Move ncurses check into libgnt directory.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
38783
diff
changeset
|
77 | error(''' |
|
70dbe96fd686
Move ncurses check into libgnt directory.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
38783
diff
changeset
|
78 | |
|
39360
e7bed293aad5
Switch to external libgnt with fallback.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39207
diff
changeset
|
79 | Finch will not be built. You need to install libgnt (or its requirements) and its development headers. |
|
38984
70dbe96fd686
Move ncurses check into libgnt directory.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
38783
diff
changeset
|
80 | |
|
70dbe96fd686
Move ncurses check into libgnt directory.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
38783
diff
changeset
|
81 | ''') |
|
70dbe96fd686
Move ncurses check into libgnt directory.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
38783
diff
changeset
|
82 | endif |
|
70dbe96fd686
Move ncurses check into libgnt directory.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
38783
diff
changeset
|
83 | endif |
|
70dbe96fd686
Move ncurses check into libgnt directory.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
38783
diff
changeset
|
84 | |
|
38462
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
85 | |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
86 | libfinch_SOURCES = [ |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
87 | 'gntaccount.c', |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
88 | 'gntblist.c', |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
89 | 'gntconn.c', |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
90 | 'gntconv.c', |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
91 | 'gntdebug.c', |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
92 | 'gntidle.c', |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
93 | 'gntmedia.c', |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
94 | 'gntmenuutil.c', |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
95 | 'gntnotify.c', |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
96 | 'gntplugin.c', |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
97 | 'gntprefs.c', |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
98 | 'gntrequest.c', |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
99 | 'gntroomlist.c', |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
100 | 'gntstatus.c', |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
101 | 'gntui.c', |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
102 | 'gntxfer.c', |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
103 | package_revision, |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
104 | 'libfinch.c' |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
105 | ] |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
106 | |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
107 | libfinch_headers = [ |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
108 | 'gntaccount.h', |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
109 | 'gntblist.h', |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
110 | 'gntconn.h', |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
111 | 'gntconv.h', |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
112 | 'gntdebug.h', |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
113 | 'gntidle.h', |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
114 | 'gntmedia.h', |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
115 | 'gntmenuutil.h', |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
116 | 'gntnotify.h', |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
117 | 'gntplugin.h', |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
118 | 'gntprefs.h', |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
119 | 'gntrequest.h', |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
120 | 'gntroomlist.h', |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
121 | 'gntstatus.h', |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
122 | 'gntui.h', |
|
40508
2ebcb8eb5c01
create a global header for finch
Gary Kramlich <grim@reaperworld.com>
parents:
40051
diff
changeset
|
123 | 'gntxfer.h', |
|
2ebcb8eb5c01
create a global header for finch
Gary Kramlich <grim@reaperworld.com>
parents:
40051
diff
changeset
|
124 | 'libfinch.h' |
|
38462
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
125 | ] |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
126 | |
|
40721
909e3433f935
Register Finch enums in the GObject type system.
Gary Kramlich <grim@reaperworld.com>
parents:
40683
diff
changeset
|
127 | libfinch_enum_headers = [ |
|
909e3433f935
Register Finch enums in the GObject type system.
Gary Kramlich <grim@reaperworld.com>
parents:
40683
diff
changeset
|
128 | 'gntconv.h', |
|
909e3433f935
Register Finch enums in the GObject type system.
Gary Kramlich <grim@reaperworld.com>
parents:
40683
diff
changeset
|
129 | ] |
|
909e3433f935
Register Finch enums in the GObject type system.
Gary Kramlich <grim@reaperworld.com>
parents:
40683
diff
changeset
|
130 | |
|
909e3433f935
Register Finch enums in the GObject type system.
Gary Kramlich <grim@reaperworld.com>
parents:
40683
diff
changeset
|
131 | # the built lists are append to below |
|
909e3433f935
Register Finch enums in the GObject type system.
Gary Kramlich <grim@reaperworld.com>
parents:
40683
diff
changeset
|
132 | libfinch_built_sources = [] |
|
909e3433f935
Register Finch enums in the GObject type system.
Gary Kramlich <grim@reaperworld.com>
parents:
40683
diff
changeset
|
133 | libfinch_built_headers = [] |
|
41057
0a4177bbb1c4
Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41056
diff
changeset
|
134 | libfinch_generated_sources = [] |
|
40721
909e3433f935
Register Finch enums in the GObject type system.
Gary Kramlich <grim@reaperworld.com>
parents:
40683
diff
changeset
|
135 | |
|
38462
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
136 | finch_SOURCES = [ |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
137 | 'finch.c' |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
138 | ] |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
139 | |
|
38487
9e341a7537bd
Use windows.compile_resources for Win32 resource files.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38473
diff
changeset
|
140 | if IS_WIN32 |
|
39996
497dbea26009
Link Finch against winmm.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39798
diff
changeset
|
141 | winmm = compiler.find_library('winmm') |
|
38487
9e341a7537bd
Use windows.compile_resources for Win32 resource files.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38473
diff
changeset
|
142 | |
|
38510
863a17674290
Fix creation of Windows resource files.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38506
diff
changeset
|
143 | finch_winres = configure_file( |
|
863a17674290
Fix creation of Windows resource files.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38506
diff
changeset
|
144 | input : 'finch_winres.rc.in', |
|
863a17674290
Fix creation of Windows resource files.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38506
diff
changeset
|
145 | output : 'finch_winres.rc', |
|
863a17674290
Fix creation of Windows resource files.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38506
diff
changeset
|
146 | configuration : version_conf) |
|
863a17674290
Fix creation of Windows resource files.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38506
diff
changeset
|
147 | finch_SOURCES += windows.compile_resources(finch_winres) |
|
863a17674290
Fix creation of Windows resource files.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38506
diff
changeset
|
148 | libfinch_winres = configure_file( |
|
863a17674290
Fix creation of Windows resource files.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38506
diff
changeset
|
149 | input : 'libfinch_winres.rc.in', |
|
863a17674290
Fix creation of Windows resource files.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38506
diff
changeset
|
150 | output : 'libfinch_winres.rc', |
|
863a17674290
Fix creation of Windows resource files.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38506
diff
changeset
|
151 | configuration : version_conf) |
|
863a17674290
Fix creation of Windows resource files.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38506
diff
changeset
|
152 | libfinch_SOURCES += windows.compile_resources(libfinch_winres) |
|
39996
497dbea26009
Link Finch against winmm.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39798
diff
changeset
|
153 | else |
|
497dbea26009
Link Finch against winmm.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39798
diff
changeset
|
154 | winmm = [] |
|
38487
9e341a7537bd
Use windows.compile_resources for Win32 resource files.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38473
diff
changeset
|
155 | endif |
|
9e341a7537bd
Use windows.compile_resources for Win32 resource files.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38473
diff
changeset
|
156 | |
|
38529
6b1f391a52ba
Remove redundant option variables.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38518
diff
changeset
|
157 | if enable_consoleui |
|
40721
909e3433f935
Register Finch enums in the GObject type system.
Gary Kramlich <grim@reaperworld.com>
parents:
40683
diff
changeset
|
158 | libfinch_enums = gnome.mkenums_simple('finchenums', |
|
909e3433f935
Register Finch enums in the GObject type system.
Gary Kramlich <grim@reaperworld.com>
parents:
40683
diff
changeset
|
159 | sources: libfinch_enum_headers) |
|
909e3433f935
Register Finch enums in the GObject type system.
Gary Kramlich <grim@reaperworld.com>
parents:
40683
diff
changeset
|
160 | libfinch_built_sources += libfinch_enums[0] |
|
909e3433f935
Register Finch enums in the GObject type system.
Gary Kramlich <grim@reaperworld.com>
parents:
40683
diff
changeset
|
161 | libfinch_built_headers += libfinch_enums[1] |
|
909e3433f935
Register Finch enums in the GObject type system.
Gary Kramlich <grim@reaperworld.com>
parents:
40683
diff
changeset
|
162 | |
|
40508
2ebcb8eb5c01
create a global header for finch
Gary Kramlich <grim@reaperworld.com>
parents:
40051
diff
changeset
|
163 | FINCH_H_INCLUDES = [] |
|
40721
909e3433f935
Register Finch enums in the GObject type system.
Gary Kramlich <grim@reaperworld.com>
parents:
40683
diff
changeset
|
164 | foreach header : libfinch_headers + ['finchenums.h'] |
|
40508
2ebcb8eb5c01
create a global header for finch
Gary Kramlich <grim@reaperworld.com>
parents:
40051
diff
changeset
|
165 | FINCH_H_INCLUDES += '#include <finch/@0@>'.format(header) |
|
2ebcb8eb5c01
create a global header for finch
Gary Kramlich <grim@reaperworld.com>
parents:
40051
diff
changeset
|
166 | endforeach |
|
2ebcb8eb5c01
create a global header for finch
Gary Kramlich <grim@reaperworld.com>
parents:
40051
diff
changeset
|
167 | finch_h_conf = configuration_data() |
|
2ebcb8eb5c01
create a global header for finch
Gary Kramlich <grim@reaperworld.com>
parents:
40051
diff
changeset
|
168 | finch_h_conf.set('FINCH_H_INCLUDES', '\n'.join(FINCH_H_INCLUDES)) |
|
2ebcb8eb5c01
create a global header for finch
Gary Kramlich <grim@reaperworld.com>
parents:
40051
diff
changeset
|
169 | |
|
2ebcb8eb5c01
create a global header for finch
Gary Kramlich <grim@reaperworld.com>
parents:
40051
diff
changeset
|
170 | finch_h = configure_file(input : 'finch.h.in', |
|
2ebcb8eb5c01
create a global header for finch
Gary Kramlich <grim@reaperworld.com>
parents:
40051
diff
changeset
|
171 | output : 'finch.h', |
|
2ebcb8eb5c01
create a global header for finch
Gary Kramlich <grim@reaperworld.com>
parents:
40051
diff
changeset
|
172 | configuration : finch_h_conf, |
|
2ebcb8eb5c01
create a global header for finch
Gary Kramlich <grim@reaperworld.com>
parents:
40051
diff
changeset
|
173 | install : true, |
|
40536
c0ea70247280
Switch join_paths and + to /.
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents:
40509
diff
changeset
|
174 | install_dir : get_option('includedir') / 'finch-3') |
|
40721
909e3433f935
Register Finch enums in the GObject type system.
Gary Kramlich <grim@reaperworld.com>
parents:
40683
diff
changeset
|
175 | libfinch_built_headers += finch_h |
|
40508
2ebcb8eb5c01
create a global header for finch
Gary Kramlich <grim@reaperworld.com>
parents:
40051
diff
changeset
|
176 | |
|
39451
31c873b5deaf
First pass at making pidgin3 not clobber pidgin2
Gary Kramlich <grim@reaperworld.com>
parents:
39443
diff
changeset
|
177 | install_headers(libfinch_headers, subdir : 'finch-3') |
|
38462
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
178 | |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
179 | libfinch_inc = include_directories('.') |
|
39458
037e6c7b4336
we renamed finch in the man page but not the actual executable...
Gary Kramlich <grim@reaperworld.com>
parents:
39457
diff
changeset
|
180 | libfinch = shared_library('finch3', |
|
40721
909e3433f935
Register Finch enums in the GObject type system.
Gary Kramlich <grim@reaperworld.com>
parents:
40683
diff
changeset
|
181 | libfinch_SOURCES + libfinch_built_headers + libfinch_built_sources, |
|
40508
2ebcb8eb5c01
create a global header for finch
Gary Kramlich <grim@reaperworld.com>
parents:
40051
diff
changeset
|
182 | c_args : ['-DSTANDALONE', '-DGNTSEAL_ENABLE', '-DFINCH_COMPILATION', ncurses_header], |
|
38462
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
183 | include_directories : [toplevel_inc], |
|
38518
1c2e969922b8
Fix versioning of libraries.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38516
diff
changeset
|
184 | version : PURPLE_LIB_VERSION, |
|
39996
497dbea26009
Link Finch against winmm.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39798
diff
changeset
|
185 | dependencies : [libpurple_dep, libgnt_dep, ncurses, glib, winmm], |
|
38473
919d72c1c8c0
Add many missing installations to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38472
diff
changeset
|
186 | install : true) |
|
41057
0a4177bbb1c4
Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41056
diff
changeset
|
187 | |
|
0a4177bbb1c4
Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41056
diff
changeset
|
188 | if enable_introspection |
|
0a4177bbb1c4
Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41056
diff
changeset
|
189 | introspection_sources = libfinch_headers |
|
0a4177bbb1c4
Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41056
diff
changeset
|
190 | |
|
0a4177bbb1c4
Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41056
diff
changeset
|
191 | Finch_gir_includes = [ |
|
41059
26cbce8851e5
Move the gnt subproject to a fallback subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41057
diff
changeset
|
192 | 'Gnt-3.0', |
|
41057
0a4177bbb1c4
Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41056
diff
changeset
|
193 | 'GPlugin-1.0', |
|
0a4177bbb1c4
Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41056
diff
changeset
|
194 | # subproject needs to be before libpurple in the repo so that |
|
0a4177bbb1c4
Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41056
diff
changeset
|
195 | # meson will use our variables and not try to discover them from |
|
0a4177bbb1c4
Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41056
diff
changeset
|
196 | # libpurple. |
|
0a4177bbb1c4
Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41056
diff
changeset
|
197 | libpurple_gir[0], |
|
0a4177bbb1c4
Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41056
diff
changeset
|
198 | ] |
|
0a4177bbb1c4
Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41056
diff
changeset
|
199 | |
|
0a4177bbb1c4
Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41056
diff
changeset
|
200 | libfinch_gir = gnome.generate_gir(libfinch, |
|
0a4177bbb1c4
Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41056
diff
changeset
|
201 | sources : introspection_sources, |
|
0a4177bbb1c4
Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41056
diff
changeset
|
202 | includes : Finch_gir_includes, |
|
0a4177bbb1c4
Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41056
diff
changeset
|
203 | namespace : 'Finch', |
|
0a4177bbb1c4
Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41056
diff
changeset
|
204 | symbol_prefix : 'finch', |
|
0a4177bbb1c4
Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41056
diff
changeset
|
205 | identifier_prefix : 'Finch', |
|
0a4177bbb1c4
Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41056
diff
changeset
|
206 | export_packages : 'finch', |
|
0a4177bbb1c4
Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41056
diff
changeset
|
207 | nsversion : '@0@.@1@'.format(purple_major_version, |
|
0a4177bbb1c4
Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41056
diff
changeset
|
208 | purple_minor_version), |
|
0a4177bbb1c4
Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41056
diff
changeset
|
209 | install : true, |
|
0a4177bbb1c4
Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41056
diff
changeset
|
210 | dependencies: [libgnt_dep, gplugin_dep], |
|
0a4177bbb1c4
Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41056
diff
changeset
|
211 | extra_args : ['-DFINCH_COMPILATION', '--quiet']) |
|
0a4177bbb1c4
Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41056
diff
changeset
|
212 | libfinch_generated_sources += libfinch_gir |
|
0a4177bbb1c4
Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41056
diff
changeset
|
213 | endif |
|
0a4177bbb1c4
Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41056
diff
changeset
|
214 | |
|
38462
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
215 | libfinch_dep = declare_dependency( |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
216 | include_directories : [toplevel_inc, libfinch_inc], |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
217 | link_with : libfinch, |
|
41057
0a4177bbb1c4
Fix up the dependencies for our gir files and ensure ours will work as a subproject
Gary Kramlich <grim@reaperworld.com>
parents:
41056
diff
changeset
|
218 | sources: libfinch_built_headers + libfinch_generated_sources, |
|
38462
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
219 | dependencies : [libpurple_dep, libgnt_dep, glib]) |
|
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
220 | |
|
39458
037e6c7b4336
we renamed finch in the man page but not the actual executable...
Gary Kramlich <grim@reaperworld.com>
parents:
39457
diff
changeset
|
221 | finch = executable('finch3', |
|
38462
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
222 | finch_SOURCES, |
|
39618
2dad24e4bcba
Enable gnt sealing.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39458
diff
changeset
|
223 | c_args : ['-DSTANDALONE', '-DGNTSEAL_ENABLE'], |
|
38473
919d72c1c8c0
Add many missing installations to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38472
diff
changeset
|
224 | dependencies : [libpurple_dep, libgnt_dep, libfinch_dep], |
|
919d72c1c8c0
Add many missing installations to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38472
diff
changeset
|
225 | install : true) |
|
38462
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
226 | |
|
41006
a3d6a07889e7
Override the dependencies if we have a new enough meson
Gary Kramlich <grim@reaperworld.com>
parents:
40999
diff
changeset
|
227 | if meson.version().version_compare('>=0.54.0') |
|
a3d6a07889e7
Override the dependencies if we have a new enough meson
Gary Kramlich <grim@reaperworld.com>
parents:
40999
diff
changeset
|
228 | meson.override_dependency('finch-3', libfinch_dep) |
|
a3d6a07889e7
Override the dependencies if we have a new enough meson
Gary Kramlich <grim@reaperworld.com>
parents:
40999
diff
changeset
|
229 | endif |
|
a3d6a07889e7
Override the dependencies if we have a new enough meson
Gary Kramlich <grim@reaperworld.com>
parents:
40999
diff
changeset
|
230 | |
|
38783
93d9173b62c8
Use meson pkgconfig generator.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38531
diff
changeset
|
231 | pkgconfig.generate( |
|
93d9173b62c8
Use meson pkgconfig generator.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38531
diff
changeset
|
232 | name : 'Finch', |
|
93d9173b62c8
Use meson pkgconfig generator.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38531
diff
changeset
|
233 | description : 'Finch is an instant messenger application that uses libpurple for protocol support and ncurses (libgnt) for the UI.', |
|
39443
5cffc7a8c5e7
Move project version into meson init.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
39428
diff
changeset
|
234 | version : meson.project_version(), |
|
39451
31c873b5deaf
First pass at making pidgin3 not clobber pidgin2
Gary Kramlich <grim@reaperworld.com>
parents:
39443
diff
changeset
|
235 | filebase : 'finch-3', |
|
31c873b5deaf
First pass at making pidgin3 not clobber pidgin2
Gary Kramlich <grim@reaperworld.com>
parents:
39443
diff
changeset
|
236 | subdirs : 'finch-3', |
|
38783
93d9173b62c8
Use meson pkgconfig generator.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38531
diff
changeset
|
237 | libraries : [libfinch], |
|
39457
d2f72768bbf2
Fix the plugin directories in the pkgconfig files (libpurple's was fine)
Gary Kramlich <grim@reaperworld.com>
parents:
39451
diff
changeset
|
238 | requires : ['gnt', 'purple-3'], |
|
d2f72768bbf2
Fix the plugin directories in the pkgconfig files (libpurple's was fine)
Gary Kramlich <grim@reaperworld.com>
parents:
39451
diff
changeset
|
239 | variables : ['plugindir=${libdir}/finch-@0@'.format(purple_major_version)]) |
|
38462
995638b4ec74
Add finch to meson build.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
diff
changeset
|
240 | |
|
38501
c406bd8ef671
Fix Meson builds when everything is disabled.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38487
diff
changeset
|
241 | subdir('plugins') |
|
38529
6b1f391a52ba
Remove redundant option variables.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
38518
diff
changeset
|
242 | endif # enable_consoleui |