]>
Commit | Line | Data |
---|---|---|
2bcfc6bc | 1 | # TODO: |
2bcfc6bc | 2 | # - consider doing subpackages for all those plugins (which one should be in main package ?) |
cb1359d3 | 3 | # - desktop file (icon exists, but no desktop file?) |
bf2eabf0 JB |
4 | # |
5 | # Conditional build: | |
875a60b1 | 6 | # Features |
dae692bf | 7 | %bcond_without aspell # don't build aspell support |
1e6a4966 | 8 | %bcond_without doc # don't build docs |
875a60b1 | 9 | # Bindings |
de60b6ba | 10 | %bcond_without guile # don't enable Scheme (guile) scripting language |
875a60b1 ER |
11 | %bcond_without lua # don't enable Lua scripting language |
12 | %bcond_without perl # don't enable Perl scripting language | |
de60b6ba | 13 | %bcond_with php # don't enable PHP scripting language |
875a60b1 ER |
14 | %bcond_without python # don't enable Python scripting language |
15 | %bcond_without ruby # don't enable Ruby scripting language | |
16 | %bcond_without tcl # don't enable Tcl scripting language | |
9fc5e4a1 | 17 | %bcond_without js # don't enable JavaScript scripting language (V8 engine) |
d4846710 | 18 | |
93f2c1d6 ER |
19 | %ifnarch %{ix86} %{x8664} arm mips |
20 | %undefine with_js | |
21 | %endif | |
22 | ||
de60b6ba JP |
23 | %define php_name php%{?php_suffix} |
24 | ||
bf2eabf0 JB |
25 | Summary: WeeChat - fast and light chat environment |
26 | Summary(pl.UTF-8): WeeChat - szybkie i lekkie środowisko do rozmów | |
88c48961 | 27 | Name: weechat |
d558e3c2 JP |
28 | Version: 3.4.1 |
29 | Release: 1 | |
ccd085cc | 30 | License: GPL v3+ |
740c529c | 31 | Group: Applications/Communications |
1b328212 | 32 | Source0: https://www.weechat.org/files/src/%{name}-%{version}.tar.xz |
d558e3c2 | 33 | # Source0-md5: aeea0487026deb7d95c141c4c0e9a6e2 |
46ecdc76 | 34 | URL: http://www.weechat.org/ |
bf2eabf0 | 35 | %{?with_aspell:BuildRequires: aspell-devel} |
de60b6ba | 36 | BuildRequires: cmake >= 3.0 |
ccac3bc6 | 37 | BuildRequires: curl-devel |
8131d0d8 | 38 | BuildRequires: gettext-tools |
113c8f6d | 39 | BuildRequires: gnutls-devel |
875a60b1 | 40 | %{?with_guile:BuildRequires: guile-devel} |
6c113da7 | 41 | BuildRequires: libgcrypt-devel |
ca796d8a | 42 | %{?with_lua:BuildRequires: lua-devel} |
387a8b12 | 43 | BuildRequires: ncurses-devel |
9aa8ff7b | 44 | %{?with_perl:BuildRequires: perl-devel} |
de60b6ba | 45 | %{?with_php:BuildRequires: %{php_name}-devel >= 4:7} |
6757fa8b KK |
46 | BuildRequires: pkgconfig |
47 | %if %{with python} | |
113c8f6d JP |
48 | BuildRequires: python3-devel |
49 | BuildRequires: python3-modules | |
6757fa8b | 50 | %endif |
ead211ff | 51 | BuildRequires: rpm-build >= 4.6 |
8f33c8f1 | 52 | BuildRequires: rpmbuild(macros) >= 1.752 |
7a0f89d0 | 53 | %{?with_doc:BuildRequires: ruby-asciidoctor} |
113c8f6d | 54 | %{?with_ruby:BuildRequires: ruby-devel >= 1:1.9} |
7a0f89d0 | 55 | BuildRequires: sed >= 4.0 |
13717296 | 56 | BuildRequires: tar >= 1:1.22 |
aea7cf80 | 57 | %{?with_tcl:BuildRequires: tcl-devel} |
7a0f89d0 | 58 | %{?with_js:BuildRequires: v8-devel} |
13717296 | 59 | BuildRequires: xz |
113c8f6d | 60 | BuildRequires: zlib-devel |
de60b6ba | 61 | Requires(post,postun): desktop-file-utils |
ead211ff | 62 | Suggests: %{name}-icons |
f118d56e | 63 | Suggests: %{name}-plugin-irc |
9fb88636 | 64 | Obsoletes: weechat-common |
88c48961 | 65 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
66 | ||
18c4530e ER |
67 | %define skip_post_check_so ruby.so.0.0.0 |
68 | ||
88c48961 | 69 | %description |
70 | WeeChat (Wee Enhanced Environment for Chat) is a fast and light chat | |
228b94b3 | 71 | environment for many operating systems. Everything can be done with a |
72 | keyboard. It is customizable and extensible with scripts. | |
88c48961 | 73 | |
bf2eabf0 JB |
74 | %description -l pl.UTF-8 |
75 | WeeChat (Wee Ehanced Environment for Chat) to szybkie i lekkie | |
76 | środowisko do rozmów dla wielu systemów operacyjnych. Pozwala wszystko | |
77 | zrobić przy pomocy klawiatury. Jest konfigurowalne i rozszerzalne za | |
78 | pomocą skryptów. | |
88c48961 | 79 | |
875a60b1 ER |
80 | %package doc |
81 | Summary: Manual for weechat | |
82 | Group: Documentation | |
4a6303d1 | 83 | BuildArch: noarch |
875a60b1 ER |
84 | |
85 | %description doc | |
86 | HTML documentation for weechat. | |
87 | ||
ead211ff JP |
88 | %package icons |
89 | Summary: Icon files for weechat | |
90 | Group: Applications | |
91 | BuildArch: noarch | |
92 | Requires(post,postun): gtk-update-icon-cache | |
93 | ||
94 | %description icons | |
95 | Icon files for weechat. | |
96 | ||
6c402603 JP |
97 | %package plugin-guile |
98 | Summary: Guile scripting plugin for weechat | |
99 | Group: Applications/Communications | |
100 | Requires: %{name} = %{version}-%{release} | |
101 | ||
102 | %description plugin-guile | |
103 | Guile scripting plugin for weechat. | |
104 | ||
f118d56e JP |
105 | %package plugin-irc |
106 | Summary: IRC chat protocol plugin for weechat | |
107 | Group: Applications/Communications | |
108 | Requires: %{name} = %{version}-%{release} | |
109 | ||
110 | %description plugin-irc | |
111 | IRC chat protocol plugin for weechat. | |
112 | ||
6c402603 JP |
113 | %package plugin-javascript |
114 | Summary: JavaScript scripting plugin for weechat | |
115 | Group: Applications/Communications | |
116 | Requires: %{name} = %{version}-%{release} | |
117 | ||
118 | %description plugin-javascript | |
119 | JavaScript scripting plugin for weechat. | |
120 | ||
121 | %package plugin-lua | |
122 | Summary: Lua scripting plugin for weechat | |
123 | Group: Applications/Communications | |
124 | Requires: %{name} = %{version}-%{release} | |
125 | ||
126 | %description plugin-lua | |
127 | Lua scripting plugin for weechat. | |
128 | ||
129 | %package plugin-perl | |
130 | Summary: Perl scripting plugin for weechat | |
131 | Group: Applications/Communications | |
132 | Requires: %{name} = %{version}-%{release} | |
133 | ||
134 | %description plugin-perl | |
135 | Perl scripting plugin for weechat. | |
136 | ||
137 | %package plugin-python | |
138 | Summary: Python scripting plugin for weechat | |
139 | Group: Applications/Communications | |
140 | Requires: %{name} = %{version}-%{release} | |
141 | ||
142 | %description plugin-python | |
143 | Python scripting plugin for weechat. | |
144 | ||
f118d56e JP |
145 | %package plugin-relay |
146 | Summary: Relay data via network plugin for weechat | |
147 | Group: Applications/Communications | |
148 | Requires: %{name} = %{version}-%{release} | |
149 | ||
150 | %description plugin-relay | |
151 | Relay data via network plugin for weechat used by alternative | |
152 | frontends. | |
153 | ||
6c402603 JP |
154 | %package plugin-ruby |
155 | Summary: Ruby scripting plugin for weechat | |
156 | Group: Applications/Communications | |
157 | Requires: %{name} = %{version}-%{release} | |
158 | ||
159 | %description plugin-ruby | |
160 | Ruby scripting plugin for weechat. | |
161 | ||
162 | %package plugin-spell | |
163 | Summary: Spell checking plugin for weechat | |
164 | Group: Applications/Communications | |
165 | Requires: %{name} = %{version}-%{release} | |
166 | ||
167 | %description plugin-spell | |
168 | Spell checking plugin for weechat. | |
169 | ||
170 | %package plugin-tcl | |
171 | Summary: Tcl scripting plugin for weechat | |
172 | Group: Applications/Communications | |
173 | Requires: %{name} = %{version}-%{release} | |
174 | ||
175 | %description plugin-tcl | |
176 | Tcl scripting plugin for weechat. | |
177 | ||
f118d56e JP |
178 | %package plugin-xfer |
179 | Summary: File transfer and direct chat plugin for weechat | |
180 | Group: Applications/Communications | |
181 | Requires: %{name} = %{version}-%{release} | |
182 | ||
183 | %description plugin-xfer | |
184 | File transfer and direct chat plugin for weechat. | |
185 | ||
88c48961 | 186 | %prep |
187 | %setup -q | |
188 | ||
189 | %build | |
875a60b1 ER |
190 | install -d build |
191 | cd build | |
192 | %cmake \ | |
193 | -DPREFIX=%{_prefix} \ | |
194 | -DLIBDIR=%{_libdir} \ | |
113c8f6d | 195 | -DENABLE_HEADLESS=OFF \ |
875a60b1 | 196 | -DENABLE_NCURSES=ON \ |
113c8f6d JP |
197 | %{cmake_on_off aspell ENABLE_SPELL} \ |
198 | %{cmake_on_off doc ENABLE_DOC} \ | |
199 | %{cmake_on_off perl ENABLE_PERL} \ | |
200 | %{cmake_on_off php ENABLE_PHP} \ | |
201 | %{cmake_on_off python ENABLE_PYTHON} \ | |
202 | %{cmake_on_off ruby ENABLE_RUBY} \ | |
203 | %{cmake_on_off lua ENABLE_LUA} \ | |
204 | %{cmake_on_off guile ENABLE_GUILE} \ | |
205 | %{cmake_on_off tcl ENABLE_TCL} \ | |
206 | %{cmake_on_off doc ENABLE_MAN} \ | |
207 | %{cmake_on_off js ENABLE_JAVASCRIPT} \ | |
875a60b1 ER |
208 | .. |
209 | ||
210 | %{__make} VERBOSE=1 | |
88c48961 | 211 | |
212 | %install | |
213 | rm -rf $RPM_BUILD_ROOT | |
875a60b1 | 214 | %{__make} -C build install \ |
88c48961 | 215 | DESTDIR=$RPM_BUILD_ROOT |
216 | ||
cb1359d3 ER |
217 | # symlink to "weechat" |
218 | %{__rm} $RPM_BUILD_ROOT%{_bindir}/weechat-curses | |
219 | ||
875a60b1 ER |
220 | # no -devel, drop |
221 | %{__rm} -r $RPM_BUILD_ROOT%{_includedir}/%{name} | |
222 | %{__rm} $RPM_BUILD_ROOT%{_pkgconfigdir}/%{name}.pc | |
9165132c | 223 | |
224 | %find_lang %{name} | |
225 | ||
88c48961 | 226 | %clean |
227 | rm -rf $RPM_BUILD_ROOT | |
228 | ||
de60b6ba JP |
229 | %post |
230 | %update_desktop_database | |
de60b6ba JP |
231 | %update_mime_database |
232 | ||
ead211ff JP |
233 | %post icons |
234 | %update_icon_cache hicolor | |
235 | ||
de60b6ba JP |
236 | %postun |
237 | %update_desktop_database_postun | |
de60b6ba JP |
238 | %update_mime_database |
239 | ||
ead211ff JP |
240 | %postun icons |
241 | %update_icon_cache hicolor | |
242 | ||
9fb88636 | 243 | %files -f %{name}.lang |
7f12170a | 244 | %defattr(644,root,root,755) |
c2372aac | 245 | %doc AUTHORS.adoc ChangeLog.adoc README.adoc ReleaseNotes.adoc |
7c82dcb8 | 246 | %attr(755,root,root) %{_bindir}/weechat |
c2372aac | 247 | %if %{with doc} |
7c82dcb8 | 248 | %{_mandir}/man1/weechat.1* |
5fb273c2 | 249 | %lang(cs) %{_mandir}/cs/man1/weechat.1* |
be004e51 AS |
250 | %lang(de) %{_mandir}/de/man1/weechat.1* |
251 | %lang(fr) %{_mandir}/fr/man1/weechat.1* | |
252 | %lang(it) %{_mandir}/it/man1/weechat.1* | |
253 | %lang(ja) %{_mandir}/ja/man1/weechat.1* | |
cb1359d3 ER |
254 | %lang(pl) %{_mandir}/pl/man1/weechat.1* |
255 | %lang(ru) %{_mandir}/ru/man1/weechat.1* | |
c2372aac | 256 | %endif |
de60b6ba | 257 | %{_desktopdir}/%{name}.desktop |
7f12170a | 258 | |
cb1359d3 ER |
259 | %dir %{_libdir}/%{name} |
260 | %dir %{_libdir}/%{name}/plugins | |
261 | %attr(755,root,root) %{_libdir}/%{name}/plugins/alias.so | |
c2372aac | 262 | %attr(755,root,root) %{_libdir}/%{name}/plugins/buflist.so |
cb1359d3 ER |
263 | %attr(755,root,root) %{_libdir}/%{name}/plugins/charset.so |
264 | %attr(755,root,root) %{_libdir}/%{name}/plugins/exec.so | |
265 | %attr(755,root,root) %{_libdir}/%{name}/plugins/fifo.so | |
c2372aac | 266 | %attr(755,root,root) %{_libdir}/%{name}/plugins/fset.so |
cb1359d3 | 267 | %attr(755,root,root) %{_libdir}/%{name}/plugins/logger.so |
cb1359d3 ER |
268 | %attr(755,root,root) %{_libdir}/%{name}/plugins/script.so |
269 | %attr(755,root,root) %{_libdir}/%{name}/plugins/trigger.so | |
67248240 | 270 | %attr(755,root,root) %{_libdir}/%{name}/plugins/typing.so |
875a60b1 | 271 | |
ead211ff JP |
272 | %files icons |
273 | %defattr(644,root,root,755) | |
274 | %{_iconsdir}/hicolor/*/apps/weechat.png | |
275 | ||
875a60b1 ER |
276 | %if %{with doc} |
277 | %files doc | |
278 | %defattr(644,root,root,755) | |
279 | %dir %{_docdir}/%{name} | |
5fb273c2 | 280 | %lang(cs) %{_docdir}/%{name}/*.cs.html |
875a60b1 ER |
281 | %lang(de) %{_docdir}/%{name}/*.de.html |
282 | %lang(en) %{_docdir}/%{name}/*.en.html | |
283 | %lang(es) %{_docdir}/%{name}/*.es.html | |
284 | %lang(fr) %{_docdir}/%{name}/*.fr.html | |
285 | %lang(it) %{_docdir}/%{name}/*.it.html | |
286 | %lang(ja) %{_docdir}/%{name}/*.ja.html | |
287 | %lang(pl) %{_docdir}/%{name}/*.pl.html | |
288 | %lang(ru) %{_docdir}/%{name}/*.ru.html | |
289 | %endif | |
6c402603 JP |
290 | |
291 | %if %{with guile} | |
292 | %files plugin-guile | |
293 | %defattr(644,root,root,755) | |
294 | %attr(755,root,root) %{_libdir}/%{name}/plugins/guile.so | |
295 | %endif | |
296 | ||
f118d56e JP |
297 | %files plugin-irc |
298 | %defattr(644,root,root,755) | |
299 | %attr(755,root,root) %{_libdir}/%{name}/plugins/irc.so | |
300 | ||
6c402603 JP |
301 | %if %{with js} |
302 | %files plugin-javascript | |
303 | %defattr(644,root,root,755) | |
304 | %attr(755,root,root) %{_libdir}/%{name}/plugins/javascript.so | |
305 | %endif | |
306 | ||
307 | %if %{with lua} | |
308 | %files plugin-lua | |
309 | %defattr(644,root,root,755) | |
310 | %attr(755,root,root) %{_libdir}/%{name}/plugins/lua.so | |
311 | %endif | |
312 | ||
313 | %if %{with perl} | |
314 | %files plugin-perl | |
315 | %defattr(644,root,root,755) | |
316 | %attr(755,root,root) %{_libdir}/%{name}/plugins/perl.so | |
317 | %endif | |
318 | ||
319 | %if %{with python} | |
320 | %files plugin-python | |
321 | %defattr(644,root,root,755) | |
322 | %attr(755,root,root) %{_libdir}/%{name}/plugins/python.so | |
323 | %endif | |
324 | ||
f118d56e JP |
325 | %files plugin-relay |
326 | %defattr(644,root,root,755) | |
327 | %attr(755,root,root) %{_libdir}/%{name}/plugins/relay.so | |
328 | ||
6c402603 JP |
329 | %if %{with ruby} |
330 | %files plugin-ruby | |
331 | %defattr(644,root,root,755) | |
332 | %attr(755,root,root) %{_libdir}/%{name}/plugins/ruby.so | |
333 | %endif | |
334 | ||
335 | %if %{with aspell} | |
336 | %files plugin-spell | |
337 | %defattr(644,root,root,755) | |
338 | %attr(755,root,root) %{_libdir}/%{name}/plugins/spell.so | |
339 | %endif | |
340 | ||
341 | %if %{with tcl} | |
342 | %files plugin-tcl | |
343 | %defattr(644,root,root,755) | |
344 | %attr(755,root,root) %{_libdir}/%{name}/plugins/tcl.so | |
345 | %endif | |
f118d56e JP |
346 | |
347 | %files plugin-xfer | |
348 | %defattr(644,root,root,755) | |
349 | %attr(755,root,root) %{_libdir}/%{name}/plugins/xfer.so |