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